Page 2 of 11 FirstFirst 1234567891011 LastLast
Results 11 to 20 of 104

Thread: programming deadreckoning gps software?

  1. #11
    Raw Wave
    Join Date
    Jun 2003
    Posts
    1,823
    Most tunnels are straight

    Not where I live where we have a zig-zag tunnel, curved and all sort


    I don't think you need to take into account tilt at all, but I think you WOULD need to calibrate the system based on incoming GPS date when it was first installed.

    How about if you are traveling at a constant speed then you loose the GPS signal? The accelerometer will then register zero reading since you are not changing speed...what would the software now present to the GPS program? would it be 0 mph or the last known speed from the GPS? ok lets say the last known speed is 30mph while going up the hill...the car will naturally slow down but the accelerometer think you are accelerating because the car tilted upward. In this case the 30mph last known speed is now wrong, the accelerometer is also wrong thinking the car is now moving at 100mph when infact you have stopped

  2. #12
    Raw Wave
    Join Date
    Jun 2003
    Posts
    1,823
    A good read here :

    http://www.gpspassion.com/forumsen/t...TOPIC_ID=11302

    I can see it working but the hill is still puzzeling me...or if you go on a straight road but banked to one side the accelerometer now think you are turning?

  3. #13
    Raw Wave
    Join Date
    Jun 2003
    Posts
    1,823
    Depending on where the accelerometer was installed on the car (front to back), your G's would be different

    Im not sure if thats true because the angle of the whole car in respect to the horizontal plane of the earth is the same wherever you put the sensors.

  4. #14
    Low Bitrate
    Join Date
    Jan 2004
    Posts
    59
    Quote Originally Posted by djkriz
    Hi,

    I read an article about the new tomtom-go device, which uses some sort of software-based deadreckoning system, in case it looses its fix.
    I think it wouldn't be too difficult to program something like that for the pc, but I don't have enough programming experience to do so...

    Basically the software should do this:
    - input the standard NMEA sentence of the GPS using a com-port
    - check if the fix is lost (in case of a tunnel)
    - in case the fix is lost : continue to send computed NMEA data, based on the last known position, in combination with speed and heading
    - output the NMEA data to a (virtual) comport, feeding navigation software

    Then you would be able to still have a (virtual) fix, even when you suddenly lose the fix, caused by bad skyview (tunnels etc)

    I hope anyone can program such a little piece of software???
    To do it right is more complicated. Tomtom probably has navigation data like maps and so it if loses fix it has the information of what the last road you are on- possibly what your intended destination is AND speed and bearing. So then the problem becomes very simple, just display that the user is on the last road he is on going at the same speed and bearing. You can do this with just speed and bearing, but if the road curves through a tunnel then you are going to be off.

  5. #15
    Constant Bitrate jpelzer's Avatar
    Join Date
    May 2004
    Location
    NYC
    Posts
    173
    I think you guys are confusing yourselves:

    if you go on a straight road but banked to one side the accelerometer now think you are turning?
    No. The accelerometer is not affected by gravity in this way. It would likely register a SMALL change when you transitioned from level to banked travel, but on a straight banked road (if they exist), the acceleration will read 0.

    Im not sure if thats true because the angle of the whole car in respect to the horizontal plane of the earth is the same wherever you put the sensors.
    I'll give you a more concrete example of why calibration is important:

    Consider if we put the sensor in a school bus. We'll choose 4 possible locations:

    A) Over the front wheels
    B) Somewhere between front and rear wheels
    C) Over the rear wheels

    OK, the bus driver is turning left onto a side street, so making a very sharp turn, going slow. Let's say it takes them 5 seconds to complete the turn, then they accelerate straight.

    In A), the sensor senses acceleration to the left, relatively strongly because the front of the bus needs to move about 20 feet in 5 seconds.
    In C), the sensor senses some acceleration, but it is (in the case of a bus) much less than the front, because the rear wheels actually trace a shorter path than the fronts, so they might only have to cover 10 feet in that same 5 seconds.
    B) would be a value somewhere between A and C

    How about if you are traveling at a constant speed then you loose the GPS signal? The accelerometer will then register zero reading since you are not changing speed...what would the software now present to the GPS program? would it be 0 mph or the last known speed from the GPS? ok lets say the last known speed is 30mph while going up the hill...the car will naturally slow down but the accelerometer think you are accelerating because the car tilted upward.
    If you are traveling 30 mph and lose signal, you are right, acceleration will be 0, so the program would continue displaying 30mph.

    Tilt has nothing to do with an accelerometer. They can be USED as tilt sensors, but they are not affected by tilt in the way you are implying. A sensor at a 45deg angle that is moving at a constant speed will register the exact same value a sensor laying flat would: zero.

    If you went up or down a hill and your speed changed, the acceleration would be applied to the last known speed, and the approximate speed would be calculated.
    Bush: Proof that humans really did evolve from apes.

  6. #16
    Raw Wave
    Join Date
    Jun 2003
    Posts
    1,823
    Hmm...

    Im not so sure if I get the explanation you given...Im still worried about the hill thing...sorry

    Ok for simplicity sake supposed we have 1 axis sensor that output -100 to +100. A -100 means negative acceleration and +100 is positive acceleration of 1g. A reading of 000 mean no g at all. A no g reading doesnt mean zero speed, we could be travelling at 0mph or 100mph with no acceleration...ok thats good so far.

    Supposed the sensor is currently reading 010 on a flat road at 0mph and we nullified/calibrate it such that it now read 0g and 0mph is the software computed value. The car is now accelerated to 30mph in a straight line, software done some calculation on the sensors value and now shows 30mph. The GPS also now read 30mph...great all seems ok so far.

    The GPS lost the lock and its now saying we need to switch over to deadreckoning. Last known gps speed is 30mph, the calculated speed from the sensor is still also 30mph. The car is still traveling at constant speed of 30mph and we now hit a hill...the sensor then say we are accelerating hard (but we are not). The software then compute the read values from the sensor and say we are now reaching 100mph after some time. The software will still continue to think we are accelerating because the value of the sensors will never go to zero since the car is up the hill even though we have now stopped.

    On the situation above, what we have is 30mph last know speed from the gps which hardly have any use now, a sensor giving out value of 030 constantly, the software is forever increasing the calculated speed when the car infact has stopped...what do we do now? we couldnt have nullified or recalibrated the sensors as theres no way of telling if the sensor is subjected to earth g by tilting (car on a hill) or by accelerating the car. Even if we did calibrate the calculated speed from the gps last known speed, but all that data is useless now...that car could have done alot of things within 10 seconds. We may not have gps signal for as long as 1 mins

    If we were going down the hill and stop as we switch over to deadreckoning, the sensors now read negative g (car braking/reversing). The software then interprete this as if the car is now reversing forever I just cant see it working properly, we have to remember we still got the car turning left/right to consider. The turning need more accuracy, imagine being out by 5 degs for some times or worst still if the software think the steering is turned when its supposed to be straight...that much error would end up ploting the car doing a u-turn

    I know for sure that the accelerometer cannot distinguish between the gravitational acceleration and a true car acceleration. This is why I cannot use the sensor directly to measure the lateral g of a car cornering hard on a race track. The car will tilt to the side as it take the corner hard and therefore adding extra g reading. I only want the lateral g and not added with "some" earths g caused by tilting. Compare a reading on a race car and a bus, the bus can probably show more latteral g due to softer suspension.


    Well I dont know...I may have missed something, I havent used my sensors for about a year and Ill really like to find a use for it...its just collecting dust. TomTom managed to get it to work so I guess it just a matter of getting more infos about it.

    How would you exactly do the calculations? and for all different cases? and when to apply. Let us know what you find when you get to play with the phigets.

    Thanks

  7. #17
    Variable Bitrate
    Join Date
    Jun 2004
    Location
    Sydney, Australia
    Posts
    273
    How would a lateral accelerometer tell the difference between a fast sharp corner, and a quick u-turn?

    I still think a compass and speed sensor would be the most accurate (and easy to program). I found a compass phidget last night for $22 pounds (british), and i'm not sure how to get the speed in, but a simple digital frequency input wouldnt be too difficult to find i think

  8. #18
    Constant Bitrate jpelzer's Avatar
    Join Date
    May 2004
    Location
    NYC
    Posts
    173
    Quote Originally Posted by Dominik
    How would a lateral accelerometer tell the difference between a fast sharp corner, and a quick u-turn?
    It couldn't. That's why we're planning on using a 2-axis accelerometer, so we get a vector... So we can tell if the car is slowing down. I think.

    That said, I really don't know if this will work... Which is why my 2-axis Phidget is on order. I believe that a "real" solution would be to link into the OBDII port for speed, and then have a single radial accelerometer to determine turn rate. Only problem is that I wasn't able to find any premade USB-connected radial accelerometers for less than several hundred dollars, even though the sensors themselves are cheap.

    And having said THAT, I also have an OBDII interface. If the Phidget isn't enough, I'll add it as a secondary data source. OBD doesn't refresh that often, so I'm not sure how great its value will be. We'll see.

    Quote Originally Posted by Ricky327
    I know for sure that the accelerometer cannot distinguish between the gravitational acceleration and a true car acceleration.
    You're confusing yourself. An accelerometer measures acceleration. Period. Not gravity. If we wanted to measure gravity, we could use a scale, and tilting it compared to the earth would change the reading.

    If you have an accelerometer, and it is parallel to the ground, not moving, it will measure 0g. If it is 45 degrees to the ground, not moving, it will measure 0g. 90 degrees to the ground, not moving, 0g. It won't measure any value other than zero if its actual speed is not changing.

    If you dropped the sensor and its measurement axis was perpendicular to the ground, then YES, it would measure 9.8m/s^2 until it hit the ground. But it REALLY WAS ACCELERATING. Just tilting it will not result in a reading. And it certainly won't result in a constant reading of acceleration.

    In the case of a car, if it goes up the hill, at the same speed (let's say it has SuperCruiseControl(tm), and doesn't vary its speed at all as it hits the hilll), the accelerometer will measure 0 the whole time, on both axiis. The accelerometer is NOT AFFECTED BY GRAVITY, unless gravity is allow to act on it. For the hill, the accelerometer will measure the difference between engine power and (gravitational pull + friction (rolling and fluid, assuming you aren't braking)), otherwise known as acceleration. Not tilt.

    I promise, the accelerometer will work nearly perfectly for speed. We won't be seeing 100mph, etc.

    But it has yet to be proven whether our turn approximations will be accurate. My phidget should be here sometime next week. I'll write an app to log NMEA + acceleration data, then write something to parse them. We'll see how well we can match them up.
    Bush: Proof that humans really did evolve from apes.

  9. #19
    Raw Wave
    Join Date
    Jun 2003
    Posts
    1,823
    How would a lateral accelerometer tell the difference between a fast sharp corner, and a quick u-turn?

    It cant tell, it will just register a change in g with a different intensity and period. It cant even tell if you tilt the car on its side...the earth g will simply interfere with the reading. A person hitting the side of your car will register a g.

    Yes I do beleive its best to sense the speed by tapping at the speedometer. A sensor can be placed at the steering wheel, this detect how much angle the wheel is turned by...or is it better to use compass/gyro?

    Building a GPS without having to connect to other parts of the car is a challenge...how reliable it is another story.

  10. #20
    Constant Bitrate jpelzer's Avatar
    Join Date
    May 2004
    Location
    NYC
    Posts
    173
    Quote Originally Posted by Ricky327
    It cant even tell if you tilt the car on its side...the earth g will simply interfere with the reading.
    I give up.
    Bush: Proof that humans really did evolve from apes.

Similar Threads

  1. Wtb: Gps Software And Gps Mouse!!!!
    By HitmanZ in forum Classified Archive
    Replies: 2
    Last Post: 08-03-2004, 10:56 PM
  2. CoPilot Software or USB GPS Receiver package
    By Zip-Lock in forum Classified Archive
    Replies: 5
    Last Post: 05-13-2004, 08:30 AM
  3. Replies: 2
    Last Post: 01-06-2004, 10:19 PM
  4. GPS software
    By waylonh in forum Input Devices
    Replies: 3
    Last Post: 11-25-2003, 07:48 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •