PyCon 2019 in Cleveland, Ohio

Friday 12:10 p.m.–12:40 p.m. in Grand Ballroom A

What is a PLC and how do I talk Python to it?

Jonas Neubert


Walk into any factory and you will see a Programmable Logic Controller (PLC). It's the small box that has a memory card and an Ethernet cable on one side, and lots of colorful wires connected to the other end. Inside runs the logic that turns inputs from sensors into outputs to robots, conveyor belts and other machinery. PLCs evolved from relay banks in the 1970s and have ruled the world of industrial automation since then. In the first half of this talk we will take a look at how they work, how to program them, and why a strange language called "ladder logic" is (still) the lingua franca for programming them. In a short on-stage demo I will write some PLC code to control a device on stage. It's 2019 now and just running a PLC isn't quite enough anymore. Everyone is talking about the "Industrial Internet of Things" and they have connected their PLCs to the company network. The second half of the talk will look at how we can connect to PLCs to read data and influence the running program with Python.