Introduction: Quadruped With Camera

About: Making Robo

This is my first quadruped robot with a premade frame, but custom software. The robot use a raspberrypi as it brain and had the ability to live stream video. This tutorial is specificaly for people who want to know how to control and live stream their robot over wifi using a Nodejs server.

Step 1: Materials

_The Frame

2x Aluminum Multi-Purpose Servo Bracket Two Pack(2x12 = $24)

2x Aluminum Long "C" Servo Bracket with Ball Bearings Two Pack (2x13 = $26)

2x Aluminum "L" Connector Bracket Two Pack (2x6 = $12)

buy at http://www.lynxmotion.com/c-87-standard-hitec-brac..

1x Quadruped Body Kit 2 ($20)

buy at http://www.lynxmotion.com/c-88-chassis-acc.aspx

_Printed Parts

4x Lower Leg

4x Inner Tread Cover

4x Outer Tread Cover

4x Main Motor Hub

8x Side Motor Hub

_Electronics

1x Raspberry pi 2 ($40)

1x camera module ($8)

1x usb wifi adapter ($5)

1x Mini Maestro 18-Channel USB Servo Controller ($40)

1x raspberry pi motor hat ($22)

4x Hobby DC motor ($5)

12x HS-645MG Servo Motor (30 each x 12 = $360)

1x BAT-05 6V / 2800 mAH Ni-MH Rechargeable Battery ($27)

1x 6V - 12V NiMH / NiCd Smart Charger ($22)

buy at http://www.robotshop.com/

Frame = $62

Electronics = $530

Total + tax + shipping = $650

Note: The most costly part of this project is the servos. If you want to cut back you can use the HS-422 servo($10 each) servo partially or fully, but you might need to get a lighter battery if you intended to use a full HS-422 build.

Step 2: Building the Frame

Making the frame is pretty self explanatory. The site have it own instruction on constructing the leg. Just follow the instruction on this site http://www.lynxmotion.com/images/html/build82a.htm. If you bough all the correct part, you should be able to build 4 3dof leg. Afterward, make the body and attached the 4 leg on it.

Step 3: Preparing the Raspberry Pi

First, hook up your raspberry pi to a monitor/tv that had an HDMI port. The pi will boot up and ask you for password and username. The default username is "pi" and default password is "raspberry". Once you log in , type raspi-config and set the files-ystem to used all of the sd card space. Then go to advanced option and enabled the camera and ssh. Now we need the raspberry pi to make a connection with the wifi. Follow these step:

  • sudo nano /etc/network/interfaces

you will see the text layout as follow

  • auto lo
  • iface lo inet loopback iface eth0 inet dhcp
  • allow-hotplug wlan0
  • iface wlan0 inet manual
  • wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
  • iface default inet dhcp

change it to

  • auto lo
  • iface lo inet loopback iface eth0 inet dhcp
  • allow-hotplug wlan0
  • iface wlan0 inet manual
  • iface default inet dhcp
  • ssid="your network name"
  • psk="network passowrd"

Step 4:

Once you had wifi connection on your raspberrypi, type in the following command:

  • sudo apt-get update
  • sudo apt-get nodejs
  • npm install socket.io
  • npm install express
  • npm install pololu-maestro
  • npm install i2c

The command should install nodejs and the necessary libraries for this project.It should create a folder call node_modules. And we need to move into this modules an install one more libraries.

This should install the library for using nodejs to communicate with the servo controller. Next we need to install the software for camera streaming. Use these command for installing the camera :

Now install the camera into you raspberrypi and run this command.

  • uv4l --driver raspicam --auto-video_nr --width 640 --height 480 --encoding h264 --framerate 20 --vflip yes --hflip yes
  • Then put this address in your browser : http://raspberrypi:8080/stream. You should see a stream with less than .5 s latency

Now that we had all the necessary tools on the raspberrypi. It time to make a webserver and control it through wifi.