Introducing the Arduino
You may have seen us refer to an Arduino in other projects. Just what is an Arduino and why should you care?
It's difficult to describe in one sentence, but I've found the Arduino to be the micro-controller solution with the lowest-barriers to entry. They're inexpensive, the development environment is free and has versions for windows, Linux and MacOS, and you only need a USB cable to program them.
I started to get back into micro-controllers after picking up a copy of O'sullivan and Igoe's “Physical Computing.” Which for me was a great re-introduction to electronics and inspired me to start soldering again. It's an older book, from 2004, so it predates the Arduino a bit. It talked a lot about a programming environment called Processing (http://processing.org) and its hardware companion called Wiring (http://wiring.org.co/.) The modern Arduino grew out of those projects and you use Processing as the IDE for your Arduino. Processing was intended to allow artists to program interactive art installations with Java. So any system that runs java and has a USB interface can be used to develop solutions with an Arduino.
If you need to build an interface with the real world, a micro-controller is what you need. Depending on the problem you're trying to solve, the micro-controller may be all you need, but it's so easy to interface a micro-controller with other micro-controllers or with larger computers. A great resource for interfacing micro-controllers with each other or with computers is (again) Tom Igoe's “Making Things Talk” from O'reilly press. I have a first edition from 2007 but I've seen that a 2nd edition is now available.
The Arduino project gets a lot of mixed press. “Real Engineers” scoff at it, saying it's a toy, and people joke that it seems like people are just putting Arduinos into things when a few solid-state devices could do the job. They're right, but I see it as more evidence of how easy and inexpensive they are to work with. I've got quite a few other micro-controllers laying around my lab, Basic Stamps, PICs, PicAXEs, and Propellers, but the only thing I've used in more than a “can I get the demo working” phase is an Arduino. This is probably because I'm not that great with electronics. I'm more of an overall systems guy, I plug things into other things, and make them do stuff. So I suppose that's what an Arduino is to me: something you plug stuff into to get them to do stuff.
- Log in to post comments