Obsługa czujników MEMS
Czas realizacja zadania: 8 godzin (2 laboratoria)
- Przygotować klasę MPU6050.
- Konstruktor klasy uruchomi moduł I2C i ustawi rejestr 0x6B na wartość 0 – co to zmienia?
- Napisać metody klasy, służące do odczytu wartości z akcelerometru i żyroskopu dla każdej osi (6 metod).
- Przygotować klasę HMC5883L do obsługi magnetometru
- Przygotować klasę BMP085 do obsługi barometru
- Przygotować klasę IMU, która będzie zawierała implementację kolejnych zadań.
Zrobić program realizujący poziomicę – wykorzystać pomiary z akcelerometru i funkcję “atan2()”. Program wyświetla na ekranie kąt w stopniach odpowiadający przechyleniu.
Zadanie na ocenę 4:
- wyświetlić kąt poziomicy z dokładnością do dwóch miejsc po przecinku
- obliczyć kąt za pomocą żyroskopu – wyświetlić dwa pomiary w jednej linii – kąt z akcelerometru i kąt z żyroskopu
Zadania na ocenę 4,5:
- zaproponować i zaimplementować rozwiązanie do obliczania kąta obrotu wokół własnej osi
- zaimplementować obsługę magnetometru i porównać uzyskane kąty
Zadania na ocenę 5:
- zaimplementować obsługę czujnika ciśnienia
- obliczyć wysokość z wykorzystaniem czujnika ciśnienia i porównać ją z wysokością uzyskiwaną z akcelerometru.
Zadania na ocenę 5,5:
- poprawa wyznaczania kąta przez zastosowanie filtrów:
- filtr kalmana
- filtr komplementarny