A programmable logic controller (PLC), or programmable controller is an industrial digital computer which has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, or robotic devices, or any activity that requires high reliability control and ease of programming and process fault diagnosis [1].

OpenPLC is good for hobbyists and for research purposes. In this post, I’m using Rockwell Automation products, which are closer to what people use in real factories.

  1. RSLogix Emulate 500 (download): the PLC emulator software.
  2. RSLogix Micro Starter Lite w/o RSLinx (download): the tool for writing PLC programs with ladder logic.
  3. RSLinx Classic Lite (download): for communications among Rockwell networks and devices.

This this video shows how to download the programs.

These programs are Windows-only, and remember to run them with admin privileges (aka, as an administrator).

Configure Driver

RSLinx Classic Lite comes with a bunch of different drivers. By configuring the emulator driver we let our working PC know how to communicate with the emulator. The Station Number of the PC is 0, Station Name could be whatever string we like.

Write a Simple Program

We write PLC programs using ladder logic in RSLogix Micro.

Set Up the Emulator

We assign 1 to the emulator’s Station #, as 0 has been taken by the PC.

After the emulator is set up, RSLinx is able to detect it.

Download Program to PLC

By toggling the input I:0/0, the output bit O:0/0 changes accordingly.


[1] https://en.wikipedia.org/wiki/Programmable_logic_controller

[2] https://www.youtube.com/watch?v=t9JoLjiwjtw