Technology

Python

The robot is programmed with Python language, which is a user-friendly and widely-used programming language in computer vision area with numerous open-sourced algorithms that can be easily obtained from the internet.

OpenCV

OpenCV(Open Source Computer Vision) is designed for computational efficiency and with a strong focus on real-time applications. Written in optimized C/C++, the library can take advantage of multi-core processing. It has C++, C, Python and Java interfaces and supports Windows, Linux, Mac OS, iOS and Android.

Raspberry Pi Camera Module

The Raspberry Pi Camera module enables us to take high definition video. It supports 1080p30, 720p60 and VGA90 video. For our purposes however, a resolution of 320x240 is sufficient. This enables us to 12fps using image processing.

Raspberry Pi 2 Model B

The image processing software is powered by a Raspberry Pi 2 model b. It boasts a 900MHz quad-core ARM Cortex-A7 CPU and 1GB RAM, offering us a powerful means process input data.

Chassis Kit

The chassis used is the SparkFun, ROB-12089, 4 wheel drive robot. It measures 165mm x 157mm x 65mm and includes four 48:1 DC gearboxes. Its large surface area and versatile motors make it great for testing different components.

Full Circuit Design

The ciruit design is based on H-bridge. All motors have an identical circuit.

Take the front left motor for example. When the wheel must turn forwards, Pin 8 will be at 3.3V, and Pin 10 at 0V. This causes Q1, Q2 and Q6 to go into saturation mode, and all others will be off. This induces a voltage across the motor, which draws up to 0.16A of current and turns the wheel runs.  The diodes protect the motor by providing a current path for when one set of transistors is switched off and the others are switched on.

The resistor values were initially determined to be R1 = 6kΩ, R2 = 10kΩ, R3 = 825Ω, R4 = R5 = 325Ω. These calculations can be found in the Appendix.

When tested, it was found that the circuit could run the motor at 0.16A.The wheels were found to be spinning at 7 revolutions per second, corresponding to a horizontal velocity of ~143cm/s, or ~4.7feet/s. Hence, it is able to keep up with a normal walking pace.

This circuit was built on two breadboards with the power rails connected. This allowed one breadboard to be placed on each side of the robot’s chassis, which would minimise the length of wires from the circuit to the motors, minimising the noise and interference between wires.

 

Edge Detection

The camera uses an edge-detection to identify the location of the device worn by the user. Edge detection works by scanning the image for discontinuities in brightness and highlighting those points. Since the image on the wearable device is a black square on a white surface, it generates a unique signature which can then be used as a tracking point.

 

Technical Specifications

Dimensions 30cm*60cm*50cm (H*L*W)
Weight To be defined
Chassis material Aluminium-magnesium-silicon (6000) alloy
Fatigue resistance value 2000 Newtons/cm
Product lifespan 3 - 5 years
Shelf life 10 years
Battery shelf life 13 months - 2 years
Camera 5MP omnivision 5647 camera module
Max camera resolution 2592*1944
Processor 900MHz quad-core ARM Cortex-A7
Memory 1GB
Image processing algorithm Edge detection
Software Python with OpenCV libraies
Manufacture price £100
Target sale price £150

Componet Price List

Component Quantity Price each / £
Raspberry Pi RPI Standard Camera Board Report 1 16.95
RS Pro USB 2.0 Cable Assembly, Male USB A Plug to Male USB Micro B Plug, 150mm 1 2.41
TE Connectivity Right Angle Type A USB Connector, Through Hole Socket 1 1.63
Multi-Chassis - 4WD Kit (Basic) 1 27.6
Zip Switch MS-333 Slide switch 6 Pin DPDT On-Off-On 1 0.73
Raspberry Pi 2 Model B Quad Core 1GB RAM 1 26.4
Raspberry Pi Camera Board Video Modue 1 15.99
RS Pro USB 2.0 Cable Assembly, Male USB A Plug to Female USB A Socket, 1m 1 2
Texas Instruments LM1084IT-5.0/NOPB, LDO Voltage Regulator, 5A, 5 V, 2.6 → 25 Vin, 3-Pin TO-220 1 1.87
Raspberry Pi USB Wireless Adapter 1 7.19
Wurth Elektronik Right Angle SMT Type B Version 2.0 Micro USB Connector Socket, 30 V ac, 1A 629105 WR-COM 1 1.19
MIKROE-512, 10 Piece Breadboard Jumper Wire Kit 2 2.16