Robot System

1. Goal
This Robot system shall detect ball and net, kick ball to net, talk, listen and dance.

2. Components
Arm: one arm which has 4 servos, that it is 4 free degree, can kick and grab ball.
Eye: one smart phone camera, with OpenCV, it can detect object and image recognition.
Leg: Two rear wheel drive.
Head: Smart phone - Nexus 5 + Arm9 + microcontroller

3. Communication
Wifi + CAN BUS
Three components need to communicate with each other. Smart phone will send ball and net position to BBB through WIFI at home router, BBB sends motors control command to eZ430 by industry CAN BUS.

4. Design
The most difficult part is object detection at software point of view. At initial design, using a desk PC as image processing, but it will require an extra camera, in now days, smart phone is very powerful, cheaper and easy for programming, it is a very good idea to use smart phone as eye and I just have a Nexus 5.
To search ball and net, smart phone panning and tilting is a must, so two servos are needed, plus one arm has 4 servos, totally 6 servos are required.
Nexus 5 has many sensors which is very useful for speed, direction and position control and feedback.
And it contains voice recognition and speech on text. With it, the robot can listen command and talk, singing, etc.
BeagleBone Black board has one ARM9 CPU which running Linux OS, it has 6 timers, WIFI, CAN BUS, everything. And very important, it is cheap--only $45 when I bought it, now price is up to $55.
eZ430 is TI small board which has one microcontroller, it is used to control H-Bridge two motors for rear wheel drive. With two motors, the robot can move forward, backward, tune left and right.
Arm has 4 servos, so it can kick and grab ball. To reduce cost, only one arm is installed.
Single +12VDC power input, output +3.3VDC, +5.0VDC, +6.0VDC and +12VDC. +6.0VDC is for servos, +12VDC is for two motors. +3.3VDC and +5.0VD is for controllers.

more...