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.
If you’ve ever played with WinAVR, you have probably noticed the pretty resource usage info printed after each compile. You may miss that candy if you compile with GCC on Linux. In that case, grab a simple script avr-mem.sh. While the script should work with common AVR chips, you must modify it in order to use it with AT90USB646.
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.
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
Ubuntu Server (and others)
If you play a lot with servers or networked PCs with multiple NICs and change and switch network cards often, you sooner or later end up with two computers having network cards named in a different order by the operating system (eg. the NIC in the first slot is eth0 on one computer while being eth1 on the other). But usually you want to have all computers in a group configured the same way
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