OpenPLC is a microcontroller based small scale PLC, It uses atmega16 as controller.

It is programmed using free open source software LDmicro.