Navigational System For An Autonomouse Farming Vehicle Group 942
Project Topic Navigational System for an Autonomous Farming Vehicle
Group GPS 942 ► Frank K Ocran – Introduction ► Darius Plausinaitis – System setup ► Saulius Pusinskas – Test results ► Jon Johansen Wedel – Improvements ► Ramunas Dirmeikis – Improvements and conclusions
Introduction
Trends in autonomous vehicles ► Autonomous vehicles are enabled by advances in - vehicle concept and mechanical design - vehicle concept and mechanical design - sensors (eg GPS) - sensors (eg GPS) - vehicle electronics (vectronics) - vehicle electronics (vectronics) - control and planning - control and planning - user interface - user interface
Recent trends in GPS Technology ► Removal of SA ► Satellite Based Augmentation System such as WAAS, EGNOS ► Carrier phase DGPS leading to millimeter accuracy ► Third frequency L5
Why autonomous farming vehicles? ► Decreased labour costs ► Increased machinery operation times ► Possibility of using smaller farm engines ► High efficiency - less damage crops due to over fertilization - less damage crops due to over fertilization - No overlapping during seeding, spraying etc - No overlapping during seeding, spraying etc
John Deere 5510
8200 Autonomous Agriculture Tractor Autonomous Agriculture Tractor.
Autonomous Orchard Sprayer
Problem Statement ► To design and implement part of a navigational system for an autonomous farming vehicle ► System will output the position and heading of vehicle using RTK algorithms with 3 GPS receivers in DGPS set up.
Limitation of the Project ► Receivers used was of Topcon and Ashtec manufacture and radio transceivers used was also of Satel manufacture. ► Test was not carried out using an actual farming vehicle. ► Main focus was the implementation of RTK positioning. ► Steering of the vehicle, digital mapping of the fields and roads for vehicle to navigate ► Other sensory input systems
System Requirements ► Top operating straight line speed is 10m/s ► Distance between two on board receivers is at least 2m ► Variance of the position of any of the on-board receivers is less than 10cm ► Variance of the direction of vehicle is less than 2 degrees ► Minimum update rate of GPS receiver was 5Hz
Method
Why this method? ► An efficient way ► Easy to control and monitor the problems ► Easy to control the work force ► Preliminary results are obtained quickly
System Setup
a b h GPS antenna “Rover 2” GPS antenna “Rover 1” Reference GPS antenna ► What is needed to navigate an autonomous vehicle? Position of the vehicle Heading of the vehicle
System interface Processing unit ► System interface ► Positioning ► Filtering Radio modem GPS Main engine Filtering Positioning
System Interface
► Main engine Purpose: data mining and data exchange between all functions and presentation of the results Communication ► The problem: to transfer data from the reference receiver ► The solution: to use two radio modems Problem: Matlab is too slow Solution: a C code is used for data mining
System Interface: Conclusions ► The C code is able to record the data at the 5Hz rate or even faster ► The available radio links are not always stable, especially when the vehicle is moving ► The downside: calculations must be done in the post processing mode
Positioning
Positioning ► The problem: To calculate position and heading of the vehicle with sufficient accuracy ► The solution: To use Differential GPS to obtain desired accuracy
Positioning: How The DGPS Works Two receivers (i,j) – two satellites (k,l): Ionosphere k ij l The single differences: The double difference: Troposphere
Positioning: Tests And Results
Filtering ► The problem: Some of the errors are random and are not removed by the DGPS ► The solution: To use a Kalman filter
The Kalman Filter ► Problem: How to describe and predict the trajectory of the vehicle? ► Solution1: let’s use vehicles velocity and curvature of the trajectory ► Solution2: let’s extrapolate next point on the basis of the last three points
Filtering: Tests and Results
Final Tests
The System To Test GPS receivers, radio transceiver, PU Main engine Positioning algorithm Kalman filtering Hardware layer Main engine layer Positioning layer
Test Session 1 - Setup ► Static tests with one reference and one rover receiver ► Short time span (1 minute) measurements
Drift Of The Baseline Coordinates
Sudden large jumps of coordinates
Test session 1 – errors discovered GPS receivers, radio transceiver, PU Main engine Positioning algorithm Kalman filtering Hardware layer Main engine layer Positioning layer
Test session 1 - conclusions The performance of the system is unacceptable The performance of the system is unacceptable All the tests should be redone after finding and removing the error source All the tests should be redone after finding and removing the error source Version control should be used for the code Version control should be used for the code Pinpointing the errors took substantial time
Test session 2 - setup ► Static test ► Kinematic test
Unacceptable positional accuracy
Coordinate transformation problem
Unsatisfactory Kalman filter performance
Positioning performance against time
Test session 2 - conclusions ► The system developed is not able to perform within the specifications ► The computational time satisfies the requirements
Final Tests - Discussion ► Complex system needs complex treatment ► Hardware and software itself should be tested prior to using it in the system tests ► Longer time span measurements should have been done
Improvements and Conclusion
Improvements ► What has been done since project submission? ► The Kalman filter ► The DGPS function
The Kalman filter ► Improvements proposed Include more states in the filter Include limitations in the filter Find alternative approaches
Principle of the improved filter
The DGPS function ► Include Doppler measurements ► Solve integer ambiguities ► Use more epochs in the solution ► Use information about relative position of rovers
LAMBDA Reintroduction of the LAMBDA method
Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m
Memory Use of the previous epoch for position estimation
Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m
Memory and LAMBDA Combining more epochs with the LAMBDA method
Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m
Yang, Goad and Schaffrin method Another way of estimating integer ambiguities
Yang, Goad and Schaffrin method ρ L1 = r + ε ρL1 ρ L2 = r + ε ρL2 Φ L1 = r + λN L1 + ε ΦL1 Φ L1 = r + λN L1 + ε ΦL1 Φ L2 = r + λN L2 + ε ΦL2 Φ L2 = r + λN L2 + ε ΦL2Where: ρ L1, ρ L2 - double differenced code measurements Φ L1, Φ L2 - double differenced phase measurements r - double differenced geometric range r - double differenced geometric range
Yang, Goad and Schaffrin method Matrix notation :
Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m Standard Deviation Avg: m Standard Deviation R1: m Standard Deviation R2: m
Conclusions on the improvements ► Position algorithm Move from search techniques Increase epoch number Kalman filter
Conclusions on the improvements ► Position algorithm ► Filtering algorithm New approach
Conclusions on the improvements ► Position algorithm ► Filtering algorithm ► Main Engine Real Time DSP
Conclusions on the improvements ► Position algorithm ► Filtering algorithm ► Main Engine ► Hardware Radio link GPS receivers
Final Conclusions
The End Thank you for your atention