track 4 session 3 - st dev con 2016 - pedestrian dead reckoning

Post on 06-Jan-2017

770 Views

Category:

Devices & Hardware

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

October 4, 2016

Santa Clara Convention Center

Mission City Ballroom

Pedestrian Dead-Reckoning (PDR)

for Indoor Positioning

MEMS Sensor Solutions Software Team

ST PDR for indoor positioning

Continuous and accurate indoor positioning

Connectivity* Sensors Processing PDR

ST PDR

Algorithm

* Needed only for

initial absolute

positioning

2

Components of PDRDemonstration

Sensor calibration

parameters

Altitude filter outputCarry position

Activity modeTotal distance

Step count

Rich interface APIs to get additional information

Demo implemented as an Android application

PDR trajectory and uncertainty estimates

displayed in real-time

• Continuous sensor calibration monitoring

• Body placement detection

• User activity mode detection

• Step detection, including false step rejection

• Variable stride length model and calibration

• Attitude Filter

• User walking direction determination

• Position update logic

• Error model

4

PDR Block DiagramAccelerometer Gyroscope Magnetometer Pressure Sensor

Calibration monitoring Calibration monitoring Calibration monitoring

disturbance rejection

Step Detection

Stride length determination

Attitude estimation filter

Carry Position determination

User Heading determination

Altitude, floor change

estimation

PDR Output Latitude – Longitude - Altitude

User Activity, transport

mode

5

PDR Mathematical Process

• Velocity and heading are assumed to be constant during the interval when a

step is taken.

• Navigation equation rewritten as a difference equation with piece-wise linear

approximation.

1],1[1

1],1[1

cosˆ

sinˆ

ttttt

ttttt

sNN

sEE

[Nt, Et] = Current position at time t

[Nt-1, Et-1] = Last position at time t-1

𝑠[t-1, t] = Stride length

ψt-1 = User heading

6

Carry Position Determination

• Detects Carry Positions

In Hand, Near Head, Shirt

Pocket, Trouser Pocket, On

Desk, Arm Swing

• User Accelerometer data and

Gyroscope (for higher accuracy)

• Optimized for low power and

always on experience

• Uses Machine Learning based

models to achieve higher

accuracy

7

Magnetometer Calibration

• Opportunistic magnetometer calibration with following features

• Minimum action requirement from user (< 8 pattern) and less than 2 s time interval.

• Robust against magnetic anomaly.

• Compensate hard iron and soft iron error (9 parameters: 3 offsets, 3-scale factor, 3 – Soft

iron).

8

Accelerometer Calibration

• Algorithm to maintain best estimate

of bias and scale factor error in

accelerometer data.

• Fastest accelerometer calibration

based on change in curvature of a

surface and does not require to

hold the device stationary in

different orientation for 2-3

seconds.

9

Run-time Gyro Bias Calibration

• Driven by accelerometer and gyroscope data.

• Gyro bias is estimated with device stationary condition.

• Fast calibration process. Requires very small amount of data (less than 60

samples) at 50 Hz rate.

[deg.]

-1

0

1

2

3

4

5

6

0.2

40

.49

0.7

40

.99

1.2

41

.49

1.7

41

.99

2.2

42

.49

2.7

42

.99

3.2

43

.49

3.7

43

.99

4.2

44

.49

4.7

44

.99

5.2

45

.49

5.7

45

.99

6.2

46

.49

6.7

46

.99

7.2

47

.49

7.7

47

.99

8.2

48

.49

8.7

48

.99

9.2

49

.49

9.7

49

.99

10.2

41

0.4

91

0.7

41

0.9

91

1.2

41

1.4

91

1.7

41

1.9

91

2.2

41

2.4

91

2.7

41

2.9

91

3.2

41

3.4

9

Gbias estimation library output

Gyro Gbias[sec.]

10

Walking Angle

• Attitude fusion filter outputs heading in

sensor frame.

• However, device orientation can be

arbitrary (shirt pocket, arm swing,

trouser pocket).

• Walk angle needed to obtain user

heading. Mathematically, computing

North and East distance requires

• 𝑁𝑡 = 𝑁𝑡−1 + 𝑠𝑡−1cos 𝜓

• 𝐸𝑡 = 𝐸𝑡−1 + 𝑠𝑡−1s𝑖𝑛 𝜓

where

𝜓 = 𝜃 + 𝛼𝜃 = Device heading from

attitude Kalman filter;

α =walk angle

• Based on the physiological characteristics of pedestrian movement, we use the cyclical

characteristics and statistics of acceleration waveform and features to estimates the

misalignment of device with body motion.

• Most challenging problem for the PDR performance.

α

11

Walking angle (Arm Swing test)

Device flipped 180o

Device in same direction

180o turn

12

Configurability of PDR

• Input data: Raw / or calibrated data with minimum sample rate of [50, 50, 25,10] Hz for Accelerometer, gyroscope, magnetometer, pressure sensor.

• Selection of Raw or Calibrated at time of initialization.

• Modularity: Most of algorithm modules are independent and can run with required inputs (in terms of sensor data and other inputs such as user Heading need attitude filter data).

• PDR library can be used to run only a specific algorithm, such as step detection, sensor calibration, attitude filter. Library can be configured to turn modules ON / off during runtime.

• Scheduling: Each module is responsible for its own scheduling and running condition.

• Individual module can be disabled /enabled at run time. An algorithm / module execution is not blocked by other modules. Independent of sensor data acquisition and platform.

13

PDR Output

• PDR output

• Displacement in ENU coordinate system

• corresponding confidence/error,

• total distance and number of steps.

• Error is computed by the individual error in different components (step detection,

stride length, user heading) of PDR. Each module outputs results with

corresponding error.

• PDR is able to serve multiple clients (such as integration with other position

technologies, relative harvesting) and doesn’t need to be in sync with PDR

processing cycle.

• PDR will provide the best possible output at the time of request using tag interface.

14

PDR Walk test:Test based on sensor only without map matching

Arm Swing

DEMO Setting:Phone model: Samsung S6 edge +

Sensor list:

6x LSM6DS3

3x Mag based on GMR

In Hand Trouser Pocket

COEX Mall, Seoul

Performance results: High position accuracy

15

MIXC Mall-July 2016:

improvement using Map match

PDR Only

PDR + Map matching

DEMO Setting:Phone model: Samsung S6 edge +

Sensor list:

6x LSM6DS3

3x Mag based on GMR

Pressure sensor

16

Absolute Altitude determination,Vertical Context Determination

• Vertical Context

• Detects: elevator, escalator, stairs up/down (uses step detection function), on-floor, small

changes in altitude (up/down)

• Estimates drift free (relative) altitude.

17

Drift Free Altitude determination

Algorithm compensates for pressure sensors drift improving accuracy

18

3D Positioning using Pressure sensor 19

PDR Output: APIs

• Rich interface APIs are available to get additional information as per

application requirements

• sensor calibration parameters,

• step count,

• total distance,

• activity mode

• carry position

• attitude filter output

• Integration in Context Hub Runtime Environment (CHRE) Framework.

20

Integration of ST PDR in Android Stack

Sensor Driver GNSS Driver WiFi Driver BT Driver

Sensor HAL GPS HAL

Network

Location

Provider

FLP HAL Activity HAL

ST PDR

Library

Google Play Services

Fused Location Provider FLP

Applications

Sensor Manager

21

Thanks

top related