real-time signal processing in mems sensor-based...

83
Mälardalen University Doctoral Dissertation 285 REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED MOTION ANALYSIS SYSTEMS Jiaying Du

Upload: others

Post on 08-Mar-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Jiayin

g D

u REA

L-TIME SIG

NA

L PR

OC

ESSING

IN M

EMS SEN

SOR

-BASED

MO

TION

AN

ALYSIS SYSTEM

S 2019

ISBN 978-91-7485-421-3ISSN 1651-4238

Address: P.O. Box 883, SE-721 23 Västerås. SwedenAddress: P.O. Box 325, SE-631 05 Eskilstuna. SwedenE-mail: [email protected] Web: www.mdh.se

Mälardalen University Doctoral Dissertation 285

REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED MOTION ANALYSIS SYSTEMS Jiaying Du

Page 2: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Mälardalen University Press DissertationsNo. 285

REAL-TIME SIGNAL PROCESSING IN MEMSSENSOR-BASED MOTION ANALYSIS SYSTEMS

Jiaying Du

2019

School of Innovation, Design and Engineering

Mälardalen University Press DissertationsNo. 285

REAL-TIME SIGNAL PROCESSING IN MEMSSENSOR-BASED MOTION ANALYSIS SYSTEMS

Jiaying Du

2019

School of Innovation, Design and Engineering

1

Page 3: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Copyright © Jiaying Du, 2019ISBN 978-91-7485-421-3ISSN 1651-4238Printed by E-Print AB, Stockholm, Sweden

Copyright © Jiaying Du, 2019ISBN 978-91-7485-421-3ISSN 1651-4238Printed by E-Print AB, Stockholm, Sweden

2

Page 4: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Mälardalen University Press DissertationsNo. 285

REAL-TIME SIGNAL PROCESSING IN MEMSSENSOR-BASED MOTION ANALYSIS SYSTEMS

Jiaying Du

Akademisk avhandling

som för avläggande av teknologie doktorsexamen i elektronik vid Akademinför innovation, design och teknik kommer att offentligen försvaras tisdagen

den 19 mars 2019, 09.30 i Gamma, Mälardalens högskola, Västerås.

Fakultetsopponent: Docent Helena Grip, Norrlands universitetssjukhus/Umeå University

Akademin för innovation, design och teknik

Mälardalen University Press DissertationsNo. 285

REAL-TIME SIGNAL PROCESSING IN MEMSSENSOR-BASED MOTION ANALYSIS SYSTEMS

Jiaying Du

Akademisk avhandling

som för avläggande av teknologie doktorsexamen i elektronik vid Akademinför innovation, design och teknik kommer att offentligen försvaras tisdagen

den 19 mars 2019, 09.30 i Gamma, Mälardalens högskola, Västerås.

Fakultetsopponent: Docent Helena Grip, Norrlands universitetssjukhus/Umeå University

Akademin för innovation, design och teknik

3

Page 5: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

AbstractThis PhD thesis focuses on real-time signal processing for hardware-limited micro-electro-mechanical system (MEMS) sensor-based human motion analysis systems. The aim of the thesis is to improve the signal quality of MEMS gyroscopes and accelerometers by minimizing the effects of signal errors, considering the hardware limitations and the users' perception.

MEMS sensors such as MEMS gyroscopes and MEMS accelerometers are important components in motion analysis systems. They are known for their small size, light weight, low power consumption, low cost, and high sensitivity. This makes them suitable for wearable systems for measuring body movements. The data can further be used as input for advanced human motion analyses. However, MEMS sensors are usually sensitive to environmental disturbances such as shock, vibration, and temperature change. A large portion of the MEMS sensor signals actually originate from error sources such as noise, offset, null drift and temperature drift, as well as integration drift. Signal processing is regarded as the major key solution to reduce these errors. For real-time signal processing, the algorithms need to be executed within a certain specified time limit. Two crucial factors have to be considered when designing real-time signal processing algorithms for wearable embedded sensor systems. One is the hardware limitations leading to a limited calculation capacity, and the other is the user perception of the delay caused by the signal processing.

Within this thesis, a systematic review of different signal error reduction algorithms for MEMS gyroscope-based motion analysis systems for human motion analysis is presented. The users’ perceptions of the delay when using different computer input devices were investigated. 50 ms was found as an acceptable delay for the signal processing execution in a real-time motion analysis system. Real-time algorithms for noise reduction, offset/drift estimation and reduction, improvement of position accuracy and system stability considering the above mentioned requirements, are presented in this thesis. The algorithms include a simplified high-pass filter and low-pass filter, a LMS algorithm, a Kalman filter, a WFLC algorithm, two simple novel algorithms (a TWD method and a velocity drift estimation method), and a novel combination method KWT.  Kalman filtering was found to be efficient to reduce the problem of temperature drift and the WFLC algorithm was found the most suitable method to reduce human physiological tremor and electrical noise. The TWD method resulted in a signal level around zero without interrupting the continuous movement signal. The combination method improved the static stability and the position accuracy considerably.  The computational time for the execution of the algorithms were all perceived as acceptable by users and kept within the specified time limit for real-time performance.  Implementations and experiments showed that these algorithms are feasible for establishing high signal quality and good system performance in previously developed systems, and also have the potential to be used in similar systems.

ISBN 978-91-7485-421-3ISSN 1651-4238

AbstractThis PhD thesis focuses on real-time signal processing for hardware-limited micro-electro-mechanical system (MEMS) sensor-based human motion analysis systems. The aim of the thesis is to improve the signal quality of MEMS gyroscopes and accelerometers by minimizing the effects of signal errors, considering the hardware limitations and the users' perception.

MEMS sensors such as MEMS gyroscopes and MEMS accelerometers are important components in motion analysis systems. They are known for their small size, light weight, low power consumption, low cost, and high sensitivity. This makes them suitable for wearable systems for measuring body movements. The data can further be used as input for advanced human motion analyses. However, MEMS sensors are usually sensitive to environmental disturbances such as shock, vibration, and temperature change. A large portion of the MEMS sensor signals actually originate from error sources such as noise, offset, null drift and temperature drift, as well as integration drift. Signal processing is regarded as the major key solution to reduce these errors. For real-time signal processing, the algorithms need to be executed within a certain specified time limit. Two crucial factors have to be considered when designing real-time signal processing algorithms for wearable embedded sensor systems. One is the hardware limitations leading to a limited calculation capacity, and the other is the user perception of the delay caused by the signal processing.

Within this thesis, a systematic review of different signal error reduction algorithms for MEMS gyroscope-based motion analysis systems for human motion analysis is presented. The users’ perceptions of the delay when using different computer input devices were investigated. 50 ms was found as an acceptable delay for the signal processing execution in a real-time motion analysis system. Real-time algorithms for noise reduction, offset/drift estimation and reduction, improvement of position accuracy and system stability considering the above mentioned requirements, are presented in this thesis. The algorithms include a simplified high-pass filter and low-pass filter, a LMS algorithm, a Kalman filter, a WFLC algorithm, two simple novel algorithms (a TWD method and a velocity drift estimation method), and a novel combination method KWT.  Kalman filtering was found to be efficient to reduce the problem of temperature drift and the WFLC algorithm was found the most suitable method to reduce human physiological tremor and electrical noise. The TWD method resulted in a signal level around zero without interrupting the continuous movement signal. The combination method improved the static stability and the position accuracy considerably.  The computational time for the execution of the algorithms were all perceived as acceptable by users and kept within the specified time limit for real-time performance.  Implementations and experiments showed that these algorithms are feasible for establishing high signal quality and good system performance in previously developed systems, and also have the potential to be used in similar systems.

ISBN 978-91-7485-421-3ISSN 1651-4238

4

Page 6: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Sammanfattning

Denna doktorsavhandling fokuserar på realtidssignalbehandling av inbyggdamikroelektromekaniska system (MEMS)-sensorsystem för rörelseranalys medhårdvarubegränsningar. Syftet med avhandlingen är att förbättra signalkvalit-eten hos MEMS-gyroskop och accelerometrar genom att minska felkällornasinflytande, med hänsyn tagen till hårdvarubegränsningarna och användarnasupplevelse.

MEMS-sensorer, såsom MEMS-gyroskop och MEMS-accelerometrar ut-gör viktiga komponenter i rörelseanalyssystem. De kännetecknas av sin ringastorlek, låga vikt, låga energiförbrukning, låga kostnad och höga känslighet.Detta gör dem lämpliga att användas i bärbara system, avsedda att mäta kropp-srörelser. Datat kan vidare användas som insignal för avancerad rörelseanalys.MEMS-sensorer är dock ofta känsliga för miljöstörningar, såsom stötar, vibra-tion och temperaturförändring. En stor del av den uppmätta MEMS-sensorsig-nalen kommer i själva verket från felkällor såsom brus, offset, null drift ochtemperaturdrift, samt integrationsdrift. Signalbehandling anses vara den vik-tigaste metoden för att minska dessa fel. För realtidssignalbehandling måstealgoritmerna utföras inom en viss angiven tidsgräns. Två avgörande faktorermåste beaktas vid utformning av realtidssignalbehandlingsalgoritmer för bär-bara inbyggda sensorsystem. En utgörs av hårdvarubegränsningar, som ledertill en begränsad beräkningskapacitet, och den andra utgörs av användarnasupplevelse av fördröjningen på grund av signalbehandlingen.

I denna avhandling presenteras en systematisk review över olika signalbe-handlingsalgoritmer för att minska felkällorna för MEMS-gyroskopbaseraderörelseanalyssystem. Användarnas upplevelse av fördröjning vid användnin-g av olika inmatningsenheter till datorer har undersökts. 50 ms utgjordeen acceptabel fördröjning för signalbehandlingsexekveringen i ett realtids-rörelseanalyssystem. I denna avhandling presenteras också realtidsalgoritmerför brusreducering, offset-/driftestimering och reducering, förbättring av po-

i

Sammanfattning

Denna doktorsavhandling fokuserar på realtidssignalbehandling av inbyggdamikroelektromekaniska system (MEMS)-sensorsystem för rörelseranalys medhårdvarubegränsningar. Syftet med avhandlingen är att förbättra signalkvalit-eten hos MEMS-gyroskop och accelerometrar genom att minska felkällornasinflytande, med hänsyn tagen till hårdvarubegränsningarna och användarnasupplevelse.

MEMS-sensorer, såsom MEMS-gyroskop och MEMS-accelerometrar ut-gör viktiga komponenter i rörelseanalyssystem. De kännetecknas av sin ringastorlek, låga vikt, låga energiförbrukning, låga kostnad och höga känslighet.Detta gör dem lämpliga att användas i bärbara system, avsedda att mäta kropp-srörelser. Datat kan vidare användas som insignal för avancerad rörelseanalys.MEMS-sensorer är dock ofta känsliga för miljöstörningar, såsom stötar, vibra-tion och temperaturförändring. En stor del av den uppmätta MEMS-sensorsig-nalen kommer i själva verket från felkällor såsom brus, offset, null drift ochtemperaturdrift, samt integrationsdrift. Signalbehandling anses vara den vik-tigaste metoden för att minska dessa fel. För realtidssignalbehandling måstealgoritmerna utföras inom en viss angiven tidsgräns. Två avgörande faktorermåste beaktas vid utformning av realtidssignalbehandlingsalgoritmer för bär-bara inbyggda sensorsystem. En utgörs av hårdvarubegränsningar, som ledertill en begränsad beräkningskapacitet, och den andra utgörs av användarnasupplevelse av fördröjningen på grund av signalbehandlingen.

I denna avhandling presenteras en systematisk review över olika signalbe-handlingsalgoritmer för att minska felkällorna för MEMS-gyroskopbaseraderörelseanalyssystem. Användarnas upplevelse av fördröjning vid användnin-g av olika inmatningsenheter till datorer har undersökts. 50 ms utgjordeen acceptabel fördröjning för signalbehandlingsexekveringen i ett realtids-rörelseanalyssystem. I denna avhandling presenteras också realtidsalgoritmerför brusreducering, offset-/driftestimering och reducering, förbättring av po-

i

5

Page 7: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

ii

sitioneringsnoggrannhet och systemstabilitet, med hänsyn tagen till de ovannämnda kraven. Algoritmerna inkluderar ett förenklat högpass och lågpass-filter, en LMS-algoritm, ett Kalman-filter, en WFLC-algoritm, enkla nya al-goritmer (en TWD-metod och en hastighetsdriftestimeringsmetod) och en nykombinationsalgoritm KWT. Kalmanfiltreringsalgoritmen visade sig vara ef-fektiv för att minska problemet med temperaturdrift och WFLC-algoritmen ut-gjorde den mest lämpliga metoden för att reducera människors fysiologiskatremor och elektriskt brus. TWD-metoden resulterade i en signalnivå runt nollutan att avbryta den kontinuerliga rörelsesignalen. Kombinationsmetoden för-bättrade statisk stabilitet och noggrannheten i positionsbestämning betydligt.Beräkningstiden för exekvering av algoritmerna upplevdes som acceptabel avanvändarna och var inom den angivna tidsgränsen för realtidsprestanda. Im-plementering och experiment visade att dessa algoritmer är lämpliga för attåstadkomma hög signalkvalitet och bra systemprestanda i tidigare utveckladesystem, och även har potential att användas i liknande system.

ii

sitioneringsnoggrannhet och systemstabilitet, med hänsyn tagen till de ovannämnda kraven. Algoritmerna inkluderar ett förenklat högpass och lågpass-filter, en LMS-algoritm, ett Kalman-filter, en WFLC-algoritm, enkla nya al-goritmer (en TWD-metod och en hastighetsdriftestimeringsmetod) och en nykombinationsalgoritm KWT. Kalmanfiltreringsalgoritmen visade sig vara ef-fektiv för att minska problemet med temperaturdrift och WFLC-algoritmen ut-gjorde den mest lämpliga metoden för att reducera människors fysiologiskatremor och elektriskt brus. TWD-metoden resulterade i en signalnivå runt nollutan att avbryta den kontinuerliga rörelsesignalen. Kombinationsmetoden för-bättrade statisk stabilitet och noggrannheten i positionsbestämning betydligt.Beräkningstiden för exekvering av algoritmerna upplevdes som acceptabel avanvändarna och var inom den angivna tidsgränsen för realtidsprestanda. Im-plementering och experiment visade att dessa algoritmer är lämpliga för attåstadkomma hög signalkvalitet och bra systemprestanda i tidigare utveckladesystem, och även har potential att användas i liknande system.

6

Page 8: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Abstract

This PhD thesis focuses on real-time signal processing for hardware-limitedmicro-electro-mechanical system (MEMS) sensor-based human motion analy-sis systems. The aim of the thesis is to improve the signal quality of MEMSgyroscopes and accelerometers by minimizing the effects of signal errors, con-sidering the hardware limitations and the users’ perception.

MEMS sensors such as MEMS gyroscopes and MEMS accelerometers areimportant components in motion analysis systems. They are known for theirsmall size, light weight, low power consumption, low cost, and high sensi-tivity. This makes them suitable for wearable systems for measuring bodymovements. The data can further be used as input for advanced human mo-tion analyses. However, MEMS sensors are usually sensitive to environmentaldisturbances such as shock, vibration, and temperature change. A large por-tion of the MEMS sensor signals actually originate from error sources such asnoise, offset, null drift and temperature drift, as well as integration drift. Sig-nal processing is regarded as the major key solution to reduce these errors. Forreal-time signal processing, the algorithms need to be executed within a certainspecified time limit. Two crucial factors have to be considered when designingreal-time signal processing algorithms for wearable embedded sensor systems.One is the hardware limitations leading to a limited calculation capacity, andthe other is the user perception of the delay caused by the signal processing.

Within this thesis, a systematic review of different signal error reductionalgorithms for MEMS gyroscope-based motion analysis systems for humanmotion analysis is presented. The users’ perceptions of the delay when us-ing different computer input devices were investigated. 50 ms was found asan acceptable delay for the signal processing execution in a real-time motionanalysis system. Real-time algorithms for noise reduction, offset/drift estima-tion and reduction, improvement of position accuracy and system stability con-sidering the above mentioned requirements, are presented in this thesis. The

iii

Abstract

This PhD thesis focuses on real-time signal processing for hardware-limitedmicro-electro-mechanical system (MEMS) sensor-based human motion analy-sis systems. The aim of the thesis is to improve the signal quality of MEMSgyroscopes and accelerometers by minimizing the effects of signal errors, con-sidering the hardware limitations and the users’ perception.

MEMS sensors such as MEMS gyroscopes and MEMS accelerometers areimportant components in motion analysis systems. They are known for theirsmall size, light weight, low power consumption, low cost, and high sensi-tivity. This makes them suitable for wearable systems for measuring bodymovements. The data can further be used as input for advanced human mo-tion analyses. However, MEMS sensors are usually sensitive to environmentaldisturbances such as shock, vibration, and temperature change. A large por-tion of the MEMS sensor signals actually originate from error sources such asnoise, offset, null drift and temperature drift, as well as integration drift. Sig-nal processing is regarded as the major key solution to reduce these errors. Forreal-time signal processing, the algorithms need to be executed within a certainspecified time limit. Two crucial factors have to be considered when designingreal-time signal processing algorithms for wearable embedded sensor systems.One is the hardware limitations leading to a limited calculation capacity, andthe other is the user perception of the delay caused by the signal processing.

Within this thesis, a systematic review of different signal error reductionalgorithms for MEMS gyroscope-based motion analysis systems for humanmotion analysis is presented. The users’ perceptions of the delay when us-ing different computer input devices were investigated. 50 ms was found asan acceptable delay for the signal processing execution in a real-time motionanalysis system. Real-time algorithms for noise reduction, offset/drift estima-tion and reduction, improvement of position accuracy and system stability con-sidering the above mentioned requirements, are presented in this thesis. The

iii

7

Page 9: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

iv

algorithms include a simplified high-pass filter and low-pass filter, a LMS al-gorithm, a Kalman filter, a WFLC algorithm, two simple novel algorithms (aTWD method and a velocity drift estimation method), and a novel combinationmethod KWT. Kalman filtering was found to be efficient to reduce the prob-lem of temperature drift and the WFLC algorithm was found the most suitablemethod to reduce human physiological tremor and electrical noise. The TWDmethod resulted in a signal level around zero without interrupting the contin-uous movement signal. The combination method improved the static stabilityand the position accuracy considerably. The computational time for the execu-tion of the algorithms were all perceived as acceptable by users and kept withinthe specified time limit for real-time performance. Implementations and exper-iments showed that these algorithms are feasible for establishing high signalquality and good system performance in previously developed systems, andalso have the potential to be used in similar systems.

iv

algorithms include a simplified high-pass filter and low-pass filter, a LMS al-gorithm, a Kalman filter, a WFLC algorithm, two simple novel algorithms (aTWD method and a velocity drift estimation method), and a novel combinationmethod KWT. Kalman filtering was found to be efficient to reduce the prob-lem of temperature drift and the WFLC algorithm was found the most suitablemethod to reduce human physiological tremor and electrical noise. The TWDmethod resulted in a signal level around zero without interrupting the contin-uous movement signal. The combination method improved the static stabilityand the position accuracy considerably. The computational time for the execu-tion of the algorithms were all perceived as acceptable by users and kept withinthe specified time limit for real-time performance. Implementations and exper-iments showed that these algorithms are feasible for establishing high signalquality and good system performance in previously developed systems, andalso have the potential to be used in similar systems.

8

Page 10: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

To my family To my family

9

Page 11: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

10

Page 12: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Acknowledgement

I am extremely grateful for having this opportunity to start a PhD journey in mylife. It has been a great experience to learn, to gain, to improve continuously,not only in the research field, but also in my life. Here, to complete this thesis,I would like to express my sincere appreciation to all those people who havecontributed to this thesis and supported me in one way or another during theseyears.

I would like to express my deepest thankfulness and gratitude to my su-pervisor Prof. Maria Lindén at Mälardalen University (MDH), for her patientguidances, enthusiastic encouragement, constant support, valuable suggestionsand comments throughout my research work over these years, even during thestruggling times. She has always been supportive and patient. I feel privilegedand lucky to work under her supervision.

I would also like to express my most grateful appreciation to my industrialmentor Christer Gerdtman at Motion Control i Västerås AB. I feel very gratefulto him for giving me this chance to work with research in industry. I appreciatehis vision, advice, motivation, and leadership to guide me at all times.

They both have contributed a lot to make this study possible. Big thanksonce again go to them. Without them this would have never been possible.

I would also like to express my sincere appreciation to my co-supervisorsDr. Magnus Otterskog and Dr. Nikola Petrovic at MDH for their importanthelps and comments during my studies. Your help and insights have beeninvaluable.

I am particularly grateful to co-authors Arash Ghareh Baghi and DanielKade for the nice collaborative working.

I wish to thank all the persons at School of Innovation, Design and Tech-nology (IDT) at MDH, in particular ITS-EASY industrial research school inEmbedded Software and Systems (ITS-EASY) and research group EmbeddedSensor System for Health (ESS-H).

vii

Acknowledgement

I am extremely grateful for having this opportunity to start a PhD journey in mylife. It has been a great experience to learn, to gain, to improve continuously,not only in the research field, but also in my life. Here, to complete this thesis,I would like to express my sincere appreciation to all those people who havecontributed to this thesis and supported me in one way or another during theseyears.

I would like to express my deepest thankfulness and gratitude to my su-pervisor Prof. Maria Lindén at Mälardalen University (MDH), for her patientguidances, enthusiastic encouragement, constant support, valuable suggestionsand comments throughout my research work over these years, even during thestruggling times. She has always been supportive and patient. I feel privilegedand lucky to work under her supervision.

I would also like to express my most grateful appreciation to my industrialmentor Christer Gerdtman at Motion Control i Västerås AB. I feel very gratefulto him for giving me this chance to work with research in industry. I appreciatehis vision, advice, motivation, and leadership to guide me at all times.

They both have contributed a lot to make this study possible. Big thanksonce again go to them. Without them this would have never been possible.

I would also like to express my sincere appreciation to my co-supervisorsDr. Magnus Otterskog and Dr. Nikola Petrovic at MDH for their importanthelps and comments during my studies. Your help and insights have beeninvaluable.

I am particularly grateful to co-authors Arash Ghareh Baghi and DanielKade for the nice collaborative working.

I wish to thank all the persons at School of Innovation, Design and Tech-nology (IDT) at MDH, in particular ITS-EASY industrial research school inEmbedded Software and Systems (ITS-EASY) and research group EmbeddedSensor System for Health (ESS-H).

vii

11

Page 13: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

viii

My special thanks are extended to all the colleges at Motion Control fortheir expert experience and constructive inspiration. Thank you for all of yourkindness, encouragement and support.

I also would like to thank all the participants who contributed their timeand provided important test data to this thesis.

Finally, I would like to express immeasurable appreciation to my family fortheir endless love, consideration, encouragement and support.

This research work was supported by Motion Control i Västerås AB, theresearch profile ESS-H and ITS-EASY industrial research school. ESS-Hand ITS-EASY are initiatives financed by the Swedish Knowledge Foundation(KKS) and affiliated with School of IDT at MDH.

Jiaying DuJanuary 31, 2019Västerås, Sweden

viii

My special thanks are extended to all the colleges at Motion Control fortheir expert experience and constructive inspiration. Thank you for all of yourkindness, encouragement and support.

I also would like to thank all the participants who contributed their timeand provided important test data to this thesis.

Finally, I would like to express immeasurable appreciation to my family fortheir endless love, consideration, encouragement and support.

This research work was supported by Motion Control i Västerås AB, theresearch profile ESS-H and ITS-EASY industrial research school. ESS-Hand ITS-EASY are initiatives financed by the Swedish Knowledge Foundation(KKS) and affiliated with School of IDT at MDH.

Jiaying DuJanuary 31, 2019Västerås, Sweden

12

Page 14: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

List of Publications

This is a list of publications that form the basis of the thesis1

Paper A Signal processing algorithms for temperature drift in a MEMS-gyro-based head mouse. Jiaying Du, Christer Gerdtman and Maria Lindén.21st International Conference on Systems, Signals and Image Process-ing, page(s): 123–126. May, 2014.

Paper B Signal Processing algorithms for position measurement with MEMS-based accelerometer. Jiaying Du, Christer Gerdtman and Maria Lindén.16th Nordic-Baltic Conference on Biomedical Engineering, Vol.48,page(s): 36–39. October, 2014.

Paper C Noise reduction for a MEMS-gyroscope based head mouse. JiayingDu, Christer Gerdtman and Maria Lindén. 12th International Conferenceon Wearable Micro and Nano Technologies for Personalized Health,page(s): 98–104. June, 2015.

Paper D The effects of perceived USB-delay for sensor and embedded systemdevelopment. Jiaying Du, Daniel Kade, Christer Gerdtman, OguzhanÖzcan, Maria Lindén. 38th Annual International Conference of the IEEEEngineering in Medicine and Biology Society, page(s): 2492–2495. Au-gust, 2016.

Paper E Perception of delay in computer input devices establishing a base-line for signal processing of motion sensor systems. Jiaying Du, DanielKade, Christer Gerdtman, Rikard Lindell, Oguzhan Özcan and MariaLindén. 3rd International Conference of Internet of Things Technolo-gies for HealthCare, page(s): 107–112. October, 2016.

1The included articles have been reformatted with the PhD thesis layout.

ix

List of Publications

This is a list of publications that form the basis of the thesis1

Paper A Signal processing algorithms for temperature drift in a MEMS-gyro-based head mouse. Jiaying Du, Christer Gerdtman and Maria Lindén.21st International Conference on Systems, Signals and Image Process-ing, page(s): 123–126. May, 2014.

Paper B Signal Processing algorithms for position measurement with MEMS-based accelerometer. Jiaying Du, Christer Gerdtman and Maria Lindén.16th Nordic-Baltic Conference on Biomedical Engineering, Vol.48,page(s): 36–39. October, 2014.

Paper C Noise reduction for a MEMS-gyroscope based head mouse. JiayingDu, Christer Gerdtman and Maria Lindén. 12th International Conferenceon Wearable Micro and Nano Technologies for Personalized Health,page(s): 98–104. June, 2015.

Paper D The effects of perceived USB-delay for sensor and embedded systemdevelopment. Jiaying Du, Daniel Kade, Christer Gerdtman, OguzhanÖzcan, Maria Lindén. 38th Annual International Conference of the IEEEEngineering in Medicine and Biology Society, page(s): 2492–2495. Au-gust, 2016.

Paper E Perception of delay in computer input devices establishing a base-line for signal processing of motion sensor systems. Jiaying Du, DanielKade, Christer Gerdtman, Rikard Lindell, Oguzhan Özcan and MariaLindén. 3rd International Conference of Internet of Things Technolo-gies for HealthCare, page(s): 107–112. October, 2016.

1The included articles have been reformatted with the PhD thesis layout.

ix

13

Page 15: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

x

Paper F A signal processing algorithm for improving the performance of a gy-roscopic head-borne computer mouse. Jiaying Du, Christer Gerdtman,Arash Gharehbaghi and Maria Lindén. Biomedical Signal Processingand Control, vol. 35, page(s): 30–37. May, 2017.

Paper G Signal quality improvement algorithms for MEMS gyroscope basedmotion analysis systems: a systematic review. Jiaying Du, ChristerGerdtman and Maria Lindén. Sensors, vol. 18, iss. 4, 1123. April,2018.

x

Paper F A signal processing algorithm for improving the performance of a gy-roscopic head-borne computer mouse. Jiaying Du, Christer Gerdtman,Arash Gharehbaghi and Maria Lindén. Biomedical Signal Processingand Control, vol. 35, page(s): 30–37. May, 2017.

Paper G Signal quality improvement algorithms for MEMS gyroscope basedmotion analysis systems: a systematic review. Jiaying Du, ChristerGerdtman and Maria Lindén. Sensors, vol. 18, iss. 4, 1123. April,2018.

14

Page 16: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Author’s Contribution:

In the Table 1, author’s contribution in the included papers A, B, C, D, E, F andG is presented.

Table 1: The contributions made by Jiaying Du to papers A, B, C, D, E, F andG, 1 = main responsibility, 2 = contributed to a high extent.

Paper sections A B C D E F GIdea and study formulation 1 1 1 2 2 1 1Experimental design 1 1 1 2 2 1 -Performance of experiments 1 1 1 1 1 1 -Programming 1 1 1 2 2 1 -Data analysis 1 1 1 1 1 1 1Writing of manuscript 1 1 1 1 1 1 1

The paper G is a systematic overview paper without experiments and programming; therefore, Jiaying

Du did not contribute to the experimental design, performance of experiments and programming.

xi

Author’s Contribution:

In the Table 1, author’s contribution in the included papers A, B, C, D, E, F andG is presented.

Table 1: The contributions made by Jiaying Du to papers A, B, C, D, E, F andG, 1 = main responsibility, 2 = contributed to a high extent.

Paper sections A B C D E F GIdea and study formulation 1 1 1 2 2 1 1Experimental design 1 1 1 2 2 1 -Performance of experiments 1 1 1 1 1 1 -Programming 1 1 1 2 2 1 -Data analysis 1 1 1 1 1 1 1Writing of manuscript 1 1 1 1 1 1 1

The paper G is a systematic overview paper without experiments and programming; therefore, Jiaying

Du did not contribute to the experimental design, performance of experiments and programming.

xi

15

Page 17: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Other Relevant Work:

Licentiate Thesis

• Signal processing for MEMS sensor based motion analysis sys-tem. Jiaying Du. Licentiate thesis. ISBN 978-91-7485-256-1.Mälardalen University Press. May, 2016.

Conferences and Workshops

• Investigation for measurements of body parameters with sensors.Jiaying Du, Christer Gerdtman, Maria Lindén. Micronano SystemWorkshop 2014. Uppsala, Sweden. May, 2014.

• Signal processing with application to a MEMS-gyroscope basedcomputer head mouse. Jiaying Du, Christer Gerdtman, MariaLindén. Micronano System Workshop 2016. Lund, Sweden. May,2016.

• Development of a MEMS-sensor based motion analysis system forhuman movement rehabilitation. Jiaying Du, Christer Gerdtman,Maria Lindén. International conference on Movement and cogni-tion 2017, page(s): 57. Oxford, UK. July, 2017.

xii

Other Relevant Work:

Licentiate Thesis

• Signal processing for MEMS sensor based motion analysis sys-tem. Jiaying Du. Licentiate thesis. ISBN 978-91-7485-256-1.Mälardalen University Press. May, 2016.

Conferences and Workshops

• Investigation for measurements of body parameters with sensors.Jiaying Du, Christer Gerdtman, Maria Lindén. Micronano SystemWorkshop 2014. Uppsala, Sweden. May, 2014.

• Signal processing with application to a MEMS-gyroscope basedcomputer head mouse. Jiaying Du, Christer Gerdtman, MariaLindén. Micronano System Workshop 2016. Lund, Sweden. May,2016.

• Development of a MEMS-sensor based motion analysis system forhuman movement rehabilitation. Jiaying Du, Christer Gerdtman,Maria Lindén. International conference on Movement and cogni-tion 2017, page(s): 57. Oxford, UK. July, 2017.

xii

16

Page 18: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

List of Abbreviations

ADC Analog Digital ConverterALP Adaptive Linear PredictionANC Adaptive Noise CancellationBMFLC Bandlimited Multiple Fourier Linear CombinerDAC Digital Analog ConverterDSP Digital Signal ProcessordsPIC Digital Signal ControllerFLC Fourier Linear CombinerHPF High-pass FilterHCI Human-Computer InterfaceHMI Human-Machine InterfaceIMU Inertial Measurement UnitKF Kalman FilterKWT The combination of KF, WFLC and TWDLMS Least Mean SquareLPF Low-pass FilterMEMS Micro-electro-mechanical systemPIC Peripheral Interface ControllerRMS Root Mean SquareRMSE Root Mean Square ErrorTWD Threshold with DelayµP MicroprocessorUSB Universal Serial BusWFLC Weighted-frequency Fourier Linear Combiner

xiii

List of Abbreviations

ADC Analog Digital ConverterALP Adaptive Linear PredictionANC Adaptive Noise CancellationBMFLC Bandlimited Multiple Fourier Linear CombinerDAC Digital Analog ConverterDSP Digital Signal ProcessordsPIC Digital Signal ControllerFLC Fourier Linear CombinerHPF High-pass FilterHCI Human-Computer InterfaceHMI Human-Machine InterfaceIMU Inertial Measurement UnitKF Kalman FilterKWT The combination of KF, WFLC and TWDLMS Least Mean SquareLPF Low-pass FilterMEMS Micro-electro-mechanical systemPIC Peripheral Interface ControllerRMS Root Mean SquareRMSE Root Mean Square ErrorTWD Threshold with DelayµP MicroprocessorUSB Universal Serial BusWFLC Weighted-frequency Fourier Linear Combiner

xiii

17

Page 19: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

18

Page 20: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Contents

I Thesis 1

1 Introduction 31.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Outline of the thesis . . . . . . . . . . . . . . . . . . . . . . . 5

2 Background 72.1 Applications of MEMS sensors in human motion analysis . . . 72.2 Small MEMS sensor-based wearable motion analysis systems

and their limitations . . . . . . . . . . . . . . . . . . . . . . . 82.2.1 The MultiPos system . . . . . . . . . . . . . . . . . . 82.2.2 The TDG sensor system . . . . . . . . . . . . . . . . 92.2.3 Hardware limitation of small wearable embedded

sensor systems . . . . . . . . . . . . . . . . . . . . . 102.3 MEMS sensor signals and signal errors . . . . . . . . . . . . . 11

2.3.1 MEMS gyroscopic signals . . . . . . . . . . . . . . . 112.3.2 MEMS accelerometer signals . . . . . . . . . . . . . 122.3.3 MEMS sensor signal errors . . . . . . . . . . . . . . . 132.3.4 Related signal processing . . . . . . . . . . . . . . . . 14

2.4 Users’ perception of the sensor response delay . . . . . . . . . 15

3 Research goal and research questions 173.1 Research goal . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2 Research questions . . . . . . . . . . . . . . . . . . . . . . . 17

4 Research methods 194.1 Signal processing algorithms . . . . . . . . . . . . . . . . . . 20

4.1.1 Basic filtering methods . . . . . . . . . . . . . . . . . 20

xv

Contents

I Thesis 1

1 Introduction 31.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Outline of the thesis . . . . . . . . . . . . . . . . . . . . . . . 5

2 Background 72.1 Applications of MEMS sensors in human motion analysis . . . 72.2 Small MEMS sensor-based wearable motion analysis systems

and their limitations . . . . . . . . . . . . . . . . . . . . . . . 82.2.1 The MultiPos system . . . . . . . . . . . . . . . . . . 82.2.2 The TDG sensor system . . . . . . . . . . . . . . . . 92.2.3 Hardware limitation of small wearable embedded

sensor systems . . . . . . . . . . . . . . . . . . . . . 102.3 MEMS sensor signals and signal errors . . . . . . . . . . . . . 11

2.3.1 MEMS gyroscopic signals . . . . . . . . . . . . . . . 112.3.2 MEMS accelerometer signals . . . . . . . . . . . . . 122.3.3 MEMS sensor signal errors . . . . . . . . . . . . . . . 132.3.4 Related signal processing . . . . . . . . . . . . . . . . 14

2.4 Users’ perception of the sensor response delay . . . . . . . . . 15

3 Research goal and research questions 173.1 Research goal . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2 Research questions . . . . . . . . . . . . . . . . . . . . . . . 17

4 Research methods 194.1 Signal processing algorithms . . . . . . . . . . . . . . . . . . 20

4.1.1 Basic filtering methods . . . . . . . . . . . . . . . . . 20

xv

19

Page 21: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

xvi Contents

4.1.2 Advanced algorithms . . . . . . . . . . . . . . . . . . 214.1.3 Novel algorithms . . . . . . . . . . . . . . . . . . . . 254.1.4 Position measurements . . . . . . . . . . . . . . . . . 284.1.5 Evaluation . . . . . . . . . . . . . . . . . . . . . . . 29

4.2 User tests for perception of the delay . . . . . . . . . . . . . . 29

5 Scientific contributions 335.1 Temperature drift compensation . . . . . . . . . . . . . . . . 335.2 Noise reduction (electrical noise and tremor) . . . . . . . . . . 345.3 Combination method to reduce different signal errors

simultaneously . . . . . . . . . . . . . . . . . . . . . . . . . 345.4 Position accuracy improvements for a MEMS accelerometer-

based system . . . . . . . . . . . . . . . . . . . . . . . . . . 345.5 Position accuracy improvement for a MEMS gyroscope-based

system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355.6 Users’ perception of the delay of a MEMS gyroscopic head-

borne computer mouse . . . . . . . . . . . . . . . . . . . . . 355.7 Systematic overview of signal error reduction for MEMS

gyroscope based human motion analysis systems . . . . . . . 36

6 Results and discussion 376.1 Signal error reduction . . . . . . . . . . . . . . . . . . . . . . 376.2 Improvement of position accuracy . . . . . . . . . . . . . . . 42

6.2.1 MEMS accelerometers . . . . . . . . . . . . . . . . . 436.2.2 MEMS gyroscopes . . . . . . . . . . . . . . . . . . . 45

6.3 Users’ perception of the delay . . . . . . . . . . . . . . . . . 45

7 Conclusion and future work 477.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 477.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Bibliography 51

II Included Papers 59

8 Paper A:Signal processing algorithms for temperature drift in a MEMS-gyro-based head mouse 638.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

xvi Contents

4.1.2 Advanced algorithms . . . . . . . . . . . . . . . . . . 214.1.3 Novel algorithms . . . . . . . . . . . . . . . . . . . . 254.1.4 Position measurements . . . . . . . . . . . . . . . . . 284.1.5 Evaluation . . . . . . . . . . . . . . . . . . . . . . . 29

4.2 User tests for perception of the delay . . . . . . . . . . . . . . 29

5 Scientific contributions 335.1 Temperature drift compensation . . . . . . . . . . . . . . . . 335.2 Noise reduction (electrical noise and tremor) . . . . . . . . . . 345.3 Combination method to reduce different signal errors

simultaneously . . . . . . . . . . . . . . . . . . . . . . . . . 345.4 Position accuracy improvements for a MEMS accelerometer-

based system . . . . . . . . . . . . . . . . . . . . . . . . . . 345.5 Position accuracy improvement for a MEMS gyroscope-based

system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355.6 Users’ perception of the delay of a MEMS gyroscopic head-

borne computer mouse . . . . . . . . . . . . . . . . . . . . . 355.7 Systematic overview of signal error reduction for MEMS

gyroscope based human motion analysis systems . . . . . . . 36

6 Results and discussion 376.1 Signal error reduction . . . . . . . . . . . . . . . . . . . . . . 376.2 Improvement of position accuracy . . . . . . . . . . . . . . . 42

6.2.1 MEMS accelerometers . . . . . . . . . . . . . . . . . 436.2.2 MEMS gyroscopes . . . . . . . . . . . . . . . . . . . 45

6.3 Users’ perception of the delay . . . . . . . . . . . . . . . . . 45

7 Conclusion and future work 477.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 477.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Bibliography 51

II Included Papers 59

8 Paper A:Signal processing algorithms for temperature drift in a MEMS-gyro-based head mouse 638.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

20

Page 22: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Contents xvii

8.2 System background and test . . . . . . . . . . . . . . . . . . 658.2.1 System . . . . . . . . . . . . . . . . . . . . . . . . . 658.2.2 Problem . . . . . . . . . . . . . . . . . . . . . . . . . 65

8.3 Signal processing algorithms . . . . . . . . . . . . . . . . . . 678.3.1 High-pass filter . . . . . . . . . . . . . . . . . . . . . 678.3.2 Kalman filter . . . . . . . . . . . . . . . . . . . . . . 678.3.3 LMS filter . . . . . . . . . . . . . . . . . . . . . . . . 69

8.4 Simulation, implementation, results and analysis . . . . . . . . 708.4.1 Measurement setup . . . . . . . . . . . . . . . . . . . 718.4.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . 718.4.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . 72

8.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

9 Paper B:Signal Processing algorithms for position measurement withMEMS-based accelerometer 819.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 839.2 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

9.2.1 Integration . . . . . . . . . . . . . . . . . . . . . . . 859.2.2 Filtering . . . . . . . . . . . . . . . . . . . . . . . . . 85

9.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 90Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

10 Paper C:Noise reduction for a MEMS-gyroscope based head mouse 9510.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 9710.2 Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

10.2.1 Signal processing algorithms . . . . . . . . . . . . . . 9810.2.2 Test of the algorithms . . . . . . . . . . . . . . . . . . 100

10.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10010.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10310.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 104Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

Contents xvii

8.2 System background and test . . . . . . . . . . . . . . . . . . 658.2.1 System . . . . . . . . . . . . . . . . . . . . . . . . . 658.2.2 Problem . . . . . . . . . . . . . . . . . . . . . . . . . 65

8.3 Signal processing algorithms . . . . . . . . . . . . . . . . . . 678.3.1 High-pass filter . . . . . . . . . . . . . . . . . . . . . 678.3.2 Kalman filter . . . . . . . . . . . . . . . . . . . . . . 678.3.3 LMS filter . . . . . . . . . . . . . . . . . . . . . . . . 69

8.4 Simulation, implementation, results and analysis . . . . . . . . 708.4.1 Measurement setup . . . . . . . . . . . . . . . . . . . 718.4.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . 718.4.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . 72

8.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

9 Paper B:Signal Processing algorithms for position measurement withMEMS-based accelerometer 819.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 839.2 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

9.2.1 Integration . . . . . . . . . . . . . . . . . . . . . . . 859.2.2 Filtering . . . . . . . . . . . . . . . . . . . . . . . . . 85

9.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 90Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

10 Paper C:Noise reduction for a MEMS-gyroscope based head mouse 9510.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 9710.2 Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

10.2.1 Signal processing algorithms . . . . . . . . . . . . . . 9810.2.2 Test of the algorithms . . . . . . . . . . . . . . . . . . 100

10.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10010.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10310.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 104Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

21

Page 23: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

xviii Contents

11 Paper D:The effects of perceived USB-delay for sensor and embeddedsystem development 11111.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 11311.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 11311.3 Research Approach . . . . . . . . . . . . . . . . . . . . . . . 115

11.3.1 Test Setup and Data Collection . . . . . . . . . . . . . 11511.3.2 Hardware Specification . . . . . . . . . . . . . . . . . 11611.3.3 Software Specification . . . . . . . . . . . . . . . . . 117

11.4 Results and Discussion . . . . . . . . . . . . . . . . . . . . . 11711.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 121Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

12 Paper E:Perception of Delay in Computer Input Devices Establishing aBaseline for Signal Processing of Motion Sensor Systems 12712.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 12912.2 Research Approach . . . . . . . . . . . . . . . . . . . . . . . 13012.3 Results and Discussion . . . . . . . . . . . . . . . . . . . . . 13112.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 134Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

13 Paper F:A signal processing algorithm for improving the performance of agyroscopic head-borne computer mouse 13913.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 14113.2 Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

13.2.1 Instrument . . . . . . . . . . . . . . . . . . . . . . . 14313.2.2 Data preparation . . . . . . . . . . . . . . . . . . . . 14313.2.3 The proposed combination of algorithms . . . . . . . 14513.2.4 Evaluation . . . . . . . . . . . . . . . . . . . . . . . 148

13.3 Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14813.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15613.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 158Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

xviii Contents

11 Paper D:The effects of perceived USB-delay for sensor and embeddedsystem development 11111.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 11311.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 11311.3 Research Approach . . . . . . . . . . . . . . . . . . . . . . . 115

11.3.1 Test Setup and Data Collection . . . . . . . . . . . . . 11511.3.2 Hardware Specification . . . . . . . . . . . . . . . . . 11611.3.3 Software Specification . . . . . . . . . . . . . . . . . 117

11.4 Results and Discussion . . . . . . . . . . . . . . . . . . . . . 11711.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 121Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

12 Paper E:Perception of Delay in Computer Input Devices Establishing aBaseline for Signal Processing of Motion Sensor Systems 12712.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 12912.2 Research Approach . . . . . . . . . . . . . . . . . . . . . . . 13012.3 Results and Discussion . . . . . . . . . . . . . . . . . . . . . 13112.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 134Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

13 Paper F:A signal processing algorithm for improving the performance of agyroscopic head-borne computer mouse 13913.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 14113.2 Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

13.2.1 Instrument . . . . . . . . . . . . . . . . . . . . . . . 14313.2.2 Data preparation . . . . . . . . . . . . . . . . . . . . 14313.2.3 The proposed combination of algorithms . . . . . . . 14513.2.4 Evaluation . . . . . . . . . . . . . . . . . . . . . . . 148

13.3 Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14813.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15613.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 158Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

22

Page 24: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Contents xix

14 Paper G:Signal quality improvement algorithms for MEMS gyroscope-based human motion analysis systems: a systematic review 16514.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 16714.2 Methodology/Method . . . . . . . . . . . . . . . . . . . . . . 168

14.2.1 Inclusion and exclusion criteria . . . . . . . . . . . . 16814.2.2 Searching strategy and analysis . . . . . . . . . . . . 168

14.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17014.3.1 Kalman filter (KF)-based algorithms . . . . . . . . . . 17114.3.2 Adaptive-based algorithms . . . . . . . . . . . . . . . 17314.3.3 Simple filter algorithms . . . . . . . . . . . . . . . . 17714.3.4 Compensation-based algorithms . . . . . . . . . . . . 17814.3.5 Category of the algorithms . . . . . . . . . . . . . . . 181

14.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18114.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 187Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

Contents xix

14 Paper G:Signal quality improvement algorithms for MEMS gyroscope-based human motion analysis systems: a systematic review 16514.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 16714.2 Methodology/Method . . . . . . . . . . . . . . . . . . . . . . 168

14.2.1 Inclusion and exclusion criteria . . . . . . . . . . . . 16814.2.2 Searching strategy and analysis . . . . . . . . . . . . 168

14.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17014.3.1 Kalman filter (KF)-based algorithms . . . . . . . . . . 17114.3.2 Adaptive-based algorithms . . . . . . . . . . . . . . . 17314.3.3 Simple filter algorithms . . . . . . . . . . . . . . . . 17714.3.4 Compensation-based algorithms . . . . . . . . . . . . 17814.3.5 Category of the algorithms . . . . . . . . . . . . . . . 181

14.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18114.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 187Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

23

Page 25: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

24

Page 26: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

I

Thesis

I

Thesis

25

Page 27: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

26

Page 28: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 1

Introduction

This thesis focuses on real-time signal processing for hardware-limited MEMSsensor-based human motion analysis systems. The aim of the thesis is to im-prove the signal quality of MEMS gyroscopes and accelerometers by minimiz-ing the effects of signal errors, considering the hardware limitations and theusers’ perception.

MEMS gyroscopes and MEMS accelerometer are commonly used formovement measurements [1]. One well-known problem with these sensorsis that the signals usually are contaminated with several kinds of extraneousinfluences, such as noise, offset and drift, especially temperature drift [2]. Inaddition, when determining the position or the angle by integration, noise orother errors will accumulate [3]. Thus, the quality of MEMS sensor signalslargely effects the system performance.

Real-time signal processing is regarded as an important and necessary toolto reduce the signal errors and improve the performance of MEMS sensor-based human motion analysis systems. The hardware limitations of these wear-able systems includes the typical properties of: limited size and weight of thesystem, limited power supply available from the battery, and limited calculationcapacity available to execute the signal processing algorithms. The executionof signal processing algorithms will always introduce a small time delay [4].The maximal non-perceived delay by the user is the time limitation allowedfor the signal processing to be executed in real time. Due to these limitations,the signal processing algorithms for these systems need to be computationallyeffective and executed within a certain specified time limit.

In this thesis, considering the need of real-time signal processing algo-

3

Chapter 1

Introduction

This thesis focuses on real-time signal processing for hardware-limited MEMSsensor-based human motion analysis systems. The aim of the thesis is to im-prove the signal quality of MEMS gyroscopes and accelerometers by minimiz-ing the effects of signal errors, considering the hardware limitations and theusers’ perception.

MEMS gyroscopes and MEMS accelerometer are commonly used formovement measurements [1]. One well-known problem with these sensorsis that the signals usually are contaminated with several kinds of extraneousinfluences, such as noise, offset and drift, especially temperature drift [2]. Inaddition, when determining the position or the angle by integration, noise orother errors will accumulate [3]. Thus, the quality of MEMS sensor signalslargely effects the system performance.

Real-time signal processing is regarded as an important and necessary toolto reduce the signal errors and improve the performance of MEMS sensor-based human motion analysis systems. The hardware limitations of these wear-able systems includes the typical properties of: limited size and weight of thesystem, limited power supply available from the battery, and limited calculationcapacity available to execute the signal processing algorithms. The executionof signal processing algorithms will always introduce a small time delay [4].The maximal non-perceived delay by the user is the time limitation allowedfor the signal processing to be executed in real time. Due to these limitations,the signal processing algorithms for these systems need to be computationallyeffective and executed within a certain specified time limit.

In this thesis, considering the need of real-time signal processing algo-

3

27

Page 29: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

4 Chapter 1. Introduction

rithms, hardware limitation of the limited calculation capacity and users’ per-ception of delay are crucial factors to consider. Three main aspects are espe-cially considered:

• Signal error reduction - To be able to minimize the signal errors andimprove the signal quality.

• Position accuracy improvement - To be able to compensate for the inte-gration drift and improve the position accuracy.

• Considering the hardware limitation and users’ perception of the delay- This aspect defines several criteria on the algorithms developed. Theyhave to be simple enough for implementation and comply with the sys-tem requirements and users’ perception, in real time.

1.1 MotivationMEMS sensors such as MEMS gyroscopes and MEMS accelerometers arewidely used in wearable motion analysis systems due to their characteristicsof small size, lightweight, low cost, low power consumption, high sensitivity,good linearity, and high precision [5]. Such gyroscopes and accelerometersare frequently used for different human body movement and position measure-ments, but it is well-known that the resolution and stability of MEMS sensorsneed to be improved [6]. The common errors can be classified into noise, off-set and drift. Temperature drift, caused by temperature changes, is a typicalerror in MEMS gyroscope-based systems. In addition, the accumulated errorduring the integration process is also a critical problem in position measure-ments. To improve the performance of a wearable motion system, real-timesignal processing algorithms are required to be implemented into the system.The features of miniature, low-cost, low power consumption implies that a sin-gle microprocessor or a microcontroller, a programmable logic device or anapplication-specific integrated circuit is implemented into the wearable sensorsystem to perform real-time signal processing [7]. This is not a trivial taskconsidering the limitations in implementation power, memory and power con-sumption resources [7]. It is also important that the small delay introduced bythe algorithms is not perceived as a problem by the user of the system. To fulfilthe hardware requirements of limited calculation capacity in real time, there isa need to ensure that the sensor data can be used correctly. Under considera-tion of both the hardware limitations of the small wearable embedded systems

4 Chapter 1. Introduction

rithms, hardware limitation of the limited calculation capacity and users’ per-ception of delay are crucial factors to consider. Three main aspects are espe-cially considered:

• Signal error reduction - To be able to minimize the signal errors andimprove the signal quality.

• Position accuracy improvement - To be able to compensate for the inte-gration drift and improve the position accuracy.

• Considering the hardware limitation and users’ perception of the delay- This aspect defines several criteria on the algorithms developed. Theyhave to be simple enough for implementation and comply with the sys-tem requirements and users’ perception, in real time.

1.1 MotivationMEMS sensors such as MEMS gyroscopes and MEMS accelerometers arewidely used in wearable motion analysis systems due to their characteristicsof small size, lightweight, low cost, low power consumption, high sensitivity,good linearity, and high precision [5]. Such gyroscopes and accelerometersare frequently used for different human body movement and position measure-ments, but it is well-known that the resolution and stability of MEMS sensorsneed to be improved [6]. The common errors can be classified into noise, off-set and drift. Temperature drift, caused by temperature changes, is a typicalerror in MEMS gyroscope-based systems. In addition, the accumulated errorduring the integration process is also a critical problem in position measure-ments. To improve the performance of a wearable motion system, real-timesignal processing algorithms are required to be implemented into the system.The features of miniature, low-cost, low power consumption implies that a sin-gle microprocessor or a microcontroller, a programmable logic device or anapplication-specific integrated circuit is implemented into the wearable sensorsystem to perform real-time signal processing [7]. This is not a trivial taskconsidering the limitations in implementation power, memory and power con-sumption resources [7]. It is also important that the small delay introduced bythe algorithms is not perceived as a problem by the user of the system. To fulfilthe hardware requirements of limited calculation capacity in real time, there isa need to ensure that the sensor data can be used correctly. Under considera-tion of both the hardware limitations of the small wearable embedded systems

28

Page 30: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 1. Introduction 5

at hand, and the users’ perception of the delay caused by the signal processingin these systems, more suitable algorithms and efficient methods are requiredto improve the signal quality as well as the system performance. These signalprocessing algorithms are implemented into two previously developed wear-able MEMS motion analysis systems, but also have the potential to be used insimilar systems in the future.

1.2 Outline of the thesisThis thesis is organized into two main parts, i.e., the thesis part and the partwith the included research papers.

The rest of the thesis part is organized as follows: Chapter 2 introducesthe background and related work. Chapter 3 presents the main research goaland three research questions. Chapter 4 presents the method section, which in-cludes the descriptions of the signal processing algorithms. Chapter 5 presentsthe scientific contributions with references to the included papers. Chapter 6summarizes and discusses the result. Finally, Chapter 7 concludes the mainfindings in this thesis and gives an insight into possible future work.

The second part includes the seven research papers which are presented andorganized as chapters from 8 to 14.

Chapter 1. Introduction 5

at hand, and the users’ perception of the delay caused by the signal processingin these systems, more suitable algorithms and efficient methods are requiredto improve the signal quality as well as the system performance. These signalprocessing algorithms are implemented into two previously developed wear-able MEMS motion analysis systems, but also have the potential to be used insimilar systems in the future.

1.2 Outline of the thesisThis thesis is organized into two main parts, i.e., the thesis part and the partwith the included research papers.

The rest of the thesis part is organized as follows: Chapter 2 introducesthe background and related work. Chapter 3 presents the main research goaland three research questions. Chapter 4 presents the method section, which in-cludes the descriptions of the signal processing algorithms. Chapter 5 presentsthe scientific contributions with references to the included papers. Chapter 6summarizes and discusses the result. Finally, Chapter 7 concludes the mainfindings in this thesis and gives an insight into possible future work.

The second part includes the seven research papers which are presented andorganized as chapters from 8 to 14.

29

Page 31: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

30

Page 32: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 2

Background

The following chapter presents the research background and a related researchoverview over MEMS sensor-based human motion analysis systems and algo-rithms.

2.1 Application of MEMS sensors in humanmotion analysis

Human motion analysis is an important research area, especially in health re-lated areas, such as rehabilitation, athletic performance analysis, monitoringof fall detection and fall prevention of elderly at home etc. [8]. A variety ofsystems have been developed for human motion analysis. Using cameras is acommon way for motion capture [9]. This has been developed with several orsingle three-dimensional (3D) cameras [10, 11]. However, a free-living mea-surement environment has been an extremely challenging issue [12]. Wearablehealth monitoring systems have attracted considerable attention from both in-dustry and research community in the recent years, with the increasing costs ofhealthcare, demographic changes and multiple diseases as drivning forces [13].The mentioned challenges addresses the demand where miniature, low-weightand low-cost systems are needed [14].

MEMS represents a class of miniature electro-mechanical devices. TheMEMS technology has rapidly developed in the latest 50 years and has beenapplied in many areas, such as consumer products, aerospace, automotive,biomedical, chemical, optical displays, wireless and optical communications

7

Chapter 2

Background

The following chapter presents the research background and a related researchoverview over MEMS sensor-based human motion analysis systems and algo-rithms.

2.1 Application of MEMS sensors in humanmotion analysis

Human motion analysis is an important research area, especially in health re-lated areas, such as rehabilitation, athletic performance analysis, monitoringof fall detection and fall prevention of elderly at home etc. [8]. A variety ofsystems have been developed for human motion analysis. Using cameras is acommon way for motion capture [9]. This has been developed with several orsingle three-dimensional (3D) cameras [10, 11]. However, a free-living mea-surement environment has been an extremely challenging issue [12]. Wearablehealth monitoring systems have attracted considerable attention from both in-dustry and research community in the recent years, with the increasing costs ofhealthcare, demographic changes and multiple diseases as drivning forces [13].The mentioned challenges addresses the demand where miniature, low-weightand low-cost systems are needed [14].

MEMS represents a class of miniature electro-mechanical devices. TheMEMS technology has rapidly developed in the latest 50 years and has beenapplied in many areas, such as consumer products, aerospace, automotive,biomedical, chemical, optical displays, wireless and optical communications

7

31

Page 33: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

8 Chapter 2. Background

and fluidics etc., where miniaturization is beneficial [15]. MEMS based mo-tion sensors such as MEMS gyroscopes and MEMS accelerometers are inertialsensors [16], and compared to the traditional sensors, they have the advantageof small size, light weight, low cost, low power consumption, high sensitiv-ity, good linearity and high precision [5]. Therefore, they have been appliedextensively in the areas of automobiles, consumer electronics, spacecraft androbotics [17], especially in the consumer-grade application of motion interface[18].

The MEMS gyroscopes and MEMS accelerometers have already beenwidely used in motion analysis systems in the health related field, for exam-ple, the knee/ankle joint measurement [19, 20, 21, 22], gait analysis [23, 24],ambulatory measurement and analysis of the lower limb [25, 26], collectionof anatomical joint angles during stair ascent [27], hand gesture recognition[28, 29, 30], head motion controlled wheel chair [31], and head motion con-trolled computer mouse [32, 33]. They have also been adopted to a digital mo-tion analysis system for rehabilitation from impairment such as those causedby accidents or strokes [34, 35].

2.2 Small MEMS sensor-based wearable motionanalysis systems and their limitations

The algorithms developed in this thesis are implemented into two typicalwearable embedded motion sensor systems that have been developed by theSwedish company Motion Control. One of the systems is named the MultiPossystem, which is a MEMS gyroscope-based computer head mouse for disabledpersons [33], and the other is a 3D sensor measurement system that is calledthe Three-Dimensional-Gyro (TDG) sensor system [36]. Both these systemsare small MEMS sensor-based wearable motion analysis systems with limitedcalculation capacity. The MEMS sensor signal errors affect the system perfor-mance a lot. In order to minimize the errors and improve the signal quality,real-time signal processing algorithms have been developed within this thesis.

2.2.1 The MultiPos systemThe MEMS sensor based computer head mouse, i.e., the MultiPos system,is an embedded sensor system with MEMS gyroscopes that can detect headmovements. It has been developed previously with the aim to assist personswith movement disorders [33]. It enables the users to control the computer

8 Chapter 2. Background

and fluidics etc., where miniaturization is beneficial [15]. MEMS based mo-tion sensors such as MEMS gyroscopes and MEMS accelerometers are inertialsensors [16], and compared to the traditional sensors, they have the advantageof small size, light weight, low cost, low power consumption, high sensitiv-ity, good linearity and high precision [5]. Therefore, they have been appliedextensively in the areas of automobiles, consumer electronics, spacecraft androbotics [17], especially in the consumer-grade application of motion interface[18].

The MEMS gyroscopes and MEMS accelerometers have already beenwidely used in motion analysis systems in the health related field, for exam-ple, the knee/ankle joint measurement [19, 20, 21, 22], gait analysis [23, 24],ambulatory measurement and analysis of the lower limb [25, 26], collectionof anatomical joint angles during stair ascent [27], hand gesture recognition[28, 29, 30], head motion controlled wheel chair [31], and head motion con-trolled computer mouse [32, 33]. They have also been adopted to a digital mo-tion analysis system for rehabilitation from impairment such as those causedby accidents or strokes [34, 35].

2.2 Small MEMS sensor-based wearable motionanalysis systems and their limitations

The algorithms developed in this thesis are implemented into two typicalwearable embedded motion sensor systems that have been developed by theSwedish company Motion Control. One of the systems is named the MultiPossystem, which is a MEMS gyroscope-based computer head mouse for disabledpersons [33], and the other is a 3D sensor measurement system that is calledthe Three-Dimensional-Gyro (TDG) sensor system [36]. Both these systemsare small MEMS sensor-based wearable motion analysis systems with limitedcalculation capacity. The MEMS sensor signal errors affect the system perfor-mance a lot. In order to minimize the errors and improve the signal quality,real-time signal processing algorithms have been developed within this thesis.

2.2.1 The MultiPos systemThe MEMS sensor based computer head mouse, i.e., the MultiPos system,is an embedded sensor system with MEMS gyroscopes that can detect headmovements. It has been developed previously with the aim to assist personswith movement disorders [33]. It enables the users to control the computer

32

Page 34: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 2. Background 9

cursor by moving the head instead of the hands. As shown in Figure 2.1, thesystem consists of three main parts, the wearable sensor part with the MEMSgyroscope, the central part for power supply, control and communication, andthe click function part, which can be a click button, a sip-and-puff tube or abiting gum depending on the specific needs of the user.

Figure 2.1: The MultiPos system.

The MEMS gyroscope is used to sense the head movement in a 2D sur-face (x-axis and y-axis). However, the MEMS gyroscope signal is affected bya large portion of noise due to the sensitivity of the MEMS gyroscope to en-vironmental disturbances such as other movements like vibration and tremor,and environment factors like temperature changes.

The MultiPos system works in real time with limited calculation capabilitydue to the hardware limitation. There is a dsPIC in the MultiPos system usedas a slave processor with signal processing functions.

2.2.2 The TDG sensor system

The 3D motion measurement system named the TDG sensor system is aMEMS sensor-based embedded 3D sensor system for measuring movements[36]. The TDG system is aimed to evaluate a person’s ability to move differentbody parts, e.g., the neck, the arm or the leg. The intended application areas

Chapter 2. Background 9

cursor by moving the head instead of the hands. As shown in Figure 2.1, thesystem consists of three main parts, the wearable sensor part with the MEMSgyroscope, the central part for power supply, control and communication, andthe click function part, which can be a click button, a sip-and-puff tube or abiting gum depending on the specific needs of the user.

Figure 2.1: The MultiPos system.

The MEMS gyroscope is used to sense the head movement in a 2D sur-face (x-axis and y-axis). However, the MEMS gyroscope signal is affected bya large portion of noise due to the sensitivity of the MEMS gyroscope to en-vironmental disturbances such as other movements like vibration and tremor,and environment factors like temperature changes.

The MultiPos system works in real time with limited calculation capabilitydue to the hardware limitation. There is a dsPIC in the MultiPos system usedas a slave processor with signal processing functions.

2.2.2 The TDG sensor system

The 3D motion measurement system named the TDG sensor system is aMEMS sensor-based embedded 3D sensor system for measuring movements[36]. The TDG system is aimed to evaluate a person’s ability to move differentbody parts, e.g., the neck, the arm or the leg. The intended application areas

33

Page 35: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

10 Chapter 2. Background

are health related applications, training, human motion analysis and rehabili-tation. An example of a typical application of the system is as a training toolfor patients with whiplash associated disorders. As shown in Figure 2.2, thesystem consists of two main parts; the sensor part and the central part includ-ing power supply, control and communication, connected to a computer via theUSB-port. The sensor part consists of various types of MEMS gyroscopes andMEMS accelerometers, selected for the application, and different attachments,as wearable bands attached around the head, arms or legs.

Figure 2.2: The TDG system.

The sensor part can be selected among 1D, 2D and 3D MEMS gyroscopesand MEMS accelerometers. The MEMS gyroscopes and MEMS accelerome-ters measure the movement to determine the position and movement pattern.MEMS gyroscopes measure the angular rate, from which the angular positioncan be derived by integration, while MEMS accelerometers measure the accel-eration, from which the velocity and position can also be calculated. However,the errors in the measured signals are enlarged during the digital integrationprocess. Except for the errors from the sensor itself, the integration drift is aproblem that need to be solved. The signal processing work in this thesis hasthe aim to improve the signal quality and accuracy of the position calculation.

2.2.3 Hardware limitation of small wearable embeddedsensor systems

Both the MultiPos system and the TDG system are wearable embedded sensorsystems. These kind of systems require real-time performance and are de-

10 Chapter 2. Background

are health related applications, training, human motion analysis and rehabili-tation. An example of a typical application of the system is as a training toolfor patients with whiplash associated disorders. As shown in Figure 2.2, thesystem consists of two main parts; the sensor part and the central part includ-ing power supply, control and communication, connected to a computer via theUSB-port. The sensor part consists of various types of MEMS gyroscopes andMEMS accelerometers, selected for the application, and different attachments,as wearable bands attached around the head, arms or legs.

Figure 2.2: The TDG system.

The sensor part can be selected among 1D, 2D and 3D MEMS gyroscopesand MEMS accelerometers. The MEMS gyroscopes and MEMS accelerome-ters measure the movement to determine the position and movement pattern.MEMS gyroscopes measure the angular rate, from which the angular positioncan be derived by integration, while MEMS accelerometers measure the accel-eration, from which the velocity and position can also be calculated. However,the errors in the measured signals are enlarged during the digital integrationprocess. Except for the errors from the sensor itself, the integration drift is aproblem that need to be solved. The signal processing work in this thesis hasthe aim to improve the signal quality and accuracy of the position calculation.

2.2.3 Hardware limitation of small wearable embeddedsensor systems

Both the MultiPos system and the TDG system are wearable embedded sensorsystems. These kind of systems require real-time performance and are de-

34

Page 36: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 2. Background 11

signed to fulfil the requirements of wearables. These typical properties limitthe selection of components and lead to hardware limitation of the system, i.e.,limited size and weight of the system, limited power supply available from thebattery, and limited calculation capacity available to execute the signal process-ing algorithms. A delay is introduced by the signal processing algorithm, witha need of more execution time as the complexity of the algorithm increases.Thus, the limited calculation capacity is a crucial and essential factor to con-sider in the implementation of real-time signal processing of small wearableembedded sensor systems.

2.3 MEMS sensor signals and signal errorsMEMS gyroscopes and MEMS accelerometers are commonly used when de-signing motion analysis systems. In 3D MEMS gyroscope and MEMS ac-celerometer signals, coordinates of three axes are presented, i.e., x, y and z.The z-axis baseline of 3D MEMS gyroscope and MEMS accelerometer sig-nals are different because of their working principles.

2.3.1 MEMS gyroscopic signalsMEMS gyroscopes are based on the Coriolis effect, and measure the angularrate [37]. The working principle of a 3D MEMS gyroscope is shown in Fig-ure 2.3. In the ideal case, the signals of all three axes are zero when the sensoris stationary. When it is moved, the MEMS gyroscope detects the angular rateand presents the signal in the unit of degree per second [◦/s].

Figure 2.3: Coordinate system of a 3D MEMS gyroscope.

An example of a three-axis MEMS gyroscopic signal is shown in Fig-ure 2.4. The blue, red and green curves present the x-, y- and z-axis signal,

Chapter 2. Background 11

signed to fulfil the requirements of wearables. These typical properties limitthe selection of components and lead to hardware limitation of the system, i.e.,limited size and weight of the system, limited power supply available from thebattery, and limited calculation capacity available to execute the signal process-ing algorithms. A delay is introduced by the signal processing algorithm, witha need of more execution time as the complexity of the algorithm increases.Thus, the limited calculation capacity is a crucial and essential factor to con-sider in the implementation of real-time signal processing of small wearableembedded sensor systems.

2.3 MEMS sensor signals and signal errorsMEMS gyroscopes and MEMS accelerometers are commonly used when de-signing motion analysis systems. In 3D MEMS gyroscope and MEMS ac-celerometer signals, coordinates of three axes are presented, i.e., x, y and z.The z-axis baseline of 3D MEMS gyroscope and MEMS accelerometer sig-nals are different because of their working principles.

2.3.1 MEMS gyroscopic signalsMEMS gyroscopes are based on the Coriolis effect, and measure the angularrate [37]. The working principle of a 3D MEMS gyroscope is shown in Fig-ure 2.3. In the ideal case, the signals of all three axes are zero when the sensoris stationary. When it is moved, the MEMS gyroscope detects the angular rateand presents the signal in the unit of degree per second [◦/s].

Figure 2.3: Coordinate system of a 3D MEMS gyroscope.

An example of a three-axis MEMS gyroscopic signal is shown in Fig-ure 2.4. The blue, red and green curves present the x-, y- and z-axis signal,

35

Page 37: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

12 Chapter 2. Background

respectively. The time of the movement is between 3 s and 20 s. Without anylarge drift or offset, the stationary x-, y- and z-axis signals are all around zero.

Figure 2.4: 3D MEMS gyroscope signal.

2.3.2 MEMS accelerometer signalsMEMS accelerometers measure the acceleration. As shown in Figure 2.5,earth’s gravity, which is in the opposite direction of z-axis, affects the z-axissignal of the MEMS accelerometer. Thus, the z-axis signal of the MEMS ac-celerometer is 1 g (where g=9.81 m/s2); while the x- and y-axis signals arezero in the ideal case without movement. The MEMS accelerometer measuresacceleration in the unit of [m/s2].

Figure 2.5: Coordinate system of a 3D MEMS accelerometer.

12 Chapter 2. Background

respectively. The time of the movement is between 3 s and 20 s. Without anylarge drift or offset, the stationary x-, y- and z-axis signals are all around zero.

Figure 2.4: 3D MEMS gyroscope signal.

2.3.2 MEMS accelerometer signalsMEMS accelerometers measure the acceleration. As shown in Figure 2.5,earth’s gravity, which is in the opposite direction of z-axis, affects the z-axissignal of the MEMS accelerometer. Thus, the z-axis signal of the MEMS ac-celerometer is 1 g (where g=9.81 m/s2); while the x- and y-axis signals arezero in the ideal case without movement. The MEMS accelerometer measuresacceleration in the unit of [m/s2].

Figure 2.5: Coordinate system of a 3D MEMS accelerometer.

36

Page 38: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 2. Background 13

Figure 2.6: 3D MEMS accelerometer signal.

An example of a three-axis MEMS accelerometer signal is shown in Fig-ure 2.6. The blue, red and green curves present the x-, y- and z-axis signal,respectively. The time of the movement is from 3 s to 20 s.

2.3.3 MEMS sensor signal errors

Due to the sensitivity of the MEMS sensors to environmental disturbances,such as shock, vibration and temperature change, a large portion of the mea-sured MEMS sensor signals actually origin from errors. In this thesis, the sig-nal problems of motion sensor system are classified into three main categories,which are noise, offset, and drift as shown in Figure 2.7.

Figure 2.7: Noise, offset and drift.

Noise disturbances occur in almost all measured sensor signals. The exist-ing noise sources in motion sensor systems are summarized as:

Chapter 2. Background 13

Figure 2.6: 3D MEMS accelerometer signal.

An example of a three-axis MEMS accelerometer signal is shown in Fig-ure 2.6. The blue, red and green curves present the x-, y- and z-axis signal,respectively. The time of the movement is from 3 s to 20 s.

2.3.3 MEMS sensor signal errors

Due to the sensitivity of the MEMS sensors to environmental disturbances,such as shock, vibration and temperature change, a large portion of the mea-sured MEMS sensor signals actually origin from errors. In this thesis, the sig-nal problems of motion sensor system are classified into three main categories,which are noise, offset, and drift as shown in Figure 2.7.

Figure 2.7: Noise, offset and drift.

Noise disturbances occur in almost all measured sensor signals. The exist-ing noise sources in motion sensor systems are summarized as:

37

Page 39: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

14 Chapter 2. Background

• Noise from the environment like temperature fluctuations, electromag-netic radiance.

• Unwanted movements, for example, shocks, vibrations and humantremor (includes both physiological tremor and pathological tremor).

• Inherent noise in electronics, such as electrical noise and mechanicalthermal noise.

The offset error, also called zero error or bias error, is a non-zero constantinfluence in the output of the sensor. This implies a shift or displacement ofthe zero point. It is a common error that exists in different magnitudes in mostsensor signals.

Drift means that the output changes with time even though there is nochange in the input signal. Drift can be caused by vibration, shock, aging,and temperature variations. Temperature drift is generated due to the tempera-ture changes. This phenomenon is well-known for the MEMS gyroscope [2].Another problem is the integration drift, which is an accumulation error due tonumerical integration of acceleration or angular rate to determine the positionor angle during the position or angular calculation [3].

Due to the MEMS sensor signal errors in the embedded sensor systems,the signal processing in this thesis was focused on the noise reduction, estima-tion and reduction of offset/dead zone and drift, position accuracy, and signalstability.

2.3.4 Related signal processing

Signal processing is one of the key technologies to reduce the signal errors fromthe measurements and ensure the system stability and reliability. By now manymethods have been applied for the sensor signal compensation. They can beclassified into two major categories, analog signal processing and digital signalprocessing [38]. Analog filters are used as anti-alias filter and reconstructionfilter that are placed before the Analog-Digital Converter (ADC) and after theDigital-Analog Converter (DAC), respectively in the digital signal processingsystem [39]. Generally, digital methods include different signal processingalgorithms, which are cost-efficiently able to reduce the sensor signal errors.Low-pass filter is a common and simple algorithm for the noise reduction. Itcan reduce the high-frequency noise [40]. Least Mean Square (LMS) algorithmis a basic adaptive algorithm, by which both adaptive noise cancellation filter

14 Chapter 2. Background

• Noise from the environment like temperature fluctuations, electromag-netic radiance.

• Unwanted movements, for example, shocks, vibrations and humantremor (includes both physiological tremor and pathological tremor).

• Inherent noise in electronics, such as electrical noise and mechanicalthermal noise.

The offset error, also called zero error or bias error, is a non-zero constantinfluence in the output of the sensor. This implies a shift or displacement ofthe zero point. It is a common error that exists in different magnitudes in mostsensor signals.

Drift means that the output changes with time even though there is nochange in the input signal. Drift can be caused by vibration, shock, aging,and temperature variations. Temperature drift is generated due to the tempera-ture changes. This phenomenon is well-known for the MEMS gyroscope [2].Another problem is the integration drift, which is an accumulation error due tonumerical integration of acceleration or angular rate to determine the positionor angle during the position or angular calculation [3].

Due to the MEMS sensor signal errors in the embedded sensor systems,the signal processing in this thesis was focused on the noise reduction, estima-tion and reduction of offset/dead zone and drift, position accuracy, and signalstability.

2.3.4 Related signal processing

Signal processing is one of the key technologies to reduce the signal errors fromthe measurements and ensure the system stability and reliability. By now manymethods have been applied for the sensor signal compensation. They can beclassified into two major categories, analog signal processing and digital signalprocessing [38]. Analog filters are used as anti-alias filter and reconstructionfilter that are placed before the Analog-Digital Converter (ADC) and after theDigital-Analog Converter (DAC), respectively in the digital signal processingsystem [39]. Generally, digital methods include different signal processingalgorithms, which are cost-efficiently able to reduce the sensor signal errors.Low-pass filter is a common and simple algorithm for the noise reduction. Itcan reduce the high-frequency noise [40]. Least Mean Square (LMS) algorithmis a basic adaptive algorithm, by which both adaptive noise cancellation filter

38

Page 40: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 2. Background 15

and adaptive linear prediction filter can be implemented [41]. The Kalman fil-ter is the most common algorithm for the sensor problem such as gyro sensordrift compensation [42]. It has also been applied for human tremor estimation[43] [44]. Extended Kalman filter (EKF) has been developed for improvingthe accuracy of MEMS inertial sensors [45]. A wavelet based method likewavelet threshold denoising method has been improved and applied to elimi-nate random noise of MEMS gyrosocpe [46]. Weighted Fourier Linear Com-biner (WFLC) algorithm has been used for adaptive human-machine interfacefor persons with tremor [47]. It was also used to estimate displacement of pe-riodic motion with inertial sensors [48]. Adaptive band-pass filter is a basicalgorithm to reduce the typical noise, tremor from inertial sensor data [49].

2.4 Users’ perception of the sensor response delay

For small microprocessors and embedded systems, specially for the wearableapplications with users, real-time performance without a noticeable delay is achallenge for firmware and signal processing development. Delay based on thereaction time and its detection threshold is an interesting and important issueto be solved in the area of computer science. System latency has already beenseen as a primary concern in providing real-time (or near real-time) interactionfor human-computer interfaces [50]. The perception of the users is a key factorto evaluate a delay in an embedded sensor system.

Related research on delay perception and effects have been performed, e.g.,the threshold of detecting changes in a graphical user interface by adaptivetracking has been investigated. An unnoticable delay of approximately 150milliseconds for keyboard interactions was found, which increased up to 195milliseconds for mouse interactions [51]. Also, the effect of delay on the qual-ity of video and voice communication was examined by looking at the inter-action between speech and video [52]. The effect of delay variation in videostreaming and its threshold level on the users’ perception has been analysedwith both the experience of users and the delay variance factors [53]. Testand evaluation of time delay perception between visual information and tactileinformation was performed in both real space and virtual space with a forcefeedback device [54]. In addition, research about haptic delay perception in ahaptic telepresence system has been done with focus on the detection thresholdfor delay and related influential factors in haptic environments [55].

Nonetheless, further research is needed to determine a more precise thresh-old value for the interactive real-time responsiveness of the systems [51, 56].

Chapter 2. Background 15

and adaptive linear prediction filter can be implemented [41]. The Kalman fil-ter is the most common algorithm for the sensor problem such as gyro sensordrift compensation [42]. It has also been applied for human tremor estimation[43] [44]. Extended Kalman filter (EKF) has been developed for improvingthe accuracy of MEMS inertial sensors [45]. A wavelet based method likewavelet threshold denoising method has been improved and applied to elimi-nate random noise of MEMS gyrosocpe [46]. Weighted Fourier Linear Com-biner (WFLC) algorithm has been used for adaptive human-machine interfacefor persons with tremor [47]. It was also used to estimate displacement of pe-riodic motion with inertial sensors [48]. Adaptive band-pass filter is a basicalgorithm to reduce the typical noise, tremor from inertial sensor data [49].

2.4 Users’ perception of the sensor response delay

For small microprocessors and embedded systems, specially for the wearableapplications with users, real-time performance without a noticeable delay is achallenge for firmware and signal processing development. Delay based on thereaction time and its detection threshold is an interesting and important issueto be solved in the area of computer science. System latency has already beenseen as a primary concern in providing real-time (or near real-time) interactionfor human-computer interfaces [50]. The perception of the users is a key factorto evaluate a delay in an embedded sensor system.

Related research on delay perception and effects have been performed, e.g.,the threshold of detecting changes in a graphical user interface by adaptivetracking has been investigated. An unnoticable delay of approximately 150milliseconds for keyboard interactions was found, which increased up to 195milliseconds for mouse interactions [51]. Also, the effect of delay on the qual-ity of video and voice communication was examined by looking at the inter-action between speech and video [52]. The effect of delay variation in videostreaming and its threshold level on the users’ perception has been analysedwith both the experience of users and the delay variance factors [53]. Testand evaluation of time delay perception between visual information and tactileinformation was performed in both real space and virtual space with a forcefeedback device [54]. In addition, research about haptic delay perception in ahaptic telepresence system has been done with focus on the detection thresholdfor delay and related influential factors in haptic environments [55].

Nonetheless, further research is needed to determine a more precise thresh-old value for the interactive real-time responsiveness of the systems [51, 56].

39

Page 41: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

16 Chapter 2. Background

The question is: how much delay is still acceptable for computer input devices?Signal processing and its resulting delay are main factors to consider regardingthe performance of a system. This was especially of interest for us to be ableto develop better filtering and calculation algorithms for microprocessors andembedded systems in the real-time applications.

16 Chapter 2. Background

The question is: how much delay is still acceptable for computer input devices?Signal processing and its resulting delay are main factors to consider regardingthe performance of a system. This was especially of interest for us to be ableto develop better filtering and calculation algorithms for microprocessors andembedded systems in the real-time applications.

40

Page 42: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 3

Research goal and researchquestions

3.1 Research goalThis thesis focuses on signal processing algorithms for human wearableMEMS sensor-based motion analysis systems, with the aim to improve themotion measurements. Signal error reduction and position accuracy improve-ments are two main foci. In addition, the hardware limitations and the users’perception are investigated. Therefore, the research goal is:

• To develop, implement and evaluate suitable signal processing algo-rithms for signal error reduction and position accuracy improvementfor the corresponding developed MEMS sensor-based motion analysissystems, with the requirements of systems and users.

3.2 Research questionsIn order to narrow the overall research goal above, three concrete researchquestions (RQs) are considered in this thesis:

• RQ1: How can signal processing reduce signal errors, i.e., noise anddrift, in measured MEMS gyroscope/MEMS accelerometer signals inreal time, considering the limited calculation capacity of the system?

17

Chapter 3

Research goal and researchquestions

3.1 Research goalThis thesis focuses on signal processing algorithms for human wearableMEMS sensor-based motion analysis systems, with the aim to improve themotion measurements. Signal error reduction and position accuracy improve-ments are two main foci. In addition, the hardware limitations and the users’perception are investigated. Therefore, the research goal is:

• To develop, implement and evaluate suitable signal processing algo-rithms for signal error reduction and position accuracy improvementfor the corresponding developed MEMS sensor-based motion analysissystems, with the requirements of systems and users.

3.2 Research questionsIn order to narrow the overall research goal above, three concrete researchquestions (RQs) are considered in this thesis:

• RQ1: How can signal processing reduce signal errors, i.e., noise anddrift, in measured MEMS gyroscope/MEMS accelerometer signals inreal time, considering the limited calculation capacity of the system?

17

41

Page 43: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

18 Chapter 3. Research goal and research questions

MEMS gyroscopes and MEMS accelerometers can be used to measurethe movement of any body part in order to estimate body movement pa-rameters. They can be applied in the area of rehabilitation or be usedto analyse motion. The noise is the most common problem in signalprocessing. The noise in MEMS gyroscope- and MEMS accelerometer-signals has its own characteristics. For example, the human tremor canbe seen as a typical noise during the movement measurement. Temper-ature drift is a common problem for MEMS gyroscope signals. In thisthesis, how to reduce the noise and compensate the temperature drift areinvestigated. Real-time implementation of the signal processing algo-rithms is another important aspect treated in this thesis. The real-timeaspect also includes the users’ perception (RQ3). The limited calcula-tion capacity of small embedded sensor systems, in combination withthe complexity of the signal processing algorithms is another importantaspect.

• RQ2: How can signal processing of the corresponding MEMS gyro-scope and MEMS accelerometer signals provide an accurate positionmeasurement?

The MEMS gyroscope measures angular rate while the MEMS ac-celerometer measures acceleration. The velocity, position and angle canbe derived by integration. However, during the calculation and conver-sion from the acceleration/angular rate to the velocity, position/angle,there are errors and deviations. Integration drift is an accumulation errordue to numerical integration of acceleration or angular rate to determinethe position or angle during the position or angular calculation. Howsignal processing algorithms can reduce the integration drift and providean accurate position measurement with MEMS gyroscopes and MEMSaccelerometers is a challenging research question.

• RQ3: Which delay, caused by the signal processing, can be acceptableby a human when using the system as a computer input device?

Execution of signal processing algorithms always introduces a time de-lay into the system. Normally, the more complex the signal processingalgorithm is, the more time it needs, and the more delay it causes to thewhole system. The users’ perception of time delay is also investigated inthis thesis. The maximum delay not perceived by the user is determinedto be the time limit, and further used as the maximum allowed delaywhen designing the signal processing algorithms in this thesis.

18 Chapter 3. Research goal and research questions

MEMS gyroscopes and MEMS accelerometers can be used to measurethe movement of any body part in order to estimate body movement pa-rameters. They can be applied in the area of rehabilitation or be usedto analyse motion. The noise is the most common problem in signalprocessing. The noise in MEMS gyroscope- and MEMS accelerometer-signals has its own characteristics. For example, the human tremor canbe seen as a typical noise during the movement measurement. Temper-ature drift is a common problem for MEMS gyroscope signals. In thisthesis, how to reduce the noise and compensate the temperature drift areinvestigated. Real-time implementation of the signal processing algo-rithms is another important aspect treated in this thesis. The real-timeaspect also includes the users’ perception (RQ3). The limited calcula-tion capacity of small embedded sensor systems, in combination withthe complexity of the signal processing algorithms is another importantaspect.

• RQ2: How can signal processing of the corresponding MEMS gyro-scope and MEMS accelerometer signals provide an accurate positionmeasurement?

The MEMS gyroscope measures angular rate while the MEMS ac-celerometer measures acceleration. The velocity, position and angle canbe derived by integration. However, during the calculation and conver-sion from the acceleration/angular rate to the velocity, position/angle,there are errors and deviations. Integration drift is an accumulation errordue to numerical integration of acceleration or angular rate to determinethe position or angle during the position or angular calculation. Howsignal processing algorithms can reduce the integration drift and providean accurate position measurement with MEMS gyroscopes and MEMSaccelerometers is a challenging research question.

• RQ3: Which delay, caused by the signal processing, can be acceptableby a human when using the system as a computer input device?

Execution of signal processing algorithms always introduces a time de-lay into the system. Normally, the more complex the signal processingalgorithm is, the more time it needs, and the more delay it causes to thewhole system. The users’ perception of time delay is also investigated inthis thesis. The maximum delay not perceived by the user is determinedto be the time limit, and further used as the maximum allowed delaywhen designing the signal processing algorithms in this thesis.

42

Page 44: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4

Research methods

This chapter presents the methods that are used in the included papers.

For the first research question (RQ1) presented in Chapter 3, several algo-rithms were implemented into the two MEMS sensor-based motion analysissystems [33, 36] to reduce the signal error including noise, offset, drift, andtemperature drift. These algorithms are: a simple digital implemented resis-tor–capacitor (RC) low-pass and high-pass filter, a LMS algorithm, a Kalmanfilter, a WFLC algorithm, a novel developed threshold with delay (TWD)method, and a novel combination algorithm named the KWT algorithm.

For the second research question (RQ2) presented in Chapter 3, a TWDmethod and a velocity trend estimation method were developed to improve theposition accuracy in the MEMS accelerometer-based application. The TWDmethod was also used to improve the static stability of the MEMS gyroscope-based systems. The KWT algorithm was used to reduce integration drift. BothTWD and KWT can also used to provide an accurate position measurement.

For the third research question (RQ3) presented in Chapter 3, user testswith a communication retarder were performed to investigate users’ perceptionof delay when they were using different computer input devices, in particularthe MultiPos systems. The investigated time delay limit was further used forsignal processing filter implementation in this thesis.

In addition, a systematic review with focus on signal error reduction ofMEMS gyroscope-based human motion analysis systems was performed, ad-dressing research questions RQ1 and RQ2.

19

Chapter 4

Research methods

This chapter presents the methods that are used in the included papers.

For the first research question (RQ1) presented in Chapter 3, several algo-rithms were implemented into the two MEMS sensor-based motion analysissystems [33, 36] to reduce the signal error including noise, offset, drift, andtemperature drift. These algorithms are: a simple digital implemented resis-tor–capacitor (RC) low-pass and high-pass filter, a LMS algorithm, a Kalmanfilter, a WFLC algorithm, a novel developed threshold with delay (TWD)method, and a novel combination algorithm named the KWT algorithm.

For the second research question (RQ2) presented in Chapter 3, a TWDmethod and a velocity trend estimation method were developed to improve theposition accuracy in the MEMS accelerometer-based application. The TWDmethod was also used to improve the static stability of the MEMS gyroscope-based systems. The KWT algorithm was used to reduce integration drift. BothTWD and KWT can also used to provide an accurate position measurement.

For the third research question (RQ3) presented in Chapter 3, user testswith a communication retarder were performed to investigate users’ perceptionof delay when they were using different computer input devices, in particularthe MultiPos systems. The investigated time delay limit was further used forsignal processing filter implementation in this thesis.

In addition, a systematic review with focus on signal error reduction ofMEMS gyroscope-based human motion analysis systems was performed, ad-dressing research questions RQ1 and RQ2.

19

43

Page 45: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

20 Chapter 4. Research methods

4.1 Signal processing algorithms

This section presents different signal processing algorithms which were usedin the included papers, with the aim to reduce the signal error and improve theposition measurement accuracy. For the application of small wearable MEMSsensor-based embedded systems, some existing algorithms and methods weresimplified, adapted and improved, i.e., basic filters such as low-pass filter andhigh-pass filter, advanced algortihms such as LMS algorithm, Kalman filter,and WFLC algorithm; some novel algorithms such as the TWD method, thevelocity drift estimation method and the combination method KWT were de-veloped. The algorithms were simulated in MATLABr and implemented ina dsPICr. The performances of the algorithms were evaluated in system testsof the MultiPos system and the TDG system. The measured sensor moduleswere MEMS gyroscopes IDG300 [57], MLX90609 [58], L3G4200D [59] andMEMS accelerometer ADXL345 [60]. More details are presented in the fol-lowing sections.

4.1.1 Basic filtering methods

Low-pass filter and high-pass filter are both basic filtering methods and areoften used in signal processing. In this thesis, the two digital filters were simplyimplemented by deriving from a RC circuit.

The low-pass filter

A simple digital low-pass filter can be implemented as a RC-link [61]. Thelow-pass filter is designed to let all the frequencies below the cut-off frequencypass the filter in a digital filter design. The cut-off frequency can be describedas a parameter with a value from zero to one. This kind of low-pass filter wasapplied into the MEMS gyroscope- and MEMS accelerometer-based motiondetection system for noise reduction.

The low-pass filter can be described as [61]:

yi = yi−1 + α(xi − yi−1) (4.1)

Where α is the parameter of cut-off frequency for the low-pass filter. xi isinput signals at time point i. yi and yi−1 are output signals at time point i andi− 1, respectively.

20 Chapter 4. Research methods

4.1 Signal processing algorithms

This section presents different signal processing algorithms which were usedin the included papers, with the aim to reduce the signal error and improve theposition measurement accuracy. For the application of small wearable MEMSsensor-based embedded systems, some existing algorithms and methods weresimplified, adapted and improved, i.e., basic filters such as low-pass filter andhigh-pass filter, advanced algortihms such as LMS algorithm, Kalman filter,and WFLC algorithm; some novel algorithms such as the TWD method, thevelocity drift estimation method and the combination method KWT were de-veloped. The algorithms were simulated in MATLABr and implemented ina dsPICr. The performances of the algorithms were evaluated in system testsof the MultiPos system and the TDG system. The measured sensor moduleswere MEMS gyroscopes IDG300 [57], MLX90609 [58], L3G4200D [59] andMEMS accelerometer ADXL345 [60]. More details are presented in the fol-lowing sections.

4.1.1 Basic filtering methods

Low-pass filter and high-pass filter are both basic filtering methods and areoften used in signal processing. In this thesis, the two digital filters were simplyimplemented by deriving from a RC circuit.

The low-pass filter

A simple digital low-pass filter can be implemented as a RC-link [61]. Thelow-pass filter is designed to let all the frequencies below the cut-off frequencypass the filter in a digital filter design. The cut-off frequency can be describedas a parameter with a value from zero to one. This kind of low-pass filter wasapplied into the MEMS gyroscope- and MEMS accelerometer-based motiondetection system for noise reduction.

The low-pass filter can be described as [61]:

yi = yi−1 + α(xi − yi−1) (4.1)

Where α is the parameter of cut-off frequency for the low-pass filter. xi isinput signals at time point i. yi and yi−1 are output signals at time point i andi− 1, respectively.

44

Page 46: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4. Research methods 21

The high-pass filter

By analogy with the digital implementation of a RC low-pass filter [61], ahigh-pass filter can be implemented in a similar manner. The high-pass filteris designed to let all the frequencies above the cut-off frequency pass the filter.Here the cut-off frequency is also described as a parameter with a value fromzero to one. The high-pass filter was applied into the MEMS gyroscope-basedmotion analysis systems for drift and offset reduction.

The high-pass filter can be described as [62]:

yi = βyi−1 + β (xi − xi−1) (4.2)

Where β is the parameter of cut-off frequency for the high-pass filter. xiand xi−1 are input signals at time point i and i − 1 respectively. yi and yi−1

are output signals at time point i and i− 1 respectively.

4.1.2 Advanced algorithmsIn this thesis, advanced signal processing algorithms, such as a LMS algorithm,a Kalman filter, and a WFLC algorithm, were simplified and adapted into theapplications in focus.

The LMS algorithm

Adaptive filters are required for certain applications where some parametersof the desired signal processing are not known in advance. The adaptive filteruses feedback in the form of an error signal to refine its transfer function tomatch the changing parameters. The adaptive filter using LMS algorithm canbe described as follows [41]:

Input signal:

x (n) = [x (0) , x (1) , . . . , x (n− 1)]T (4.3)

Adaptive filter coefficient vector:

wn = [w (0) , w (1) , . . . , w (n− 1)]T (4.4)

∆wn = µe (n)x∗ (n) (4.5)

µ is the step size and converges to

0 < µ <2

λmax(4.6)

Chapter 4. Research methods 21

The high-pass filter

By analogy with the digital implementation of a RC low-pass filter [61], ahigh-pass filter can be implemented in a similar manner. The high-pass filteris designed to let all the frequencies above the cut-off frequency pass the filter.Here the cut-off frequency is also described as a parameter with a value fromzero to one. The high-pass filter was applied into the MEMS gyroscope-basedmotion analysis systems for drift and offset reduction.

The high-pass filter can be described as [62]:

yi = βyi−1 + β (xi − xi−1) (4.2)

Where β is the parameter of cut-off frequency for the high-pass filter. xiand xi−1 are input signals at time point i and i − 1 respectively. yi and yi−1

are output signals at time point i and i− 1 respectively.

4.1.2 Advanced algorithmsIn this thesis, advanced signal processing algorithms, such as a LMS algorithm,a Kalman filter, and a WFLC algorithm, were simplified and adapted into theapplications in focus.

The LMS algorithm

Adaptive filters are required for certain applications where some parametersof the desired signal processing are not known in advance. The adaptive filteruses feedback in the form of an error signal to refine its transfer function tomatch the changing parameters. The adaptive filter using LMS algorithm canbe described as follows [41]:

Input signal:

x (n) = [x (0) , x (1) , . . . , x (n− 1)]T (4.3)

Adaptive filter coefficient vector:

wn = [w (0) , w (1) , . . . , w (n− 1)]T (4.4)

∆wn = µe (n)x∗ (n) (4.5)

µ is the step size and converges to

0 < µ <2

λmax(4.6)

45

Page 47: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

22 Chapter 4. Research methods

Where λmax is the largest eigenvalue to the regression covariance matrix.LMS-based adaptive filter has P + 1 coefficients and the updating adaptive

filter iswn+1 = wn + µ∆wn = wn + µe (n)x∗ (n) (4.7)

And the output of the adaptive filter is

y (n) =

P∑i=0

wn (i)x (n− i) (4.8)

Then it gives

e (n) = d (n)− y (n) = d (n)−W (n)x (n) (4.9)

LMS algorithm can be used to reduce noise or drift. An adaptive noise can-celler (ANC) uses the LMS algorithm for reduction of noise, while an adaptivelinear prediction filter (ALP) uses the LMS algorithm for the reduction of driftand offset. The structure of the adaptive filter is shown in Figure 4.1, wherex(n) is the input signal, d(n) is the reference signal, y(n) is the output signalof adaptive filter, e(n) is the error signal, andW is the adaptive filter with LMSalgorithm. For simplified implementation, the input signal x(n) was processedone sample by one sample in real time.

Figure 4.1: Adaptive filter with LMS algorithm.

The Kalman filter

A Kalman filter is a recursive filter used to estimate the state of a process. Somecommon applications of Kalman filter are reduction of noise, signal predictionand signal estimation. There are two main processes in the Kalman filter algo-rithm. One is time updating, which is a process of prediction and the other ismeasurement updating, which is process of correction.

22 Chapter 4. Research methods

Where λmax is the largest eigenvalue to the regression covariance matrix.LMS-based adaptive filter has P + 1 coefficients and the updating adaptive

filter iswn+1 = wn + µ∆wn = wn + µe (n)x∗ (n) (4.7)

And the output of the adaptive filter is

y (n) =

P∑i=0

wn (i)x (n− i) (4.8)

Then it gives

e (n) = d (n)− y (n) = d (n)−W (n)x (n) (4.9)

LMS algorithm can be used to reduce noise or drift. An adaptive noise can-celler (ANC) uses the LMS algorithm for reduction of noise, while an adaptivelinear prediction filter (ALP) uses the LMS algorithm for the reduction of driftand offset. The structure of the adaptive filter is shown in Figure 4.1, wherex(n) is the input signal, d(n) is the reference signal, y(n) is the output signalof adaptive filter, e(n) is the error signal, andW is the adaptive filter with LMSalgorithm. For simplified implementation, the input signal x(n) was processedone sample by one sample in real time.

Figure 4.1: Adaptive filter with LMS algorithm.

The Kalman filter

A Kalman filter is a recursive filter used to estimate the state of a process. Somecommon applications of Kalman filter are reduction of noise, signal predictionand signal estimation. There are two main processes in the Kalman filter algo-rithm. One is time updating, which is a process of prediction and the other ismeasurement updating, which is process of correction.

46

Page 48: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4. Research methods 23

Time updating for discrete Kalman algorithm [63]:

x−k = Axk−1 +Buk−1 (4.10)

P−k = APk−1A

T +Q (4.11)

Measurement updating for discrete Kalman algorithm [63]:

Kk = P−k H

T(HP−

k HT +R

)−1=

P−k H

T

HP−k H

T +R(4.12)

xk = x−k +Kk

(zk −Hx−k

)(4.13)

Pk = (I −KkH)P−k (4.14)

WhereA is state transition model, B is control-input model, H is measure-ment matrix, I is identity matrix, K is Kalman gain, k is discrete time point, Pis error covariance, Q is process noise covariance, R is measure noise covari-ance, u is control vector, x is the state, x is the posteriori estimated state, x−k ispriori state, and z is the measurement. In order to be simply implemented, bothx−k and Pk were initialized as a 2x2 zero-valued matrix. To estimate the driftand offset tendency, the ratio of the parameters R and Q was set to 10,000.

The process can also be seen in Figure 4.2 [63].

Figure 4.2: Kalman filtering.

Chapter 4. Research methods 23

Time updating for discrete Kalman algorithm [63]:

x−k = Axk−1 +Buk−1 (4.10)

P−k = APk−1A

T +Q (4.11)

Measurement updating for discrete Kalman algorithm [63]:

Kk = P−k H

T(HP−

k HT +R

)−1=

P−k H

T

HP−k H

T +R(4.12)

xk = x−k +Kk

(zk −Hx−k

)(4.13)

Pk = (I −KkH)P−k (4.14)

WhereA is state transition model, B is control-input model, H is measure-ment matrix, I is identity matrix, K is Kalman gain, k is discrete time point, Pis error covariance, Q is process noise covariance, R is measure noise covari-ance, u is control vector, x is the state, x is the posteriori estimated state, x−k ispriori state, and z is the measurement. In order to be simply implemented, bothx−k and Pk were initialized as a 2x2 zero-valued matrix. To estimate the driftand offset tendency, the ratio of the parameters R and Q was set to 10,000.

The process can also be seen in Figure 4.2 [63].

Figure 4.2: Kalman filtering.

47

Page 49: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

24 Chapter 4. Research methods

A Kalman filter can be used for noise reduction. It can also be used toestimate the drift or offset trend so that the drift and offset can be reduced.Structure of the application of Kalman filter for the reduction of drift and offsetis shown in Figure 4.3, where x(n) is the input signal, u(n) is the output signalof the Kalman filter, y(n) is the output signal after drift and offset reductions,and KF is Kalman filter.

Figure 4.3: Application of a Kalman filter for drift/offset reduction.

The WFLC algorithm

Physical tremor is natural in all human beings. It exists in all human withamplitude lying in the frequency range of 8–12 Hz [64].

WFLC is an adaptive signal processing algorithm that models a truncatedFourier series model of a period signal with unknown frequency and amplitude.The tremor noise is moduled as a sinusoid and the modulation is tracked infrequency, phase and amplitude. The WFLC algorithm is described as follows[47]:

xrk =

{sin(r∑kt=0 w0

)1 ≤ r ≤M

cos ((r −M)∑kt=0 w0) M + 1 ≤ r ≤ 2M

(4.15)

yk+1 = yk +WTX (4.16)

εk = sk − yk − wbiask (4.17)

wbiask+1= wbiask + 2µbεk (4.18)

w0k+1= w0k + 2µ0εk

M∑i=1

(wixM+i − wM+ixi) (4.19)

Wk+1 = Wk + 2µ1Xkεk (4.20)

24 Chapter 4. Research methods

A Kalman filter can be used for noise reduction. It can also be used toestimate the drift or offset trend so that the drift and offset can be reduced.Structure of the application of Kalman filter for the reduction of drift and offsetis shown in Figure 4.3, where x(n) is the input signal, u(n) is the output signalof the Kalman filter, y(n) is the output signal after drift and offset reductions,and KF is Kalman filter.

Figure 4.3: Application of a Kalman filter for drift/offset reduction.

The WFLC algorithm

Physical tremor is natural in all human beings. It exists in all human withamplitude lying in the frequency range of 8–12 Hz [64].

WFLC is an adaptive signal processing algorithm that models a truncatedFourier series model of a period signal with unknown frequency and amplitude.The tremor noise is moduled as a sinusoid and the modulation is tracked infrequency, phase and amplitude. The WFLC algorithm is described as follows[47]:

xrk =

{sin(r∑kt=0 w0

)1 ≤ r ≤M

cos ((r −M)∑kt=0 w0) M + 1 ≤ r ≤ 2M

(4.15)

yk+1 = yk +WTX (4.16)

εk = sk − yk − wbiask (4.17)

wbiask+1= wbiask + 2µbεk (4.18)

w0k+1= w0k + 2µ0εk

M∑i=1

(wixM+i − wM+ixi) (4.19)

Wk+1 = Wk + 2µ1Xkεk (4.20)

48

Page 50: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4. Research methods 25

Where Wk = [w1k , . . . , w2Mk]T , Xk = [x1k , . . . , x2Mk

]T . M is the har-monic number. For simplified implementation, the parameter M was set to 2.µ0, µ1 , µb are the adaptive parameters, which is usually set to be a small value,e.g., 0.01, 0.1, and 0.5, respectively. sk is input signal and εk is error at timepoint k. k is the discrete point in time.

It can also be described by Figure 4.4 [65].

Figure 4.4: WFLC algorithm.

4.1.3 Novel algorithmsIn this section, the novel algorithms developed in this thesis are presented.These algorithms are the TWD method, the velocity drift estimation methodand the combination method KWT.

The TWD method

The threshold with delay method, i.e. the TWD method, is based on the simplethreshold method in which the input signal is set to zero if the value is smallerthan threshold. However, the drawback of the threshold method is that there

Chapter 4. Research methods 25

Where Wk = [w1k , . . . , w2Mk]T , Xk = [x1k , . . . , x2Mk

]T . M is the har-monic number. For simplified implementation, the parameter M was set to 2.µ0, µ1 , µb are the adaptive parameters, which is usually set to be a small value,e.g., 0.01, 0.1, and 0.5, respectively. sk is input signal and εk is error at timepoint k. k is the discrete point in time.

It can also be described by Figure 4.4 [65].

Figure 4.4: WFLC algorithm.

4.1.3 Novel algorithmsIn this section, the novel algorithms developed in this thesis are presented.These algorithms are the TWD method, the velocity drift estimation methodand the combination method KWT.

The TWD method

The threshold with delay method, i.e. the TWD method, is based on the simplethreshold method in which the input signal is set to zero if the value is smallerthan threshold. However, the drawback of the threshold method is that there

49

Page 51: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

26 Chapter 4. Research methods

is often not a smooth transition at the threshold setting point and the signalbecomes choppy. Thus, the TWD method is designed to improve the signalunder threshold such as continuous movement signal. The comparison of thenormal threshold method and the TWD method is shown in Figure 4.5 withoutnoise and Figure 4.6 with noise.

Figure 4.5: Comparison between the normal threshold method and the TWDmethod without noise (T=0.5).

Figure 4.6: Comparison between the normal threshold method and the TWDmethod with noise (T=0.5).

26 Chapter 4. Research methods

is often not a smooth transition at the threshold setting point and the signalbecomes choppy. Thus, the TWD method is designed to improve the signalunder threshold such as continuous movement signal. The comparison of thenormal threshold method and the TWD method is shown in Figure 4.5 withoutnoise and Figure 4.6 with noise.

Figure 4.5: Comparison between the normal threshold method and the TWDmethod without noise (T=0.5).

Figure 4.6: Comparison between the normal threshold method and the TWDmethod with noise (T=0.5).

50

Page 52: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4. Research methods 27

Figure 4.7: The TWD method.

As shown in Figure 4.7, the algorithm can be described as:

yi =

{xi, xi ≥ T‖tx≤T < D0, xi < T&tx≤T > D

(4.21)

where T is the parameter of threshold and D is the parameter of delay. xi isinput signal at time point i. yi is output signal at time point i. tx≤T is theaccumulated time while input signal is smaller than the threshold value.

The velocity trend estimation method

The velocity drift estimation method is designed according to the features ofvelocity signal which is similar to a sinus signal.

The velocity drift estimation method can be described as:

yi =

{xi, Ai = 0yi−1, Ai ∼= 0

(4.22)

Where xi is input signal at time point i, and yi−1 is output signal at timepoint i− 1. Ai is derivation of input signal which can be obtained from:

Ai = K × abs(xi − xi−1) (4.23)

Where K is a scale parameter.

The KWT algorithm

The KWT algorithm is a combination algorithm that takes the advantages ofKalman, WFLC and TWD. It is developed with the aim to reduce noise, offsetand drift simultaneously. The Kalman filter is used for drift/offset estimation,

Chapter 4. Research methods 27

Figure 4.7: The TWD method.

As shown in Figure 4.7, the algorithm can be described as:

yi =

{xi, xi ≥ T‖tx≤T < D0, xi < T&tx≤T > D

(4.21)

where T is the parameter of threshold and D is the parameter of delay. xi isinput signal at time point i. yi is output signal at time point i. tx≤T is theaccumulated time while input signal is smaller than the threshold value.

The velocity trend estimation method

The velocity drift estimation method is designed according to the features ofvelocity signal which is similar to a sinus signal.

The velocity drift estimation method can be described as:

yi =

{xi, Ai = 0yi−1, Ai ∼= 0

(4.22)

Where xi is input signal at time point i, and yi−1 is output signal at timepoint i− 1. Ai is derivation of input signal which can be obtained from:

Ai = K × abs(xi − xi−1) (4.23)

Where K is a scale parameter.

The KWT algorithm

The KWT algorithm is a combination algorithm that takes the advantages ofKalman, WFLC and TWD. It is developed with the aim to reduce noise, offsetand drift simultaneously. The Kalman filter is used for drift/offset estimation,

51

Page 53: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

28 Chapter 4. Research methods

while the WFLC is used for noise reduction. The TWD method is applied toprovide a good static zero-level signal before and after the movement. The out-put signal is the measured signal minus estimated drift/offset by Kalman filterand then denoised by WFLC and TWD. The main structure of the algorithm isshown in Figure 4.8.

Figure 4.8: Structure of KWT algorithm.

4.1.4 Position measurements

MEMS gyroscopes and MEMS accelerometers can be used to sense the move-ment by measuring angular rate [◦/s] and acceleration [m/s2] respectively.

For the accelerometer signal, the velocity can be calculated by integratingthe acceleration and then the velocity is integrated to get the position in meters[m].

s =

∫−→v dt =

∫ (∫−→a dt

)dt (4.24)

For the MEMS gyroscope signal, the angular position [◦] can be derived byintegration of the measured angular rate signal.

θ =

∫ −→θ dt (4.25)

Because of the discrete digital data and error in the integration of digitaldata, the Trapezoidal method [66] is used to get a more accurate result of inte-gration.

For MEMS accelerometer, the integration calculation is:

vi = vi−1 +

(ai−1 +

(ai − ai−1)

2

)× T (4.26)

28 Chapter 4. Research methods

while the WFLC is used for noise reduction. The TWD method is applied toprovide a good static zero-level signal before and after the movement. The out-put signal is the measured signal minus estimated drift/offset by Kalman filterand then denoised by WFLC and TWD. The main structure of the algorithm isshown in Figure 4.8.

Figure 4.8: Structure of KWT algorithm.

4.1.4 Position measurements

MEMS gyroscopes and MEMS accelerometers can be used to sense the move-ment by measuring angular rate [◦/s] and acceleration [m/s2] respectively.

For the accelerometer signal, the velocity can be calculated by integratingthe acceleration and then the velocity is integrated to get the position in meters[m].

s =

∫−→v dt =

∫ (∫−→a dt

)dt (4.24)

For the MEMS gyroscope signal, the angular position [◦] can be derived byintegration of the measured angular rate signal.

θ =

∫ −→θ dt (4.25)

Because of the discrete digital data and error in the integration of digitaldata, the Trapezoidal method [66] is used to get a more accurate result of inte-gration.

For MEMS accelerometer, the integration calculation is:

vi = vi−1 +

(ai−1 +

(ai − ai−1)

2

)× T (4.26)

52

Page 54: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4. Research methods 29

si = si−1 +

(vi−1 +

(vi − vi−1)

2

)× T (4.27)

For MEMS gyroscope, the integration calculation is:

θi = θi−1 +

(θi−1 +

(θi − θi−1)

2

)× T (4.28)

Where ai is the acceleration signal, vi is the velocity signal, si is the posi-tion signal, θi is the angular rate signal, θi is the angular position signal at timepoint i, and ai−1 is the acceleration signal, vi−1 is the velocity signal, si−1 isthe position signal, θi−1 is the angular rate signal, θi−1 is the angular positionsignal at time point i− 1.

4.1.5 EvaluationThe algorithms are simulated in MATLAB [67] and then implementedin the dsPIC [68]. MEMS gyroscope IDG300 [57], MEMS gyroscopeMLX90609-E2 [58], MEMS gyroscope L3G400 [59], and MEMS accelerom-eter ADXL345 [60] were used for data collection.

The evaluation of the signal related to the movement was performed usinga test rig and by integrating the angular position. The parameter Root MeanSquare Error (RMSE) was used for the drift and the noise evaluation, and themean value was used for the offset.

4.2 User tests for perception of the delayThe acceptable time delay for signal processing filter implementation in em-bedded sensor systems was investigated in this thesis. The research was per-formed by using a communication retarder and evaluating what delay thatcould be perceived by the users when using a computer input device, in partic-ular the MEMS sensor-based system. A hardware device, the communicationretarder was developed to generate delays and used to perform a bechmark testfor the perception of delay. The delay could be set between 0 and 999 mil-liseconds (ms). Software was also developed to perform data collection and topresent visual tasks to the users.

The main structure of the delay test system is shown in Figure 4.9, whichconsists of a computer input device, the communication retarder, and a com-puter. The computer input devices can be a normal wired computer mouse, a

Chapter 4. Research methods 29

si = si−1 +

(vi−1 +

(vi − vi−1)

2

)× T (4.27)

For MEMS gyroscope, the integration calculation is:

θi = θi−1 +

(θi−1 +

(θi − θi−1)

2

)× T (4.28)

Where ai is the acceleration signal, vi is the velocity signal, si is the posi-tion signal, θi is the angular rate signal, θi is the angular position signal at timepoint i, and ai−1 is the acceleration signal, vi−1 is the velocity signal, si−1 isthe position signal, θi−1 is the angular rate signal, θi−1 is the angular positionsignal at time point i− 1.

4.1.5 EvaluationThe algorithms are simulated in MATLAB [67] and then implementedin the dsPIC [68]. MEMS gyroscope IDG300 [57], MEMS gyroscopeMLX90609-E2 [58], MEMS gyroscope L3G400 [59], and MEMS accelerom-eter ADXL345 [60] were used for data collection.

The evaluation of the signal related to the movement was performed usinga test rig and by integrating the angular position. The parameter Root MeanSquare Error (RMSE) was used for the drift and the noise evaluation, and themean value was used for the offset.

4.2 User tests for perception of the delayThe acceptable time delay for signal processing filter implementation in em-bedded sensor systems was investigated in this thesis. The research was per-formed by using a communication retarder and evaluating what delay thatcould be perceived by the users when using a computer input device, in partic-ular the MEMS sensor-based system. A hardware device, the communicationretarder was developed to generate delays and used to perform a bechmark testfor the perception of delay. The delay could be set between 0 and 999 mil-liseconds (ms). Software was also developed to perform data collection and topresent visual tasks to the users.

The main structure of the delay test system is shown in Figure 4.9, whichconsists of a computer input device, the communication retarder, and a com-puter. The computer input devices can be a normal wired computer mouse, a

53

Page 55: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

30 Chapter 4. Research methods

wired gaming mouse, a wifi mouse, or a MEMS gyroscope-based head-bornecomputer mouse.

Figure 4.9: Main structure of the delay test system.

With different computer input devices and different delay values, two usertests were performed with participants of different ages who were daily com-puter users without any mobility impairments.

In test 1, the user tests were performed with a total of 36 persons (30 maleand 6 female) from the age of 23 to 50 with an average age of 34.2. For thetest setup, a gaming laptop (MSI MS-16GF) with Windows 10, a wired gamingmouse (Logitech M500) and a gaming mouse pad (Logitech G240) were used.Most users (34/36) were using a computer mouse daily. The two remainingusers were using a track-pad on daily basis. Each tester person performed 10test rounds with 10 different delay values in a fixed order, which was 0 ms, 400ms, 200 ms, 100 ms, 300 ms, 500 ms, 150 ms, 175 ms, 125 ms, and 100 ms.

In test 2, the user tests were performed with 25 persons (22 male and 3female) from the age of 24 to 52 with an average age of 34.7. Three differentcomputer input devices, a wired gaming mouse (Logitech M500), a wifi mouse(Packard Bell MORFEOUO) and a MEMS gyroscope-based head-mountedcomputer mouse (MultiPos), were used in the test. Most users (22/25) wereusing a computer mouse daily. The other 3 users were using a trackpad fordaily uses. Most users had never used a head-mounted mouse before. Onlyone user tested a head movement controlled game before. Each user testedthree different devices for 5 rounds with a fixed delay settings of 0 ms, 50 ms,25 ms, 75 ms, and 100 ms.

For both user tests, all participants were informed about the purpose of thestudy, their tasks and the procedure at the beginning of each test. The taskwas to click on 4 emerging images on the screen with unknown but fixed lo-cations in each round. The setting of delay began with a neutral value of 0ms, and then alternated between higher and lower delay values. A question-naire was designed as four delay perception levels with corresponding scores,which were (1)’Unacceptable’, (2)’Disturbing’, (3)’Acceptable’, and (4)’Nodelay perceived’, and answered during the test by the users. After every test

30 Chapter 4. Research methods

wired gaming mouse, a wifi mouse, or a MEMS gyroscope-based head-bornecomputer mouse.

Figure 4.9: Main structure of the delay test system.

With different computer input devices and different delay values, two usertests were performed with participants of different ages who were daily com-puter users without any mobility impairments.

In test 1, the user tests were performed with a total of 36 persons (30 maleand 6 female) from the age of 23 to 50 with an average age of 34.2. For thetest setup, a gaming laptop (MSI MS-16GF) with Windows 10, a wired gamingmouse (Logitech M500) and a gaming mouse pad (Logitech G240) were used.Most users (34/36) were using a computer mouse daily. The two remainingusers were using a track-pad on daily basis. Each tester person performed 10test rounds with 10 different delay values in a fixed order, which was 0 ms, 400ms, 200 ms, 100 ms, 300 ms, 500 ms, 150 ms, 175 ms, 125 ms, and 100 ms.

In test 2, the user tests were performed with 25 persons (22 male and 3female) from the age of 24 to 52 with an average age of 34.7. Three differentcomputer input devices, a wired gaming mouse (Logitech M500), a wifi mouse(Packard Bell MORFEOUO) and a MEMS gyroscope-based head-mountedcomputer mouse (MultiPos), were used in the test. Most users (22/25) wereusing a computer mouse daily. The other 3 users were using a trackpad fordaily uses. Most users had never used a head-mounted mouse before. Onlyone user tested a head movement controlled game before. Each user testedthree different devices for 5 rounds with a fixed delay settings of 0 ms, 50 ms,25 ms, 75 ms, and 100 ms.

For both user tests, all participants were informed about the purpose of thestudy, their tasks and the procedure at the beginning of each test. The taskwas to click on 4 emerging images on the screen with unknown but fixed lo-cations in each round. The setting of delay began with a neutral value of 0ms, and then alternated between higher and lower delay values. A question-naire was designed as four delay perception levels with corresponding scores,which were (1)’Unacceptable’, (2)’Disturbing’, (3)’Acceptable’, and (4)’Nodelay perceived’, and answered during the test by the users. After every test

54

Page 56: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 4. Research methods 31

round with one computer input device and one delay value, the users rated theirexperience with the device at the set delay value. In addition, the developedsoftware also collected the elapsed time that the users needed to click on eachimages. The user feedback and the collected data were analysed with MAT-LAB.

Chapter 4. Research methods 31

round with one computer input device and one delay value, the users rated theirexperience with the device at the set delay value. In addition, the developedsoftware also collected the elapsed time that the users needed to click on eachimages. The user feedback and the collected data were analysed with MAT-LAB.

55

Page 57: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

56

Page 58: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 5

Scientific contributions

With focus on the three research questions, the result of this thesis work werepresented in the included papers and summarized in this chapter. Table 5.1presents how the included papers consider the three research questions.

Table 5.1: Included papers to answer the research questions.

Paper sections A B C D E F G

RQ1 X X X XRQ2 X X XRQ3 X X

5.1 Temperature drift compensationThree signal processing algorithms, a high-pass filter, a LMS algorithm, anda Kalman filter, were adapted to reduce the temperature drift from MEMSgyroscope signals with limited calculation capacity in real time. These sig-nal processing algorithms were simplified, simulated, implemented, tested andevaluated with temperature drift problem in a gyroscopic head-borne computermouse, the MultiPos system, with limited calculation capacity in real time.Compared to the high-pass filter and the LMS adaptive filter, the Kalman fil-ter was the best method for the reduction of the temperature drift in MEMSgyroscopes signals.

33

Chapter 5

Scientific contributions

With focus on the three research questions, the result of this thesis work werepresented in the included papers and summarized in this chapter. Table 5.1presents how the included papers consider the three research questions.

Table 5.1: Included papers to answer the research questions.

Paper sections A B C D E F G

RQ1 X X X XRQ2 X X XRQ3 X X

5.1 Temperature drift compensationThree signal processing algorithms, a high-pass filter, a LMS algorithm, anda Kalman filter, were adapted to reduce the temperature drift from MEMSgyroscope signals with limited calculation capacity in real time. These sig-nal processing algorithms were simplified, simulated, implemented, tested andevaluated with temperature drift problem in a gyroscopic head-borne computermouse, the MultiPos system, with limited calculation capacity in real time.Compared to the high-pass filter and the LMS adaptive filter, the Kalman fil-ter was the best method for the reduction of the temperature drift in MEMSgyroscopes signals.

33

57

Page 59: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

34 Chapter 5. Scientific contributions

This contribution is covering research question RQ1 and is included in pa-per A and F.

5.2 Noise reduction (electrical noise and tremor)Four signal processing algorithms, a low-pass filter, a LMS algorithm, aKalman filter, and a WFLC algorithm, were adapted for the noise reduction,especially with focus on the electrical noise and human physiological tremorfrom MEMS gyroscope signals with limited calculation capacity in real time.These signal processing algorithms were simulated, implemented, tested andevaluated with the application of a gyroscopic head-borne computer mouse, theMultiPos system, with limited calculation capacity in real time. The WFLC al-gorithm was demonstrated as the most suitable method to reduce the electricalnoise and tremor for the MultiPos system.

This contribution is covering research question RQ1 and is included in pa-per C and F.

5.3 Combination method to reduce differentsignal errors simultaneously

A novel combination method of Kalman filter, WFLC and TWD was developedto reduce drift, offset, and noise simultaneously from measured MEMS gyro-scope signals in the application of a gyroscopic head-borne computer mouse,with marginal need of the calculation capacity in real time. This method max-imally reduced the interferences during the static state and improved the staticstability of the gyroscopic head-borne mouse system.

This contribution is covering research question RQ1 and is included in pa-per F.

5.4 Position accuracy improvements for a MEMSaccelerometer-based system

Signal processing algorithms/methods were developed for the reduction of driftof MEMS accelerometers. Two simple novel developed algorithms, the TWDmethod and the velocity drift estimation method, were designed to reduce thedrift from the process of integration from acceleration and finally improved the

34 Chapter 5. Scientific contributions

This contribution is covering research question RQ1 and is included in pa-per A and F.

5.2 Noise reduction (electrical noise and tremor)Four signal processing algorithms, a low-pass filter, a LMS algorithm, aKalman filter, and a WFLC algorithm, were adapted for the noise reduction,especially with focus on the electrical noise and human physiological tremorfrom MEMS gyroscope signals with limited calculation capacity in real time.These signal processing algorithms were simulated, implemented, tested andevaluated with the application of a gyroscopic head-borne computer mouse, theMultiPos system, with limited calculation capacity in real time. The WFLC al-gorithm was demonstrated as the most suitable method to reduce the electricalnoise and tremor for the MultiPos system.

This contribution is covering research question RQ1 and is included in pa-per C and F.

5.3 Combination method to reduce differentsignal errors simultaneously

A novel combination method of Kalman filter, WFLC and TWD was developedto reduce drift, offset, and noise simultaneously from measured MEMS gyro-scope signals in the application of a gyroscopic head-borne computer mouse,with marginal need of the calculation capacity in real time. This method max-imally reduced the interferences during the static state and improved the staticstability of the gyroscopic head-borne mouse system.

This contribution is covering research question RQ1 and is included in pa-per F.

5.4 Position accuracy improvements for a MEMSaccelerometer-based system

Signal processing algorithms/methods were developed for the reduction of driftof MEMS accelerometers. Two simple novel developed algorithms, the TWDmethod and the velocity drift estimation method, were designed to reduce thedrift from the process of integration from acceleration and finally improved the

58

Page 60: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 5. Scientific contributions 35

position accuracy with MEMS accelerometers. By using the TWD method andthe velocity estimation method together with the Trapezoidal method and thelow-pass filter, the integrated drift was reduced in 1 minute to about 20 metersfor the position measurements with MEMS accelerometers.

This contribution is covering research question RQ2 and is included in pa-per B.

5.5 Position accuracy improvement for a MEMSgyroscope-based system

A novel combination algorithm named KWT algorithm was developed to im-prove the performance of the MultiPos system with respect to noise, offset anddrift reduction simultaneously. By reducing the signal errors, the combinationalgorithm improved the position accuracy for a MEMS gyroscope-based sys-tem. The combination method was examined with both static state tests andmovement operation tests. Angular position was used to evaluate the errors.The results demonstrated that the combined method improved the head motionsignal substantially, with 100.0% error reduction during the static state, 98.2%position error correction in the case of movements without drift and 99.9% withdrift. It improved the static stability and position accuracy of the gyroscopichead-borne mouse system with limited calculation capacity in real time, andalso has the potential to be used in other gyroscopic sensor systems to improvethe accuracy of signals.

This contribution is covering research question RQ2 and is included in pa-per F.

5.6 Users’ perception of the delay of a MEMSgyroscopic head-borne computer mouse

Research on users’ perception of the delay due to the implemented signal pro-cessing algorithms in the small embedded sensor systems was investigated andpresented in Paper D and E.

Investigations of the tolerated time delay for signal processing filter im-plementation in small embedded sensor systems were performed. Withoutperceiving a delay when using different computer input devices like a wiredmouse, a wifi mouse and a MEMS sensor-based head-borne mouse, the delayvalue was tested by a communication retarder and analysed.

Chapter 5. Scientific contributions 35

position accuracy with MEMS accelerometers. By using the TWD method andthe velocity estimation method together with the Trapezoidal method and thelow-pass filter, the integrated drift was reduced in 1 minute to about 20 metersfor the position measurements with MEMS accelerometers.

This contribution is covering research question RQ2 and is included in pa-per B.

5.5 Position accuracy improvement for a MEMSgyroscope-based system

A novel combination algorithm named KWT algorithm was developed to im-prove the performance of the MultiPos system with respect to noise, offset anddrift reduction simultaneously. By reducing the signal errors, the combinationalgorithm improved the position accuracy for a MEMS gyroscope-based sys-tem. The combination method was examined with both static state tests andmovement operation tests. Angular position was used to evaluate the errors.The results demonstrated that the combined method improved the head motionsignal substantially, with 100.0% error reduction during the static state, 98.2%position error correction in the case of movements without drift and 99.9% withdrift. It improved the static stability and position accuracy of the gyroscopichead-borne mouse system with limited calculation capacity in real time, andalso has the potential to be used in other gyroscopic sensor systems to improvethe accuracy of signals.

This contribution is covering research question RQ2 and is included in pa-per F.

5.6 Users’ perception of the delay of a MEMSgyroscopic head-borne computer mouse

Research on users’ perception of the delay due to the implemented signal pro-cessing algorithms in the small embedded sensor systems was investigated andpresented in Paper D and E.

Investigations of the tolerated time delay for signal processing filter im-plementation in small embedded sensor systems were performed. Withoutperceiving a delay when using different computer input devices like a wiredmouse, a wifi mouse and a MEMS sensor-based head-borne mouse, the delayvalue was tested by a communication retarder and analysed.

59

Page 61: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

36 Chapter 5. Scientific contributions

In the first test, the research of a delay between 0 and 500 ms was investi-gated. With a common computer mouse, delays up to 150 ms were perceivedas acceptable, while delays over 300 ms were regarded as unacceptable anddelays between 150 ms and 300 ms were perceived by users as disturbing. Fur-thermore, in the second test, more thoroughly studies and tests were performedto investigate the interval below 100 ms delay and to consider the effect of us-ing three different USB input devices. A delay up to 50 ms was not perceivedas delay for most tested devices and users. The results provided a baseline onthe limit of acceptable delay for data processing in microprocessors, embeddedsystems or other similar applications.

This contribution is covering research question RQ3 and is included in pa-per D and E.

5.7 Systematic overview of signal error reductionfor MEMS gyroscope based human motionanalysis systems

Signal error reduction algorithms within the MEMS gyroscope-based humanmotion analysis system were investigated, compared and presented in a sys-tematic review. The systematic search was performed with the search en-gines/databases of the ACM Digital Library, IEEE Xplore, PubMed, and Sco-pus. Sixteen papers that focus on MEMS gyroscope-related signal processingand which were published in journals or conference proceedings in the past10 years were found and fully reviewed. Seventeen algorithms were catego-rized into four main groups: Kalman-filter-based algorithms, adaptive-basedalgorithms, simple filter algorithms, and compensation-based algorithms. Thealgorithms were analysed and presented along with their characteristics suchas advantages, disadvantages, and time limitations. A user guide to the mostsuitable signal processing algorithms within this area was presented.

This contribution is covering research question RQ1 and RQ2. It is in-cluded in paper G.

36 Chapter 5. Scientific contributions

In the first test, the research of a delay between 0 and 500 ms was investi-gated. With a common computer mouse, delays up to 150 ms were perceivedas acceptable, while delays over 300 ms were regarded as unacceptable anddelays between 150 ms and 300 ms were perceived by users as disturbing. Fur-thermore, in the second test, more thoroughly studies and tests were performedto investigate the interval below 100 ms delay and to consider the effect of us-ing three different USB input devices. A delay up to 50 ms was not perceivedas delay for most tested devices and users. The results provided a baseline onthe limit of acceptable delay for data processing in microprocessors, embeddedsystems or other similar applications.

This contribution is covering research question RQ3 and is included in pa-per D and E.

5.7 Systematic overview of signal error reductionfor MEMS gyroscope based human motionanalysis systems

Signal error reduction algorithms within the MEMS gyroscope-based humanmotion analysis system were investigated, compared and presented in a sys-tematic review. The systematic search was performed with the search en-gines/databases of the ACM Digital Library, IEEE Xplore, PubMed, and Sco-pus. Sixteen papers that focus on MEMS gyroscope-related signal processingand which were published in journals or conference proceedings in the past10 years were found and fully reviewed. Seventeen algorithms were catego-rized into four main groups: Kalman-filter-based algorithms, adaptive-basedalgorithms, simple filter algorithms, and compensation-based algorithms. Thealgorithms were analysed and presented along with their characteristics suchas advantages, disadvantages, and time limitations. A user guide to the mostsuitable signal processing algorithms within this area was presented.

This contribution is covering research question RQ1 and RQ2. It is in-cluded in paper G.

60

Page 62: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 6

Results and discussion

In this chapter, the results of this thesis are summarized and discussed in threemain aspects corresponding to the three research questions, which are signalerror reduction, improvement of position accuracy, and users’ perception ofthe delay.

6.1 Signal error reduction

A high-pass filter, a LMS algorithm, a Kalman filter were adapted and a KWTalgorithm was novelly developed for the drift compensation. The result waspresented based on two different input signals. One input signal was a station-ary signal with drift and the other input signal used was based on a movementsignal with drift. The obvious drift was obtained by large temperature changesfrom about -5 ◦C to 21 ◦C.

Figure 6.1 shows the results of the high-pass filtering, the LMS filtering, theKalman filtering and the KWT filtering of stationary drift signal. Figure 6.2shows the results of high-pass filtering, LMS filtering, Kalman filtering andKWT filtering of a drift signal with movement.

Figure 6.1 and Figure 6.2 show the signals without filtering (red curves)and with filtering (black curves). The drift was reduced by all four algorithmsand the movement signals were not visually affected by the filtering. The KWTalgorithm also reduced noise during the static states.

The movement signals were zoomed in. As shown in Figure 6.3, the move-ment was correctly detected while the drift was reduced.

37

Chapter 6

Results and discussion

In this chapter, the results of this thesis are summarized and discussed in threemain aspects corresponding to the three research questions, which are signalerror reduction, improvement of position accuracy, and users’ perception ofthe delay.

6.1 Signal error reduction

A high-pass filter, a LMS algorithm, a Kalman filter were adapted and a KWTalgorithm was novelly developed for the drift compensation. The result waspresented based on two different input signals. One input signal was a station-ary signal with drift and the other input signal used was based on a movementsignal with drift. The obvious drift was obtained by large temperature changesfrom about -5 ◦C to 21 ◦C.

Figure 6.1 shows the results of the high-pass filtering, the LMS filtering, theKalman filtering and the KWT filtering of stationary drift signal. Figure 6.2shows the results of high-pass filtering, LMS filtering, Kalman filtering andKWT filtering of a drift signal with movement.

Figure 6.1 and Figure 6.2 show the signals without filtering (red curves)and with filtering (black curves). The drift was reduced by all four algorithmsand the movement signals were not visually affected by the filtering. The KWTalgorithm also reduced noise during the static states.

The movement signals were zoomed in. As shown in Figure 6.3, the move-ment was correctly detected while the drift was reduced.

37

61

Page 63: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

38 Chapter 6. Results and discussion

Figure 6.1: Drift reduction without movement by the high-pass filter, the LMSalgorithm, the Kalman filter and the KWT algorithm, respectively.

Figure 6.2: Drift reduction with movement by the high-pass filter, the LMSalgorithm, the Kalman filter and the KWT algorithm, respectively.

38 Chapter 6. Results and discussion

Figure 6.1: Drift reduction without movement by the high-pass filter, the LMSalgorithm, the Kalman filter and the KWT algorithm, respectively.

Figure 6.2: Drift reduction with movement by the high-pass filter, the LMSalgorithm, the Kalman filter and the KWT algorithm, respectively.

62

Page 64: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 6. Results and discussion 39

Figure 6.3: Movement during the drift reduction by high-pass filter, LMS al-gorithm, Kalman filter and KWT algorithm respectively.

As shown in Figure 6.1, Figure 6.2 and Figure 6.3, the four algorithms, i.e.,the high-pass filter, the LMS algorithm, the Kalman filter, and the KWT algo-rithm, can all reduce the drift and have neglectable influence on the movementsignals. The high-pass filter can be easily implemented in a dsPIC. By selectionof a suitable cut-off frequency, it can reduce drift and offset effectively. How-ever, there is a slow adjustment at start-up and after the movement. The LMSalgorithm and the Kalman filter have similar performance for the reduction ofdrift/offset. The LMS algorithm needs to slightly adjust at start-up. There isno adjust for the Kalman filter. The comparisons showed that the Kalman fil-ter was the best algorithm for drift reduction. The KWT algorithm showed itsfeasibility to reduce drift and offset. It also showed a distinct noise reductionduring the static state.

The Low-pass filter, the LMS algorithm, the Kalman filter, the WFLC al-gorithm were adapted to reduce noise. A measured MEMS gyroscope signalwithout drift or offset was used to evaluate the algorithms. Figure 6.4 presentsthe noise reduction by by the four filter types mentioned above. Figure 6.5shows the comparison results of the first 14 seconds of a stationary signal.

Chapter 6. Results and discussion 39

Figure 6.3: Movement during the drift reduction by high-pass filter, LMS al-gorithm, Kalman filter and KWT algorithm respectively.

As shown in Figure 6.1, Figure 6.2 and Figure 6.3, the four algorithms, i.e.,the high-pass filter, the LMS algorithm, the Kalman filter, and the KWT algo-rithm, can all reduce the drift and have neglectable influence on the movementsignals. The high-pass filter can be easily implemented in a dsPIC. By selectionof a suitable cut-off frequency, it can reduce drift and offset effectively. How-ever, there is a slow adjustment at start-up and after the movement. The LMSalgorithm and the Kalman filter have similar performance for the reduction ofdrift/offset. The LMS algorithm needs to slightly adjust at start-up. There isno adjust for the Kalman filter. The comparisons showed that the Kalman fil-ter was the best algorithm for drift reduction. The KWT algorithm showed itsfeasibility to reduce drift and offset. It also showed a distinct noise reductionduring the static state.

The Low-pass filter, the LMS algorithm, the Kalman filter, the WFLC al-gorithm were adapted to reduce noise. A measured MEMS gyroscope signalwithout drift or offset was used to evaluate the algorithms. Figure 6.4 presentsthe noise reduction by by the four filter types mentioned above. Figure 6.5shows the comparison results of the first 14 seconds of a stationary signal.

63

Page 65: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

40 Chapter 6. Results and discussion

Figure 6.4: Noise reduction with movement by the low-pass filter, the LMSalgorithm, the Kalman filter, the WFLC algorithm and the KWT algorithm,respectively.

The low-pass filter can easily be implemented in a microprocessor. Theresult of noise reduction is acceptable, but not as good as the result of the LMSalgorithm, the Kalman filter or the WFLC algorithm. The LMS algorithm, theKalman filter and the WFLC algorithm all showed good performance duringthe whole test of the MultiPos system. When compared more in details (seePaper C), the WFLC algorithm showed a better performance on the reductionof physiological tremor and electrical noise. The KWT algorithm reduced thenoise maximally in the static state without interrupting the continuous move-ment signals.

An overview over how well different algorithms performed in signal errorreduction is presented in Table 6.1. The high-pass filter, the LMS algorithm,and the Kalman filter reduced drift and offset (as shown in Paper A). The low-pass filter, the LMS algorithm, the Kalman filter, and the WFLC algorithmreduced the noise (as shown in Paper C). The novel KWT algorithm reducedthe noise, the offset and the drift simultaneously (as shown in Paper F). Thesealgorithms were developed with limited calculation capacity in real time. Dueto the limitation of the small embedded sensor systems, some signal process-

40 Chapter 6. Results and discussion

Figure 6.4: Noise reduction with movement by the low-pass filter, the LMSalgorithm, the Kalman filter, the WFLC algorithm and the KWT algorithm,respectively.

The low-pass filter can easily be implemented in a microprocessor. Theresult of noise reduction is acceptable, but not as good as the result of the LMSalgorithm, the Kalman filter or the WFLC algorithm. The LMS algorithm, theKalman filter and the WFLC algorithm all showed good performance duringthe whole test of the MultiPos system. When compared more in details (seePaper C), the WFLC algorithm showed a better performance on the reductionof physiological tremor and electrical noise. The KWT algorithm reduced thenoise maximally in the static state without interrupting the continuous move-ment signals.

An overview over how well different algorithms performed in signal errorreduction is presented in Table 6.1. The high-pass filter, the LMS algorithm,and the Kalman filter reduced drift and offset (as shown in Paper A). The low-pass filter, the LMS algorithm, the Kalman filter, and the WFLC algorithmreduced the noise (as shown in Paper C). The novel KWT algorithm reducedthe noise, the offset and the drift simultaneously (as shown in Paper F). Thesealgorithms were developed with limited calculation capacity in real time. Dueto the limitation of the small embedded sensor systems, some signal process-

64

Page 66: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 6. Results and discussion 41

Figure 6.5: Noise reduction without movement by the low-pass filter, the LMSalgorithm, the Kalman filter, the WFLC algorithm and the KWT algorithm,respectively.

ing algorithms such as wavelet transform and Wiener filter were not includedin this study. Although some signal processing algorithms, e.g. an improvedwavelet threshold denoising method [46] and an Extended Kalman filter [45],were developed for the MEMS sensor signal improvement, they require morecalculations than the algorithms introduced in this thesis. The performancesof the implemented signal processing algorithms in this thesis were evaluatedconsidering the following parameters: the drift/offset reduction, the noise re-duction, the complexity of implementation, the delay and the root-mean-squareerror (RMSE). The performance for the drift/offset and noise reduction, i.e.’ok’, ’good’ or ’best’, is evaluated based on the RMSE, the delay time and thetest feedback from the users. The RMSE were calculated from the signals with-out movements. The implementation is classified as easy, middle and complex,where ‘easy’ means the code which was written in dsPIC in less than 20 rowsbased on mathematical algorithms, ‘middle’ means the code ranges from 20to 40 rows and ‘complex’ means the code in more than 40 rows. The delayis regarded as the filter processing delay due to the calculation time that the

Chapter 6. Results and discussion 41

Figure 6.5: Noise reduction without movement by the low-pass filter, the LMSalgorithm, the Kalman filter, the WFLC algorithm and the KWT algorithm,respectively.

ing algorithms such as wavelet transform and Wiener filter were not includedin this study. Although some signal processing algorithms, e.g. an improvedwavelet threshold denoising method [46] and an Extended Kalman filter [45],were developed for the MEMS sensor signal improvement, they require morecalculations than the algorithms introduced in this thesis. The performancesof the implemented signal processing algorithms in this thesis were evaluatedconsidering the following parameters: the drift/offset reduction, the noise re-duction, the complexity of implementation, the delay and the root-mean-squareerror (RMSE). The performance for the drift/offset and noise reduction, i.e.’ok’, ’good’ or ’best’, is evaluated based on the RMSE, the delay time and thetest feedback from the users. The RMSE were calculated from the signals with-out movements. The implementation is classified as easy, middle and complex,where ‘easy’ means the code which was written in dsPIC in less than 20 rowsbased on mathematical algorithms, ‘middle’ means the code ranges from 20to 40 rows and ‘complex’ means the code in more than 40 rows. The delayis regarded as the filter processing delay due to the calculation time that the

65

Page 67: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

42 Chapter 6. Results and discussion

algorithms need. It is a key factor to evaluate the algorithms in real time. User-perceived delay should be avoided by the systems at hand. Compared with theUSB polling rate from 100 Hz to 1000 Hz and the corresponding maximal de-lay of 10 ms and minimal delay of 1 ms [69], and the user-unnoticeable delayof 150 ms on human-computer interactions [51], the investigation of the users’perception of delay demonstrated that the delays up to 150 ms were acceptablefor a common computer mouse (paper D) and the delays up to 50 ms were ac-ceptable for most tested devices including head-borne computer mouse (PaperE). The maximal delay of 2 ms is acceptable by both the system and the users.As shown in Table 6.1, the Kalman filter was regarded as the best for drift re-duction and the WFLC algorithm as the best for noise reduction. The KWTalgorithm was superior to both the Kalman and the WFLC algorithms. Withthe TWD algorithm, 100% noise reduction during the static state was achieved.

Table 6.1: Performance overview of the algorithms for signal error reduction.

Parameters HPF LPF LMS KF WFLC KWT

Drift/offset Ok - Good Best - BestreductionRMSE 4.291 - 3.90 3.81 - 0

Noise reduction - Ok Good Good Best Best(movement)Noise reduction - Ok Good Good Good Best(static state)RMSE - 0.075 0.049 0.044 0.042 0

Implementation Easy Easy Middle Complex Complex ComplexDelay (3-axises) 0.2 ms 0.2 ms 0.5 ms 1.0 ms 0.8 ms 2.0 ms

6.2 Improvement of position accuracy

This section addresses the second research question (RQ2) on how to improvethe position accuracy by MEMS accelerometers and MEMS gyroscopes. Inthis thesis, there are two novel methods introduced to improve the positionaccuracy. One is the composition of low-pass filter, TWD method and velocity

42 Chapter 6. Results and discussion

algorithms need. It is a key factor to evaluate the algorithms in real time. User-perceived delay should be avoided by the systems at hand. Compared with theUSB polling rate from 100 Hz to 1000 Hz and the corresponding maximal de-lay of 10 ms and minimal delay of 1 ms [69], and the user-unnoticeable delayof 150 ms on human-computer interactions [51], the investigation of the users’perception of delay demonstrated that the delays up to 150 ms were acceptablefor a common computer mouse (paper D) and the delays up to 50 ms were ac-ceptable for most tested devices including head-borne computer mouse (PaperE). The maximal delay of 2 ms is acceptable by both the system and the users.As shown in Table 6.1, the Kalman filter was regarded as the best for drift re-duction and the WFLC algorithm as the best for noise reduction. The KWTalgorithm was superior to both the Kalman and the WFLC algorithms. Withthe TWD algorithm, 100% noise reduction during the static state was achieved.

Table 6.1: Performance overview of the algorithms for signal error reduction.

Parameters HPF LPF LMS KF WFLC KWT

Drift/offset Ok - Good Best - BestreductionRMSE 4.291 - 3.90 3.81 - 0

Noise reduction - Ok Good Good Best Best(movement)Noise reduction - Ok Good Good Good Best(static state)RMSE - 0.075 0.049 0.044 0.042 0

Implementation Easy Easy Middle Complex Complex ComplexDelay (3-axises) 0.2 ms 0.2 ms 0.5 ms 1.0 ms 0.8 ms 2.0 ms

6.2 Improvement of position accuracy

This section addresses the second research question (RQ2) on how to improvethe position accuracy by MEMS accelerometers and MEMS gyroscopes. Inthis thesis, there are two novel methods introduced to improve the positionaccuracy. One is the composition of low-pass filter, TWD method and velocity

66

Page 68: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 6. Results and discussion 43

trend estimation method for MEMS accelerometers (Paper B). The other isthe KWT algorithm for MEMS gyroscopes (Paper D). Both the methods haveshown to reduce the error from the digital integration.

6.2.1 MEMS accelerometers

The composition of the low-pass filter, the TWD method and the velocity trendestimation method was designed to reduce the integration error during the po-sition measurement with MEMS accelerometers. As shown in Figure 6.6, thegreen curve is the measured acceleration signal after unit conversion and offsetreduction. The measurement was done with several up-and-down movementsby a test rig for MEMS accelerometers [70]. The MEMS accelerometer wasmoved by the test rig from one point to 1 meter up and then back. The move-ment was repeated 9 times. The red curve is the calculated position withoutfiltering and the black curve is the result with filtering. The algorithm reducedthe integration drift of MEMS accelerometers in one minute by about 20 me-ters. About 99.8% error reduction was achieved.

Figure 6.6: Improvement of position accuracy by the combination of the low-pass filter, the TWD method and the velocity trend estimation method. Thegreen curve is the measured MEMS accelerometer signal [m/s2]; the red curveis the position [m] without filtering; the black curve is the position [m] withfiltering.

Chapter 6. Results and discussion 43

trend estimation method for MEMS accelerometers (Paper B). The other isthe KWT algorithm for MEMS gyroscopes (Paper D). Both the methods haveshown to reduce the error from the digital integration.

6.2.1 MEMS accelerometers

The composition of the low-pass filter, the TWD method and the velocity trendestimation method was designed to reduce the integration error during the po-sition measurement with MEMS accelerometers. As shown in Figure 6.6, thegreen curve is the measured acceleration signal after unit conversion and offsetreduction. The measurement was done with several up-and-down movementsby a test rig for MEMS accelerometers [70]. The MEMS accelerometer wasmoved by the test rig from one point to 1 meter up and then back. The move-ment was repeated 9 times. The red curve is the calculated position withoutfiltering and the black curve is the result with filtering. The algorithm reducedthe integration drift of MEMS accelerometers in one minute by about 20 me-ters. About 99.8% error reduction was achieved.

Figure 6.6: Improvement of position accuracy by the combination of the low-pass filter, the TWD method and the velocity trend estimation method. Thegreen curve is the measured MEMS accelerometer signal [m/s2]; the red curveis the position [m] without filtering; the black curve is the position [m] withfiltering.

67

Page 69: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

44 Chapter 6. Results and discussion

Figure 6.7: Angle calculated from MEMS gyroscope signals without drift. Thegreen curve is the measured MEMS gyroscope signal [◦/s]; the red curve is theangle [◦] without filtering; the black curve is the angle [◦] with filtering.

Figure 6.8: Angle calculated from MEMS gyroscope signals with drift. Thegreen curve is the measured MEMS gyroscope signal [◦/s]; the red curve is theangle [◦] without filtering; the black curve is the angle [◦] with filtering.

44 Chapter 6. Results and discussion

Figure 6.7: Angle calculated from MEMS gyroscope signals without drift. Thegreen curve is the measured MEMS gyroscope signal [◦/s]; the red curve is theangle [◦] without filtering; the black curve is the angle [◦] with filtering.

Figure 6.8: Angle calculated from MEMS gyroscope signals with drift. Thegreen curve is the measured MEMS gyroscope signal [◦/s]; the red curve is theangle [◦] without filtering; the black curve is the angle [◦] with filtering.

68

Page 70: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 6. Results and discussion 45

6.2.2 MEMS gyroscopesThe KWT algorithm was developed to improve the position accuracy byMEMS gyroscopes. As shown in Figure 6.7 and Figure 6.8, the green curveis the measured MEMS gyroscope signal. The measurement was done by pre-defined movements of the test rig for the MEMS gyroscope [40] in a slow mode(up to 15◦/s). The test was performed from a fixed point to 90◦ and from thatpoint back to the starting point. Totally four continuous cycles were performedfrom a stationary state and then back to a stationary state.

As shown in Figure 6.7, the KWT algorithm reduced the integration drift ofthe MEMS gyroscope signal without drift in one minute by about 25 degrees.98.2% error reduction was achieved.

As shown in Figure 6.8, the KWT algorithm reduced the integration driftof the MEMS gyroscope signal with drift in one minute by about 2500 degrees.In this case, 99.9% error reduction was achieved.

The TWD filter is a newly proposed simple method for signal improve-ment, used and evaluated in an application together with the MultiPos system.Compared with the original threshold method, the TWD method results in asmoother continuous signal during the noise reduction. However, with theTWD method alone, the noise cannot be reduced during the movement. Sothe TWD method is suitable for reducing a small drift and gives a more stablesignal during the stationary state. Combining the three algorithms of Kalmanfilter, WFLC and TWD, the drift, offset and noise can be reduced simultane-ously, and improve the position accuracy maximally for the stationary statewithout interrupting the continuous movement signals.

6.3 Users’ perception of the delayPerceiving a delay in a computer input device is very frustrating and regardedas a large problem. As a start, the perception of a delay from 0 ms up to 500ms was investigated with a common computer mouse as a computer input de-vice. The result showed that a perceived delay up to 150 ms was acceptableand that a delay larger than 300 ms were not acceptable at all. Related researchabout thresholds of detection of changes in a graphical user interface has beenpresented by others by using adaptive tracking, an unnoticeable delay of ap-proximately 150 ms for keyboard interactions and up to 195 ms for mouse in-teractions were found [51]. A delay of around 150 ms can be regarded as a timedelay limit for common computer input device. Further, various computer in-put devices based on small embedded sensors was tested in this thesis; a MEMS

Chapter 6. Results and discussion 45

6.2.2 MEMS gyroscopesThe KWT algorithm was developed to improve the position accuracy byMEMS gyroscopes. As shown in Figure 6.7 and Figure 6.8, the green curveis the measured MEMS gyroscope signal. The measurement was done by pre-defined movements of the test rig for the MEMS gyroscope [40] in a slow mode(up to 15◦/s). The test was performed from a fixed point to 90◦ and from thatpoint back to the starting point. Totally four continuous cycles were performedfrom a stationary state and then back to a stationary state.

As shown in Figure 6.7, the KWT algorithm reduced the integration drift ofthe MEMS gyroscope signal without drift in one minute by about 25 degrees.98.2% error reduction was achieved.

As shown in Figure 6.8, the KWT algorithm reduced the integration driftof the MEMS gyroscope signal with drift in one minute by about 2500 degrees.In this case, 99.9% error reduction was achieved.

The TWD filter is a newly proposed simple method for signal improve-ment, used and evaluated in an application together with the MultiPos system.Compared with the original threshold method, the TWD method results in asmoother continuous signal during the noise reduction. However, with theTWD method alone, the noise cannot be reduced during the movement. Sothe TWD method is suitable for reducing a small drift and gives a more stablesignal during the stationary state. Combining the three algorithms of Kalmanfilter, WFLC and TWD, the drift, offset and noise can be reduced simultane-ously, and improve the position accuracy maximally for the stationary statewithout interrupting the continuous movement signals.

6.3 Users’ perception of the delayPerceiving a delay in a computer input device is very frustrating and regardedas a large problem. As a start, the perception of a delay from 0 ms up to 500ms was investigated with a common computer mouse as a computer input de-vice. The result showed that a perceived delay up to 150 ms was acceptableand that a delay larger than 300 ms were not acceptable at all. Related researchabout thresholds of detection of changes in a graphical user interface has beenpresented by others by using adaptive tracking, an unnoticeable delay of ap-proximately 150 ms for keyboard interactions and up to 195 ms for mouse in-teractions were found [51]. A delay of around 150 ms can be regarded as a timedelay limit for common computer input device. Further, various computer in-put devices based on small embedded sensors was tested in this thesis; a MEMS

69

Page 71: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

46 Chapter 6. Results and discussion

gyroscopic computer head mouse was also tested. The user tests showed thatdelays up to 50 ms could be tolerated and are not perceived as delay, or de-pending on the used device still perceived as acceptable. This value provideda threshold value that regarded as a time limit allowed for signal processingalgorithms to be performed in embedded systems, especially body-worn sen-sor systems such as a head-mounted computer mouse. The users’ perception isaffected by the sensitivity of a device, the users’ previous experiences and whatusers are used to. These individual differences among users could for examplebe seen with a simple, less sensitive Wifi mouse, as users rated their experiencewith lower scores. When using an unconventional technology as a MEMS gy-roscope based head-mounted computer mouse, the users needed more time toclick on the appearing images and a larger delay was accepted. In general, itwas found that a delay of 50 ms or less can be accepted by the users.

46 Chapter 6. Results and discussion

gyroscopic computer head mouse was also tested. The user tests showed thatdelays up to 50 ms could be tolerated and are not perceived as delay, or de-pending on the used device still perceived as acceptable. This value provideda threshold value that regarded as a time limit allowed for signal processingalgorithms to be performed in embedded systems, especially body-worn sen-sor systems such as a head-mounted computer mouse. The users’ perception isaffected by the sensitivity of a device, the users’ previous experiences and whatusers are used to. These individual differences among users could for examplebe seen with a simple, less sensitive Wifi mouse, as users rated their experiencewith lower scores. When using an unconventional technology as a MEMS gy-roscope based head-mounted computer mouse, the users needed more time toclick on the appearing images and a larger delay was accepted. In general, itwas found that a delay of 50 ms or less can be accepted by the users.

70

Page 72: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 7

Conclusion and future work

7.1 ConclusionThis doctoral thesis focuses on the development of real-time signal processingalgorithms with short execution time for signal errors reduction and positionaccuracy improvement of MEMS sensor-based motion analysis systems, con-sidering both hardware limitation and users’ perception of the delay.

To reduce the signal errors and improve position accuracy (addressing RQ1and RQ2), different signal processing algorithms were investigated, adapted,developed and improved for MEMS sensor signal error reductions and positionaccuracy improvements. In addition, a systematic review of different signalerror reduction algorithms used for MEMS gyroscope-based motion analysissystems for human motion analysis was performed.

Some existing algorithms have been simplified and adapted with low com-putational power for implementation in small MEMS sensor-based motionanalysis systems. Basic methods such as high-pass filter and low-pass filter,advanced algorithms such as LMS algorithm, Kalman filter, and WFLC algo-rithms, have been proven to reduce MEMS sensor signal errors, i.e., noise,offset and drift. Comparison studies showed that the most effective method toreduce temperature drift and noise, including human physiological tremor andelectrical noise, were the Kalman filter and the WFLC algorithm, respectively.

Several novel algorithms have also been developed. The TWD method andthe velocity estimation method were designed to reduce the accumulated calcu-lation error during the digital integration process. The TWD method resultedin a signal level around zero without interrupting the continuous movement

47

Chapter 7

Conclusion and future work

7.1 ConclusionThis doctoral thesis focuses on the development of real-time signal processingalgorithms with short execution time for signal errors reduction and positionaccuracy improvement of MEMS sensor-based motion analysis systems, con-sidering both hardware limitation and users’ perception of the delay.

To reduce the signal errors and improve position accuracy (addressing RQ1and RQ2), different signal processing algorithms were investigated, adapted,developed and improved for MEMS sensor signal error reductions and positionaccuracy improvements. In addition, a systematic review of different signalerror reduction algorithms used for MEMS gyroscope-based motion analysissystems for human motion analysis was performed.

Some existing algorithms have been simplified and adapted with low com-putational power for implementation in small MEMS sensor-based motionanalysis systems. Basic methods such as high-pass filter and low-pass filter,advanced algorithms such as LMS algorithm, Kalman filter, and WFLC algo-rithms, have been proven to reduce MEMS sensor signal errors, i.e., noise,offset and drift. Comparison studies showed that the most effective method toreduce temperature drift and noise, including human physiological tremor andelectrical noise, were the Kalman filter and the WFLC algorithm, respectively.

Several novel algorithms have also been developed. The TWD method andthe velocity estimation method were designed to reduce the accumulated calcu-lation error during the digital integration process. The TWD method resultedin a signal level around zero without interrupting the continuous movement

47

71

Page 73: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

48 Chapter 7. Conclusion and future work

signal. Together with the low-pass filter and the Trapezoidal method, the twomethods improved the result of position measurement with MEMS accelerom-eters greatly. The reduction of the integration drift was about 20 meters in oneminute. The novel combination algorithm KWT was designed with the aimto reduce noise, offset and drift simultaneously. It improved the static stabil-ity and position accuracy of a MEMS gyroscope-based system substantially;100% error reduction during the static state, 98.2% position error correction inthe case of movements without drift, and 99% with drift were achieved.

The computational time for the execution of these algorithms was at most2.1 ms, which was much below the specified time limit for real-time perfor-mance as perceived as acceptable by all users. Implementations and experi-ments showed that these algorithms are feasible for establishing high signalquality and good system performance in two previously developed systems.The algorithms also are likely to be useful in similar systems.

To investigate which delay caused by the signal processing that can be ac-ceptable by a human when using the system as a computer input device (ad-dressing RQ3), the users’ perceptions of the delay when using different com-puter input devices was investigated. Up to 50 ms delay was found as accept-able by the users. This means that an execution time of the signal processingalgorithms below 50 ms is acceptable in a real-time motion analysis system.The limit of acceptable delay could be a time limit for signal processing imple-mentations in embedded systems or other similar applications.

7.2 Future work

Based on the results presented in this doctoral thesis, further interesting workwould be, e.g., to develop more algorithms for signal improvement and moreadvanced motion analysis, to adapt the existing algorithms to other applicationareas, and to implement the developed algorithms into other motion analysissystems.

To continue the development of algorithms fulfilling the requirement real-time efficient execution, first investigations on simplification of some alreadyexisting and promising algorithms would be of large interest. For example,Cascaded Integrator-Comb (CIC) filter and Ensemble Empirical Mode Decom-position (EEMD) would be likely candidates to start with, since they have beenshown to have efficient performance [71].

Furthermore, novel algorithms, containing combinations of already exist-ing algorithms are foreseen to be useful. Comparison of different algorithms

48 Chapter 7. Conclusion and future work

signal. Together with the low-pass filter and the Trapezoidal method, the twomethods improved the result of position measurement with MEMS accelerom-eters greatly. The reduction of the integration drift was about 20 meters in oneminute. The novel combination algorithm KWT was designed with the aimto reduce noise, offset and drift simultaneously. It improved the static stabil-ity and position accuracy of a MEMS gyroscope-based system substantially;100% error reduction during the static state, 98.2% position error correction inthe case of movements without drift, and 99% with drift were achieved.

The computational time for the execution of these algorithms was at most2.1 ms, which was much below the specified time limit for real-time perfor-mance as perceived as acceptable by all users. Implementations and experi-ments showed that these algorithms are feasible for establishing high signalquality and good system performance in two previously developed systems.The algorithms also are likely to be useful in similar systems.

To investigate which delay caused by the signal processing that can be ac-ceptable by a human when using the system as a computer input device (ad-dressing RQ3), the users’ perceptions of the delay when using different com-puter input devices was investigated. Up to 50 ms delay was found as accept-able by the users. This means that an execution time of the signal processingalgorithms below 50 ms is acceptable in a real-time motion analysis system.The limit of acceptable delay could be a time limit for signal processing imple-mentations in embedded systems or other similar applications.

7.2 Future work

Based on the results presented in this doctoral thesis, further interesting workwould be, e.g., to develop more algorithms for signal improvement and moreadvanced motion analysis, to adapt the existing algorithms to other applicationareas, and to implement the developed algorithms into other motion analysissystems.

To continue the development of algorithms fulfilling the requirement real-time efficient execution, first investigations on simplification of some alreadyexisting and promising algorithms would be of large interest. For example,Cascaded Integrator-Comb (CIC) filter and Ensemble Empirical Mode Decom-position (EEMD) would be likely candidates to start with, since they have beenshown to have efficient performance [71].

Furthermore, novel algorithms, containing combinations of already exist-ing algorithms are foreseen to be useful. Comparison of different algorithms

72

Page 74: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Chapter 7. Conclusion and future work 49

can be performed from different aspects, e.g., algorithms for noise reduction,tremor reduction, drift/offset estimation, position accuracy improvement, etc.

Another track is to develop learning algorithms for a better motion analy-sis within embedded motion analysis systems, e.g. with the aim of training orrehabilitation. Through that, the movement pattern and position could be anal-ysed. These algorithms are likely to be based on feature extraction algorithms.

The algorithms developed within this thesis could also be applied and testedwith other MEMS sensor-based motion analysis systems or existing motioncapture systems, than those used in this thesis.

Chapter 7. Conclusion and future work 49

can be performed from different aspects, e.g., algorithms for noise reduction,tremor reduction, drift/offset estimation, position accuracy improvement, etc.

Another track is to develop learning algorithms for a better motion analy-sis within embedded motion analysis systems, e.g. with the aim of training orrehabilitation. Through that, the movement pattern and position could be anal-ysed. These algorithms are likely to be based on feature extraction algorithms.

The algorithms developed within this thesis could also be applied and testedwith other MEMS sensor-based motion analysis systems or existing motioncapture systems, than those used in this thesis.

73

Page 75: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

74

Page 76: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Bibliography

[1] H. Zeng and Y. Zhao. Sensing movement: Microsensors for body motionmeasurement. Sensors, 11:638–660, 2011.

[2] J. Shiau, C. Huang, and M. Chang. Noise characteristics of mems gyro’snull drift and temperature compensation. Journal of Applied Science andEngineering, 15(3):239–246, 2012.

[3] V. Kempe. Inertial MEMS-Principle and Practice. Cambridge UniversityPress, 2011.

[4] S. M. Kuo, B. H. Lee, and W. Tian. Real-Time Digital Signal Processing:Implementations and Applications. Willy, 2006.

[5] University of Victoria. Microelectromechanical systems (mems), 2015.http://www.engr.uvic.ca/∼mech466/MECH466-Lecture-1.pdf (last ac-cessed: January 21, 2019).

[6] K. Maenaka. Mems inertial sensors and their applications. In NetworkSensing Systems, pages 71–73. IEEE, 2008.

[7] R. Stojanovic, S. Kneževic, D. Karadagli, and G. Devedžic. Optimiza-tion and implementation of the wavelet based algorithms for embeddedbiomedical signal processing. Computer Science and Information Sys-tems, 10(1):502–523, 2013.

[8] J. K. Aggarwal and Q. Cai. Human motion analysis: A review. ComputerVision and Image Understanding, 73(3):428–440, 1999.

[9] D. M. Gavrila. The visual analysis of human movement: A survey. Com-puter Vision and Image Understanding, 73(1):82–98, 1999.

51

Bibliography

[1] H. Zeng and Y. Zhao. Sensing movement: Microsensors for body motionmeasurement. Sensors, 11:638–660, 2011.

[2] J. Shiau, C. Huang, and M. Chang. Noise characteristics of mems gyro’snull drift and temperature compensation. Journal of Applied Science andEngineering, 15(3):239–246, 2012.

[3] V. Kempe. Inertial MEMS-Principle and Practice. Cambridge UniversityPress, 2011.

[4] S. M. Kuo, B. H. Lee, and W. Tian. Real-Time Digital Signal Processing:Implementations and Applications. Willy, 2006.

[5] University of Victoria. Microelectromechanical systems (mems), 2015.http://www.engr.uvic.ca/∼mech466/MECH466-Lecture-1.pdf (last ac-cessed: January 21, 2019).

[6] K. Maenaka. Mems inertial sensors and their applications. In NetworkSensing Systems, pages 71–73. IEEE, 2008.

[7] R. Stojanovic, S. Kneževic, D. Karadagli, and G. Devedžic. Optimiza-tion and implementation of the wavelet based algorithms for embeddedbiomedical signal processing. Computer Science and Information Sys-tems, 10(1):502–523, 2013.

[8] J. K. Aggarwal and Q. Cai. Human motion analysis: A review. ComputerVision and Image Understanding, 73(3):428–440, 1999.

[9] D. M. Gavrila. The visual analysis of human movement: A survey. Com-puter Vision and Image Understanding, 73(1):82–98, 1999.

51

75

Page 77: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

52 Bibliography

[10] University of Wisconsin-La Crosse Physical Therapy (DPT). 3-d camerabased motion analysis system. http://www.uwlax.edu/Physical-Therapy-DPT/Learn-more-about-3-D-Camera-Based-Motion-Analysis-System/(last accessed: January 21, 2019).

[11] J. T. Weinhandl, B. S. R. Armstrong, T. P. Kusik, R. T. Barrows, andK. M. O’Connor. Validation of a single camera three-dimensional motiontracking system. Journal of Biomechanics, 43(7):1437–1440, 2010.

[12] X. Chen. Human motion analysis with wearable inertial sensors (doctoralthesis). Technical report, University of Tennessee, Knoxville, 2013.

[13] M. Lindén and M. Björkman. Center for embedded sensor system forhealth - ess-h. Transactions of Japanese Society for Medical and Biolog-ical Engineering, 51(Supplement):R–65, 2013.

[14] A. Pantelopoulos and N. G. Bourbakis. A survey on wearable sensor-based systems for health monitoring and prognosis. IEEE TRANSAC-TIONS ON SYSTEMS, MAN, AND CYBERNETICS, 40(1):1–12, 2010.

[15] Southwest Center for Microsystems Education. Mems applicationsoverview, 2011. http://scme-nm.org/files/MEMS_Applications.pdf (lastaccessed: January 21, 2019).

[16] N. Yazdi, F. Ayazi, and K. Najafi. Micromechined inertial sensors. Proc.IEEE, 86:1640–1659, 1998.

[17] L. Dong and D. Avanesian. Drive-mode control for vibrational memsgyroscopes. IEEE transactions on industrial electronics, 56(4):956–963,2009.

[18] A. M. Fitagerald. A practical guide to mems inertial sensors. In 28thInternational Technical Meeting of The Satellite Division of the Instituteof Navigation, pages 137–159, 2015.

[19] J. Favre, R. Aissaoui, B. M. Jolles, O. Siegrist, J. A. de Guise, andK. Aminian. 3d joint rotation measurement using mems inertial sensors:Application to the knee joint. In International Society of Biomechanics(ISB) Technical Group on the 3-D Analysis of Human Movement, pages28–30, 2006.

52 Bibliography

[10] University of Wisconsin-La Crosse Physical Therapy (DPT). 3-d camerabased motion analysis system. http://www.uwlax.edu/Physical-Therapy-DPT/Learn-more-about-3-D-Camera-Based-Motion-Analysis-System/(last accessed: January 21, 2019).

[11] J. T. Weinhandl, B. S. R. Armstrong, T. P. Kusik, R. T. Barrows, andK. M. O’Connor. Validation of a single camera three-dimensional motiontracking system. Journal of Biomechanics, 43(7):1437–1440, 2010.

[12] X. Chen. Human motion analysis with wearable inertial sensors (doctoralthesis). Technical report, University of Tennessee, Knoxville, 2013.

[13] M. Lindén and M. Björkman. Center for embedded sensor system forhealth - ess-h. Transactions of Japanese Society for Medical and Biolog-ical Engineering, 51(Supplement):R–65, 2013.

[14] A. Pantelopoulos and N. G. Bourbakis. A survey on wearable sensor-based systems for health monitoring and prognosis. IEEE TRANSAC-TIONS ON SYSTEMS, MAN, AND CYBERNETICS, 40(1):1–12, 2010.

[15] Southwest Center for Microsystems Education. Mems applicationsoverview, 2011. http://scme-nm.org/files/MEMS_Applications.pdf (lastaccessed: January 21, 2019).

[16] N. Yazdi, F. Ayazi, and K. Najafi. Micromechined inertial sensors. Proc.IEEE, 86:1640–1659, 1998.

[17] L. Dong and D. Avanesian. Drive-mode control for vibrational memsgyroscopes. IEEE transactions on industrial electronics, 56(4):956–963,2009.

[18] A. M. Fitagerald. A practical guide to mems inertial sensors. In 28thInternational Technical Meeting of The Satellite Division of the Instituteof Navigation, pages 137–159, 2015.

[19] J. Favre, R. Aissaoui, B. M. Jolles, O. Siegrist, J. A. de Guise, andK. Aminian. 3d joint rotation measurement using mems inertial sensors:Application to the knee joint. In International Society of Biomechanics(ISB) Technical Group on the 3-D Analysis of Human Movement, pages28–30, 2006.

76

Page 78: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Bibliography 53

[20] J. Favre, B. M. Jolles, R. Aissaoui, and K. Aminian. Ambulatory mea-surement of 3d knee joint angle. Journal of Biomechanics, 41(5):1029–1035, 2008.

[21] G. Cooper, I. Sheret, L. McMillian, K. Siliverdis, N. Sha, D. Hodgins,L. Kenney, and D. Howard. nertial sensor-based knee flexion/extensionangle estimation. Journal of Biomechanics, 42(16):2678–2685, 2009.

[22] H. Saito, T. Watanabe, A. Arifin, O. Dössel, and W. C. Schlegel. An-kle and knee joint angle measurements during gait with wearable sensorsystem for rehabilitation. In World Congress on Medical Physics andBiomedical Engineering, pages 506–509, 2009.

[23] R. Takeda, S. Tadano, M. Todoh, M. Morikawa, M. Nakayasu, andS. Yoshinari. Gait analysis using gravitational acceleration measured bywearable sensors. Journal of Biomechanics, 42(3):223–233, 2009.

[24] E. P. Doheny, T. G. Foran, and B. R. Greene. A single gyroscope methodfor spatial gait analysis. In Engineering in Medicine and Biology Society(EMBC), pages 1300–1303. IEEE, 2010.

[25] K. Liu, T. Liu, K. Shibata, and Y. Inoue. Ambulatory measurement andanalysis of the lower limb 3d posture using wearable sensor system. InIEEE International Conference on Mechatronics and Automation, pages3065–3069, 2009.

[26] H. Dejnabadi, B. M. Jolles, E. Casanova, P. Fua, and K. Aminian. Esti-mation and visualization of sagittal kinematics of lower limbs orientationusing body-fixed sensors. IEEE transactions on Biomedical Engineering,53(7):1385–1393, 2006.

[27] J. H. Bergmann, R. E. Mayagoitia, and I. C. Smith. A portable system forcollecting anatomical joint angles during stair ascent: a comparison withan optical tracking device. Dynamic medicine, 8(3), 2009.

[28] R. Xu, S. Zhou, and W. J. Li. Mems accelerometer based nonspecific-userhand gesture recognition. IEEE Sensor Journal, 12(5):1166–1173, 2012.

[29] A. A. Linsie and J. Mangaiyarkarasi. Hand gesture recognition usingmems for specially challenged people. International Journal of VLSI andEmbedded Systems-IJVES, 4(2):238–241, 2013.

Bibliography 53

[20] J. Favre, B. M. Jolles, R. Aissaoui, and K. Aminian. Ambulatory mea-surement of 3d knee joint angle. Journal of Biomechanics, 41(5):1029–1035, 2008.

[21] G. Cooper, I. Sheret, L. McMillian, K. Siliverdis, N. Sha, D. Hodgins,L. Kenney, and D. Howard. nertial sensor-based knee flexion/extensionangle estimation. Journal of Biomechanics, 42(16):2678–2685, 2009.

[22] H. Saito, T. Watanabe, A. Arifin, O. Dössel, and W. C. Schlegel. An-kle and knee joint angle measurements during gait with wearable sensorsystem for rehabilitation. In World Congress on Medical Physics andBiomedical Engineering, pages 506–509, 2009.

[23] R. Takeda, S. Tadano, M. Todoh, M. Morikawa, M. Nakayasu, andS. Yoshinari. Gait analysis using gravitational acceleration measured bywearable sensors. Journal of Biomechanics, 42(3):223–233, 2009.

[24] E. P. Doheny, T. G. Foran, and B. R. Greene. A single gyroscope methodfor spatial gait analysis. In Engineering in Medicine and Biology Society(EMBC), pages 1300–1303. IEEE, 2010.

[25] K. Liu, T. Liu, K. Shibata, and Y. Inoue. Ambulatory measurement andanalysis of the lower limb 3d posture using wearable sensor system. InIEEE International Conference on Mechatronics and Automation, pages3065–3069, 2009.

[26] H. Dejnabadi, B. M. Jolles, E. Casanova, P. Fua, and K. Aminian. Esti-mation and visualization of sagittal kinematics of lower limbs orientationusing body-fixed sensors. IEEE transactions on Biomedical Engineering,53(7):1385–1393, 2006.

[27] J. H. Bergmann, R. E. Mayagoitia, and I. C. Smith. A portable system forcollecting anatomical joint angles during stair ascent: a comparison withan optical tracking device. Dynamic medicine, 8(3), 2009.

[28] R. Xu, S. Zhou, and W. J. Li. Mems accelerometer based nonspecific-userhand gesture recognition. IEEE Sensor Journal, 12(5):1166–1173, 2012.

[29] A. A. Linsie and J. Mangaiyarkarasi. Hand gesture recognition usingmems for specially challenged people. International Journal of VLSI andEmbedded Systems-IJVES, 4(2):238–241, 2013.

77

Page 79: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

54 Bibliography

[30] Meenaakumari.M and M. Muthulakshmi. Mems accelerometer basedhand gesture recognition. International Journal of Advanced Research inComputer Engineering & Technology (IJARCET), 2(5):1886–1892, 2013.

[31] V. J. Shetty, M. Laxman, M. S. Magdum, S. B. Sidnal, and S. Paraddi.Head motion controlled wheel chair using mems. International AdvancedResearch Journal in Science, Engineering and Technology, 2(6):84–86,2015.

[32] Anbarasu V and T. Ravi. Head mounted input device using mems sen-sors. Indian Journal of Computer Science and Engineering (IJCSE),pages 1886–1892, 2012.

[33] C. Gerdtman, Y. Bäcklund, and M. Lindén. A gyro sensor based computermouse with a usb interface: A technical aid for motor-disabled people.Technology and disability, 24(2):117–127, 2012.

[34] D. E. Oarde, N. C. Libatique, G. L. Tangonan, D. M. Sotto, and A. T.Pacaldo. Digital motion analysis system for rehabilitation using wear-able sensors. In Humanoid, Nanotechnology, Information Technology,Communication and Control, Environment and Management (HNICEM),pages 1–7, 2014.

[35] C. Gerdtman, M. Folke, C. Bexander, A. Brodd, and M. Lindén. Portablesensor system for rehabilitation of wad patients. In Wearable Microand Nano Technologies for Personalized Health (pHealth), pages 65–68.IEEE, 2009.

[36] Motion Control i Västerås AB. Datasheet: Three-dimensional-gyro(tdg) sensor system, 2014. http://www.motioncontrol.se/images/tdg-material/Faktablad%20TDG.pdf (last accessed: January 21, 2019).

[37] J. Esfandyari, R. De Nuccio, and G. Xu. Introduction to mems gyro-scopes, 2010. http://electroiq.com/blog/2010/11/introduction-to-mems-gyroscopes/ (last accessed: January 21, 2019).

[38] S. Y. Yurish. Smart sensors for electrical and non-electrical, physicaland chemical variables: state-of-the-art. In Smart Sensors and MEMS:Proceedings fo the NATO Advanced Study Insiti, pages 1–50. Springer,2003.

54 Bibliography

[30] Meenaakumari.M and M. Muthulakshmi. Mems accelerometer basedhand gesture recognition. International Journal of Advanced Research inComputer Engineering & Technology (IJARCET), 2(5):1886–1892, 2013.

[31] V. J. Shetty, M. Laxman, M. S. Magdum, S. B. Sidnal, and S. Paraddi.Head motion controlled wheel chair using mems. International AdvancedResearch Journal in Science, Engineering and Technology, 2(6):84–86,2015.

[32] Anbarasu V and T. Ravi. Head mounted input device using mems sen-sors. Indian Journal of Computer Science and Engineering (IJCSE),pages 1886–1892, 2012.

[33] C. Gerdtman, Y. Bäcklund, and M. Lindén. A gyro sensor based computermouse with a usb interface: A technical aid for motor-disabled people.Technology and disability, 24(2):117–127, 2012.

[34] D. E. Oarde, N. C. Libatique, G. L. Tangonan, D. M. Sotto, and A. T.Pacaldo. Digital motion analysis system for rehabilitation using wear-able sensors. In Humanoid, Nanotechnology, Information Technology,Communication and Control, Environment and Management (HNICEM),pages 1–7, 2014.

[35] C. Gerdtman, M. Folke, C. Bexander, A. Brodd, and M. Lindén. Portablesensor system for rehabilitation of wad patients. In Wearable Microand Nano Technologies for Personalized Health (pHealth), pages 65–68.IEEE, 2009.

[36] Motion Control i Västerås AB. Datasheet: Three-dimensional-gyro(tdg) sensor system, 2014. http://www.motioncontrol.se/images/tdg-material/Faktablad%20TDG.pdf (last accessed: January 21, 2019).

[37] J. Esfandyari, R. De Nuccio, and G. Xu. Introduction to mems gyro-scopes, 2010. http://electroiq.com/blog/2010/11/introduction-to-mems-gyroscopes/ (last accessed: January 21, 2019).

[38] S. Y. Yurish. Smart sensors for electrical and non-electrical, physicaland chemical variables: state-of-the-art. In Smart Sensors and MEMS:Proceedings fo the NATO Advanced Study Insiti, pages 1–50. Springer,2003.

78

Page 80: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Bibliography 55

[39] R. Port. Digital signal processing overview, 2007. http://www.cs.in-diana.edu/∼port/teach/541/sig.proc.html (last accessed: January 21,2019).

[40] C. Gerdtman, Y. Bäcklund, and M. Lindén. Development of a test rigfor mems-based gyroscopic motion sensors in human applications. In15th Nordic-Baltic Conference on Biomedical Engineering and MedicalPhysics, pages 203–207. IFMBE, 2011.

[41] M. H. Hayes. Statistical Digital Signal Processing and Modeling. Wiley,1996.

[42] H. J. Lee and S. Jung. Gyro sensor drift compensation by kalman filter tocontrol a mobile inverted pendulum robot system. In Industrial Technol-ogy, pages 1–6. IEEE, 2009.

[43] J. A. Gallego, E. Rocon, J. O. Roa, J. C. Moreno, and J. L. Pons. Real-time estimation of pathological tremor parameters from gyroscope data.Sensors (Basel), 10(3):2129–2149, 2010.

[44] N. S. Naik and P. R. Rube. Physiological tremor estimation methods: Anoverview. International Journal of Innovative Science, Engineering &Technology (IJISET), 1(10):556–559, 2014.

[45] P. A. Stubberud and A. R. Stubberud. A signal processing technique forimproving the accuracy of mems inertial sensors. In 19th InternationalConference on Systems Engineering, pages 13–18. IEEE, 2008.

[46] Z. Li, Q. Fan, L. Chang, and X. Yang. Improved wavelet threshold denois-ing method for mems gyroscope. In 11th IEEE International Conferenceon Control & Automation (ICCA), pages 530–534. IEEE, 2014.

[47] C. N. Riviere and N. V. Thakor. Adaptive human-machine interface forpersons with tremor. In Engineering in Medicine and Biology Society,pages 1193–1194. IEEE, 1995.

[48] U. Tan, K. C. Veluvolu, W. T. Latt, C. Y. Shee, C. N. Riviere, and W. T.Ang. Estimating displacement of periodic motion with inertial sensors.IEEE Sensor Journal, 8(8):1385–1388, 2008.

[49] L. Z. Popovic, T. B. Sekara, and M. B. Popovic. Adaptive band-passfitler for tremor extraction from inertial sensor data. Computer methodsand programs in biomedicine, 99(3):298–305, 2010.

Bibliography 55

[39] R. Port. Digital signal processing overview, 2007. http://www.cs.in-diana.edu/∼port/teach/541/sig.proc.html (last accessed: January 21,2019).

[40] C. Gerdtman, Y. Bäcklund, and M. Lindén. Development of a test rigfor mems-based gyroscopic motion sensors in human applications. In15th Nordic-Baltic Conference on Biomedical Engineering and MedicalPhysics, pages 203–207. IFMBE, 2011.

[41] M. H. Hayes. Statistical Digital Signal Processing and Modeling. Wiley,1996.

[42] H. J. Lee and S. Jung. Gyro sensor drift compensation by kalman filter tocontrol a mobile inverted pendulum robot system. In Industrial Technol-ogy, pages 1–6. IEEE, 2009.

[43] J. A. Gallego, E. Rocon, J. O. Roa, J. C. Moreno, and J. L. Pons. Real-time estimation of pathological tremor parameters from gyroscope data.Sensors (Basel), 10(3):2129–2149, 2010.

[44] N. S. Naik and P. R. Rube. Physiological tremor estimation methods: Anoverview. International Journal of Innovative Science, Engineering &Technology (IJISET), 1(10):556–559, 2014.

[45] P. A. Stubberud and A. R. Stubberud. A signal processing technique forimproving the accuracy of mems inertial sensors. In 19th InternationalConference on Systems Engineering, pages 13–18. IEEE, 2008.

[46] Z. Li, Q. Fan, L. Chang, and X. Yang. Improved wavelet threshold denois-ing method for mems gyroscope. In 11th IEEE International Conferenceon Control & Automation (ICCA), pages 530–534. IEEE, 2014.

[47] C. N. Riviere and N. V. Thakor. Adaptive human-machine interface forpersons with tremor. In Engineering in Medicine and Biology Society,pages 1193–1194. IEEE, 1995.

[48] U. Tan, K. C. Veluvolu, W. T. Latt, C. Y. Shee, C. N. Riviere, and W. T.Ang. Estimating displacement of periodic motion with inertial sensors.IEEE Sensor Journal, 8(8):1385–1388, 2008.

[49] L. Z. Popovic, T. B. Sekara, and M. B. Popovic. Adaptive band-passfitler for tremor extraction from inertial sensor data. Computer methodsand programs in biomedicine, 99(3):298–305, 2010.

79

Page 81: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

56 Bibliography

[50] J. Carlson, R. Han, S. Lao, C. Narayan, and S. Sanghani. Rapid proto-typing of mobile input devices using wireless sensor nodes. In 5th IEEEWorkshop on Mobile Computing Systems and Applications, pages 21–29.IEEE, 2003.

[51] J. R. Dabrowski and E. V. Musson. Is 100 milliseconds too fast? InCHI’01 Extanded Abstracts on Human Factors in Computing Systems,pages 317–318, 2001.

[52] T. Kurita, S. Iai, and N. Kitawaki. Assessing the effects of transmis-sion delay - interaction of speech and video. In 14th International sym-posium: Human factors in telecommunications proceedings, pages 111–121, 1993.

[53] V. D. Bhamidipati and S. Kilari. Effect of delay/ delay variable on qoe invideo streaming (master thesis). Technical report, School of Computingat Blekinge Institute of Technology, 2010.

[54] T. Miyasato, H. Noma, and H. Kishino. Subjective evaluation of percep-tion of delay time between visual information and tactile information. IE-ICE TRANSACTIONS on Fundamentals of Electronics, Communicationsand Computer Sciences, 79(5):655–657, 1996.

[55] M. Rank, Z. Shi, H. J. Müller, and S. Hirche. Perception of delay in haptictelepresence systems. Presence, 19(5):389–399, 2010.

[56] J. R. Dabrowski and E. V. Musson. Absolute thresholds of perveption forchanges in a graphical user interface. In 9th International Conference onHuman-Computer Interaction, pages 292–296, 2001.

[57] InvenSense Inc. Datasheet integrated dual-axis gyro (idg-300), 2006.https://www.sparkfun.com/datasheets/Components/IDG-300_Datashee-t.pdf (last accessed: January 21, 2019).

[58] Melexis Inc. Datasheet: Angular rate sensor (mlx90609), 2008.https://www.sparkfun.com/datasheets/Sensors/MLX90609_datasheet.pdf(last accessed: January 21, 2019).

[59] STMicroelectronics. Datasheet mems motion sensor (l3g4200d), 2010.http://www.st.com/web/en/resource/technical/document/datasheet/CD00-265057.pdf (last accessed: January 21, 2019).

56 Bibliography

[50] J. Carlson, R. Han, S. Lao, C. Narayan, and S. Sanghani. Rapid proto-typing of mobile input devices using wireless sensor nodes. In 5th IEEEWorkshop on Mobile Computing Systems and Applications, pages 21–29.IEEE, 2003.

[51] J. R. Dabrowski and E. V. Musson. Is 100 milliseconds too fast? InCHI’01 Extanded Abstracts on Human Factors in Computing Systems,pages 317–318, 2001.

[52] T. Kurita, S. Iai, and N. Kitawaki. Assessing the effects of transmis-sion delay - interaction of speech and video. In 14th International sym-posium: Human factors in telecommunications proceedings, pages 111–121, 1993.

[53] V. D. Bhamidipati and S. Kilari. Effect of delay/ delay variable on qoe invideo streaming (master thesis). Technical report, School of Computingat Blekinge Institute of Technology, 2010.

[54] T. Miyasato, H. Noma, and H. Kishino. Subjective evaluation of percep-tion of delay time between visual information and tactile information. IE-ICE TRANSACTIONS on Fundamentals of Electronics, Communicationsand Computer Sciences, 79(5):655–657, 1996.

[55] M. Rank, Z. Shi, H. J. Müller, and S. Hirche. Perception of delay in haptictelepresence systems. Presence, 19(5):389–399, 2010.

[56] J. R. Dabrowski and E. V. Musson. Absolute thresholds of perveption forchanges in a graphical user interface. In 9th International Conference onHuman-Computer Interaction, pages 292–296, 2001.

[57] InvenSense Inc. Datasheet integrated dual-axis gyro (idg-300), 2006.https://www.sparkfun.com/datasheets/Components/IDG-300_Datashee-t.pdf (last accessed: January 21, 2019).

[58] Melexis Inc. Datasheet: Angular rate sensor (mlx90609), 2008.https://www.sparkfun.com/datasheets/Sensors/MLX90609_datasheet.pdf(last accessed: January 21, 2019).

[59] STMicroelectronics. Datasheet mems motion sensor (l3g4200d), 2010.http://www.st.com/web/en/resource/technical/document/datasheet/CD00-265057.pdf (last accessed: January 21, 2019).

80

Page 82: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

Bibliography 57

[60] Analog Device. Datasheet 3-axis digital accelerometer (adxl345),2009. http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL345.PDF (last accessed: January 21, 2019).

[61] K. Sankar M. Digial implementation of rc lowpass filter. mathworks,2008. http://www.mathworks.com/matlabcentral/fileexchange/19407-digital-implementation-of-rc-low-pass-filter (last accessed: January 21,2019).

[62] High-pass filter. https://www.electronics-tutorials.ws/filter/filter_3.html(last accessed: January 21, 2019).

[63] G. Welch and G. Bishop. An introduction to the kalman filter,2006. https://www.cs.unc.edu/∼welch/media/pdf/kalman_intro.pdf (lastaccessed: January 21, 2019).

[64] N. S Naik and R. R. Dube. Physiological tremor estimation methods:An overview. Innovation Science, Engineering & Technology (IJISET),1(10):556–559, 2014.

[65] W. T. Latt, K. C. Veluvolu, and W. T. Ang. Drift-free position estima-tion of periodic or quasi-periodic motion using inertial sensors. Sensors,11:5931–5951, 2011.

[66] K. Seifert and O. Camacho. Implementing positioning algorithms us-ing accelerometers an3397. Technical report, Freescale Semiconductor,2007.

[67] Matlab. https://se.mathworks.com/ (last accessed: January 31, 2019).

[68] Microchip. dspic30f2011/2012/3012/3013 data sheet [internet].http://ww1.microchip.com/downloads/en/DeviceDoc/70139G.pdf(last accessed: January 31, 2019).

[69] Universal serial bus (usb) device class definition for hu-man interface devices (hid) firmware specification, 2001.http://www.usb.org/developers/hidpage/HID1_11.pdf (last accessed:January 21, 2019).

[70] C. Gerdtman and M. Lindén. Test rig for mems-accelerometers. Techni-cal report, Micronano System Workshop (MSW2010), 2010.

Bibliography 57

[60] Analog Device. Datasheet 3-axis digital accelerometer (adxl345),2009. http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL345.PDF (last accessed: January 21, 2019).

[61] K. Sankar M. Digial implementation of rc lowpass filter. mathworks,2008. http://www.mathworks.com/matlabcentral/fileexchange/19407-digital-implementation-of-rc-low-pass-filter (last accessed: January 21,2019).

[62] High-pass filter. https://www.electronics-tutorials.ws/filter/filter_3.html(last accessed: January 21, 2019).

[63] G. Welch and G. Bishop. An introduction to the kalman filter,2006. https://www.cs.unc.edu/∼welch/media/pdf/kalman_intro.pdf (lastaccessed: January 21, 2019).

[64] N. S Naik and R. R. Dube. Physiological tremor estimation methods:An overview. Innovation Science, Engineering & Technology (IJISET),1(10):556–559, 2014.

[65] W. T. Latt, K. C. Veluvolu, and W. T. Ang. Drift-free position estima-tion of periodic or quasi-periodic motion using inertial sensors. Sensors,11:5931–5951, 2011.

[66] K. Seifert and O. Camacho. Implementing positioning algorithms us-ing accelerometers an3397. Technical report, Freescale Semiconductor,2007.

[67] Matlab. https://se.mathworks.com/ (last accessed: January 31, 2019).

[68] Microchip. dspic30f2011/2012/3012/3013 data sheet [internet].http://ww1.microchip.com/downloads/en/DeviceDoc/70139G.pdf(last accessed: January 31, 2019).

[69] Universal serial bus (usb) device class definition for hu-man interface devices (hid) firmware specification, 2001.http://www.usb.org/developers/hidpage/HID1_11.pdf (last accessed:January 21, 2019).

[70] C. Gerdtman and M. Lindén. Test rig for mems-accelerometers. Techni-cal report, Micronano System Workshop (MSW2010), 2010.

81

Page 83: REAL-TIME SIGNAL PROCESSING IN MEMS SENSOR-BASED …mdh.diva-portal.org/smash/get/diva2:1286907/FULLTEXT02.pdf · 2019-02-15 · specied time limit. Two crucial factors have to be

58 Bibliography

[71] S. Sengar and P. P. Bhattacharya. Performance evaluation of cascadedintegrator-comb (cic) filter. IOSR Journal of Engineering (IOSRJEN),2:222–228, 2012.

58 Bibliography

[71] S. Sengar and P. P. Bhattacharya. Performance evaluation of cascadedintegrator-comb (cic) filter. IOSR Journal of Engineering (IOSRJEN),2:222–228, 2012.

82