Sign in to follow this  
Followers 0
wildswing

Getting data from PLC5 to CLX using DH+, RIO, Ethernet ?

7 posts in this topic

Hey fellas, I need some advice before I go and do something (with my limited experience) that I may regret later. I'm setting up a new ControlLogix chassis (with processor) for a new project (the one with the 80 loops which has now dwindled to 20 loops). I need to get some data from a PLC5. It'll be a half dozen words at most. I'm debating what the best method would be. The PLC5 (Enhanced 5/40 Ser C Rev G) is connected to both DH+ and RIO networks. It's the RIO scanner (115k). The DH+ network (57k) is connected to other PLC5s and another CLX chassis with DHRIO and ENBT modules. We use this as a programming bridge (Ethernet to DH+) for our PLC5s. The new CLX chassis will have an ENBT module for programming and HMI access, and (I'm thinking) either 1756-DHRIO or 1756-RIO module for the comms with the 5. Options as I see them right now: 1 - Use the RIO module and make it a remote rack of the 5. 2 - Use the DHRIO module connected to the DH+ network and use MSGs to read/write between the CLX and 5. 3 - Use Ethernet and the existing DH+ bridge. The new CLX chassis is being installed very near the PLC5, so cabling between the two will not be a problem. Any other ways that I'm not aware of? What would you recommend and why? Your input would be greatly appreciated. Thanks in advance!

Share this post


Link to post
Share on other sites
If you have an existing bridge then use it. Its pretty easy to message through the bridge. You won't need to involve a processor in the bridge rack. If you don't want to use the existing bridge then the second option is to go with the DHRIO module in the CLX chassis and connect it to the DH+. Then you can exchange the data with a message instruction. You'll essentially have two bridges for some redundancy. Edited by Alaric

Share this post


Link to post
Share on other sites
Thanks for the fast reply Alaric Correct me here if I'm wrong. If I use the existing bridge, the PLC5 will appear in my CLX processor's I/O config via it's ENBT. Through that I'll be able to read the data from the 5. Is that correct? If I'm in the ballpark, I assume I'll be able to also write to the 5 from the CLX. Just thinking out loud here. I may have to send the 5 some feedback from the CLX. I also assume that going through bridges like this is much easier to do from within the CLX, rather than from the 5.

Share this post


Link to post
Share on other sites
No, yes, and yes. The PLC won't appear in the RSLogix 5000 I/O tree because it's connected over DH+; only RIO and Ethernet and ControlLogix devices would appear in the I/O tree. To define the "CIP Path" from the ControlLogix to the PLC-5, you'll just stack together CIP Port/Address number pairs. You'll find help in the DHRIO User Manual, the MSG Help file, at RA Tech Support, and here. You'll be able to both read and write data tables in the PLC-5 by using MSG instructions in the ControlLogix. It is significantly easier in this case to put your MSG instructions in the ControlLogix. No data file mapping, no routing tables, and you can create data tags and control tags online in runtime. The basic function is that you send a DH+ Read or Write instruction to the 1756-DHRIO over Ethernet or ControlNet or any combination of those "CIP" networks. The DHRIO module processes the message for you over the selected channel and target DH+ address, and returns the result via CIP.

Share this post


Link to post
Share on other sites
Not sure what Ken would say about this, but I'd advise you consider "watchdogging" both ends of this comm loop. It will be much easier in this case as ken alludes to place the read and write isntructions in the CLGX. This will pose one problem in that the a programmer reviewing the PLC5 code may or may not realize that a block of addresses is having data shoved into it by the CLGX. I'd suggest setting aside one integer which is part of the write bank of data and increment it each write until it reaches a terminal value where it cycles to zero. If this integers stays at one value for too long then you ahve a comms error and will need to take action based on how the data is being used. Hope this makes sense. Handshake / Watchdog on comms is something programmers often forget until it burns them a few times. {yes that's the voice of experience}

Share this post


Link to post
Share on other sites
Thanks very much for the info fellas. Much appreciated. Bob, I share the concern about writing to the 5. Usually we only read just because of this. We'll have to document it well and maybe even do a dummy MOV so it shows up as used. Also, I always add handshake bits to comms. Node 1 turns on a bit, Node 2 reads it & turns on another. Node 1 reads that bit and turns off the first. However, since the CLX will be doing all the work, we won't be able to do it that way. I like your idea. Thanks. Edited by wildswing

Share this post


Link to post
Share on other sites
Hey fellas, I've got an update. I've been able to set up the comms as suggested, through and existing CLX bridge, so... NewCLX > Ethernet >Existing Bridge > DH+ > PLC5 I set up the write and read in the CLX so that the write is triggered by a timer .dn, then the read goes on the write.dn. For now the timer .pre is set to well beyond what the write/read takes just for testing I watched it for about 20 minutes. No errors. I find that a complete write/read takes a little over 1/2 second (64 intg words each way). Lowering the number of words does not seem to make it much faster, maybe a little. The speed is ok for now, but I did give it a challenge. This bridge is the same we use for programming. It's connected to all of our 8 PLC5s. I intentionally uploaded from both the target PLC5 and another to RSL5. The write/read cycle slowed down a lot during the upload form the target. It peaked a few times around 2 seconds. Not sure if I like that. It only slowed a little when uploading from one of my other 5s. Some of the data I'll be reading from the 5 will be used for a form of cascaded PID. After some math, this will be moved to the .sp of some clx pid loops who's update time will be 500 ms. I wonder if a DHRIO connected to the same DH+ would improve things? I'd still have the issue of uploads interfering. I'd love to get an ethernet sidecar for the 5 but that 1771 rack is full. Lots to move. Would a RIO module be a better bet? My RIO is at 230k as opposed to my 57k DH+. Also, I notice that my IO config is showing a warning. I've read that if both channels of the DHRIO module are set to DH+ then I have to live with the "IO Not Responding" warning. Well, that's what I've got. The second channel is not used. Would disabling or changing CH2 to to RIO or OFF (if possible) get rid of the little yellow warning signs? Edited by wildswing

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