Open source PLC with UniPi



  • Dear friends,

    I'm a Ph.D. student at the University of Alabama in Huntsville, and my research topic is SCADA cyber security. My goal is to find vulnerabilities in PLCs and try to fix them. However, its really hard to study something deep when you don't have the source code. Therefore, due to the lack of open source tools available in this field, I decided to create my own open source PLC. Then I realized that this could be useful for other researchers and professionals in the field, so I'm here sharing it with everyone.

    The OpenPLC is a complete package with an editor and a compiler. The editor runs in Windows, Linux and MacOS and supports all the 5 IEC 61131-3 languages: ST, IL, LADDER, FBD and SFC. The compiler is responsible for getting the program written by the user and compile it to the platform in which the OpenPLC is running.

    The OpenPLC currently runs on Raspberry Pi, Arduino, and obviously on the RaspberryPi + UniPi set. It can also run as a soft-PLC on Windows or Linux. If you guys have any of the mentioned boards laying down somewhere, or want to try some open source software with your UniPi, it might be interesting to give the OpenPLC a try. More information can be found in my website: www.openplcproject.com

    Let me know if you have any comments.

    Thanks,

    Thiago Alves



  • Dear friends,

    I'm a Ph.D. student at the University of Alabama in Huntsville, and my research topic is SCADA cyber security. My goal is to find vulnerabilities in PLCs and try to fix them. However, its really hard to study something deep when you don't have the source code. Therefore, due to the lack of open source tools available in this field, I decided to create my own open source PLC. Then I realized that this could be useful for other researchers and professionals in the field, so I'm here sharing it with everyone.

    The OpenPLC is a complete package with an editor and a compiler. The editor runs in Windows, Linux and MacOS and supports all the 5 IEC 61131-3 languages: ST, IL, LADDER, FBD and SFC. The compiler is responsible for getting the program written by the user and compile it to the platform in which the OpenPLC is running.

    The OpenPLC currently runs on Raspberry Pi, Arduino, and obviously on the RaspberryPi + UniPi set. It can also run as a soft-PLC on Windows or Linux. If you guys have any of the mentioned boards laying down somewhere, or want to try some open source software with your UniPi, it might be interesting to give the OpenPLC a try. More information can be found in my website: www.openplcproject.com

    Let me know if you have any comments.

    Thanks,

    Thiago Alves



  • have you checked oscat? it is an open source PLC programming community and they produce quite good stuff. bigger companies use their libraries, so might be something to start with!



  • @philipp:xd0vptel:

    have you checked oscat?

    I have never heard of this. However, by quick searching it I could only find German documentation…



  • …well that's too bad.