PACMAN Path-Following Autonomous Convoy with Multiple Asynchronous Nodes Preliminary Design Review ECE 4007, L01 DK2 March 17, 2010 Kyle Lemons, Heather Macfie, Tri Pho, G. M. Ewout van Bekkum Georgia Institute of Technology School of Electrical and Computer Engineering Project Overview • Proof-of-concept prototype • Two or more Autonomous Convoy Vehicles (ACVs) • Path-follow algorithm • Cost: $300 • Military convoy applications • Reduction of human requirements • Supplement to existing navigation systems • Alternative to complex intervehicle communications Design Objectives • Path-following o Follow distance: 100 cm o Max deviation from path: 10 cm • Autonomous operation o Speed: 60 cm/s o Turning radius: 50 cm • Passive operation • Modular ACVs Project Schedule • Completed on or ahead of schedule o Parts ordered o Wheel encoders and infrared cameras mounted, wired, and communicating with FPGA o PWM implemented to control steering and acceleration o FPGA powered and equipped with basic track and follow • Ultrasonic range finders may be unnecessary • Upcoming work o Custom PCB development begins March 22 o Algorithm determination and optimization begin March 29 o Sensor bar mounting begins April 2 System Module Interaction Current Prototype Component Protocols and Standards Component Protocols and Standards Component Protocols and Standards Component Protocols and Standards Robot Vision • Options for optically tracking preceding vehicle: o Vision sensor: CMUcam o Laser rangefinder: Neato Robotics’ Revo LDS o Infrared sensor: Nintendo’s Wii Remote CMUcam Revo LDS Wii Camera Images: http://www.cmucam.org; http://www.hizook.com/blog/2009/12/20/ultra-low-cost-laser-rangefindersactualized-neato-robotics; http://www.gadgetspage.com/toys-games/how-does-the-wii-remote-work.html Wii Remote's PixArt Infrared Camera • Sensitive to any bright light source o IR pass filter isolates IR wavelengths • Fast embedded blob tracking o Up to four blobs at once o Refresh rate of 100 Hz • Communication over I²C protocol o Supports fast mode (400 kbit/s) • Field of view of 40° o Initially troublesome Resolved Problem: Configuration of Camera and IR LEDs • Initially, the sensor bar (the IR LEDs) was to be placed horizontally o The issue arose for discerning the difference between turning car and distant car o Stereoscopic vision for depth perception was the fix Limited Field of View • In order to meet design specifications, more than two cameras were needed • Stereoscopic vision required an overlap of camera field of views Thinking in the Wrong Direction • Attempting to compensate for poor initial configuration • Reorient the sensor bar vertically o Resolves turning ambiguity o Simplifies relative location calculation • Requires three cameras instead of seven for a 120° FOV Relative Location: Direction Relative Location: Distance PWM Control: Steering and Throttle • Pulse Width Modulation (PWM) o Controlled by signal duty cycle o Variable duty cycle o Constant frequency o Simple to implement in hardware • RC platform includes PWM control of steering and throttle o Experimentally determined timings o 50 Hz frequency, limited to 5% to 10% duty cycle Steering Control • Steering PWM control signal o Calibration required per RC unit o Control module uses 1024 steps • Servo motor o Servo motor controller has unknown PWM resolution o Experimentally determined behaviors Symmetrical "left" and "right" sensitivity Centered around 7.1% Throttle Control • Throttle PWM control signal o Large "idle" dead-band for throttle o Higher "forward" sensitivity than "reverse" o Brake mode function problems • Drive motor o Requires higher throttle to "kick-start" movement Will prove problematic when trying to move slowly o Higher top forward speed than reverse Odometry • Where are we on the measured path • Estimate our location with odometry o Optical Flow Optical mouse Web-cam o Rotary Encoder Magnetic Photo-interrupters Photo-reflector Image: http://www.mccoop.de/images/street-video.png Dead Reckoning with Differential Drive • Measure rotation of rear wheels • Calculate change in heading and position • Implement in the FPGA as a module in VHDL Quadrature Wheel Encoding • Pattern inside rear wheels • Quadrature encoding o Gray code output o Double resolution o Simpler acceptance testing Electrical Design of Wheel Encoders • HLC1395-002 Photo Reflector from Honeywell o Infrared LED and photo-transistor in the same package o 100 mW power dissipation o 0.6 mA photo-transistor on current • Inverting Schmitt Trigger o Debounce and convert analog to discrete output Physical Design of Wheel Encoders Problems with Wheel Encoding • What if the wheels slips? o Remove power to the rear wheel • Maximum resolution? o No optical specifications other than “unfocused” o Testing showed ~36-48 steps per revolution • Duty cycle in the gray code exactly 50%? o Photo-reflector measures reflectance, but what if it sees more than one step? o Optimize duty cycle of the light areas on the pattern Path Generation • Markers denote lead vehicle position • "Visual Snakes" • Options o Regression o Cluster averaging • Issues for consideration o Computational complexity o Path accuracy Path Traversal • Comparing vehicle location with path generated • Options o Absolute reference frame o Relative reference frame o Moving reference frame Absolute reference • Issues for consideration o Numeric overflow o Pre-/Post-processing o Compounding rounding error Relative reference Moving reference PACMAN • Final Prototype o More cameras o Two ACVs o Path-following • Current Prototype o One camera o Limited field of view o Basic point-and-steer follow o Coasts to a stop Questions But first! A demo...