GPS Dead Reckoning Project
Archiver
Posts: 46,084
All:
I would like to thank all of you who helped with a couple of
critical questions. I have successfully completed my project.
The objective was to build an interpreter/dead reckoning (DR) box
using the STAMP that would take a GPS NMEA sentence input and pass the input
through if the GPS input was valid.
If the GPS input was not valid, or the GPS not connected, the STAMP
would read a wheel counter (such as available from a bicycle magnetic
odometer) and a heading source (flux -gate or other source of heading
information), calculate a DR position from a last known fix, and output the
DR position.
I found that a flux gate or other electronic compass was too
expensive right now (at least $80 for reasonable accuracy), so I decided to
use a handheld compass and a switch bank to input heading as 8 bits (0-255
corresponding to 0-360 degrees) through a 74HC251 (ran out of serial ports
on the stamp, so had to find a way to get 8 bits in through 4 pins). Because
most of the use will be on a bicycle in a city with straight streets the
range of possible headings is constrained and use of a manual heading input
is not a real problem.
It also turned out that the magnetic wheel rev counter was very
noisy and switch debounce required use of a 555. (I needed to have the
stamp do other things so could not use software debounce).
I almost ran out of program space, so had to work out using two
slots (put the initialize routine in slot 0 and the main program in slot 1).
It turns out that I could now cram it all into a single slot, but the
flexibility of two slots made it much easier and less stressful.
One of the big challenges was learning how to use sin/cos in twos
complement in the stamp, as well as understanding the limitations of integer
math. Help from the group got me on the right track.
If anyone finds that they are interested in seeing the schematic or
code, just drop me a note.
Chris
This e-mail message may contain legally privileged and/or confidential
information. If you are not the intended recipient(s), or the employee
or agent responsible for delivery of this message to the intended
recipient(s), you are hereby notified that any dissemination,
distribution or copying of this e-mail message is strictly prohibited.
If you have received this message in error, please immediately notify
the sender and delete this e-mail message from your computer.
[noparse][[/noparse]Non-text portions of this message have been removed]
I would like to thank all of you who helped with a couple of
critical questions. I have successfully completed my project.
The objective was to build an interpreter/dead reckoning (DR) box
using the STAMP that would take a GPS NMEA sentence input and pass the input
through if the GPS input was valid.
If the GPS input was not valid, or the GPS not connected, the STAMP
would read a wheel counter (such as available from a bicycle magnetic
odometer) and a heading source (flux -gate or other source of heading
information), calculate a DR position from a last known fix, and output the
DR position.
I found that a flux gate or other electronic compass was too
expensive right now (at least $80 for reasonable accuracy), so I decided to
use a handheld compass and a switch bank to input heading as 8 bits (0-255
corresponding to 0-360 degrees) through a 74HC251 (ran out of serial ports
on the stamp, so had to find a way to get 8 bits in through 4 pins). Because
most of the use will be on a bicycle in a city with straight streets the
range of possible headings is constrained and use of a manual heading input
is not a real problem.
It also turned out that the magnetic wheel rev counter was very
noisy and switch debounce required use of a 555. (I needed to have the
stamp do other things so could not use software debounce).
I almost ran out of program space, so had to work out using two
slots (put the initialize routine in slot 0 and the main program in slot 1).
It turns out that I could now cram it all into a single slot, but the
flexibility of two slots made it much easier and less stressful.
One of the big challenges was learning how to use sin/cos in twos
complement in the stamp, as well as understanding the limitations of integer
math. Help from the group got me on the right track.
If anyone finds that they are interested in seeing the schematic or
code, just drop me a note.
Chris
This e-mail message may contain legally privileged and/or confidential
information. If you are not the intended recipient(s), or the employee
or agent responsible for delivery of this message to the intended
recipient(s), you are hereby notified that any dissemination,
distribution or copying of this e-mail message is strictly prohibited.
If you have received this message in error, please immediately notify
the sender and delete this e-mail message from your computer.
[noparse][[/noparse]Non-text portions of this message have been removed]
Comments
An interesting project. If I interpreted it correctly, you built a dead
reckoning system to guide the bike for short durations that occur
between readings of a GPS system. Accurate GPS readings are then used
to update absolute position, and to override any inaccurate predictions
of the dead reckoning system.
I'd be interested in the accuracy of your dead reckoning system. For
example, after 20 seconds of dead reckoning, how accurate was the
predicted position?
Dennis
Original Message
From: cholm@m... [noparse]/noparse]mailto:[url=http://forums.parallaxinc.com/group/basicstamps/post?postID=N1nN3C19Q7t6uMlb5ULnDoxzXoz5lla5Bla8w-O_P0bq9llZNFTNsKvl2M9uxO3jEaMtzUlKhw]cholm@m...[/url
Sent: Tuesday, August 20, 2002 8:59 AM
To: basicstamps@yahoogroups.com
Subject: [noparse][[/noparse]basicstamps] GPS Dead Reckoning Project
All:
I would like to thank all of you who helped with a couple of
critical questions. I have successfully completed my project.
The objective was to build an interpreter/dead reckoning (DR)
box using the STAMP that would take a GPS NMEA sentence input and pass
the input through if the GPS input was valid.
If the GPS input was not valid, or the GPS not connected, the
STAMP would read a wheel counter (such as available from a bicycle
magnetic
odometer) and a heading source (flux -gate or other source of heading
information), calculate a DR position from a last known fix, and output
the DR position.
I found that a flux gate or other electronic compass was too
expensive right now (at least $80 for reasonable accuracy), so I decided
to use a handheld compass and a switch bank to input heading as 8 bits
(0-255 corresponding to 0-360 degrees) through a 74HC251 (ran out of
serial ports on the stamp, so had to find a way to get 8 bits in through
4 pins). Because most of the use will be on a bicycle in a city with
straight streets the range of possible headings is constrained and use
of a manual heading input is not a real problem.
It also turned out that the magnetic wheel rev counter was very
noisy and switch debounce required use of a 555. (I needed to have the
stamp do other things so could not use software debounce).
I almost ran out of program space, so had to work out using two
slots (put the initialize routine in slot 0 and the main program in slot
1). It turns out that I could now cram it all into a single slot, but
the flexibility of two slots made it much easier and less stressful.
One of the big challenges was learning how to use sin/cos in
twos complement in the stamp, as well as understanding the limitations
of integer math. Help from the group got me on the right track.
If anyone finds that they are interested in seeing the schematic
or code, just drop me a note.
Chris
This e-mail message may contain legally privileged and/or confidential
information. If you are not the intended recipient(s), or the employee
or agent responsible for delivery of this message to the intended
recipient(s), you are hereby notified that any dissemination,
distribution or copying of this e-mail message is strictly prohibited.
If you have received this message in error, please immediately notify
the sender and delete this e-mail message from your computer.
[noparse][[/noparse]Non-text portions of this message have been removed]
To UNSUBSCRIBE, just send mail to:
basicstamps-unsubscribe@yahoogroups.com
from the same email address that you subscribed. Text in the Subject
and Body of the message will be ignored.
Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/
Would very much appreciate the schematic and any info on the project as I
am working a similar project with micro gps logging devices. please e-mail
me at :
mocenter@e... Hope to hear from you soon
sincerely,
mike m
Original Message
From: <cholm@m...>
To: <basicstamps@yahoogroups.com>
Sent: Tuesday, August 20, 2002 11:58 AM
Subject: [noparse][[/noparse]basicstamps] GPS Dead Reckoning Project
> All:
>
> I would like to thank all of you who helped with a couple of
> critical questions. I have successfully completed my project.
>
> The objective was to build an interpreter/dead reckoning (DR) box
> using the STAMP that would take a GPS NMEA sentence input and pass the
input
> through if the GPS input was valid.
>
> If the GPS input was not valid, or the GPS not connected, the STAMP
> would read a wheel counter (such as available from a bicycle magnetic
> odometer) and a heading source (flux -gate or other source of heading
> information), calculate a DR position from a last known fix, and output
the
> DR position.
>
> I found that a flux gate or other electronic compass was too
> expensive right now (at least $80 for reasonable accuracy), so I decided
to
> use a handheld compass and a switch bank to input heading as 8 bits (0-255
> corresponding to 0-360 degrees) through a 74HC251 (ran out of serial ports
> on the stamp, so had to find a way to get 8 bits in through 4 pins).
Because
> most of the use will be on a bicycle in a city with straight streets the
> range of possible headings is constrained and use of a manual heading
input
> is not a real problem.
>
> It also turned out that the magnetic wheel rev counter was very
> noisy and switch debounce required use of a 555. (I needed to have the
> stamp do other things so could not use software debounce).
>
> I almost ran out of program space, so had to work out using two
> slots (put the initialize routine in slot 0 and the main program in slot
1).
> It turns out that I could now cram it all into a single slot, but the
> flexibility of two slots made it much easier and less stressful.
>
> One of the big challenges was learning how to use sin/cos in twos
> complement in the stamp, as well as understanding the limitations of
integer
> math. Help from the group got me on the right track.
>
> If anyone finds that they are interested in seeing the schematic or
> code, just drop me a note.
>
> Chris
>
>
> This e-mail message may contain legally privileged and/or confidential
> information. If you are not the intended recipient(s), or the employee
> or agent responsible for delivery of this message to the intended
> recipient(s), you are hereby notified that any dissemination,
> distribution or copying of this e-mail message is strictly prohibited.
> If you have received this message in error, please immediately notify
> the sender and delete this e-mail message from your computer.
>
>
>
>
> [noparse][[/noparse]Non-text portions of this message have been removed]
>
>
> To UNSUBSCRIBE, just send mail to:
> basicstamps-unsubscribe@yahoogroups.com
> from the same email address that you subscribed. Text in the Subject and
Body of the message will be ignored.
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
somehow, please send me some info at jamesrwaldron@e....
Thanks
James
On Tue, 20 Aug 2002 11:58:41 -0400 cholm@m... wrote:
All:
I would like to thank all of you who helped with a couple of
critical questions. I have successfully completed my project.
The objective was to build an interpreter/dead reckoning (DR) box
using the STAMP that would take a GPS NMEA sentence input and pass the input
through if the GPS input was valid.
If the GPS input was not valid, or the GPS not connected, the STAMP
would read a wheel counter (such as available from a bicycle magnetic
odometer) and a heading source (flux -gate or other source of heading
information), calculate a DR position from a last known fix, and output the
DR position.
I found that a flux gate or other electronic compass was too
expensive right now (at least $80 for reasonable accuracy), so I decided to
use a handheld compass and a switch bank to input heading as 8 bits (0-255
corresponding to 0-360 degrees) through a 74HC251 (ran out of serial ports
on the stamp, so had to find a way to get 8 bits in through 4 pins). Because
most of the use will be on a bicycle in a city with straight streets the
range of possible headings is constrained and use of a manual heading input
is not a real problem.
It also turned out that the magnetic wheel rev counter was very
noisy and switch debounce required use of a 555. (I needed to have the
stamp do other things so could not use software debounce).
I almost ran out of program space, so had to work out using two
slots (put the initialize routine in slot 0 and the main program in slot 1).
It turns out that I could now cram it all into a single slot, but the
flexibility of two slots made it much easier and less stressful.
One of the big challenges was learning how to use sin/cos in twos
complement in the stamp, as well as understanding the limitations of integer
math. Help from the group got me on the right track.
If anyone finds that they are interested in seeing the schematic or
code, just drop me a note.
Chris
This e-mail message may contain legally privileged and/or confidential
information. If you are not the intended recipient(s), or the employee
or agent responsible for delivery of this message to the intended
recipient(s), you are hereby notified that any dissemination,
distribution or copying of this e-mail message is strictly prohibited.
If you have received this message in error, please immediately notify
the sender and delete this e-mail message from your computer.
[noparse][[/noparse]Non-text portions of this message have been removed]
To UNSUBSCRIBE, just send mail to:
basicstamps-unsubscribe@yahoogroups.com
from the same email address that you subscribed. Text in the Subject and Body
of the message will be ignored.
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
the distance traveled from the last fix. By accurately measuring the
distance traveled for each wheel revolution, I think that I have made the
distance calculation accurate to within about 1% of the distance traveled
from the last fix. I have made the heading accuracy to within about 1.5
degrees, however that is only really good where I know what the heading
traveled is. For instance, I know that one of the streets I travel is 298
degrees true and I can calculate an 8 bit binary representation of that
heading that is within 1.5 degrees. This results in pretty good accuracy.
One of the biggest problems is that the stamp has limits on the size of
numbers it can handle and that means that I have to extend a DR from another
DR rather from the last fix, which is considered a big no-no for true
navigation accuracy (the errors tend to accumulate).
Original Message
From: Dennis P. O'Leary [noparse]/noparse]mailto:[url=http://forums.parallaxinc.com/group/basicstamps/post?postID=Q2vJXMlx4kdt28ILloevoVRWXIPvMAuKqlfUVF8tMmWgM9zRHil8pi170Zrx_NTZROmC5I_xuXXA33U]doleary@e...[/url
Sent: Tuesday, August 20, 2002 1:15 PM
To: basicstamps@yahoogroups.com
Subject: RE: [noparse][[/noparse]basicstamps] GPS Dead Reckoning Project
Hi Chris,
An interesting project. If I interpreted it correctly, you built a dead
reckoning system to guide the bike for short durations that occur
between readings of a GPS system. Accurate GPS readings are then used
to update absolute position, and to override any inaccurate predictions
of the dead reckoning system.
I'd be interested in the accuracy of your dead reckoning system. For
example, after 20 seconds of dead reckoning, how accurate was the
predicted position?
Dennis
Original Message
From: cholm@m... [noparse]/noparse]mailto:[url=http://forums.parallaxinc.com/group/basicstamps/post?postID=E3IqTE3FOckQekPebUgVbRZHCWDGfV-VweWip7Jjr89fbTzeoRR0Os-Xr_VaG5CPS_tcperboSOuPw]cholm@m...[/url
Sent: Tuesday, August 20, 2002 8:59 AM
To: basicstamps@yahoogroups.com
Subject: [noparse][[/noparse]basicstamps] GPS Dead Reckoning Project
All:
I would like to thank all of you who helped with a couple of
critical questions. I have successfully completed my project.
The objective was to build an interpreter/dead reckoning (DR)
box using the STAMP that would take a GPS NMEA sentence input and pass
the input through if the GPS input was valid.
If the GPS input was not valid, or the GPS not connected, the
STAMP would read a wheel counter (such as available from a bicycle
magnetic
odometer) and a heading source (flux -gate or other source of heading
information), calculate a DR position from a last known fix, and output
the DR position.
I found that a flux gate or other electronic compass was too
expensive right now (at least $80 for reasonable accuracy), so I decided
to use a handheld compass and a switch bank to input heading as 8 bits
(0-255 corresponding to 0-360 degrees) through a 74HC251 (ran out of
serial ports on the stamp, so had to find a way to get 8 bits in through
4 pins). Because most of the use will be on a bicycle in a city with
straight streets the range of possible headings is constrained and use
of a manual heading input is not a real problem.
It also turned out that the magnetic wheel rev counter was very
noisy and switch debounce required use of a 555. (I needed to have the
stamp do other things so could not use software debounce).
I almost ran out of program space, so had to work out using two
slots (put the initialize routine in slot 0 and the main program in slot
1). It turns out that I could now cram it all into a single slot, but
the flexibility of two slots made it much easier and less stressful.
One of the big challenges was learning how to use sin/cos in
twos complement in the stamp, as well as understanding the limitations
of integer math. Help from the group got me on the right track.
If anyone finds that they are interested in seeing the schematic
or code, just drop me a note.
Chris
This e-mail message may contain legally privileged and/or confidential
information. If you are not the intended recipient(s), or the employee
or agent responsible for delivery of this message to the intended
recipient(s), you are hereby notified that any dissemination,
distribution or copying of this e-mail message is strictly prohibited.
If you have received this message in error, please immediately notify
the sender and delete this e-mail message from your computer.
[noparse][[/noparse]Non-text portions of this message have been removed]
To UNSUBSCRIBE, just send mail to:
basicstamps-unsubscribe@yahoogroups.com
from the same email address that you subscribed. Text in the Subject
and Body of the message will be ignored.
Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/
To UNSUBSCRIBE, just send mail to:
basicstamps-unsubscribe@yahoogroups.com
from the same email address that you subscribed. Text in the Subject and
Body of the message will be ignored.
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
This e-mail message may contain legally privileged and/or confidential
information. If you are not the intended recipient(s), or the employee
or agent responsible for delivery of this message to the intended
recipient(s), you are hereby notified that any dissemination,
distribution or copying of this e-mail message is strictly prohibited.
If you have received this message in error, please immediately notify
the sender and delete this e-mail message from your computer.
[noparse][[/noparse]Non-text portions of this message have been removed]