Introduction: Quadruped With Camera

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.

Step 5: The Software

In the raspberry pi , simply type the following command to download the code from my github account

Then

cd Husky

  • ./start.sh (to start the program)

The bash file will start 2 different program. Once is for the webserver the other is for the streaming module

You can view the code at https://github.com/HackHusky/Husky.git

Step 6: First Person POV

Step 7: 3rd Person POV

Comments

author
tomatoskins made it! (author)2015-12-09

So cool! I always love robots like this!

About This Instructable

1,404views

14favorites

License:

Bio: Making Robo
More by HuskyRobo:Wolf : IoT Multi-Terrain QuadrupedFenrir: An Open source dog robot Husky I : Quadruped Live Streaming Bot with Raspberry pi
Add instructable to: