Zastosowanie czujnika inercyjnego do monitorowania aktywności fizycznej osoby
An inertial sensor module and software for monitoring of human physical activity
Streszczenie
Urządzenia do monitorowania i detekcji ruchu są powszechnie używane w wielu dziedzinach życia
codziennego, począwszy od tak specjalistycznych zastosowań jak monitoring sprawności maszyn
bazujący na wzorcach wibracji, a kończąc na obracaniu wyświetlanego obrazu w telefonach
komórkowych zależnie od położenia urządzenia.
Celem tej Pracy Magisterskiej było zbudowanie Modułu Czujników Inercjalnych z 6 stopniami
swobody, uruchomienie go oraz zaprogramowanie aplikacji do zbierania danych, ich transmisji,
analizy, przechowywania i prezentacji. W celu zrealizowania powyższych założeń z zadowalającymi
rezultatami, niezbędne było nabycie specjalistycznej wiedzy.
Autor niniejszej dysertacji opisuje zgromadzone i przyswojone informacje o modułach IMU i ich
zastosowaniach, czujnikach inercjalnych oraz błędach obecnych w otrzymywanych danych, filtrach
używanych w celu wyeliminowania błędów pomiarowych i wygładzenia rezultatów oraz o układach
odniesienia i kątach Eulera użytecznych w poprawnym odzwierciedleniu danych, również w
wizualizacjach 3D.
Praca zawiera również szczegółowy opis modułu, tj. czujników, mikrokontrolera oraz modułu
komunikacyjnego. W drugiej części dysertacji opisane zostały założenia oraz programistyczna
implementacja oprogramowania stworzonego na potrzeby projektu (dostępna w Załączniku B).
Opisany został kod w C odpowiedzialny za wyliczanie współrzędnych wektora przyspieszenia
ziemskiego w układzie odniesienia projektowanego modułu, za wyliczenie kątów obrotu modułu
wokół 3 osi. W opisie uwzględniona została również implementacja krokomierza z szacowaniem
przebytego dystansu.
Abstract
Devices for movement monitoring and detection are widely used every area of everyday life beginning
at such specific applications as industrial machines health monitoring based on vibration pattern and
ending on proper cell phone screen flipping depending on device's position.
The aim of this Master Thesis project was to build 6DOF Inertial Sensor Module, start it up and
program software for data acquisition, transmission, analysis, storage and presenting. To realize said
goal with satisfactory results it was necessary to gain specialized knowledge.
Author of this dissertation presents learned information about inertial measurement units and their
applications, inertial sensors and errors produced in their output, filters used to cancel out errors and to
smooth out results, frames of reference and Euler angles both necessary for proper data presentation,
latter one if results presented on a 3D virtual scene.
Dissertation also contains detailed description of built hardware, namely sensors, microcontroller and
communication module. The second part of project description presents thorough insight to the
concepts of accompanying software and their programming implementation (available in
Appendix B). Description covers C code used to calculate g-force vector coordinates in Inertial Sensor
Module frame of reference as well as rotations around all 3 axes and step counter with traveled
distance estimation.