Can
RSLinx access a redundant pair via cellular?
BackgroundA Pair of Rockwell Automation
ControlLogix racks with
SRM Module and dual
ENBT's will share a pair of
IP addresses. One
IP address is "the primary", and the other
IP is "the backup" (if/when it is online). When the
ENBTs switch role, they will issue the requisite Gratuitous
ARPs to cause other local Ethernet devices (like a
Digi cellular gateway) to update their
ARP cache, thus comprehending that the
IP-to-MAC address mapping has changed. Thus a NAT/Router forwarding to the primary
IP should handle the fail-over with only modest bumps.
Config DetailsA user desiring
RSLinx (and
RSLogix or
RSView etc) to access a remote Rockwell
ControlLogix (any RA/AB
PLC) will be doing what the industry calls "
Mobile-Terminated" access. The user needs to arrange a cell plan which offers either a fixed
IP address to target, or at least a Dynamic
DNS name to target (like tk101.iatips.com or panel2.digi.com). This is NOT what you obtain with an iPhone or personal air-card data plan. Those will have private
IPs which only permit outgoing connections - called "
Mobile-Originated".
That was a buzzword lesson - expect to be asked about those two terms when you ask about cellular data plans!So once you can arrange your
targetable IP or
DNS name, you need a cellular router such as one of the
Digi Connect WAN family products. My favorite model today is the
ConnectPort X4, but that has large memory for Python programming, wireless mesh and other goodies you won't need to link up your Rockwell
PLC (Hey, I said it was MY favorite - doesn't mean it has to be yours!)
Note that contrary to folklore or urban legend, all cellular devices need certification to work on a system - even
GSM devices. Many small suppliers get around this by including fine-print that say the device buyer is responsible to arrange such legalities, and since you (the buyer) don't read such fine print the salesperson will just say "
Heck, it's GSM - so it is allowed everywhere world wide!" Deal with this issue as you see fit, but
Digi has more formal certs in more
countries worldwide than any of the other industrial players.
But back on subject, when the gateway comes up, it is assigned your known
IP or
DNS name. This is exactly how your home or business
DSL/T-line line works. Yet when
RSLinx tries to talk to the gateway on Ethernet/
IP's well-known
TCP port of 44818, the gateway will reject the connection as a weird attempt at hacking. You need to instruct the gateway:
- to not reject the Ethernet/IP traffic on TCP port 44818
- to instead forward it to a local IP on the Ethernet - which would be the IP of your ControlLogix ENBT (or the primary IP of the redundant pair)
The details of how this man-in-the-middle fake-out works is fascinating (to me), but quite a pile of text. If you are interested,
this older blog entry goes through the NAT/Router details blow by blow. But bottom-line, your
ENBT receives the
RSLinx packet and needs to have its own Gateway
IP set to the
Digi gateway's local Ethernet
IP address.
Free hint: 9 out of 10 guys who call saying "Why can't RSLinx see my PLC through your Digi gateway?" have failed to set the correct Gateway IP in the PLC/ENBT.So assuming your gateway and
PLC are setup correctly, then targeting the
RSLinx "Ethernet Devices" driver (with timeouts slowed down to 30 seconds) will cause your
PLC's little icon to show up. With
RSLinx running, you will create up to 200MB of billable cell traffic per month doing absolutely nothing - so don't leave it active.
Note that the "Ethernet/IP Driver" won't work as it requires UDP broadcast, which can't be routed over the Internet.At this point you'll say "Cool, now can I see my backup
ControlLogix or a second
PLC?", and the simple answer is "No." One of the realities of
RSLinx and AB
PLC is that the Ethernet/
IP protocol is hard fixed to only the
TCP/
IP port 44818, and the NAT/Router can only forward
TCP port 44818 to a single local
PLC. The easy fix would be for Rockwell to change
RSLinx to enable adding both an
IP/
DNS name and
TCP port number - then the NAT/Router
could forward
TCP port 44818 as 44818 to the primary
ENBT,
TCP 44819 fixed-up to 44818 to the secondary
ENBT,
TCP 17256 (a random number :-]) fixed up to 44818 to an
RSView panel and so on. Because the NAT/Router can restore all traffic to 44818 on the local Ethernet,
RSLinx is the only tool needing to change.
Will Rockwell ever do this? It would take a programmer half a day to do - then a few weeks to test - then a few months to document and
forestall support headaches. So who knows. They might. They might not.
But
bottomline is a simple cellular NAT/Router can be used to talk to a pair of
ControlLogix running in a
redundant configuration - you will just be limited to seeing only the primary
ENBT and the primary
IP address.
Labels: Cellular, DF1, Industrial, Rockwell