The Arduino Robot is the first official Arduino on wheels. The robot
has two processors, one on each of its two boards. The Motor Board
controls the motors, and the Control Board reads sensors and decides
how to operate. Each of the boards is a full Arduino board
programmable using the Arduino IDE.
Both Motor and Control boards are microcontroller boards based on the
ATmega32u4. The Robot has many of its pins mapped to on-board sensors
Programming the robot is similar to the process with the Arduino
Leonardo. Both processors have built-in USB communication, eliminating
the need for a secondary processor. This allows the Robot to appear to
a connected computer as a virtual (CDC) serial / COM port.
The Arduino Robot can be powered via the USB connection or with 4 AA batteries. The power source is selected automatically. The battery holder holds 4 rechargeable NiMh AA batteries.
NB : Do not use non-rechargeable batteries with the robot
For safety purposes, the motors are disabled when the robot is powered from the USB connection. The robot has an on-board battery charger that requires 9V external power coming from an AC-to-DC adapter (wall-wart). The adapter can be connected by plugging a 2.1mm center-positive plug into the Motor Board's power jack. The charger will not operate if powered by USB. The Control Board is powered by the power supply on the Motor Board.
The Robot has a number of facilities for communicating with a computer, another Arduino, or other microcontrollers. The ATmega32U4 provides UART TTL (5V) serial communication, which is available on digital the 10-pin board-to-board connector. The 32U4 also allows for serial (CDC) communication over USB and appears as a virtual com port to software on the computer. The chip also acts as a full speed USB 2.0 device, using standard USB COM drivers. On Windows, a .inf file is required. The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Robot board. The RX (LED1) and TX LEDs on the board will flash when data is being transmitted via the USB connection to the computer (but not for serial communication between boards). Each one of the boards has a separate USB product identifier and will show up as different ports on you IDE. Make sure you choose the right one when programming. The ATmega32U4 also supports I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus
As always with Arduino, every element of the platform - hardware,
software and documentation - is freely available and open-source. This
means you can learn exactly how it's made and use its design as the
starting point for your own robots. The Arduino Robot is the result of
the collective effort from an international team looking at how
science can be made fun to learn. Arduino is now on wheels, come ride