Boundary Estimation and Tracking Algorithms Final Presentation 29 August 2007 Trevor Ashley (HMC) Yuan Rick Huang (UCLA) Problem and Objective Design and implement hardware and software for the UCLA Applied Math Lab’s 2nd Generation Testbed Vehicles in order to track the boundaries of “floating,” multi-colored occlusions via a posteriori data acquisition (i.e. no a priori knowledge of occlusions is given to sensing vehicle other than an initial condition) 29 August 2007 2 Background of Project Eleven week summer research project UCLA Applied Mathematics Laboratory Project involvement: Zhipu Jin (UCLA) Yuan Rick Huang (UCLA) Trevor Ashley (HMC) 29 August 2007 3 Outline Overview of 2nd Generation Testbed Algorithm Verification Testing with Virtual Boundaries Sensor Selection and Testing Empirical Tests of Chosen Sensor UUV-gas Algorithm Time-Corrected Algorithm Sensor Height Determination Boundary Color Selection Coalescence of Vehicle and Sensor Hardware/Testbed Modifications CUSUM Filter 29 August 2007 4 Second Generation Overview Consists of: 29 August 2007 Robotic Vehicles Vehicle Testbed Vision Software Cameras Various Receiver/Transceiver modules 5 Robotic Vehicles Car and Tank Vehicles ZipZaps RC toys Plantraco Micro R/C 3.7 V 850 mAh Lithium Polymer battery Provides approximately 40 minutes continuous runtime Easily rechargable Atmel Atmega8 Processor Gives support for stacked PCBs Servomotors allow for variable speed and dynamic steering Onboard decision making and data acquisition Sharp Proximity Sensor 29 August 2007 6 Vision System Cameras wired to Windows-based CPU (via IEEE 1394) running software designed with OpenCV and C++ Vehicles identified by binary-coded tags CPU sends location and orientation information to vehicles via Radiotronix Wi.232DTS module 29 August 2007 7 The Testbed Layout Rectangular 640 x 890 pixels 0.0937 inch/pixel 29 August 2007 8 Stages of Algorithm Implementation Stage 1: Algorithm Verification Stage 2: Sensor Selection and Testing Test algorithms with “virtual,” softwarebased boundaries Obtain empirical data Stage 3: Algorithm Debugging with Sensor Hardware modifications CUSUM filter 29 August 2007 9 Virtual Boundaries • Rectangle • • Circle • • Vertices at: (100,100), (100,750), (300,750), (500,100) Center at (320,430); Radius of 200 pixels Ellipse • Center at (320,430); Semimajor axis of 200 pixels; Semiminor axis of 250 pixels 29 August 2007 10 Control Algorithms for Boundary Tracking UUV-gas [1] Time-corrected algorithm [2] [1] Multi-UUV Perimeter Surveillance. Kemp, et al. [2] Environmental Boundary Tracking and Estimation Using Multiple Autonomous Vehicles. Jin and Bertozzi. 29 August 2007 11 Simple Control Law UUV-gas algorithm: next 29 August 2007 if outside boundary previous 0 if on boundary if inside boundary 12 Tracking the Virtual Rectangle Limitations: Observations: 29 August 2007 High speed creates wide turning radius Steering angle limited by +/- 25o Covers large amount of space not relevant to boundary 13 Tracking the Virtual Circle Limitations: Same as rectangle Observations: Covers large amount of space not relevant to boundary Covers redundant space Risk of instability caused by detection error 29 August 2007 14 Tracking the Virtual Ellipse Limitations: Observations: 29 August 2007 Same as rectangle Covers large amount of space not relevant to boundary Less risk of instability 15 Advanced Control Law next Time-corrected algorithm: ~ 0.5 ( t 2 ref ) if outside boundary previous ~ 0.5 ( t 2 ref ) if inside boundary Includes time difference between ~t crossing points on boundary, Uses a reference angle, ref 29 August 2007 16 Slowly Tracking a Straight Line Parameters: Limitations: Initial conditions create wide starting angle Observations: 29 August 2007 = 0.0003 ref = 25o Traces boundary more efficiently than UUV-gas 17 Quickly Tracking a Straight Line Parameters: Higher speed creates wider turning radius Observations: 29 August 2007 Speed: 40% faster Limitations: = 0.0003 ref = 25o Offers no benefit over UUV-gas 18 Algorithm Summary UUV-gas Inefficient Covers irrelevant and redundant space High probability of becoming unstable Time-dependent algorithm Efficient depending on speed of vehicle 29 August 2007 19 The Role of the Sensor Processor will decide state based on sensor data Vision system no longer necessary to track boundary Floating occlusions block vehicle from cameras 29 August 2007 20 Sensor Selection and Testing Phototransistor Fairchild Semiconductor TT Electronics 29 August 2007 QRB1134 OPB608V 21 QRB1134 Characteristics: 29 August 2007 Linear decline in current for distances greater than 0.15 inches until 0.35 inches Moderate current drawn from collector 22 OPB608V Characteristics: 29 August 2007 Large rise from 0 inch to 0.1 inch Logarithmic drop after 0.1 inch Large collector current drawn between 0.1 inch and 0.5 inch 23 Sensor Selection QRB1134 OPB608V Optimal Range: 0.2 to 0.35 inches Optimal Range: 1 to 1.5 inches Selected: QRB1134 Ease of implementation on vehicle Low power consumption 29 August 2007 24 Sensor Circuitry QRB1134 possesses: Sensor Emitter 29 August 2007 IR Phototransistor (behaves like NPN BJT) IR LED Phototransistor in emitter follower configuration VDD set to 5 V 25 Height and Color Characteristics QRB1134 Phototransistor Characteristics Black Green Yellow Red Teal Gray 5 4 Voltage / V • 3 2 • 1 • 0 0 0.1 0.2 0.3 0.4 0.5 Distance / inch 29 August 2007 0.6 0.7 0.8 0.9 1 Figure shows dependence of height and tape color on voltage Voltage represents Vout Distance is measured from sensor tip to colored tape 26 Height and Color Characteristics • QRB1134 Phototransistor Characteristics Zoomed Black Green Yellow Red Teal Gray Voltage / V 5 4 • 3 • 2 0.33 0.43 Distance / inch 29 August 2007 Statistically significant difference Yellow, red, teal • 1 0 0.23 Testbed (gray), black, green • Similar height-voltage characteristics Significantly different from testbed, black, green 27 Sensor Sweep Tests 29 August 2007 Sensor attached to ruler at fixed height Ruler dragged across sample of testbed with various tapes Voltage measured with Dynon ELAB080 oscilloscope 28 Sweep Characteristics: Teal • • • • • 29 August 2007 Height: 0.25 in Average Speed: 1.6 in/s Voltage Trigger: 0.8584 V 32K samples Sample Frequency: 19.9883 KHz 29 Sweep Characteristics: Teal • • • • • 29 August 2007 Height: 0.375 in Average Speed: 1.7 in/s Voltage Trigger: 0.6121 V 32K samples Sample Frequency: 19.9883 KHz 30 Sweep Characteristics: Black • • • • • 29 August 2007 Height: 0.25 in Average Speed: 1.7 in/s Voltage Trigger: 0.8174 V 32K samples Sample Frequency: 19.9883 KHz 31 Sweep Characteristics: Black • • • • • 29 August 2007 Height: 0.375 in Average Speed: 1.7 in/s Voltage Trigger: 0.5300 V 32K samples Sample Frequency: 19.9883 KHz 32 Sensor Testing Summary Fairfield Semiconductor QRB1134 Distance of 0.25 inches between sensor and tape Low power consumption Stable region appropriate for vehicle Sensor measures distinguishing voltages Black and teal tapes chosen Invisible to tracking cameras 29 August 2007 33 Sensor Mounting Proximity sensor removed Voltage output sampled by Atmega8 ADC 29 August 2007 ADC maps [0,5] volts to integer values [0,1024] Sensor glued to front of car Remaining hardware unchanged 34 The Physical Boundary 29 August 2007 Boundary created by junction of teal and black tape Modeled after concave Jordan curve Experiment setup 35 CUSUM Filter Necessary to filter collected ADC data Reduce random error Convert data to binary states 29 August 2007 36 CUSUM Filter cont. Upper 0 k 0 U (k ) min(max( 0, z (k ) B cu U (k 1)), U ) k 0 Lower 0 k 0 L( k ) max(min( 0, z (k ) B cl L(k 1)), L )k 0 29 August 2007 37 CUSUM Filter cont. Dual CUSUM filter Three states from which to distinguish: onteal, on-black, on-testbed Two CUSUM filters with concatenated outputs Outputs two binary bits: 29 August 2007 00 01 11 10 := on testbed := on black tape := on teal tape not used 38 CUSUM Parameter Testing CUSUM1 (bit 1) 29 August 2007 Uo=350 cl=120 Cu=120 Lo=-350 B=150 CUSUM2 (bit 2) Uo =950 cl =630 cu =630 Lo =-950 B =150 39 CUSUM Parameter Testing CUSUM1 (bit 1) 29 August 2007 Uo=350 cl=120 Cu=120 Lo=-350 B=150 CUSUM2 (bit 2) Uo =950 cl =630 cu =630 Lo =-950 B =150 40 CUSUM Parameter Testing CUSUM1 CUSUM2 (bit 1) (bit 2) 29 August 2007 Uo=350 cl=120 Cu=120 Lo=-350 B=150 Uo =1300 cl =630 cu =630 Lo =-1300 B =150 41 Final CUSUM Parameters CUSUM1 (bit 1) Uo=350 cl=120 Cu=120 Lo=-350 B=150 CUSUM2 (bit 2) Uo =10,000 cl =630 cu =630 Lo =-10,000 B =150 Upper threshold set to 70% of maximum Lower threshold set to 100% of minimum 29 August 2007 42 Final CUSUM Parameters 29 August 2007 43 State Transition Diagram 29 August 2007 44 Tracking the Physical Boundary Algorithm: Parameter: 29 August 2007 UUV-gas = 15o 45 Tracking the Physical Boundary cont. Algorithm: UUV-gas Parameter: = 15o 29 August 2007 46 Tracking the Physical Boundary cont. Algorithm: Parameters: 29 August 2007 Time-dependent algorithm = 0.0003 ref = 25o 47 Conclusions and Suggestions for Future Work Further testing needed to critically determine effectiveness of timedependent algorithm Implement cooperative boundary tracking P2P networking between multiple vehicles Implement multiple sensors Reduce error variance 29 August 2007 48 Acknowledgments • • • • Zhipu Jin Andrea L. Bertozzi Andrew Bernoff Rachel Levy 29 August 2007 49