05-07-2019 06:02 PM
We want to use LabView to communicate with and control around 20 PLCs simultaneously. Does anyone know if it would be possible to start and stop a single PLC, (including unplugging it, moving it etc.) without effecting the behavior of the remaining systems? Basically we want the LabView VI to run continuously for several years but still want the capability of removing pieces and putting them back in without restarting the software.
Is this possible/practical?
Thanks
Solved! Go to Solution.
05-07-2019 06:27 PM - edited 05-07-2019 06:38 PM
Absolutely , Communication error handling needs to be a robust part of your code. Your Labview code needs be able to close resources , open connection resources and handle communications with multiple plc's . Your DAS will be able to collect data from PLC's that are connected and needs to periodically check for connections that are in error and reestablish connections. Make sure each connection to a PLC is its own instance, so connection errors to a missing plc does not effect the timing of good plc connections.
05-08-2019 11:50 AM
Is this usually done with the Modbus API, Modbus I/O Servers, or NI OPC Servers? Are there other ways?
http://www.ni.com/en-us/innovations/white-papers/12/introduction-to-modbus-using-labview.html
05-08-2019 01:14 PM
What plc are you using and what protocol?
05-08-2019 01:33 PM
The exact PLC is yet to be determined but we were planning on using the Modbus TCP protocol.
Forgive my ignorance, but I assumed Modbus was the industry standard?
05-09-2019 05:41 AM - edited 05-09-2019 05:43 AM
@jo_engineer wrote:
The exact PLC is yet to be determined but we were planning on using the Modbus TCP protocol.
Forgive my ignorance, but I assumed Modbus was the industry standard?
It's one of many standards. Virtually all PLCs allow to support Modbus access, either out of the box or with an additional (more or less costly) software module.
But depending on the PLC you choose there are other possible protocols that can be easier to deal with with the particular PLC brand:
-Siemens likes to push Profibus/ProfiNet
-Beckhoff wants to push EtherCAT
-Modicon/Schneider Electric wants to push ModBus
-Allen Bradley/Rockwell Automation wants to push EtherNet/IP/CIP
-Mitsubishi prefers to use CC-Link IE/SLMP
Most of these PLCs support at least some of the other network technologies but it is usually a paid software and/or hardware module that you have to add to the system. Also the integration of other network technologies in the native programming environment for the PLC is usually less seamless than the prefered brand network technology.
05-09-2019 06:48 PM
To build the most robust DAS I use UDP protocol. Most all plc’s it is easy to send UDP data. The timing can be easily controlled by putting the plc code in a timed interrupt task. Put the data into a block (array) in a standard format and it becomes generic to any plc .