.NET windows application to communicate with PLC

I have a project where we will control some industrial transformers to provide a requested voltage. The PLC will interface with the hardware level switches and motor on a variable transformer. Then a PC interface for technician will verify voltage via instrumentation over SCPI. Fine adjustments will be requested from the PC of the PLC / power supply. Everything will communicate over ethernet.

Long story short, I need to study up on a protocol with I can code this all up in. We’re working with Allen Bradley 5000 series PLCs.

Any suggestions on what protocol would be best?

That sounds like a good project. Hardware-level switches, motorized transformers, a PC interface, and SCPI instrumentation define a system like yours that where you’re interfacing an Allen-Bradley PLC (ControlLogix or CompactLogix from the 5000 series) for a dependable, well-supported protocol.

The following are some best choices for your arrangement:

  • Best for direct connection among PLC, PC interface, & instrumentation is EtherNet/IP (Industrial Protocol) Rockwell’s go-to protocol.
  • If SCPI instruments do not support native EtherNet/IP, Modbus TCP - simple, universal, and widely supported - best for communicating with them.
  • Best for PC interface applications with advanced monitoring & control needs OPC UA (Unified Architecture), flexible and secure.
  • Make that the instruments enable SCPI across LAN (or) USB/Ethernet bridges.
  • Python with pycomm3 for EtherNet/IP (or) pymodbus for Modbus makes PC-side development easy.
  • Studio 5000 has an Allen-Bradley Ecosystem. Natively supporting EtherNet/IP, Logix Designer can also incorporate Modbus via Add-On Profiles (AOPs).

My Suggestion

For direct PLC communications, go with EtherNet/IP; if the SCPI devices require for Modbus TCP, use it as an alternative.

Consider about integrating OPC UA if your PC interface needs more than just basic changes - such as logging or enhanced visualization.

You can also follow us on AutomationForum.co, Facebook and Linkedin to receive daily Instrumentation updates.

You can also follow us on ForumElectrical.com , Facebook and Linkedin to receive daily Electrical updates.

Excellent thank you! I will be likely utilizing C# (.NET) on the PC. I’ve got ethernet sockets running (TCP/IP) to control the instruments already (SCPI) with PC to Instruments.

I’d like to utilize a protocol for PLC’s that doesn’t require additional licensing if possible. Something I can establish an ethernet connection with and code up in .NET.

I was also looking for an Allen Bradley 5000 series emulator if there is such a thing. Where I could emulate the PLC in software on a PC for development.