Obsługa czujników MEMS

 

Czas realizacja zadania: 8 godzin (2 laboratoria)

 

  1. 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).
  2. Przygotować klasę HMC5883L do obsługi magnetometru
  3. Przygotować klasę BMP085 do obsługi barometru
  4. 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