https://github.com/f1oat/LDuino
LDuino is a PLC software originally designed for the "Controllino Maxi". It could be easily ported to any other Arduino based platform.
It is based on a bytecode interpreter able to run code generated by a modified version LDmicro (
https://github.com/f1oat/LDmicro).
LDuino currently supports:
Ethernet Web interface for configuration management and status
Static IP address or DHCP
IP configuration stored in EEPROM
Ladder logic program bytecode stored in EEPROM
Digital or analog inputs named 'An'
Digital or PWM ouputs named 'Dn'
Relay outputs named 'Rn'
Most LDMicro Ladder logic blocks including timers and operators
MODBUS over IP slave mode
Coils and Holding registers (MODBUS slave ID = 1)
RS485 master gateway (when MODBUS slave ID <> 1 is used)
This gateway can be used to access RS485 slave devices connected to the PLC from a master connected by Ethernet
This project is part of my Emco Turn 120P retrofit work (
http://blog.f1oat.org/2016/02/20/emco-turn-120p-retrofit/)
This first release is in beta stage.
Hope you will find it useful!
Frederic.