Claims
- 1. A pedometer navigator system carried by a pedestrian having a left and right foot for calculating an SBPMS position displacement vector, comprising:
an Euler Angle Measuring Subsystem (EAMS) having a right-handed or left-handed coordinate frame having an EAMS origin, the EAMS providing roll, pitch and azimuth angle values for the right-handed or left-handed coordinate frame with respect to the X-Y-Z or north-east-down axes of a fixed navigation coordinate frame, a Short Baseline Position Measuring Subsystem (SBPMS) having an SBPMS coordinate frame having an SBPMS origin for measuring and providing a continuous series of time indexed left position vectors {right arrow over (ρ)}leftp and right position vectors {right arrow over (ρ)}rightp in SBPMS coordinate values characterizing the position of the left and right foot with respect to the SBPMS origin, the SBPMS coordinate frame being coupled to and in a fixed and predetermined alignment with the EAMS right-handed or left-handed coordinate frame, a computer and program means responsive to the Euler angle values and the time indexed left and right position vectors for providing
a first transition vector in fixed navigation coordinate frame values, characterizing the movement of the SBPMS origin for each interval that a left foot is stationary and the right foot is moving and a second transition vector in fixed navigation coordinate frame values characterizing the movement of the SBPMS origin for each interval that a right foot is stationary and the left foot is moving, the first and second transition vectors being added to form an SBPMS position displacement vector.
- 2. The pedometer navigator system of claim 1 further comprising:
a body frame, and wherein, the EAMS and the SBPMS are coupled to the body frame, the EAMS and the SBPMS being positioned to align the EAMS right-handed or left-handed coordinate frame to be in fixed relation with the SBPMS coordinate frame.
- 3. The pedometer navigator system of claim 1 wherein the EAMS is selected from the group comprising: an Attitude and Heading Reference System (AHRS), an Inertial Navigation System (INS) or an Aided Inertial Navigation System (AINS).
- 4. The pedometer navigator system of claim 1 wherein the computer and program means further comprises a stationary foot detection algorithm for generating
a both stationary signal indicating that both feet are stationary, a left stationary signal indicating that the left foot is stationary and a right stationary signal indicating that the right foot is stationary, the algorithm comprising the steps of:
continuously calculating a time indexed direction cosine matrix (DCM), multiplying a time indexed left position vector {right arrow over (ρ)}leftp and right position vector {right arrow over (ρ)}rightp by the respective time indexed DCM to obtain a respective time indexed left time indexed relative position vector {right arrow over (ρ)}leftg and right time indexed relative position vector {right arrow over (ρ)}rightg in fixed navigation coordinate frame values, calculating a time indexed baseline vector by subtracting the left time indexed relative position vector from the right time indexed relative position vector, each time indexed baseline vector having a time indexed baseline vector north component ΔρN and an indexed baseline vector east component ΔρE, calculating the azimuth rotational rate of the baseline vector ψΔρ given by ωΔρ for each time indexed baseline vector's north component and east component, the rates of change Δ{dot over (ρ)}E and Δ{dot over (ρ)}N of the north and east components, the sum of squared values of each indexed baseline vector's north component and east component, ΔρN2+ΔρE2, and calculating the value of ωΔρ from the following equation for each pair of indexed baseline vector's north component and east component, 6ωΔ ρ=1Δ ρN2+Δ ρE2(Δ ρNΔρ.E-Δ ρEΔρ.N)the computer and algorithm means being further characterized to provide
the both stationary signal indicating a decision that neither foot is moving subject to a corresponding determination that the absolute magnitude of the rate of change of azimuth ωΔρ is below a predetermined and substantially zero or noise threshold, and provide
the left stationary signal indicating a decision that the pedestrian's left foot is moving forward with respect to his right foot in response to the rate of change of azimuth cap exceeding the predetermined noise threshold and the sign of ωΔρ being positive, i.e., ωΔρ>0, and provide the right stationary signal indicating a decision that the pedestrian's right foot is moving forward with respect to his left foot in response to the rate of change of azimuth ωΔρ exceeding the predetermined noise threshold and the sign of ωΔρ being negative, i.e., ωΔρ<0 being negative.
- 5. The pedometer navigator system of claim 4 wherein the computer and program means is further characterized to calculate the SBPMS current position {right arrow over (r)}g(tcurrent) by the steps of:
adding all SBPMS position displacement vectors Δ{right arrow over (ρ)}1-3g from a starting time to the current time, summing the result of the previous step with the SBPMS starting position {right arrow over (r)}gstart, the sum being characterized by the equation 7r⇀g(tcurrent)=r⇀startg+∑tstarttcurrentΔρ⇀1-3g(ti).
- 6. The pedometer navigator system of claim 1 wherein the computer and program means further comprises an algorithm for calculating the SBPMS current position {right arrow over (r)}g(tcurrent) by the steps of:
using a left and right stationary foot detection algorithm for generating
a both stationary signal indicating that both feet are stationary, a left stationary signal indicating that the left foot is stationary and a right stationary signal indicating that the right foot is stationary, and the steps for the left and right stationary foot detection algorithm comprising:
continuously calculating a time indexed DCM (a time indexed direction cosine matrix), multiplying each time indexed left position vector {right arrow over (ρ)}leftp and right position vector {right arrow over (ρ)}rightp by the respective DCM to obtain a respective left time indexed relative position vector {right arrow over (ρ)}leftg and right time indexed relative position vector {right arrow over (ρ)}rightg in fixed navigation coordinate frame values, calculating an indexed baseline vector by subtracting the left time indexed relative position vector from the right time indexed relative position vector, each indexed baseline vector having an indexed baseline vector north component ΔρN and an indexed baseline vector east component ΔρE, calculating the rotational rate of the baseline vector ωΔρ for each indexed baseline vector's north component and east component, Δ{dot over (ρ)}E and Δ{dot over (ρ)}N, and calculating the value of ωΔρ from the following equation for each pair of indexed baseline vector's north component and east component, 8ωΔ ρ=1Δ ρN2+Δ ρE2(Δ ρNΔ ρ.E-Δ ρEΔ ρ.N)[BS16][BS17]the computer and algorithm means being further characterized to provide
the both stationary signal indicating a decision that neither foot is moving subject to a corresponding determination that the absolute magnitude of the rate of change of azimuth ωΔρ is below a predetermined and substantially zero or noise threshold, and provide the left stationary signal indicating a decision that the pedestrian's left foot is moving forward with respect to his right foot in response to the rate of change of azimuth ωΔρ exceeding the predetermined noise threshold and the sign of ωΔρ being positive, i.e., ωΔρ>0, and provide the right stationary signal indicating a decision that the pedestrian's right foot is moving forward with respect to his left foot in response to the rate of change of azimuth ωΔρ exceeding the predetermined noise threshold and the sign of ωΔρ being negative, i.e., ωΔρ<0 being negative, the steps for calculating the SBPMS current position {right arrow over (r)}g(tcurrent) further comprising the steps of: using each left stationary signal to mark times t1 and t2 and contemporaneously calculate a left indexed SBPMS left relative displacement vector Δ{right arrow over (ρ)}1-2g from Δ{right arrow over (ρ)}1-2g=Cpg(t2){right arrow over (ρ)}leftp(t2)−Cpg(t1){right arrow over (ρ)}leftp(t1) and using each right stationary signal to mark times t2 and t3 and to contemporaneously calculate a right indexed SBPMS relative displacement vector Δ{right arrow over (ρ)}2-3g from Δ{right arrow over (ρ)}2-3g=Cpg(t3){right arrow over (ρ)}rightp(t3)−Cpg(t2){right arrow over (ρ)}rightp(t2), and to calculate an SBPMS position displacement vector Δ{right arrow over (ρ)}1-3g from Δ{right arrow over (ρ)}1-3g=Δ{right arrow over (ρ)}1-2g+Δ{right arrow over (ρ)}2-3g and where index times t1 and t2 for the SBPMS left relative displacement vector are respectively marked at the beginning and end of each left stationary signal and where the times t2 and t3 for the SBPMS right relative displacement vector are respectively marked at the beginning and end of each right stationary signal, calculating the SBPMS current position {right arrow over (r)}g(tcurrent) by the steps of: adding all SBPMS position displacement vectors Δ{right arrow over (ρ)}1-3g from a starting time to the current time, summing the result of the previous step with the a SBPMS starting position {right arrow over (r)}gstart, the SBPMS current position {right arrow over (r)}g(tcurent) being characterized by the equation 9r⇀g(tcurrent)=r⇀startg+∑tstarttcurrentΔ ρ⇀1-3g(ti).
- 7. A pedometer navigator system carried by a pedestrian, comprising:
an Aided Inertial Navigation System (AINS) having a right-handed or left-handed coordinate frame having an AINS origin, the AINS providing roll, pitch and azimuth angle values for the right-handed or left-handed coordinate frame with respect to the X-Y-Z or north-east-down axes of a fixed navigation coordinate frame, the AINS having a Kalman filter responsive to at least one aiding input, a Short Baseline Position Measuring Subsystem(SBPMS) having an SBPMS coordinate frame having an SBPMS origin for measuring and providing a series of time indexed position vectors {right arrow over (ρ)}lp, each vector characterizing the position of at least a first indexed foot with respect to the SBPMS origin, the SBPMS coordinate frame being coupled to and in a fixed and predetermined alignment with the AINS right-handed or left-handed coordinate frame, a computer means for executing a program responsive to the Euler angle values and the time indexed position vectors for providing a series of SBPMS left and right relative displacement vectors in fixed navigation coordinate frame values characterizing the movement of the SBPMS origin for each interval during which the respective indexed foot is stationary and the other indexed foot is moving, each SBPMS left and right relative displacement vector being output to the Kalman filter aiding input.
- 8. The pedometer navigator system of claim 7 wherein the computer and program means is coupled to receive and is responsive to time indexed inertial navigator velocity NED components {right arrow over (ν)}SNVg, indexed body rates of the AINS {right arrow over (ω)}Sb, as inputs from the AINS and a data input characterizing
a lever arm vector from the AINS center to the SBPMS origin {right arrow over (l)}S-Pb, the computer and program means and further comprising a computer program for
calculating indexed values of the inertial navigation solution displacement Δ{right arrow over (r)}SNV1-2g using the equation: 10Δ r→SNV1–2g=∫t1t2(v→SNVg+Cbg(ω→Sb×l→S–Pb)) ⅆt(8a)for a left foot inertial navigation solution displacement, and or the equation: 11Δ r→SNV2–3g=∫t2t3(v→SNVg+Cbg(ω→Sb×l→S–Pb)) ⅆt(8b)for a right foot inertial navigation solution displacement wherein {right arrow over (ν)}SNVg the inertial navigator velocity NED components {right arrow over (ω)}SNVg the IMU angular rate in the IMU body frame, {right arrow over (l)}S-Pb the lever arm vector from the IMU inertial center to the SBPMS measurement origin.
- 9. The pedometer navigator system of claim 8 wherein the Kalman filter is coupled to receive and calculate the difference between the output the inertial navigation solution displacement and the SBPMS left or right relative displacement vectors for each foot, the differences being calculated from the equations: {right arrow over (z)}SNV-PP=Δ{right arrow over (r)}SNV1-2g−Δ{right arrow over (ρ)}1-2g for the left foot and {right arrow over (z)}SNV-PP=Δ{right arrow over (r)}SNV2-3g−Δ{right arrow over (ρ)}2-3g for the right foot; whereby,
the differences make the position, velocity and attitude errors in the inertial navigator and precise pedometer observable to the Kalman filter.
- 10. The pedometer navigator system of claim 7 wherein the computer and program means further comprises an INS referenced stationary foot detection algorithm for each foot having an SBPMS sensor,
the algorithm comprising the steps of:
calculating a time indexed Direction Cosine Matrix (DCM) at time t, calculating a value for the absolute (right or left) foot position {right arrow over (r)}footig at a first time t for each foot having a sensor, the algorithm steps comprising:
multiplying a respective indexed position vector {right arrow over (ρ)}ip by its respective DCM to obtain a respective time-indexed SBPMS relative position vector {right arrow over (ρ)}ig in fixed navigation coordinate frame values at index time t, fetching the indexed geographic position of the SBPMS, {right arrow over (r)}SBPMSg, from the AINS at index time t, adding the indexed geographic position of the SBPMS, {right arrow over (r)}SBPMS to the respective time indexed relative position vector {right arrow over (ρ)}ig at index time t to obtain a value for {right arrow over (r)}footig at index time t, multiplying the next respective indexed position vector {right arrow over (ρ)}ip by its respective DCM to obtain a respective time indexed relative position vector {right arrow over (ρ)}ig in fixed navigation coordinate frame values at index time t+Δt, fetching the next indexed geographic position of the SBPMS, {right arrow over (r)}SBPMSg, from the AINS at index time t+Δt, adding the indexed geographic position of the next SBPMS, {right arrow over (r)}SBPMSg to the respective next time indexed relative position vector {right arrow over (ρ)}ig to obtain a value for {right arrow over (r)}footig at time t+Δt, subtracting the value of {right arrow over (r)}footig(t) from {right arrow over (r)}footig(t+Δt), calculating the absolute value of the vector difference, and generates a foot stationary signal for each foot subject to the condition:
|{right arrow over (r)}footig(t+Δt)−{right arrow over (r)}footig(t)|<Δrstationary for a predetermined time interval.
- 11. The pedometer navigator system of claim 7 wherein the computer and program means foot detection algorithm predetermined time interval of claim 8 is a time interval of at least one second.
- 12. The pedometer navigator system of claim 7 wherein the computer means further comprises a stationary indexed foot detection algorithm responsive to the Euler angle values, the position time indexed position vectors, {right arrow over (ρ)}ip, and a computed value of the indexed geographic position of the SBPMS, {right arrow over (r)}SBPMSg, from the AINS by calculating the absolute (right or left) indexed foot position {right arrow over (r)}footig in geographic coordinates using the equation {right arrow over (r)}footig={right arrow over (r)}SBPMSg+Cpg{right arrow over (ρ)}lp where Cpg is a Direction Cosine Matrix (DCM) from the INS roll, pitch and heading solution that transforms from the p-frame to the g-frame, the indexed foot detection algorithm providing a signal indicating that the indexed foot is stationary on the condition that the difference between successive values of {right arrow over (r)}footig remain below a predetermined threshold value for a time interval exceeding a predetermined time limit.
- 13. The pedometer navigator system of claim 10 wherein the difference value for successive indexed foot position are calculated and
a determination is made that the indexed foot is stationary on the condition that the absolute difference value of |{right arrow over (r)}footig(t+Δt)−{right arrow over (r)}footig(t)|<Δrstationary for a time interval of at least one second.
- 14. The pedometer navigator system of claim 7 wherein the computer and program means further comprises an algorithm for calculating a right foot stationary signal and
a left stationary foot signal for the right and left foot by the steps of:
continuously calculating a time indexed Direction Cosine Matrix (DCM), multiplying each time indexed left position vector {right arrow over (ρ)}leftp and or right position vector {right arrow over (ρ)}rightp by the respective DCM to obtain a respective left time indexed relative position vector {right arrow over (ρ)}leftg and right time indexed relative position vector {right arrow over (ρ)}rightg in fixed navigation coordinate frame values, p2 calculating an indexed baseline vector by subtracting the left time indexed relative position vector from the right time indexed relative position vector, each indexed baseline vector having an indexed baseline vector north component ΔρN and an indexed baseline vector east component ΔρE, calculating the rotational rate of the baseline vector ωΔρ for each indexed baseline vector's north component and east component, the rates of change Δ{dot over (ρ)}E and Δ{dot over (ρ)}N of the north and east components, the sum of squared values of each indexed baseline vector's north component and east component, ΔρN2+ΔρE2, and calculating the value of ωΔρ from the following equation for each pair of indexed baseline vector's north component and east component, 12ωΔ ρ=1Δ ρN2+Δ ρE2(Δ ρNΔ ρ.E-Δ ρEΔ ρ.N)the computer and algorithm means being further characterized to provide
a right stationary signal indicating that the pedestrian's left foot is moving forward with respect to his right foot in response to the rate of change of azimuth ωΔρ exceeding the predetermined noise threshold and the sign of ωΔρ being positive, i.e., ωΔρ<0, and provide
a left stationary signal indicating that the pedestrian's right foot is moving forward with respect to his left foot in response to the rate of change of azimuth ωΔρ exceeding the predetermined noise threshold and the sign of ωΔρ being negative, i.e., ωΔρ<0 being negative.
- 15. The pedometer navigator system of claim 12 wherein the computer and program means further comprises an algorithm for calculating an SBPMS position displacement vector for the left and right foot by the steps of:
using each left stationary signal to mark times t1 and t2 and contemporaneously calculate an SBPMS left relative displacement vector Δ{right arrow over (ρ)}1-2g from Δ{right arrow over (ρ)}1-2g=Cpg(t2){right arrow over (ρ)}leftp(t2)−Cpg(t1){right arrow over (ρ)}leftp(t1) and using each right stationary signal to mark times t2 and t3 and to contemporaneously calculate an SBPMS right relative displacement vector Δ{right arrow over (ρ)}2-3g from Δ{right arrow over (ρ)}2-3g=Cpg(t3){right arrow over (ρ)}rightp(t3)−Cpg(t2){right arrow over (ρ)}rightp(t2) and calculating the SBPMS position displacement vector Δ{right arrow over (ρ)}1-3g from Δ{right arrow over (ρ)}1-3g=Δ{right arrow over (ρ)}1-2g+Δ{right arrow over (ρ)}2-3g and where index times t1 and t2 are respectively marked at the beginning and end of each left stationary signal and where the times t2 and t3 are respectively marked at the beginning and end of each right stationary signal.
- 16. The pedometer navigator system of claim 14 wherein the computer and program means further comprises an INS referenced stationary foot detection algorithm for each foot having an SBPMS sensor,
the algorithm comprising the steps of:
calculating a time indexed DCM (a time indexed direction cosine matrix) valid at time t calculating a value for the absolute (right or left) foot position {right arrow over (r)}footig at a first time t for each foot having a sensor, the algorithm steps comprising:
multiplying a respective indexed position vector {right arrow over (ρ)}ip by its respective DCM to obtain a respective time indexed relative position vector {right arrow over (ρ)}ig in fixed navigation coordinate frame values at index time t, fetching the indexed geographic position of the SBPMS, {right arrow over (r)}SBPMSg, from the AINS at index time t, adding the indexed geographic position of the SBPMS, {right arrow over (r)}SBPMSg to the respective time indexed relative position vector {right arrow over (ρ)}ig at index time t to obtain a value for {right arrow over (r)}footig at index time t, multiplying the next respective indexed position vector {right arrow over (ρ)}tp by its respective DCM to obtain a respective time indexed relative position vector {right arrow over (ρ)}ig in fixed navigation coordinate frame values at index time t+Δt, fetching the next indexed geographic position of the SBPMS, {right arrow over (r)}SBPMSg, from the AINS at index time t+Δt, adding the indexed geographic position of the next SBPMS, {right arrow over (r)}SBPMSg to the respective next time indexed relative position vector {right arrow over (ρ)}ig to obtain a value for {right arrow over (r)}footig at time t+Δt, subtracting the value of {right arrow over (r)}footig(t) from {right arrow over (r)}footig(t+Δt), calculating the absolute value of the vector difference, and generates a foot stationary signal for each foot subject to the condition: |{right arrow over (r)}footig(t+Δt)−{right arrow over (r)}footig(t)|<Δrmoving for a predetermined time interval.
- 17. A pedometer navigator system carried by a pedestrian, comprising:
an Aided Inertial Navigation System (AINS) providing roll, pitch and azimuth angle values, a Short Baseline Position Measuring Subsystem (SBPMS) and providing a series of time indexed position vectors {right arrow over (ρ)}ip, characterizing the position of at least a first indexed foot with respect to the SBPMS origin, the SBPMS coordinate frame being coupled to the AINS, a computer means for executing a program responsive to the Euler angle values and the time indexed position vectors for providing a series of SBPMS left and right relative displacement vectors characterizing the movement of the SBPMS origin as aiding inputs to a Kalman filter.
- 18. The pedometer navigator system of claim 17 wherein Aided Inertial Navigation System (AINS) further comprises a right-handed or left-handed coordinate frame having an AINS origin, the AINS providing roll, pitch and azimuth angle values for the right-handed or left-handed coordinate frame with respect to the X-Y-Z or north-east-down axes of a fixed navigation coordinate frame and wherein,
the SBPMS (short baseline position measuring subsystem) has an SBPMS coordinate frame having an SBPMS origin for measuring and providing a series of time indexed position vectors {right arrow over (ρ)}ip, each vector characterizing the position of at least a first indexed foot with respect to the SBPMS origin, the SBPMS coordinate frame being coupled to and in a fixed and predetermined alignment with the AINS right-handed or left-handed coordinate frame.
- 19. The pedometer navigator system of claim 17 wherein the computer and program means is coupled to receive and is responsive to time indexed inertial navigator velocity NED components {right arrow over (ν)}SNV, indexed body rates of the AINS {right arrow over (ω)}Sb, as inputs from the AINS and a data input characterizing
a lever arm vector from the AINS center to the SBPMS origin {right arrow over (l)}S-Pb, the computer and program means and further comprising a computer program for
calculating indexed values of the inertial navigation solution displacement Δ{right arrow over (r)}SNV1-2g using the equation: 13Δ r→SNV1–2g=∫t1t2(v→SNVg+Cbg(ω→Sb×l→S–Pb)) ⅆt(8a)for a left foot inertial navigation solution displacement, and or the equation: 14Δ r→SNV2–3g=∫t2t3(v→SNVg+Cbg(ω→Sb×l→S-Pb)) ⅆt(8b)for a right foot inertial navigation solution displacement wherein {right arrow over (ν)}SNVg the inertial navigator velocity NED components {right arrow over (ω)}Sb the IMU angular rate in the IMU body frame, {right arrow over (l)}S-Pb the lever arm vector from the IMU inertial center to the SBPMS measurement origin.
- 20. The pedometer navigator system of claim 17 wherein the Kalman filter is coupled to receive and calculate the difference between the output the inertial navigation solution displacement and the SBPMS left and right relative displacement vectors for each foot, the differences being calculated from the equations:
{right arrow over (z)}SNV-PP=Δ{right arrow over (r)}SNV1-2g−Δ{right arrow over (ρ)}1-2g for the left foot and {right arrow over (z)}SNV-PP=Δ{right arrow over (r)}SNV2-3g−Δ{right arrow over (ρ)}2-3g for the right foot; whereby, the differences make the position, velocity and attitude errors in the inertial navigator and precise pedometer observable to the Kalman filter.
Parent Case Info
[0001] This application is a Continuation-In-Part Application and formalization of Provisional Application serial No. 60/226,481 filed Aug. 18, 2000 having a common inventor and assignee.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60226481 |
Aug 2000 |
US |