Sign in to follow this  
Followers 0
Tinker

Devicenet Messaging

19 posts in this topic

Hello all, I have red eyes from trying to find how to make this work. I want to pass a message from Node 1 on a Devicenet system to Node 2. This is just to start as I have 7 Nodes to pass information around to. For now I am trying to get the firs one passed. I just want to send a bit to let Node 2 to let it know that a downstream conveyor has stopped running and to shut down. Sounds simple but it has got me pulling out my hair. I have read information here as well as AB manuals and searched the internet and I am sure that I am missing something simple. Any Ideas?

Share this post


Link to post
Share on other sites
First question is what sort of device those nodes are, and whether they have messaging abilities. Are you using the Bulletin 1799 Zone Control I/O modules ? Those have a very specific node-to-node messaging protocol.

Share this post


Link to post
Share on other sites
Sorry I am using SLC 503 on all nodes. A Bulletin 1747-SDN that is on Node 1. No on the 1799

Share this post


Link to post
Share on other sites
Sounds like a good application for Slave Mode on the 1747-SDN's. The 1747-SDN can be a DeviceNet Master to a bunch of I/O devices, while simultaneously being a DeviceNet Slave to another 1747-SDN. The "Slave Connection" maps into the I/O table of the slave 1747-SDN just like any other I/O connection. Double-click on the 1747-SDN, go to the Module tab, and click the "Slave Mode" button to enable Slave Mode on each module.

Share this post


Link to post
Share on other sites
OK Ken thanks for the help. Once again my overworked mind failed me.. I am trying to work with a DH485 system (see Atch). However the Master/Slave idea sure did get my mind running with some ideas. There is only one 1747-SDN on my network and it is on Node 1. Any way how about the DH485 route, any ideas anyone?

Share this post


Link to post
Share on other sites
Did I say something wrong? I can reword the question if I need to, sometimes I do not state things just right.

Share this post


Link to post
Share on other sites
In your first post you said you were trying to get data between nodes on a DeviceNet, but I see now that you only mentioned that the 1747-SDN is on Node 1. So, are you trying to pass data between SLC's on a DH485 network, or are you trying to pass data between controllers that are on the DeviceNet network attached to the 1747-SDN scanner ? The slave-mode method only works with DeviceNet. On DH485 you'll have to program MSG instructions. Tell us more about the system and your functional requirements.

Share this post


Link to post
Share on other sites
You should use NetAIC+ in place of AIC

Share this post


Link to post
Share on other sites
Thanks for the information Ken and rpraveenkum. What I want to do is DH485 useing program MSG instructions. I whish to talk from one CPU500 to another. There are 7 SLC 5/03 PLC's on the network at this time. I have been studying MSG instructions but fail to understand how to send a bit to tell one 503 that a conveyor on another 503 has stoped running and I want it to shut down the conveyors that it controls. Clear as Mud?

Share this post


Link to post
Share on other sites
Many node in Dh485 causes problem like network overload & so on Better to have 5/03 with net eni or 5/05 in ethernet

Share this post


Link to post
Share on other sites
net eni? I an not familiar with that one.

Share this post


Link to post
Share on other sites
http://www.ab.com/programmablecontrol/plc/...ix1000/eni.html It is essentially a small DF1 to Ethernet/IP gateway.

Share this post


Link to post
Share on other sites
Tinker - with this many nodes DO NOT USE MSG WRITE or you will be very disappointed in the lag time. You have 7 SLC 5/03's lets call them A,B,C,D,E,F & G. What type oF communication do you need? Option 1 - A to B and back, B to C and back, C to D and back, D to E and back, E to F and back, F to G and back Option 2 - A as master to slaves B,C,D,E,F & G and answers back. Option 3 - A,B,C,D,E,F & G to A,B,C,D,E,F & G If you can specify I can suggest a structure.

Share this post


Link to post
Share on other sites
Option 3 - A,B,C,D,E,F & G to A,B,C,D,E,F & G This would allow me to go from any one to any other one. The system I am working with was installed so communications could take place but no one has ever attempted to do so until now. I have just been working for this company for a few months and I an just now trying to piece together what was done and why.

Share this post


Link to post
Share on other sites
This will take a while to explain and the addresses I use can be changed to fit your situation. In PLC A place MSG Read PLC B start = N22:0 Length 64 MSG Read PLC C start = N23:0 Length 64 MSG Read PLC D start = N24:0 Length 64 MSG Read PLC E start = N25:0 Length 64 MSG Read PLC F start = N26:0 Length 64 MSG Read PLC G start = N27:0 Length 64 In PLC B place MSG Read PLC A start = N21:0 Length 64 MSG Read PLC C start = N23:0 Length 64 MSG Read PLC D start = N24:0 Length 64 MSG Read PLC E start = N25:0 Length 64 MSG Read PLC F start = N26:0 Length 64 MSG Read PLC G start = N27:0 Length 64 In PLC C place MSG Read PLC A start = N21:0 Length 64 MSG Read PLC B start = N22:0 Length 64 MSG Read PLC D start = N24:0 Length 64 MSG Read PLC E start = N25:0 Length 64 MSG Read PLC F start = N26:0 Length 64 MSG Read PLC G start = N27:0 Length 64 In PLC D place MSG Read PLC A start = N21:0 Length 64 MSG Read PLC B start = N22:0 Length 64 MSG Read PLC C start = N23:0 Length 64 MSG Read PLC E start = N25:0 Length 64 MSG Read PLC F start = N26:0 Length 64 MSG Read PLC G start = N27:0 Length 64 In PLC E place MSG Read PLC A start = N21:0 Length 64 MSG Read PLC B start = N22:0 Length 64 MSG Read PLC C start = N23:0 Length 64 MSG Read PLC D start = N24:0 Length 64 MSG Read PLC F start = N26:0 Length 64 MSG Read PLC G start = N27:0 Length 64 In PLC F place MSG Read PLC A start = N21:0 Length 64 MSG Read PLC B start = N22:0 Length 64 MSG Read PLC C start = N23:0 Length 64 MSG Read PLC D start = N24:0 Length 64 MSG Read PLC E start = N25:0 Length 64 MSG Read PLC G start = N27:0 Length 64 In PLC G place MSG Read PLC A start = N21:0 Length 64 MSG Read PLC B start = N22:0 Length 64 MSG Read PLC C start = N23:0 Length 64 MSG Read PLC D start = N24:0 Length 64 MSG Read PLC E start = N25:0 Length 64 MSG Read PLC F start = N26:0 Length 64 This will give you 64 registers of shared memory between all PLC's. You'll want to create an excel map to describe the tags.

Share this post


Link to post
Share on other sites
Well it is the weekend so I must work on things such as motor installation and fixing guide rails and the like so I will start on the first part of next week and get back to you when I am done. Thanks for the information BobLfoot

Share this post


Link to post
Share on other sites
Glad to Help the length of 64 is arbitrary, but is gauranteed to transfer in 1 packet. lerger exchanges may take two packets and thus two trys with more delays.

Share this post


Link to post
Share on other sites
I'm not all that familiar with DH485. Can you also use the global bits to pass information around like you can with DH+? In DH+, there is a block of 64 words that are passed around as part of the token. It forms a sort of shared memory. The offset into the block corresponding to the node number is a broadcast address for that node. Interestingly, if you have any unused node addresses, all the others are a free-for-all. Anyone can write to it and use it as broadcast memory. If such a puny amount of memory is acceptable, you get MSG'ing for free.

Share this post


Link to post
Share on other sites
Question: Should these just be true rungs to the MSG?

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