This page is written to help people to install and use the R1D1's programs.
R1D1 is the name of a small rover bearing a Beaglebone Black and an Arduino micro-controller. They communicate through a serial port. The robot sings when it sees a face or a fist (buzzer). The camera is a Logitech C170.
a. Live wireless spy camera broadcasting on TV.
c. Bumper: hardware interrupts.
d. IR proximity sensors (Sharp GP2Y0A21YK0)
e. Beaglebone black
f. Bi-directional level shifter for serial communications between Arduino (5V) and BBB (3.3V)
g. Arduino Uno r3
h. Perfboard (5V power supply and servos).
This small project is my first C++ program. Please, be merciful... I am curtently using the last Angrom image (2013-09-04).
The bbb part is uploaded on the Beaglebone Black with a files of the OpenCV example directory:
You may need to edit the /src/common.h file in order to configure the Serial port name in the #define section.
Copy the r1d1.example.ini file as r1d1.ini and edit it to suit your needs.
Personally, I copy the r1d1, r1d1.ini files and the cascade directory in the /temp directory of the Beaglebone when I have to launch it. R1D1 log a lot of output and I don't want to write too much on the SD card or on the EMMC memory. You also have the possibility to create a movie of the output with the help of the ini file.
Run the Arduino program
I use the official Arduino IDE.
Create a new sketch and copy R1D1.ino
Add two files and copy moteurs.ino and utils.ino.
Modify the pins number in the header of R1D1.ino in order to match your configuration.
Compile it and send it to your Arduino card.
Note that I translated in English most of the comments but some variable have a French name for historical reasons.
Run the Beaglebone program
Set the serial communication between the Beaglebone and the Arduino board.
Power up your Arduino.
run ./r1d1 in a screen terminal and disconnect your ethernet cable.
logs are put in the log.txt file and the debug printing information can be enable in the r1d1.ini file.