Path-Following Autonomous Convoy with Multiple Asynchronous Nodes
Kyle Lemons, Heather Macfie,Tri Pho, G. M. Ewout van Bekkum
PACMAN
Georgia Institute of TechnologySchool of Electrical and Computer Engineering
Final Project PresentationECE 4007, L01 DK2
April 26, 2010
Project Overview• Proof of Concept Prototype• Autonomous Convoy
Vehicles (ACVs)• Path-follow Algorithm• Modularity• Passive Operation• Cost: $450
• Military convoy applications• Reduction of human
requirements• Supplement to existing
navigation systems• Alternative to complex inter-
vehicle communications
Final Design
Motor Steering Servomechanism
Photo-Reflectors
Battery Bay
Final Design
Final Design
Altera DE2 FPGA Development Board
Final Design
Electronic Speed Control
Final Design
I/O Daughter Board
Final Design
Steering Servomechanism
Electronic Speed Control
Left Photo-Reflector
Right Photo-Reflector
Final Design
GPIO to Altera DE2 FPGA Development Board
Final Design
Nintendo Wii Sensor Bar
Final Design
IR Band-pass filter
Final Design
I/O Daughter Board
• Interface between the FPGA and the rest of the systemo Photo-Reflector circuit including analog to discrete
conversion for odometryo Bidirectional 3.3v to 5v level shiftingo IR Camera array with 35 degrees between cameras
IR Camera Array• Mounted three infrared cameras taken from Nintendo's Wii
Remoteo Slightly overlapping field of view between cameras results
in an overall system horizontal FOV of 105 degrees
IR Emitter Bar• Purchased after-market Sensor Bars
o Poor angular response resulted in unreliable tracking when not straight to the camera
o Ambiguity arose since the sensor bar could be interpreted as two or four blobs
• Custom machined sensor bars with extra angled LEDso Distance between IR LEDs was not
sufficient to be reliably tracked at far distances
• Borrowed the more expensive official Nintendo branded sensor bars from peers
VHDL System Block Diagram
VHDL System Block Diagram
VHDL System Block Diagram
VHDL System Block Diagram
VHDL System Block Diagram
Odometry and Coordinate System• Decided to maintain an absolute non-moving coordinate
system in the odometry module.o Origin is fixed at midpoint of the rear axle of the car's
initial position
• Rollover is not a concern as millimeter precision still allows for an operating range of more than 4000 kilometers in either axis
Waypointed Path-following• Waypoints to the preceding vehicle are generated by
calculating their relative displacement in the absolute coordinate system
• Compensation for the disparity between rear wheel axle and camera position uses orientation information from the odometry module
Waypointed Path-following• Waypoints to the preceding vehicle are generated by
calculating their relative displacement in the absolute coordinate system
• Compensation for the disparity between rear wheel axle and camera position uses orientation information from the odometry module
Waypointed Path-following• Waypoints to the preceding vehicle are generated by
calculating their relative displacement in the absolute coordinate system
• Compensation for the disparity between rear wheel axle and camera position uses orientation information from the odometry module
Waypointed Path-following• Waypoints to the preceding vehicle are generated by
calculating their relative displacement in the absolute coordinate system
• Compensation for the disparity between rear wheel axle and camera position uses orientation information from the odometry module
Waypoint Queue• Queue maintains:
o Waypointso Current ACV positiono Total sum of all waypoints
• Relative coordinateso Waypoints relative to previouso Current relative to last passed
• Absolute coordinateso Reads from odometryo Calculates and uses deltaso Ignores overflow
Adding Future Waypoints• Given:
o Sum of waypointso Current positiono Position of LED bar
• Calculate:o Vision - QueueSum + Current
• Add to end of queue
Waypoint Steering and Throttle Control• Compare current and first waypoint output from queue
o Gives distance and angleo Constantly updated
• Steers using linear approximationo Deadband in centero Configurably aggressive turns
• Throttle gets "kickstart" and returnso Overcome momentum requiremento Sustain slower speed
Waypoint Queue Maintenance• Approaching next waypoint
o Linear distance approximationo Drops waypoint earlyo Avoids unstable turning angles
• Minimum waypoint sum for followingo Linear distance approximationo Disables output to ESCo Avoids collisions
Acceptance Testing Overview• Path-following
o Max deviation from path Using a fixed set of waypoints, test runs show ACVs
pass over waypointso Follow distance
Images captured from test runs using known distances to verify actual following distance
o Turning radius Driving the lead vechicle around a turn and observing
the ACV following performance• Modular ACVs
o Placing multiple ACVs in a line and driving the lead vehicle while observing following behavior
Path-following Characteristic
In-motion Specifications
The PACMAN
Objectives
• Path-followingo Follow distance: <200 cmo Max deviation from path: <10 cm
• Autonomous operationo Speed: >40 cm/so Turning radius: <200 cm
• Passive operation
• Modular ACVs
Objectives and Achievements
• Path-followingo Follow distance: <200 cm ~98 cmo Max deviation from path: <10 cm ~9 cm
• Autonomous operationo Speed: >40 cm/s ~60 cm/so Turning radius: <200 cm ~133 cm
• Passive operation
• Modular ACVs
Objectives and Achievements
• Path-followingo Follow distance: <200 cm ~98 cmo Max deviation from path: <10 cm ~9 cm
• Autonomous operationo Speed: >40 cm/s ~60 cm/so Turning radius: <200 cm ~133 cm
• Passive operation
• Modular ACVs
Demonstrate the feasibility of an
autonomous path-following system
Future Work
• Integration of system into a full-scale convoy• Improvements to hardware during full-scale conversiono More accurate and flexible
odometry, such as optical flow
o More capable vision systemo More robust processing unit,
including a floating point unit and a trigonometry unit
Questions?