Robot Charging

The robot is able to self charge using the charger station. The Elisa can be piloted in the charger station in order to be automatically self charged; there is no need to unplug the battery for charging.

The microcontroller is informed when the robot is under charge and this information is also transferred to the PC in the flags byte; this lets the user be able to pilot the robot to the charger station and be informed when it is actually being charged. Moreover the robot is also charged when the micro USB cable is connected to a computer.

8 infra-red sensors measuring ambient light and proximity of objects up to 6 cm; each sensor is 45° away from each other. 4 ground sensors detecting the end of the viable surface (placed on the front-side of the robot)

IR Emitters

3 IR emitters (2 on front-side, 1 on back-side of the robot)

Accelerometer

3D accelerometer along the X, Y and Z axis

LEDs

1 RGB LED in the center of the robot; 8 green LEDs around the robot

Switch / selector

16 position rotating switch

Communication

Standard Serial Port (up to 38kbps) Wireless: RF 2.4 GHz; the throughput depends on number of robot: eg. 250Hz for 4 robots, 10Hz for 100 robots; up to 10 m

Communication

The radio base-station is connected to the PC through USB and transfers data to and from the robot wirelessly. In the same way the radio chip (nRF24L01+) mounted on the robot communicates through SPI with the microcontroller and transfers data to and from the PC wirelessly. The robot is identified by an address that is stored in the last two bytes of the microcontroller internal EEPROM; the robot firmware setup the radio module reading the address from the EEPROM. This address corresponds to the robot id written on the label placed under the robot and should not be changed.

Software

AVR Studio 4 project: The project is built with AVR Studio 4 released by Atmel. Arduino IDE project: The project is built with the Arduino IDE 1.0 freely available from the official Arduino website. Aseba: Aseba is a set of tools which allow novices to program robots easily and efficiently.