280 likes | 430 Views
Poetry in Motion The Ruff Ryder Experiment. Project #26 TA: Matt Olson Nick Bafaloukos Jerry Kao Samit Patel. Introduction. Multi-Rover Network Lab – Professor Bullo Project Goals Utilize GPS and compass data to track the relative positions of 2 vehicles
E N D
Poetry in MotionThe Ruff Ryder Experiment Project #26 TA: Matt Olson Nick Bafaloukos Jerry Kao Samit Patel
Introduction • Multi-Rover Network Lab – Professor Bullo • Project Goals • Utilize GPS and compass data to track the relative positions of 2 vehicles • Transmit GPS coordinates of a manually- controlled “prey” vehicle to an autonomous “predator” vehicle through wireless communication • Allow the “predator” to compare its location to that of the “prey” and take the necessary measures to “chase” it
Objectives • Interfacing GPS and compass with test board • Setting up a private network between “prey” and “predator” • Allowing for data transmission/acquisition between the “predator” and the “prey” • Implement a basic comparison algorithm in conjunction with a control code that allows the “predator” to determine its location and successfully “chase” the “prey”
Hardware • Traxxas E-Maxx Electric Monster Truck $369.99 • Properly sized to fit PC104 board and sensors • 20 minutes of continuous running • Mounting brackets for embedded system control • 2 6-cell, 7.2 Volt batteries • Garmin GPS 36 $170 • Differential correction capabilities • Garmin GPS 16 LV $180 • WAAS correction capabilities • NMEA 0183 data communication • RS-232 serial connection • PS/2 power connection (3.3 to 6 Vdc regulated) • No bundled software • Vector 2x Compass $50 • TTL compatible @ 5 Vdc regulated • Interface needed (parallel port chosen) • No bundled software • Parallel port protocol
Hardware (cont’d) • Pontech SV203B Servo Controller $59 • RS-232 serial connection @ 4.8V to 6.0V • ASCII character strings commands • Jumptech VNS-786 PC104 board $900 • 12 Vdc input for 5 Vdc – 12 Vdc operations • NoMein Nickel Metal-Hydride battery (@ 9.6 Vdc) • Astrodyne DC/DC converter (20W) • 30 minutes of available run time • HP 802.11b Wireless-LAN Card $90 • DSSS: direct sequence spread spectrum • PCC-104A+ PCMCIA Card Adapter from Adastra $136
Software Overview • GPS code • Allows the GPS unit to display data on the PC via the serial port • Compass code • Allows the compass to display data on the PC via the parallel port
Software Overview (cont’d) • Socket code • Allows the “predator” to bind to a specific IP address • The “predator can then listen to that IP by opening up a port • Opens up the lines for data transmission/acquisition • Servo Controller code • Instructs the “predator’s” movement in accordance with its relative position to the prey
Software Overview (cont’d) • Multi-threaded code • Incorporates GPS, compass, socket, and servo controller code into one main code composed of 4 threads • Allows the “predator” to create a listening socket for GPS data acquisition from the “prey” • Comparison code then allows the “predator” to determine its relative position to the “prey” by utilizing its own set of GPS and compass data • Servo code finally instructs the “predator’s” movements as specified by the comparison code
Software Overview (cont’d) • Comparison scheme Outside Inputs Coordinates & GPS signal quality for Car 1 Coordinates & GPS signal quality for Car 2 Orientation for Car 2 (Degree2) Distance (eg. 30 meters) Car 1 Other Variables Degree 1 Distance Degree1 (eg. 120º) Instructions Degree2 (eg. 45º) WHILE (signal quality is NOT BAD) If Distance > 10 meters, go FORWARD If Degree1 > Degree2, turn LEFT If Degree1 < Degree 2, turn RIGHT If Degree1 = Degree2, go FORWARD Else STOP Car 2
Field Testing of Sensor Inputs • GPS Accuracy to determine how close we know the actual • positioning of one car relative to another car • Used different days, different conditions, different GPS • Open field no obstructions • Clear • 1st GPS • WAAS Readings
Cloudy • 1st GPS • Lost one satellite • WAAS readings
Cloudy • 2nd GPS • Lost one satellite • WAAS readings
Clear • 2nd GPS • WAAS readings
GPS coordinates consistent • Standard Deviation = 0.7 m
Testing the GPS next to CSL • 5 meters from building • 20 meters away from each other -Cloudy -No WAAS Readings -3 satellites -Clear -No WAAS Readings -3 satellites
Limitation of GPS next to buildings • Stop cars once GPS or WAAS signals lost
Difference in tilt error due to orientation of the compass in relative to the Earth’s magnetic field
Testing the Controller • Servo Controller • Communicates via serial port • Utilized 2 of 8 servo motor controllers • Speed control • Steering • Tested through remote-login into vehicle • Controlled the speed and steering through the use of a shell script which allowed for user input as a means of a “remote control”
Integration • Implementation of a very compressed (2.5 MB) Linux distribution on the “predator” • Statically compiled executables into binaries • Remotely accessing the “predator” vehicle in order to commence the “chase”
Challenges • Hardware inefficiency • Garmin 36 vs. Garmin 16 • Limited on-board memory • Flash Memory • Data Warehousing • Power availability • Mounting hardware issues
Challenges (cont’d) • Software inefficiency • Linux – uncharted territory • Linux Router Project • Wireless network authentication by vehicle • Initial data acquisition by GPS • Initializing all of the individual threads in order bring all of the code together
Successes • Interfacing compass and GPS with PC • Successfully setting up a private network between the PC and the “predator” over wireless LAN • Implementing multi-thread code allowing for data transmission/acquisition, position comparison, and proper “chase” instructions • Accurate localization of vehicles using sensors ALL OBJECTIVES ACCOMPLISHED!
Recommendations Buy a three-axis compass to increase the accuracy of the compass Larger disk-on-chip hard drive Determine sharpness of turns in accordance to the angle variation of the two cars Modify transmission method to incorporate multicasting (allows multiple-cars to be running on the same network)
Special Thanks • Professor Francesco Bullo • Graduate Assistant Timur Karatas • Graduate Assistant Karl Robrock • Professor Christoforos Hadjicostis • TA Matt Olson