logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Obsługa MPU-6050 oraz idea komunikacji z nim po I2C

Pan Korsarz 29 Wrz 2018 18:23 429 0
REKLAMA
  • #1 17468216
    Pan Korsarz
    Poziom 3  
    Posty: 136
    Ocena: 4
    Witam,
    Zajmuję się właśnie akcelerometrem i żyroskopem MPU6050. Komunikacja działa, odbieram surowe dane. Mam jednak parę pytań, ponieważ wiele rzeczy jest dla mnie w chwili obecnej nie do końca jasne. Korzystam z procesora ATMega32 oraz opieram się na kodzie z projektu "Poziomicy LED" Link. Oczywiście kod został wykastrowany z obsługi LED, została tylko część odpowiedzialna za I2C.
    Autor otrzymuje dane z I2C a następnie korzysta z filtru Kalmana w celu otrzymania kąta przechylenia. Jest to jednak gotowiec i to tylko dla jednej osi. Jako, że nie chciał bym korzystać z czegoś czego nie rozumiem, chciałbym w celu np. uzyskania wartości kąta na podstawie wskazań żyroskopu (całkowanie) użyć dość prostej metody trapezów. Wiem, że wyniki nie będą tak zadowalające jak w przypadku wspomnianego filtru, lecz jest to dla mnie wystarczające. I tu pojawia się pierwsza rzecz do której mam wątpliwości.
    W metodzie tej potrzebuję czasu, a dokładniej czasu pomiędzy dwoma pomiarami (jeśli wzór na pole trapezu to ((a+b)*h)/2 to tu będzie on wyglądał mniej więcej tak:((pomiar_1 + pomiar_2)*czas_pomiedzy_pomiarami)/2 - liczymy całkę czyli pole powierzchni pod wykresem.) No i jeśli jasność jest co do pomiar_1 i pomiar_2 to nie do końca jest jasność co do czasu pomiędzy otrzymywanymi próbkami. Prędkość magistrali jest czym innym. Rejestr "Register 25 – Sample Rate Divider" ustawiony na 100Hz również chyba tego nie określa. Czy mógł by ktoś mi rozjaśnić zasadę wysyłania tej informacji ze Slave do Master i jak determinować poprawnie tą prędkość (przecież "delay()" w while(1) raczej tego nie załatwi).
    Drugie pytanie dotyczy tego, że skoro sam akcelerometr wystarczy do tego aby za pomocą matematycznych przekształceń wyznaczyć kąt pochylenia to właściwie po co nam jeszcze żyroskop ?

    Podrzucam jeszcze link do register map układu: Link

    Dziękuje za odpowiedzi i pozdrawiam.
  • REKLAMA
REKLAMA