Modbus/TCP to Ethernet/IP

Hello,everybody.
I’m looking for the best solution to read 600 Modbus/TCP devices(18 registers each one) from Controllogix system(Allen-Bradley).
All Modbus/TCP devices located in the same LAN class B(subnet mask 255.255.0.0)

I’m new to digi solutions.
Tanks in advance
Boris

Hmm, what kind of poll/refresh rate are you aiming for? And I hope you are not trying to use the ControlLogix as a “data collector” so that some HMI/OPC/SCADA solution can just see all 600+1 slaves in one place. I have a pretty hard time seeing why a single PLC would need to see 18 words of data from 600 remotes as part of a meaningful control design. In fact, I have a hard time envisioning a RSLogix5000 program with 600 MSG blocks …

Based on personal field experience, this looks like a design which will be a struggle from day one. We have Class B subnets within Digi and I see up to 100 broadcasts PER SECOND related to ARP and router control. I would definitely VOTE to use Class C subnets and deal with the minor learning curve & added latency of routers.

I doubt you’ll find any “embbeded system” that can function 100% predictably with 600 IP connections - only a Windows/Linux/UNIX workstation with virtual memory can manage so many and still call it “normal”. Last I saw, the ControlLogix ENB supports only about 128 sockets. I suppose you could invest in 5 or 6 ENB cards … since (as we speak) ODVA, Rockwell, and Schneider Electric are defining how an Ethernet/IP master polls Modbus/TCP slaves, it is even possible next year a ControlLogix PLC will do exactly what you want NATIVELY. Take a look at the ODVA.org press releases for more info.

The Digi One IAP does enable a ControlLogix to use PCCC-style messages under Ethernet/IP to query Modbus/TCP slaves. While it only supports 64 sockets, if the ControlLogix polled a new slave every 1 second (so 10 minutes to cycle through all 600) and if you set up the DOIAP’s slave socket to close after being idle for 10 second, then you’d slowly thrash through many sockets but not hit the limit. I beleive the RSLogix5000 has settings to “optimize” or cache connections such that even 600 MSG blocks to the same IP would use a single Encap session.

Now, if I were to design a system like this (and I spend a decade desiging & implementing sub-systems in oil refineries around South-East-Asia) I’d probably look into buying 10 Modbus/TCP master nodes (nothing Digi makes) to act as data concentrator. Each node would pull data from say 64 Modbus/TCP slaves and create 2 Master tables: 1) with all 18 regs plus some slave health status, and 2) a smaller table with just the 1 or 2 words per slave that the ControlLogix REALLY needs to see. A small Modicon PLC would do this well - or something from www.fieldserver.com (someone I’ve worked with for 10 years and is both a competitor and customer of Digi).

Then the HMI/OPC/SCADA would use Modbus/TCP to pull the bulk of the data WITHOUT crippling the ControlLogix’s comm channels, and the ControlLogix would just need 10 connections to pull up the nice SUMMARY data that it needs for control in larger chunks.

Best Regards

  • Lynn L, Principal Engineer/Industrial Specialist