There are now literally dozens of these single board microcontrollers – as ever, Wikipedia gives an overview. It's interesting to see evolution in action here, as many of them were perfectly functional but are now pretty much being left behind despite all the work that was invested in them. The Raspberry Pi is one of the current favourites which is getting a lot of exposure (and consequently support, programs, etc). I've got one of these now (B+ model), with ARM11 core, colour touch screen, multiple USB, HDMI, Ethernet etc. The size of a packet of fags and the power of a small PC. Amazing power, loads of options and low cost.
I've no idea who created the annoying name "shield" for what most of us have happily referred to as "IO" (input, output) for many years. These young upstarts have a habit or reinventing the wheel! Modern microcontrollers are pretty robust these days, so they don’t require a great deal of shielding as such. Level translation, bandwidth shaping etc may be required but that’s not really providing a “shield” function. The difference between a microcontroller and a microprocessor isn’t black and white but generally the former comes with a mixture of IO built in and ready to go, whereas the latter tends to need more peripheral devices to connect up to the outside world and do anything useful.
I can't claim to have a great deal of experience with them but I used an MSP430 Launchpad a year or so ago to drive a simple stepper motor with a stream of pulses and a direction signal. Hardly a challenging task and a lot quicker and more configurable than the equivalent 555 circuit. I had a simple pot and a switch as inputs to vary the speed and direction. The 3D printer I used last year used an Atmega processor and I suspect it was directly evolved from the (open source) Arduino design. They'd basically integrated the "shield"(grr) with the Arduino on a single board, along with power supply, stepper drivers etc.
As I understand it, the "smoothstepper" type boards are actually intended for use with a PC parallel port, to interface to stepper drivers, limit switches etc ie for CNC control. I've actually bought a set of Mesa Electronics IO boards for my CNC conversion, since the parallel port based interfaces tend to be rather limited in terms of how much IO you can implement, which is fine for a desktop CNC router but perhaps not so ideal for a full size metal cutting machine. The cost wasn’t much different but the Mesa stuff is professionally developed and supported and provides considerably more capability and flexibility.
There is PLC software for single-board computers including the Raspberry Pi and Arduino but unless you are retro-fitting a complex PLC-based machine or can’t get your head around modern CNC control, it’s not obvious to me why you’d bother. If you went with LinuxCNC, there is a software PLC module for that as well.
Murray
Edited By Muzzer on 29/10/2014 13:29:20