myAHRS+ jest jednym z najwydajniejszych systemów AHRS (Attitude Heading Reference System) z jakim dotychczas przyszło mi pracować. Jego ogromną i niezaprzeczalną zaletą jest wysoka stabilność wyników względem znacznych przyśpieszeń oraz występowania zaburzeń pola magnetycznego.
Komunikacja i konfiguracja modułu myAHRS+ może odbywać się za pomocą interfejsu USB/UART, co czyni go przyjaznym we współpracy z płytkami takimi jak Raspberry Pi czy ODROID. Projektanci i pasjonaci Arduino bez problemu uzyskają dostęp do danych poprzez magistralę I2C.
Dodatkową zaletą jest dostępność GUI myAHRS+ Monitior, który pozwala użytkownikowi na konfigurację wszystkich ustawień pracy modułu oraz podgląd stanu i danych z IMU w czasie rzeczywistym, a także zapis do pliku tekstowego. Za pomocą myAHRS+ Monitior możemy również dokonać stosownej kalibracji magnetometru i czujników.
Najważniejsze parametry modułu myAHRS+ to:
- Trójosiowy, 16-bitowy żyroskop o zakresie pomiaru ±2000 dps
- Trójosiowy, 16-bitowy akcelerometr o zakresie pomiaru ±16 g
- Trójosiowy, 13-bitowy magnetometr o zakresie pomiaru ±1200 μT
- Rozbudowany filtr Kalmana
- Częstotliwość wyników na poziomie 100 Hz
- Możliwość odczytu przeliczonych wyników: kąty Eulera lub Quaternion
- Możliwość odczytu sensorów: przyśpieszenie, prędkość kątowa, pole magnetyczne
- Komunikacja USB (wirtualny port COM), UART (do 460800 bps), I2C (do 1kHz)
Sercem jest 32-bitowy mikrokontroler STM32F103CBU6 taktowany zegarem 72MHz, wykonany w architekturze ARM Cortex-M3. Do pomiarów wartości wykorzystany została jednostka MPU9150.
Pinologia modułu przedstawia się następująco:
Pin | Oznaczenie | Typ pinu | Opis |
J3-1 | INT | O | Przerwanie gotowości danych DATA READY |
J3-2 | SLEEP | I | Wybór trybu pracy (stan niski – tryb uśpienia. stan wysoki – normalna praca) Normalnej pracy odpowiada również pozostawienie pinu nie podłączonego |
J3-3 | I2C_SCL | I | Zegar I2C |
J3-4 | I2C_SDA | I/O | Dane I2C |
J3-5 | USB_DM | I/O | USB D- |
J3-6 | USB_DP | I/O | USB D+ |
J3-7 | NC | Nie używany | |
J3-8 | NC | Nie używany | |
J3-9 | NC | Nie używany | |
J3-10 | NC | Nie używany | |
J4-1 | VDD | PWR | Zasilanie +5V |
J4-2 | nRST | I | Stan niski – Reset, stan wysoki – normalna praca |
J4-3 | NC | Nie używany | |
J4-4 | UART_TX | O | UART TX |
J4-5 | UART_RX | I | UART RX |
J4-6 | NC | Nie używany | |
J4-7 | NC | Nie używany | |
J4-8 | NC | Nie używany | |
J4-9 | NC | Nie używany | |
J4-10 | GND | PWR | Masa |