Example SmartPhone Based Tracking System

advertisement
A Novel Tracking System for AAL
Based on Smartphone Technology
DIEEI – University of Catania, Italy
Outline
• AAL research activities at DIEEI
• The proposed methodology for user tracking
• The proposed methodology for the Monitoring of ADL & Fall events
• Experimental results
What is AAL?
Ambient Assisted Living: smart use of technology to support well-being in the preferred living
environment for people who might otherwise find this difficult (e.g. infirm or elderly people who want
to continue living in their own homes)
Quality of life
Social interaction
Active aging
Well-being
Safety
Synergy between competencies to improve life quality of weak (impaired and elderly ) people
Why research on AAL & Assistive technologies?
Social problem
Disabled people represent 50 million persons in the EU
(about 10% of the entire population)
According to ISTAT (2004-2005), 4.8% of the Italian
population (2,800,000 persons) suffer from some kind
of disability, the 75% of which are over-65 years old.
New innovative solutions can have a major effect on
quality of life, thus easing the pressure of increasing
costs in European social and care systems
Attractive potential market
Fundings
AAL Joint Programme
The European Commission has formally proposed a
continuation of the AAL Joint Programme for the period
2014 – 2020.
HORIZON 2020
Accessible and Assistive ICT,
Embedded Accessibility of Future ICT.
AAL@DIEEI-UNICT
Associazione Italiana
“Ambient Assisted Living”
DIEEI is a supporter of the
AALOpenAssociation
focusing on scientific and technological
challenges posed by AAL.
Monitoring of a tactile path
Image enhancement
by noise modulation
Multisensor Haptic cane
Sensors
Methodologies
Color sensor based on fuzzy logic
Tactile perception
The proposed user tracking methodology
Objective: to develop an User-Centered Designed (UCD) Assistive platform for mobility
and assistance of weak users
Approach: sensing and processing features of SmartPhones
Methodology: multi-sensor data fusion and advanced signal processing
Features: user-friendly device, high reliable algorithms for data mining
Smartphone
Server (PC)
Signal Processing
Smartphone:
Accelerometer
Compass
Gyroscope
Android
Communication App
User-Environment
Contextualization/
Interaction
Labview Development
Environment
Feedback
ADL
User tracking:
+
+ • Walking Distance Estimation (Step-Size)
Fall detection
• Heading
Environment info
+
User-Environment
Interaction
(UEI)
The proposed user tracking methodology
Objective: to develop an User-Centered Designed (UCD) Assistive platform for mobility
and assistance of weak users
Approach: sensing and processing features of SmartPhones
Methodology: multi-sensor data fusion and advanced signal processing
Features:
high reliable
algorithms
dataand
mining
UCD is user-friendly
a type of designdevice,
and a process
in which
the needs,for
wants,
limitations of end
users of a product are given extensive attention at each stage of the design process.
Smartphone
Server (PC)
Signal Processing
Smartphone:
Accelerometer
Compass
Gyroscope
Android
Communication App
User-Environment
Contextualization/
Interaction
Labview Development
Environment
Feedback
ADL
User tracking:
+
+ • Walking Distance Estimation (Step-Size)
Fall detection
• Heading
Environment info
+
User-Environment
Interaction
(UEI)
The proposed user tracking methodology
Objective: to develop an User-Centered Designed (UCD) Assistive platform for
mobility and assistance of weak users
Approach: sensing and processing features of SmartPhones
Methodology: multi-sensor
data fusion
andOS
advanced signal processing
App developed
for Android
Features: user-friendly
device,
high
reliable algorithms
- Open
Source
Development
Environmentfor data mining
Smartphone:
Accelerometer
Compass
Smartphone:
Gyroscope
Accelerometer
Compass
Gyroscope
-
Access to all sensor embedded into the
Server (PC)
smartphone
Processing
Wireless communicationSignal
(WiFi,
Bluetooth)
Server
(PC)
Smartphone
Smartphone
Android
Communication App
Signal Processing
App features:
User-Environment
- Read inertial and orientation sensors available
Contextualization/
on the smartphone
User-Environment
Interaction
- Refresh Rate fully configurable
(used 50Hz)
Contextualization/
Feedback
- Sensors Data are transferred to
PC through
Interaction
TCP/IP protocol
Feedback
ADL
User tracking:
+
+ • Walking Distance Estimation (Step-Size)
Fall detection
• Heading
Android
Communication App
Labview Development
Environment
Labview Development
Environment
Environment info
+
User-Environment
Interaction
(UEI)
The proposed user tracking methodology
Objective: to develop an Activities
User-Centered
Designed
(UCD) Assistive platform for
of Daily
Living
mobility and assistance of weak users
Basic routine activities that peopleFall
tenddetection
do everyday without needing assistance.
Approach: sensing and processing features
of SmartPhones
Methodology:
There are sixmulti-sensor
basic ADLs: data fusion and advanced signal processing
The fall in the elderly is a major public health problem as it causes many disabling
• eating
Features:
user-friendly device, high reliable algorithms for data mining
fractures but also has dramatic psychological consequences which reduce the
• bathing
independence of the person.
• dressing
Smartphone
•
toileting
Server
(PC)
•
Step
up
Smartphone:
It was established that the earlier the fall is reported, the lower is the rate of
Signal Processing
• transferring (walking)
Accelerometer
• Step down
morbidity-mortality.
Compass
Android
• continence
• Sitting
Gyroscope
Communication App
User-Environment
An individual's ability to perform ADLs is important
for determining what type of
Contextualization/
Labview Development
long-term care (e.g. nursing-home care or home
care) and coverage the
individual
Environment
Interaction
needs (i.e. Medicare, Medicaid or long-term care insurance).
Feedback
ADL
User tracking:
+
+ • Walking Distance Estimation (Step-Size)
Fall detection
• Heading
Environment info
+
User-Environment
Interaction
(UEI)
Dead Reckoning Techniques
Walking Path Reconstruction
Reconstruction of the single step is performed by the combination of the Heading θi
and the Step Size ∆Si .
The absolute position is obtained by cumulating step by step the relative positions.
N Y’ = ΔS *cos(θ)
X’ = ΔS *sinθ)
y
ΔS2
Y’
ΔS1
∆Si
θi
X’
x
E
• The position error increases step by step.
• It needs periodic correction through absolute
measurement of position.
• Useful to evaluate short distance path
• Useful to estimate physical capability of the user
ΔS3
ΔS4
Schematization of the proposed approach
Methodology: multi-sensor data fusion and advanced signal processing
Data Fusion
Accelerometer
Compensation
Compass
Θ Compass
Θ
CKF
Gyroscope
ʃ
Compensation Θ Gyro
θ
XY
||
Acceleration
Step Size
(SS)
&
Walking
Distance
(WD)
coordinates
Dynamic SS
DFA
Static SS
SS
Δs
Accelerometer
An accelerometer is a device that measures static and dynamic accelerations.
What are accelerometers useful for?
- By sensing the amount of dynamic acceleration, you can analyze the way the device (and
therefore the body to which it is attached) is moving.
- By measuring the amount of static acceleration due to gravity, you can find out the angle
the device is tilted at with respect to the earth.
Accelerometer
• Modeling
• Readout strategy
• Technology
• Output interface
• Analog
• Digital (I2C, SPI)
I2C & SPI
Serial Peripheral Interface
Is a synchronous serial data standard, named by Motorola, that operates in full duplex mode.
SPI is often referred to as SSI (Synchronous Serial Interface).
Devices communicate in master/slave mode where the master device initiates the data frame.
Multiple slave devices are allowed with individual slave select lines.
SCLK: serial clock (output from master);
MOSI: master output, slave input (output from master);
MISO: master input, slave output (output from slave);
SS: slave select (active low, output from master).
Alternative naming conventions are also widely used
Frequencies: 40 MHz to 100 MHz
Inter-Integrated Circuit
Is a multimaster serial single-ended computer bus invented by Philips used for attaching low-speed
peripherals to a motherboard, embedded system, cellphone, or other electronic device.
I²C uses only two bidirectional lines:
• Serial Data Line (SDA)
• Serial Clock (SCL)
I²C defines basic types of messages, each of which begins with a START and ends with a STOP
Frequencies: 10 kbit/s (LSm) to 5 Mbit/s (UFm)
Magnetic Compass
The magnetic compass consists of a magnetized pointer free to align itself with Earth's magnetic field. A
compass is a magnetically sensitive device capable of indicating the direction of the magnetic North
The strength of the earth's magnetic field is about 0.5 to 0.6 gauss and has a component parallel to the
earth's surface that always points toward the magnetic north pole
It is an absolute heading sensor.
It is affected by environmental magnetic fields and ferromagnetic
bodies which alter the Earth's magnetic field.
The tilt problem
Problem: The reading will be more inaccurate
the further the compass is tilted. This problem
occurs because the compass is only using the X
and Y axis of the earths magnetic field.
When the compass is not parallel to these axis
the amount of magnetism felt by the needle will
change based on how out of alignment the
compass is to these axis.
Xh = XM * cos(pitch) + ZM * sin(pitch)
yh = XM*sin(roll)*sin(pitch) + YM*cos(roll) - ZM*sin(roll)*cos(pitch)
heading = arctan(yh/xh)
Gyroscope
A gyroscope is a device for measuring or maintaining orientation, based on the principles of angular
momentum.
Mechanically, a gyroscope is a spinning wheel or disc in which the axle is free to assume any orientation.
Gyroscopes measure angular velocity, how fast something is spinning about an axis.
It is not affected by gravity and magnetic fields.
Step Size Estimation
Az
Accelerometer
Step
detection
Dynamic SS
DFA
Ay , Az
||
Step Size
estimation
SS
Static SS
Methodology:
- Step Detection: Processing of the vertical axis Az of the accelerometer
- Step Size Estimation : Three types of algorithms have been used:
• Static: exploit a constant value of the Step Size, evaluated in a calibration phase in case
of a MEDIUM step size and a NORMAL walking speed.
• Dynamic: computes an adaptive estimation of the Step Size, using the frequency fi and
the variance νi of the forward acceleration:
N
Dss =
∑α fi + β ν i + γ
step =1
α, β evaluated during the calibration phase (10 m
for 3 times with 3 walking speed)
• Adaptive : a DF algorithm provides a combination of both the static and dynamic
estimation depending on the acceleration variance.
Step recognition
Smartphone is placed on the right hip
• Two different heuristic thresholds to
recognize the step:
about 9 and 11 m/s2
• Two set of values (right/left step) of
α, β and γ parameters for the three
walking speed: low , normal and
fast .
Right Step
Left Step
Static and Dynamic Algorithms Test Results
Three Test Speed Mode: SLOW, NORMAL, FAST
Test Pattern Walked using : SMALL step sizes, MEDIUM step sizes.
Static and Dynamic Algorithms Test Results
Three Test Speed Mode: SLOW, NORMAL, FAST
Test Pattern Walked using : SMALL step sizes, MEDIUM step sizes.
J wd % =
WD Nom − WD Estim
WD
LOW Speed
Jwd%
SMALL MEDIUM
Nom
⋅ 100
NORMAL Speed
FAST Speed
SMALL
MEDIUM
SMALL
MEDIUM
WDdyn
3,9
7,2
4,8
0,3
8,5
8,1
WDstat
40,6
3,8
25,8
3,8
40,6
3,8
Heading Determination
Accelerometer
Compass
Gyroscope
Compensation
Θ Compass
CKF
ʃ
Compensation
Θ
Θ Gyro
Methodology:
• Compass: the absolute Heading estimation is obtained by computing the data from the Tilt
Compensated 3-axis Compass (Roll and Pitch)
• Gyroscope : the relative Heading estimation is given by integration of the 3-axis Gyroscope
• Constrained Kalman Filter (CKF): Adaptive Heading estimation by processing the Compass and
Gyroscope by taking into account the variance of the two signals (noise).
The Kalman Filter
The KF addresses the general problem of trying to estimate the state x ϵ Rn of a discrete-time controlled
process governed by the linear stochastic difference equation
with a measurement :
wk and vk represent the process and measurement noise. They are assumed to be indipendent, white and
with normal probability distributions :
p(w) ~ N(0, Q)
p(v) ~ N(0, R)
Target: to find the estimate of the signal x
The Kalman Filter
The KF addresses the general problem of trying to estimate the state x ϵ Rn of a discrete-time controlled
process governed by the linear stochastic difference equation
with a measurement :
wk and vk represent the process and measurement noise. They are assumed to be indipendent, white and
with normal probability distributions :
p(w) ~ N(0, Q)
p(v) ~ N(0, R)
Target: to find the estimate of the signal x
Kalman filter finds the most optimum averaging
factor for each consequent state. Also somehow
remembers a little bit about the past states.
The KF Step-by-Step
Step 1 – Build a Model
A, B and H are in general form matrices, but in most cases can be considered just numeric values.
Moreover they can change between states but most of the time we can assume that they’re constant
Required: estimation of the mean and standard deviation of the noise functions wk-1 and vk.
Step 2 – Start the Process
The next step is to determine the necessary parameters and initial values.
Two distinct set of equations applied at each kth state :
Time Update (prediction)
Measurement Update (correction
To start the process, we need to know the estimate of x0, and P0.
The KF Step-by-Step
Step 3 – Iterate
The previous estimates will be the input for the current state.
prior estimate
Posterior estimate
prior error
covariance
Experimental results and test
•
Users in good health have been requested to perform five repetition of a 20 m long square walking path
•
•
Gyroscope heading information is affected by a drift while compass is influenced by magnetic noise.
The CKF estimation is strongly anchored to the compass heading estimation while rejecting magnetic
noise in the compass signal by following the gyroscope trend.
Experimental results and test
•
Users in good health have been requested to perform five repetition of a 20 m long square walking path
Jθ % =
θ Nom − θ Estim
θ
Nom
⋅ 100
COMPASS
GYRO
CKF
1679°
1501°
1704°
1.8
12.2
0.3
Total Measured Heading
(target 1710°)
Jθ%
•
•
Euclidean Distance (m)
3.04
9.91
0.8
Gyroscope heading information
is affected by a drift
while compass
is influenced
by magnetic noise.
The CKF estimation is strongly anchored to the compass heading estimation while rejecting magnetic
noise in the compass signal by following the gyroscope trend.
Gyroscope Heading - Dynamic StepSize
Kalman Heading - Dynamic StepSize
2
2
0
0
0
-2
-4
-6
-2
Y axis [m]
2
Y axis [m]
Y axis [m]
Compass Heading - Dynamic StepSize
4
-2
-4
2
X axis [m]
4
6
-8
-2
0
2
4
X axis [m]
6
WALKING DISTANCE (nominal 100m):
STATIC
DYNAMIC
Walking distance
101,38
99,60
-4
-6
-6
0
-2
8
-8
-4
-2
0
2
X axis [m]
4
TOTAL ROUNDS (NOMINAL 1710°):
ROUNDS
COMPASS
GYRO
KALMAN HEADING
1679°
1501°
1704°
6
Nominal walking distance = 357 m
Download