The Raspberry Rover is a small RC car with a Raspberry Pi for a brain. It is controlled over a Wi-Fi network through a TCP/IP socket, and streams back live video from an on-board webcam. It even sports ‘Night Vision’ for navigation in the dark.
At just 3 inches wide, 6 inches long, and 4 inches tall, the Raspberry Rover can explore even the tightest of spaces. Its four brushed DC motors and fixed-axle turning also provide a tight turning radius. The tilting webcam, modified to be infrared-sensitive, and accompanying bright infrared LEDs even allow for expeditions in completely dark environments.
The Raspberry Rover gets power from six rechargeable batteries and a switching voltage regulator for a steady five volts. The batteries have a 2600 mAh capacity and can power the rover for more than five hours, even in maximum power consumption situations.
The Raspberry Pi code is written in C++, which communicates with a Java application on my computer. The C++ code on the Raspberry Pi receives the commands from the computer and translates it to PWM signals for the four motors. The Java application on the computer uses the arrow keys for driving controls, sliders to adjust speed and steering sensitivity, and various other keys to tilt the webcam and toggle the infrared headlights.
I chose to use the Raspberry Pi because it is a lightweight, low-cost device with plenty of power for this application. Additionally, it runs Linux and has two USB ports, so using a Wi-Fi dongle and webcam with a Raspberry Pi is simpler than using these devices with an Arduino or other common solutions. The ability to write and compile code on the Raspberry Pi itself is also an invaluable feature. If all of this was not reason enough to use the Pi, it also its 700 MHz processor and 512 MB of RAM makes it capable of handling future additions to the project, such as computer vision with the webcam.
The project as a whole went smoothly. However, I did run into some challenges including space limitations on the chassis, maintaining responsive control while streaming video, and working around the fact that the Raspberry Pi only has one hardware PWM output. If you want to make your own Raspberry Rover, or similar project, check out the Raspberry Rover’s project page for tips on how to overcome these issues. The site also has a parts list, full wiring diagram, thoroughly commented source code, pictures,videos, and more.
Once (if) I stop driving the Raspberry Rover, I would like to start another new project using my Raspberry Pi. I think it would be great for dorm room automation, or perhaps a dedicated mini-server. For now, though, I am going to enjoy my new toy. Check it out in the video below, which shows the webcam stream next to an aerial view of the Raspberry Rover driving around my room.