Sign in to follow this  
Followers 0
rbnice1

strange msging problem in logix5000

15 posts in this topic

Ok so we have been having issues for a while now and its time to fix it somehow. We are doing a bunch of reads/writes in our logix5000 processor to 15 old AB1794 plc5's... At the beggining everything is great. But after a few days some of the reads and writes start looking like this. They will enable but never get done or time out or anything. No error codes or anything either. If I set the TO or ER it will restart but still never get done. I can write another write to the same address with everything inside it being the same and it will work just fine. If i disable the message statement and make sure nothing is active I can change things on the msg tag under tag monitoring, however if i try to change anything in the msg statement itself it acts like the msg statement is still active. If i download to the processor it will be ok for a few days then start all over again. I have 3 different main processors doing this and we have been having this problem since we flashed to v12. Does anyone know if there is a specific issue with v12 and msging or if there is any easy fix? It was a nightmare with our motion controls going up to v12 so i would like to stay away from flashing up to a newer revision if possible. Unless anyone has already flashed up and not had any problems.....

Share this post


Link to post
Share on other sites
Be not afraid of ControlFlash. You should be upgrading that 1756-L61/A controller to v16. Following some simple procedures (use Ethernet whenever possible, shut off or remove the CPU when flashing comms or motion modules) makes ControlFlash a breeze to use. The simple expedient I use for motion modules is to flash them over Ethernet in a chassis without a CPU. I've updated literally hundreds of Logix modules and never had a "brick" failure. I can't see the rest of your messaging logic but it looks to me that you have an unstable DH+ network and unconditional messaging logic that is sending multiple MSG blocks at a time to the 1756-DHRIO. With DH+ messaging and a target device that cannot respond, the "enable but never finish or timeout" is in fact NORMAL behavior for a DH+ message. There is no CIP Connection to timeout, so the message must be timed out manually by setting the .TO bit. Your logic probably worked before just by chance because the devices were communicating well on the DH+ network. Post the messaging routines in their entirety (ZIP up the *.ACD file) and I or somebody else might be able to help more.

Share this post


Link to post
Share on other sites
Also Allen-Bradley has a product advisory for a bunch of Control Logix modules. The advisory # is ACIG 2007-05-002. It affects module purchased between Oct 06 and March 07. They refer to the problem as functional issues. They are replacing the affected modules.

Share this post


Link to post
Share on other sites
Ken and mark thanks for the responces. Will look at when those moduals were purchased but im almost sure it was april06 or before that even. The DH+ network on our carousels is not perfect by any stretch and at the bottom of that file i have added code that sets the .er bit after it is writing or reading for mroe then 2 seconds to kind of kick strart them and get it going. From what i have seen and been told this is a big no no with logix5000 but if i set the TO bit nothing happens. I still dont know why i cant change anything in the message stucture if every thing is turned off like the second picture shows. Maybe it is because of they way our messages are set up. I dont know...... Cant post the .acd do to work rules. Ken if i remember correct you work for rockwell or AB? If so can you email me your number and extension at rbnice1@hotmail.com. I would like to email you this .acd and talk it over with you. Edited by rbnice1

Share this post


Link to post
Share on other sites
Are you writing to 1794 hardware or PLC5's? If PLC 5's I've always been a proponent of reads only and do it in both PLC's. 1. It is more efficient use of the network. 2. You always know where data is coming from. You enver wind up with an Integer changing, but no idea of who cahnged it.

Share this post


Link to post
Share on other sites
I will most likely be redoing the messaging. We are doing reads and writes from the 5000 to 15 plc's What type of msg read do you use on a plc5 to read from a plc5000? We use the 5000 to do all our msging and i would really like to get away from that. Right now we have a array thats 15 by 240 called carrier_data. we have 14 pie sections on a carousel. so carrier_data[1,0] - [1,119] Is the write for pie section1 carrier_data[1,120] - [1,239] Is the reads from pie 1 carrier_data[2,0] - [2,119] Is the writes for pie 2 hopefully you get the idea Every pie has the same plc program in it. the only diffrence is the node address. I really have to continue using the carrier_data address in the 5000 or i would have to totally rewrite a lot of code. But if i could set it up to read from all the pie sections and the 5000 after every index would be great. I take it 14 proccessors all reading at the same time from the central 5000 proccessor is not going to cause another issue? If all of this could work How could i get the message statment on the plc5 to read from the right part of the array since they all have the same program? Is there a way to use indirect addressing like you can on the 5000? Edited by rbnice1

Share this post


Link to post
Share on other sites
I am not sure how the map of an array to an int will work. You might have to create 15 one dimensional arrays and copythe data into them at the end of each scan. then map these arrays to the plc 5. I've atatched a seed program. Each PLC 5 will need to know what Pie machine it is if indirect addressing is to work. pie_carrier.zip

Share this post


Link to post
Share on other sites
Downloaded that file. Looks like it is a 5000 file that is a newer version. My pslogix is only to version 13. Will try to get a newer revision next week. The only thing is..... The pie sections are plc5 not 5000....... So i would need some way or using the node interally to use inderect addressing. pie1 is node 1 pie2 is node 2 Is there a system bit in plc5 that lets you move the node number to a integer file? E D I T!!!!!!!!!!!!!! Ok so was able to get the node adrress from the S:2 word ad convert it to the decimal pie number in a integer file. So how do i do a read on the plc5 reading a data tabel from the 5000? Edited by rbnice1

Share this post


Link to post
Share on other sites
I'll try and move the code to version 13 tonight at work on break and also I'll check but I beleive the node is found in the status file S2.

Share this post


Link to post
Share on other sites
yea found it! But not sure how to set up a read on the plc5 that can talk to the 5000

Share this post


Link to post
Share on other sites
This is a PLC 5 MSG configured to talk to a 5000. 5000 must have file 17 mapped from a DINT INT or SINT tag.

Share this post


Link to post
Share on other sites
hmm will look when i get to work tonight but i think my read msg is diffrent then that. Will have to play with it tonight, but it doesnt look like it will work, because i can not use indect addressing in the msg statment. I have 15 plc5's 14 of them are on pie sections and all of them have thye same program but diffrent nodes. With out being able to use indirect addressing all will read from N17 i need each to read from a diffrent file but still have the same program.

Share this post


Link to post
Share on other sites
also my msg's look a bit diffrent. there is no were to enter a ip address, under local or remote.

Share this post


Link to post
Share on other sites
Assuming you are using Ethernet the following applies. You have select port 1A which is the deault DH+ port. Check out Channel Config and see what port is Ethernet and switch your message instruction to that port. If using DH+ between PLC5 and 5000 then should be local not remote most likely. Would need to see wire diagram for Dh+ to be sure.

Share this post


Link to post
Share on other sites
we are using dh+ was just showing the remote. under rslinx tcp1 is carousel1 open the backplain then open the dh+modual on port4 then then then bah heres a pic will be easier to see.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0