I wanted to build my own bot to have a guard in my flat, so i did it :-) ...
1 * Raspberry Pi 2 --> 35
1 * CSL - 300 Mbit/s USB 2.0 WLAN Stick --> 13€
1 * Arduino Nano --> 5€
1 * Pi Cam --> 20€
1 * Pi Cam Flexcable 50cm --> 6€
12 * Servo MG995 --> 65€
4 * MicroServo SG90 9g --> 6€
16 Channel 12 Bit PWM Servo Driver --> 12€
7,2V Akku NiMH 5000mAh --> 26€
2 * StepDown converter (12V --> 5V ) --> 10€
1 * USB soundcard--> 6€
1 * mikrofon --> 5€
1 * speaker --> 3€
1 * NulSom WS2812B (WS2811) LED-Strip--> 8€
1 * 0.96 Zoll OLED Display --> 5€
3 * 650nm 6mm 4.5V 5mW Red Laserdiode --> 2€
1 * ULN2803 Darlington Array
1 kg PLA --> 20€
diverse cables & plugs ...
sphere diameter 15 cm
leg length 20 cm
weight with accu 2,3 kg
Step 1: Design, Print and Assembling of Carrierplate, Servo Holders and Foots
I used Autodesk 123D to design all parts of the bot. I started with carrierplate, servo holders and foots.
My 3D printer can prints objects with a size of 150x150x100, so the size of the carrierplate is 140x140x5, printed with full filling, to have a strong plate.
To make the servo holders so small as possible, I removed the lower cover of the servo, designed this part in 3D and added a box. After printing of this holder I was able to put the servo without the lower cover into the holder and I fixed it with the orginal servo screws. The servo holder has at the lower side a hole for a M4 screw, to fix the opposite site of the servo.
For the link servo holder I added some brackets in differrent angles to the default servo holder ...
The foots have to be so wide, so the bot can hold the balance with only two foots on the ground. On the lower side of the foots I put some hot glue to increase the grip on the ground.
After printing of this parts, I assembled all parts together...
Step 2: Run Bot Run
For the first tests i fixed the Pi, accu and the PWM Servo Driver on the carrier plate with duct tape.
I used one stepdown converter with micro usb plug to power up the pi and the other one with 2 cables for the servos.
I connected all 12 servos to the PWM Servo Driver, tutorials to control the servo driver board are available ...
After that I wrote in python 3 classes, one to control the servos, one to handle 3 servos as one leg and the last one to control the whole bot. Additional i wrote a gui with python and tkinter to control the bot ...
Step 3: The Bot Was Able to Walk, I Wanted More ...
I designed a sphere with a cylon light, a mechanism to open and turn the cap, a camera holder and a holder for the 0.96 inch display...
I used a Arduino Nano with the FastLed library to control the cylon light, tutorials are available ...
I used a serial over USB connection to control the Nano with the Pi, tutorials are available ...
The 0.96 inch display is connected to the I2C outgoing ports of the PWM Servo Driver board, tutorials to control the display over I2C are available ...
To control the servos I used the servo driver board.
Tutorials to stream the picam video stream via a webserver is also available.
I fixed an accu holder on the lower side of carrier plate.
Step 4: I Need Fire Power :-)
Somewhere I had 5 laserdiodes ( Laser can be dangerous, be carefull!!! )
I designed a gundoor with a holder for 3 laserdiodes.
I used a Darlington Array to power on/off the laserdiodes ...
To control the servo i used the servo driver board.
Step 5: At the End
I installed a sound card, a mikrofon and a speaker for voice control, this is not finished yet ...
I soldered the USB cable directly on the soundcard to save space.
I removed the cover from all USB plugs to save space.
I needed 2 days for the idea and the design.
2 weeks for printing and assembling all parts.
Ages for progamming the bot (4 weeks).
- accessibility from the internet
- charging station