AUTONOMOUS VISUAL ROVER Sean Day Diante Reid Liem Huynh
Feb 25, 2016
AUTONOMOUS VISUAL ROVER
Sean DayDiante ReidLiem Huynh
Project Overview
To create a vehicle that autonomously follows a moving object using color detection
To design a low cost, mobile robot that can track objects based on image processing
Implement all of the parts using the Atmel microcontroller
Track any color specified by the user
Requirements
Operate solely on 7.2 V Ni-Cad battery for at least 1 hour
Keep a minimum of 10 inches away from target at all time.
Have a dimension of no more than 12x15 inches
Track object within color range “0 80 0 80 50 255 “
Top Level DiagramCMUCam
2+
Maxbotix LV-EZ2
SensorsManage
rController
Actuators
Environment Images
UltrasonicSignals
PWM
Centroid and Servo Location
Target Location
Target Range
PWM
Software
Hardware
Environment
Target
Microcontroller - Arduino
ATMEGA328 USB Interface Cross-platform Easy to program Open source Well documented
Microcontroller Specs
Operating Voltage : 5V Digital I/O : 8 Pins PWM: 6 Pins Analog Input : 6 Pins Flash Memory : 32kB Clock Speed : 16 MHz Communication : UART
Printed Circuit Board
PCB123 software
$100 student credit from sunstone
Prototyped on the Arduino board
2 layer design Using through
hole and surface mount techniques
Image Processing Goals
Color detection Ability to distinguish between
specified color and other colors in environment
Detect centroid of specified object
Blob Detection
Middle Mass Determines if a group
of connecting pixels are related to each other by surroundings
Efficient in identifying separate objects in a scene
Image Processing Techniques
Edge Detection Canny detection Edges are areas
where a jump in intensity from one pixel to the next occurs
Able to reduce the amount of data processed by filtering out useless information
CMOS vs. CCD Sensor
CMOS CCD (charge coupled device)
Transistor based Flexible design Average picture
quality Low power
consumption Low Price
Analog device Rigid design Excellent picture
quality Power hungry Very Expensive
Choosing a Vision System
CMUcam1 CMUcam2 CMUcam3 AVRcam Logitech QuickCam Orbit AF Webcam
+ RoboRealm
CMUcam Comparison
Price Frame Rate Resolution RAM ROM SPEED
CMUcam1 $109.99 17 fps 80x143 136 bytes 2048 words 75 MHz
CMUcam2 $179.99 50 fps 176 x 255 263 bytes 4096 words 75 MHz
CMUcam3 $239.99 26 fps 352x288 64 KB 128 KB 60MHz
AVRcam $99.00 30 fps 88x144 700 bytes 512bytes 16MHZ
CMUcam2+ Vision Sensor
•Performs image processing duties for AVR•Track user defined color blobs at up to 50 Frames Per Second•Track motion using frame differencing at 26 Frames Per Second•Gather a 28 bin histogram of each color channel•Process Horizontally Edge Filtered Images
Why CMUcam2+
Compact Size Frame Buffering Affordable price Multiple Servo
Control User Support Histograms
CMUcam2+ Software Open Source
Programmable CMUcamGUI Allows user to see
from camera’s perspective
Power NeedsPart Watts
Ultrasonic Sensor
50mW
H-Bridge 10WSteering Servo 75mW
CMU cam2+ 1.5W
Voltage Regulation
All parts on AVR can run off of 5volts DC
Stepping Down 7.2 Volt battery
LM7805 regulator
Ultrasonic Sensor Objectives
Purpose is to keep AVR within 10 inches of target object
Be able to fit on front bumper Will not loose the target object Low power consumption
Ultrasonic Sensor ComparisonSensor Model
Price Size Output Power
SRF08 $64.00 1.7” x .79” x .67”
Analog/Digital
75mW
Ping Range Finder
$29.95 0.85 “ x 1.8 “ x 0.6 “
PWM 100mW
Maxbotics $27.95 .79 “ x .87 “ PWM/Analog
10mW
Maxbotics Ultrasonic Sensor Maxbotics EZ2 Will easily fit on
bumper Only draws 2mA of
current Easy to interface
Interfacing the Sensor
Pulse Width Modulation 147 microseconds/inch
Analog Input (Vcc/512)/inch
Communication RS-232 Serial Predetermined distance controlled by C
progam
H-Bridge
Pololu High-Power Motor Driver 18v15
70A stall current 1.3” x 0.8” 15A continuous
output Max PWM
frequency 40Hz
Batteries
Chassis
4 wheel drive 2 front turning
wheels 2 rear wheels for
going backward and forward
1 DC motor 1 Hobby servo Rooms for
expansion
DC Motor
Speed 19,200 Rpm
Stall Current 32A
No Load current 1.3A
Operating Voltage 3.6 to 6V
HiTec HS-311 Servo
Pan, Tilt, Steering
Max speed .15sec/60 °
Stall Torque 42 -49 oz/in
Operating Voltage 4.8-6.0V
Sensors Manager
getRange() Returns range from Ultrasonic Sensor in
inches getCentroid()
Returns centroid location of target in x and y format
getPan() Returns location of panning servo
getTilt() Returns location of tilting servo
Centroid tracking Tracking the object’s centroid
1 44 88
Coordinate Transformation CMUcam to Body alignment Body Frame, CMUcam Frame
β
Servo Positions
128, 0°
210, 90°46, -90°
β Servo Pos
Offset
-90° 46 -440° 128 090° 210 44
Offset = 44 sin( β )
Centroid_B = Centroid_C + Offset
Negative Stop Positive Stop
Navigation Flowchart
Initialization
ForwardStraight
Forward Right
yes
no
Object's range <=10
inches?
Centroid > 54Forward
Left
Centroid < 34
else
Stop
Object's range = 10
inches? yes
Reverse
no
yes
yes
yes
Object Found?
noyes
Good Detection?
no Enter Search Mode
Search Mode If no detection is found, AVR will go
into search mode Pan from negative stop to positive
stop (180°)
Pan leftObject Found? Servo Pos
> -90° & < 0?
no
yes
no
Pan rightObject Found?
Servo Pos < 90°?
no
yes
noExit
yes
yes
No detection
Fault-tolerance
AVR stores the last 10 detections into an array: 1 for hit 0 for miss
Confident level is defined by taking the average of the stored values
If confident level > 70% then it’s a good detection
1 1 1 0 0 1 1 0 1 1
Confident level= 70% Good Detection!!
Proportional Controller
P (Range) Plant+
-
Input Output
Error
• Variable speed depends on range from target• P gains need to be tuned• All control process is done through software
Testing
DC Motor/ H-bridge test Range Finding Test CMUcam2+ Pan and Tilt Test
Testing
Locomotion test with ultrasonic sensor stationary target
Locomotion test with ultrasonic sensor moving target
Locomotion test with CMUcam2+ with stationary target
Locomotion test with CMUcam2+ with moving target
Locomotion test with all sensors
FinancesPart
NumberPart Name Qt
y
Expected Cost
Real Cost
Development Cost
Order Date
Manufacturer
N/A Basic Breadboard
1 $11.95 $11.95 $11.95 6/30/09 SparkFun
LV-EZ2 Ultrasonic Range Finder Maxbotix LV-
EZ2
1 $27.95 $27.95 $27.95 6/30/09 Maxbotix
N/A Arduino Starter Kit
1 $49.95 $49.95 $49.95 6/30/09 Arduino
SN754410
H-Bridge 3 $12.00 --- $12.00 7/21/09 Texas Instruments
R245-CMUCAM2+-Plus
CMUcam2+ 1 $169.00 $169.00 $169.00 7/21/09 Acroname
FT232R USB to Serial kit
2 $29.00 $29.00 $58.00 7/21/09 FTDI Chip
n/a Battery/charger 2 $55.45 $55.45 $55.45 8/28/09 Tenergy
HS-311 RC servo 2 $25 $25 $25 9/3/09 HiTec
ROB-09107 H-Bridge 1 $39.95 $39.95 $39.95 11/01/09 Pololun/a Chassis 1 $109.00 $109.00 $109.00 10/01/09 Exceed-RC
LM 7805 Voltage Regulator 6 $10.00 $10.00 $10.00 9/01/09 Fairchild Semiconductors
n/a PCB 2 $100.00 $0.00 $100.00 11/12/09 Sunstone
n/a Miscellaneous 17 $25.00 $25.00 $25.00 --- ---
Total Cost --- 40 $664.25 $552.25 $693.25 --- ---
Thank you, feel free to ask any questions…please come next door for demo