Not all micro controllers look exactly like this, but all of them have inputs and outputs or I/Os. These connect to the numbered pins and make your computer control your device. The code that is uploaded with the IDE (Development Environment) tells the pins how to interact with one another. What are some simple robots that you know about?
By typing comands into the IDE you control the little computer. Most controls are conditional. For example if buttonPressed, than turn on fan.
So, you may be asking yourself, why use an Arduino in the class room? Good question! The arduino is an open source microcontroller that allows anyone to make simple robotic devices. The basic premise behind the developers of Arduino, is to make computer programing accessible and fun. The great thing is that there is a huge community of people working with these and generally there are no fees or subscriptions that get in the way of you making something really neat. Imagine Anikin Skywalker showing Padme C-3P0 (the robot he designed to help his mom) in Star Wars Episode IV.
The cool thing is, the future is now! An Arduino can do most of what C-3P0 can do. We have heard of ROOMBA the automated vacuum cleaners that roam around cleaning under furniture while we are at work, and NEST, the thermostat that learns how to save us money on heating and cooling by adjusting the temperature while we are at work and at night while we sleep. These machines are a set of relays hooked up to sensors set up to ask questions at set intervals and react according to a set of directions.
Computers only ask yes no questions! We just have to learn how to ask them.
You could recreate either one of the robots I just mentioned in a matter of days with an Arduino and a box of electronic parts. Under the right circumstances you could improve the design. The important thing is that you see how the machine works and you learn how to talk "computer" by giving it commands. It is pretty straight forward and most commands are a series of yes/no questions.
In art class we learn how to draw by copying master drawings or from live observation. We take things that work and study them. We see how they are put together, develop a language to describe them and eventually recreate or transform them. The same thing takes place in other classes. Examples are given and students work to understand the logic so that they can eventually implement it in whatever form they desire. The important thing is connectivity. Writing code only works if the grammar and syntax are correct. You have to know the rules to play the game. You have to understand the language to make a game.
You can develop for Arduino in either C or C++, both highly standardized developing languages. This is good because many other languages are derived from or build on this language. Later in the course we will learn about another program that uses "C" type language called Processing.
Zimoun is a Swiss artist that uses microcontrolers and small electronics to make artwork. check out his work here.