I am designing a distributed control system based on a CompactRIO controller (cRIO-9038), with a number of NI 9144 / NI 9145 EtherCAT expansion chassis daisy-chained in for deterministic remote I/O. The distributed I/O includes digital, analog and Modbus inputs. Modbus RTU signals can be read with the NI 9871 serial module, but this system also must incorporate Modbus TCP signals, and unless I am mistaken, there is no way to read these into the EtherCAT RIO chassis, and I must instead build a separate Ethernet TCP/IP bus in addition to the EtherCAT bus to each remote location, and read and process all of the Modbus TCP signals with the master cRIO-9038.
My questions:
1) Do I understand correctly?
2) Is there any way to un-encapsulate the Modbus TCP message to get it into a format that could be read by a C series module on the NI 9145 so I don't need to run Ethernet TCP/IP as well as the EtherCAT lines?
3) Is there any device I could use that would read Modbus TCP messages but present itself as an EtherCAT slave that I could daisy-chain through?
4) I understand that in some instances, cabling fault tolerance can be built into an EtherCAT network by wiring the last port of the last chained device back into a second EtherCAT port on the master device. Given that the cRIO-9038 only has two configurable Ethernet ports, I presume that I could not simultaneously do this and have the system connected to an Ethernet network somehow?
Thanks in advance.