Capture motion navigation algorithms AHRS/EKF with drift ...€¦ · 3D motion capture (BVH Reader)...

1
Indoor and Body Navigation Prototype using Low-cost Sensors René Jr. Landry Adrien Mixte [email protected] Introduction The ibNav project aims to use only low-cost inertial sensors combined with inertial algorithms to obtain high efficiency in motion capture and indoor pedestrian navigation Motion Capture : Body movement’s recognition and displaying it in 3D using AHRS algorithms. Indoor Pedestrian Navigation : Visualise the movement on a 2D map without external sources using INS algorithms. The prototype is designed to be composed of a network of 14 IMU using MEMS sensors set in a suit, between each main joint of the body. The IMUs are composed of geomagnetic and gyroscopes sensors working in 9 DOF. System data communication is with SPI, UART, TCP and UDP. Data processing is computed in real time on Apple’s device, the iPad. The goals of the GUI is to displaying results and to be a study platform for inertial algorithms (analyse, compare and improve them). Objectives and Challenges Actual trend : Most of motion capture systems are too expensive and need to use external source (eg: Outside-In systems with special room and cameras). Concerning indoor navigation, the trend is to use LPS systems with complex network of external sensors. Advantages of ibNav : The main idea behind the ibNav project is to offer a high efficiency system at a low-cost production, allowing an easy and stealthy deployment anywhere without any external requirements. Processing required : Firstly, to use this low-cost system, it’s necessary to find solutions to the many materiel restrictions. That is, the delicate development of IMU firmware, hardware architecture and GUI with adapted communication. Finally, to use sensors independently without use external source (and hybrid systems), it’s necessary to perform a meticulous calibration and implement inertial algorithms applied to raw measurements of geomagnetic and gyroscope sensors to correct sensors errors. Architecture hardware The network of 14 IMU-MEMS referenced STEVAL-MKI06V2 (developed by ST Microelectronics) has the following features : Figure 1 : iNemo module and simplified diagram The firmware developed in LASSENA give many possibilities and a great reliability to satisfy specifications project: Inter-IMU system of communication with SPI protocol bidirectional with DMA, bandwidth of 562 KHz, hot-plug (0.4 seconds time of detection) and check frame integrity. IMU / GUI (via a module Wireless*) communication with UART protocol bidirectional with DMA TX and INT RX, bandwidth of 460 KHz and check frame integrity. Get raw and computed inertial data in the GUI (in real time). Get temperature, accelerations, angular rates and magnetic fields of each IMU (10 DOF) at 50 Hz. Low energy consumption (244 mWh / IMU). User interaction with each IMU via the GUI. Exceptions control by watchdog. * The RN-134 Wi-Fi module (developed by Roving Networks), interface between the wired (UART protocol) and the wireless (TCP protocol). The TCP protocol is bidirectional and protected by a WPA / WPA2 – PSK key. The inter-GUI communication allowing several iPad to simultaneously show capture motion and indoor pedestrian navigation results, requires the use of a third communication protocol: UDP. ibNav is designed to the research and development for industrial uses and to understand, compare, analyse inertial algorithms. This project covers three distinct sectors : Cinema and video games (capture motion mode) Military use (both navigation mode) allowing the capture motion of both movements and position of a soldier to improve fighting positions and movements inside buildings. Sport (both navigation mode) allowing the analysis of the athlete’s movements to improve one’s performance. Version 1.4 5 March 2013 Indoor and body navigation prototype using low-cost sensors Department of Electrical Engineering LASSENA (Embedded Systems, Navigation and Avionics Specialized LAboratory) Front View Back View Left View Right View 1. Mixte Adrien., “Stage EE5 : Développement d’un prototype de navigation corporelle”, École de technologie supérieure, Montréal , 2011. 2. Mixte Adrien, “MTR871 : Développement d’un prototype de capture de mouvements et de navigation intérieure basé sur l’utilisation de plateformes IMU-MEMS à faible coût”, École de technologie supérieure, Montréal , 2012. LASSENA, 2013 References Mixte Adrien [email protected] < IMU configuration Figure 2 : ibNav simplified communication schema Inter - IMU SPI Wire / Wireless GUI TCP and UDP Protocol Point d’accès iPad (master) iPads (slave) RN-134 TCP IMU (master) UART IMUs (slave) SPI SPI SPI SPI Figure 3 : ibNav – Architecture (version 2.6) Battery IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » IMU « Slave » SPI Communication Supply Wireless Module UART Communication IMU « Master » Légende : Supply SPI - Data RX/TX SPI - Clock UART RX/TX/CTS/RTS Architecture composition : 13 cases containing IMUs “slave” platforms, one with the IMU “master” and the module RN-134 and the last with the battery of 25 Wh (Theses are into the suit). Coil wiring shielded (4 GND) to flexibility and modularity with connectors of communication and debug on each case. Star distribution of energy and SPI Clock to high efficiency. Figure 4 : ibNav architecture scheme and photography Graphic User Interface (iPad) The software in Objective-C allows two different modes, real time and post-processing. The first shows movements for both navigations, raw data and computed data with chart and 3D representation. The last, allows to change calibration and navigation algorithms to compare and analyse results on a previous record in real time. The software has 5 main views : My Setup : Body and indoor view configuration, algorithms configuration, record file choice (post-processing), compute method (real time), map and BVH choices and an about view. My Sensors : Engineer part with row measurements on charts and IMU user interaction. My Algorithms : Engineer part with computed measurements on charts 2D / 3D and algorithms configuration. My Body and My location : 3D motion capture (BVH Reader) and 2D map localisation. Figure 5 : Example of GUI Interfaces Gyroscopes : Measurement of the angular rate are made by Coriolis effect using Foucault’s Pendulum principle. So are acquired the values for pitch / roll on the axis along the sensor’s package and the yaw on the axis perpendicular to it. Before use these sensors, the first step is to calibrate each sensor axis to reduce the following deterministic errors : Bias (with hard iron of magnetometers), scale factor and axis misalignment (For stochastic errors, white noise is used for each IMU with the Scale factor and misalignment axis correction Accelerometers Gyroscopes Magnetometers Compute white noise with « Allan Variance » method Compute magnetic field norm Kalman filter EKF (Multi-positions method) Compute theory gravity vector Compute initial bias Inertial sensors initial calibration - EKF with knowledge model Quasi-stationary state detector Détection Bias correction Temperature Figure 6 : calibration algorithms scheme Sensors and initial calibration ibNav project uses MEMS sensors (Microelectromechanical system) : Accelerometers Measures the projection of the gravity vector on the 3D axis. Magnetometers Measures the strength of the magnetic field on the 3D axis. The second step of initial calibration uses the Lynxmotion AL5D robot in quasi-stationary scenarios to rectify the position of an IMU within its casing. Figure 7 : Robot of Calibration Algorithms navigation design < Motion capture algorithms use an AHRS model with two methods of drift reduction to compute Euler’s Angles calculation (φ, θ, ψ) . During this process, an online calibration is performed to correct the magnetometer’s soft iron’s influence on the scale factor and axis misalignment and the temperature’s on the bias. Stationary state detector Initial alignement Dynamique model (Attitude Update) Case’s misalignement correction Kalman filter EKF Compute Euler Angle (Attitude) Convert to BVH format Attitude d’autres IMU Détection Zero angular rate update detector (ZARU) Détection Capture motion navigation algorithms AHRS/EKF with drift reduction methods Figure 8 : AHRS algorithms scheme Indoor Pedestrian Navigation uses an INS model with PDR methodology to obtain the position, velocity and attitude. In addition to an online calibration, several methods of drift reduction are used like ZUPT, ZARU, HDC, Compass and BIM. Note : All three algorithms use an Extended Kalman filter to calibrate sensors or estimate and correct drift errors. Possible uses < Currently, the GUI and the indoor pedestrian navigation algorithms are still in development. The others algorithms are in continuous improvement in the LASSENA in order to reach expected results. Figure 9: Suit of the ibNav project

Transcript of Capture motion navigation algorithms AHRS/EKF with drift ...€¦ · 3D motion capture (BVH Reader)...

Page 1: Capture motion navigation algorithms AHRS/EKF with drift ...€¦ · 3D motion capture (BVH Reader) and 2D map localisation. Figure 5 : Example of GUI Interfaces • Gyroscopes :

Indoor and Body Navigation Prototype using Low-cost Sensors René Jr. Landry Adrien Mixte

[email protected]

Introduction

The ibNav project aims to use only low-cost inertial sensors combined with inertial algorithms to obtain high efficiency in motion capture and indoor pedestrian navigation

• Motion Capture : Body movement’s recognition and displaying it in 3D using AHRS algorithms.

• Indoor Pedestrian Navigation : Visualise the movement on a 2D map without external sources using INS algorithms.

The prototype is designed to be composed of a network of 14 IMU using MEMS sensors set in a suit, between each main joint of the body. The IMUs are composed of geomagnetic and gyroscopes sensors working in 9 DOF. System data communication is with SPI, UART, TCP and UDP. Data processing is computed in real time on Apple’s device, the iPad. The goals of the GUI is to displaying results and to be a study platform for inertial algorithms (analyse, compare and improve them). Objectives and Challenges

Actual trend :

Most of motion capture systems are too expensive and need to use external source (eg: Outside-In systems with special room and cameras). Concerning indoor navigation, the trend is to use LPS systems with complex network of external sensors.

Advantages of ibNav :

The main idea behind the ibNav project is to offer a high efficiency system at a low-cost production, allowing an easy and stealthy deployment anywhere without any external requirements.

Processing required :

Firstly, to use this low-cost system, it’s necessary to find solutions to the many materiel restrictions. That is, the delicate development of IMU firmware, hardware architecture and GUI with adapted communication. Finally, to use sensors independently without use external source (and hybrid systems), it’s necessary to perform a meticulous calibration and implement inertial algorithms applied to raw measurements of geomagnetic and gyroscope sensors to correct sensors errors.

Architecture hardware

The network of 14 IMU-MEMS referenced STEVAL-MKI06V2 (developed by ST Microelectronics) has the following features :

Figure 1 : iNemo module and simplified diagram

The firmware developed in LASSENA give many possibilities and a great reliability to satisfy specifications project:

• Inter-IMU system of communication with SPI protocol bidirectional with DMA, bandwidth of 562 KHz, hot-plug (0.4 seconds time of detection) and check frame integrity.

• IMU / GUI (via a module Wireless*) communication with UART protocol bidirectional with DMA TX and INT RX, bandwidth of 460 KHz and check frame integrity.

• Get raw and computed inertial data in the GUI (in real time).

• Get temperature, accelerations, angular rates and magnetic fields of each IMU (10 DOF) at 50 Hz.

• Low energy consumption (244 mWh / IMU).

• User interaction with each IMU via the GUI.

• Exceptions control by watchdog.

* The RN-134 Wi-Fi module (developed by Roving Networks), interface between the wired (UART protocol) and the wireless (TCP protocol). The TCP protocol is bidirectional and protected by a WPA / WPA2 – PSK key. The inter-GUI communication allowing several iPad to simultaneously show capture motion and indoor pedestrian navigation results, requires the use of a third communication protocol: UDP.

ibNav is designed to the research and development for industrial uses and to understand, compare, analyse inertial algorithms. This project covers three distinct sectors : • Cinema and video games (capture motion mode) • Military use (both navigation mode) allowing the capture

motion of both movements and position of a soldier to improve fighting positions and movements inside buildings.

• Sport (both navigation mode) allowing the analysis of the athlete’s movements to improve one’s performance.

Version 1.4 5 March 2013 Indoor and body navigation prototype using low-cost sensors

Department of Electrical Engineering

LASSENA (Embedded Systems, Navigation and Avionics Specialized LAboratory)

Front View Back View Left View Right View

1. Mixte Adrien., “Stage EE5 : Développement d’un prototype de navigation corporelle”,

École de technologie supérieure, Montréal , 2011.

2. Mixte Adrien, “MTR871 : Développement d’un prototype de capture de mouvements et

de navigation intérieure basé sur l’utilisation de plateformes IMU-MEMS à faible coût”,

École de technologie supérieure, Montréal , 2012.

LASSENA, 2013

References

Mixte Adrien

[email protected]

<

IMU configuration

Figure 2 : ibNav simplified communication schema

Inter - IMU SPI Wire / Wireless GUI TCP and UDP Protocol

Point d’accès

iPad (master)

iPads (slave)

RN-134

TCP

IMU (master)

UART

IMUs (slave)

SPI

SPI

SPI

SPI

Figure 3 : ibNav – Architecture (version 2.6)

Battery

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

IMU« Slave »

SPI Communication

Supply

Wireless ModuleUART

Communication

IMU « Master »

Légende :

SupplySPI - Data RX/TXSPI - ClockUART RX/TX/CTS/RTS

Architecture composition :

• 13 cases containing IMUs “slave” platforms, one with the IMU “master” and the module RN-134 and the last with the battery of 25 Wh (Theses are into the suit).

• Coil wiring shielded (4 GND) to flexibility and modularity with connectors of communication and debug on each case.

• Star distribution of energy and SPI Clock to high efficiency.

Figure 4 : ibNav architecture scheme and photography

Graphic User Interface (iPad)

The software in Objective-C allows two different modes, real time and post-processing. The first shows movements for both navigations, raw data and computed data with chart and 3D representation. The last, allows to change calibration and navigation algorithms to compare and analyse results on a previous record in real time. The software has 5 main views :

• My Setup :

Body and indoor view configuration, algorithms configuration, record file choice (post-processing), compute method (real time), map and BVH choices and an about view.

• My Sensors :

Engineer part with row measurements on charts and IMU user interaction.

• My Algorithms :

Engineer part with computed measurements on charts 2D / 3D and algorithms configuration.

• My Body and My location :

3D motion capture (BVH Reader) and 2D map localisation.

Figure 5 : Example of GUI Interfaces

• Gyroscopes :

Measurement of the angular rate are made by Coriolis effect using Foucault’s Pendulum principle. So are acquired the values for pitch / roll on the axis along the sensor’s package and the yaw on the axis perpendicular to it.

Before use these sensors, the first step is to calibrate each sensor axis to reduce the following deterministic errors : Bias (with hard iron of magnetometers), scale factor and axis misalignment (For stochastic errors, white noise is used for each IMU with the Allan Variance Method).

Scale factor and misalignment axis

correction

Accelerometers

Gyroscopes

Magnetometers

Compute white noise with « Allan Variance » method

Compute magnetic field norm

Kalman filter EKF(Multi-positions method)

Compute theory gravity vector

Compute initial bias

Inertial sensors initial calibration - EKF with knowledge model

Quasi-stationary state detectorDétection

Bias correction

Temperature

Figure 6 : calibration algorithms scheme

Sensors and initial calibration

ibNav project uses MEMS sensors (Microelectromechanical system) :

• Accelerometers

Measures the projection of the gravity vector on the 3D axis.

• Magnetometers

Measures the strength of the magnetic field on the 3D axis.

The second step of initial calibration uses the Lynxmotion AL5D robot in quasi-stationary scenarios to rectify the position of an IMU within its casing.

Figure 7 : Robot of Calibration

Algorithms navigation design <

Motion capture algorithms use an AHRS model with two methods of drift reduction to compute Euler’s Angles calculation (φ, θ, ψ) . During this process, an online calibration is performed to correct the magnetometer’s soft iron’s influence on the scale factor and axis misalignment and the temperature’s on the bias.

Stationary state detector

Initial alignement

Dynamique model(Attitude Update)

Case’s misalignement correction

Kalman filter EKF

Compute Euler Angle (Attitude)

Convert to BVH format

Attitude d’autres IMU

Détection

Zero angular rate update detector (ZARU)

Détection

Capture motion navigation algorithms AHRS/EKF with drift reduction methods

Figure 8 : AHRS algorithms scheme

Indoor Pedestrian Navigation uses an INS model with PDR methodology to obtain the position, velocity and attitude. In addition to an online calibration, several methods of drift reduction are used like ZUPT, ZARU, HDC, Compass and BIM.

Note : All three algorithms use an Extended Kalman filter to calibrate sensors or estimate and correct drift errors.

Possible uses <

Currently, the GUI and the indoor pedestrian navigation algorithms are still in development. The others algorithms are in continuous improvement in the LASSENA in order to reach expected results.

Figure 9: Suit of the ibNav project