A raspberry pi based robot using the raspberry pi camera and opencv for image processing.
This project is sadly enough still on hold, but hopefully I'll continue with it soon. Since the raspberry pi 3 is out, I'll probably use that one instead.
Unfortunately this project has been on hold for some time now. The Ni-MH-battery pack and its MAX713 charge circuit performed poorly, and will therefore be replaced by a Li-ion pack. In order to perform the image processing faster, The Raspberry Pi model B+ will be replaced by a Raspberry Pi 2.
Alright, it's been a busy week and now the hardware is almost finished. I've been having some problems with controlling the motors using software PWM. I'm gonna switch to a hardware PWM module for that more precise PWM signal. I've been playing around with the raspberry pi camera and opencv and I'm really getting the hang of it. I'm only doing some template matching in opencv so far, so there's no real face detection implemented yet.
This project started a couple of months ago so I've already done a lot of work. First step was to make a 3D model of the robot in Sketchup. By doing this I could easily plan the placement of components on the robot. After the 3D model was finished I purchased all the components needed. The RP5 tracked chassis has an internal battery pack (6* 1,2V rechargeable NiMH). I constructed a battery charging circuit based on the MAX713 charge controller and connected the battery pack to this board. I connected the output from the charging circuit to two individual SMPS-circuits, one 6V-output for the motors, and one 5V-output for powering the Raspberry pi and the servos. The Raspberry pi camera is mounted on a camera platform that allows both panning and tilting. The motors are connected to a PWM module that allows the motors to be controlled from the raspberry pi via hardware PWM. The raspberry pi is equipped with a WiFi dongle for easy programming over VNC. Speaking of programming, the robot will be programmed entirely in Python, mostly because I haven't tried python before and I wanna try something new.