Archive for the ‘ PLC from scratch ’ Category

Updates on the “Arduino PLC”

Several people have contacted me regarding the “Teensy++ PLC”, either with the idea of extending it, or porting it to other microcontroller architectures, or developing it further as a true “Arduino” solution. Especially the true Arduino PLC solution is very tempting for me. Indeed, that was the idea that followed me from the very start. So, let me put together some thoughts on this topic. Continue reading

Programmable Logic Controller – initial sources release

Finally, here are the sources I was talking about for so long! This project page wouldn’t be complete without it, would it?

The zip file below contains complete sources of AVR firmware in Arduino language (C++ with a couple of libraries, basically), the graphical development environment, a sample control program with corresponding configuration, a simple PC SCADA application and a simple communication library in Java.

Schematics and other info can be found here (just search in the document, you’ll find it at the end).

It looks like that:


Graphical integrated development environment



Initial prototype of the controller



Do read more about it here.

Teensy++ (AVR) PLC controller – version 1

Here it is! The AT90USB646-based homebrew programmable logic controller. It’s not quite a Simatic S7 (and it’s not even completed in most parts), but it’s a nice start. A more complete and IEC-ish environment on the development software part (among many other things) would be nicer, but… the code is (will be) here, so extend it to whatever you want. But, whatever you may want to do with it, keep in mind it’s more of a “proof-of-concept” thing than a production-ready device.

Prototype with a simple 24VDC digital I/O module

Prototype with a simple 24VDC digital I/O module

Continue reading

That PLC thing…

Ehm… that PLC. What’s new?

O.k. I canceled the ST compiler part. Not that I don’t like the idea of doing it, I just don’t have the time. So here is the alternative Continue reading

The PLC update

After looking at the Beremiz iec2c compiler source, I decided that modifying it to fit into this project is probably not the way to go. At this time, I’m deep into experimenting with the Coco/R framework on Java to produce my own IEC compiler. To make things simpler, I decided to support Continue reading

The homebrew AVR-based PLC – the introduction

Few years ago when I was searching the net for similar projects to gather some stuff for my potential graduate thesis, there was just a plain void. On techie forums ocasionaly some excited novice popped up with greeny questions about what would take to make a PLC, etc., just to get a bunch of “smart” answers about how stupid one has to be for trying to make something that someone somewhere can eagerly sell him. Not much useful, indeed. Sure, people wrote about projects and “PLCs” they’ve made, but almost all of them were just a kind of a relay board with a MCU attached to it – far from being something like the real thing. Continue reading


Get every new post delivered to your Inbox.