UBlox 5: Velocity & Position actual timing

After spending many months tracking down all possible sources of error, I have come to the conclusion that the velocity and position reported by the UBlox LEA5H are not correct for the time reported by the module, but actually from many milliseconds in the past.As part of a larger project, I am using the LEA5H reporting at 4Hz to observe and correct IMU data and biases. I have the time-pulse pin configured and triggering an external interrupt on my micro-controller to capture the exact time as dictated by the GPS's preceding UBX-TIM-TP message. This can then be correlated with the iTOW field in the NAV-VELNED & NAV-POSLLH messages to determine what local system time the velocity and position are supposed to correspond to. Keeping a history of what my IMU thought the velocity and speed was, I can compare the two at that moment and use the reported estimated accuracy to correct my internal estimates. Capturing all of this data in real-time at a rate of 200Hz, it is recorded to an on-board microSD card which can be analyzed post flight using parameter estimation software.What I have found is that the speed and velocity indicated by the GPS are actually from an earlier time, and worse, they don't seem to be off by the same amount of time.The position seems to lag by ~128ms and velocity by ~205ms. That is a lot of time for the accuracy that I am trying to achieve. These numbers pass visual inspection of the data as well as simulations and actual flight tests.I'm wondering if anyone has any experience with this issue or can comment.

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • Hi Bill,

    The timepulse pin isn't primarily for time tagging the messages. They keep the jitter of the pulse (nominally 1 pulse per second) as low as possible so that you can sync / calibrate your hardware. This can be used to keep two different GPS receivers in sync or to get the typical microprocessor board low cost oscillator calibrated really well for example. It is also good for doing what you are doing, namely accounting for communciation and processing delays from the origination of the message in the U-blox to receipt by your microprocessor.

    The latency that you are seeing is from the internal solution algorithm of the U-Blox, and will be found on all receivers to varying degrees. The receiver is mesauring the time of flight from the GPS satellites and forming the position and velocity solutions internally, but what you see It is the output from the internal velocity and position filters so there is a lag. It will vary with the type of filtering that you select in the unit as well (there are multiple settings, like "pedestrian" or "aircraft 4-G'). We've never been able to get a description of expected lag times from U-blox, but have measured about the same on velocity that you are showing...

    We've been using U-Blox for about 8 years now, have it on most of our boards ( www.ryanmechatronics.com ). Your project sound like it is on the high end of precision timing, shoot us an email if you think we can help...
    Ryan Mechatronics LLC
    Ryan Mechatronics Home Page
This reply was deleted.

Activity

DIY Robocars via Twitter
Jan 28
DIY Robocars via Twitter
RT @Heavy02011: ⁦@diyrobocars⁩ : A Home-brew computer club* for Connected Autonomous Driving. talk at #piandmore ⁦@PiAndMore⁩ on Jan 23rd h…
Jan 23
DIY Robocars via Twitter
RT @a1k0n: New blog post! Deep dive into my ceiling light based localization algorithm which runs in 1ms on a Raspberry Pi 3: https://t.co/…
Jan 23
DIY Robocars via Twitter
Great new guide to using @donkey_car https://custom-build-robots.com/donkey-car-e-book-en
Jan 23
DIY Robocars via Twitter
RT @chr1sa: The next @DIYRobocars virtual AI race is tomorrow morn at 9:00am PT. You can watch live on Twitch https://www.meetup.com/DIYRobocars/events/275268196/
Jan 22
DIY Robocars via Twitter
New version of Intel OpenBot! This resolves many of the issues with the first version, including a much smoother tr… https://twitter.com/i/web/status/1352395636369313798
Jan 21
DIY Drones via Twitter
Using ArduRover with an RTK GPS https://ift.tt/2N9I3RO
Jan 18
DIY Drones via Twitter
Jan 18
DIY Robocars via Twitter
Jan 18
DIY Robocars via Twitter
Jan 15
DIY Robocars via Twitter
Jan 15
DIY Drones via Twitter
Jan 14
DIY Robocars via Twitter
RT @Heavy02011: @diyrobocars : A Home-brew computer club* for Connected Autonomous Driving on Jan 23rd, 2021 https://www.meetup.com/Connected-Autonomous-Driving/events/275728684/ #Meetu…
Jan 14
DIY Robocars via Twitter
Jan 14
DIY Robocars via Twitter
RT @Heavy02011: ⁦@diyrobocars⁩ Autonomous Driving Assembly at #rC3. join us at https://rc3.world/rc3/assembly/diyrobocars-f1tenth/ ⁦@f1tenth⁩ ⁦@DAVGtech⁩ ⁦@DWalmroth⁩…
Jan 11
DIY Robocars via Twitter
RT @chr1sa: New car designs coming for our next @DIYRobocars @donkey_car virtual race on the 23rd. Choose any one you want at race time Le…
Jan 11
More…