6DOF, 10DOM IMU

Autorskie projekty naszych użytkowników

Moderatorzy: marbalon, moderatorzy2014, moderatorzy

Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

6DOF, 10DOM IMU

Post autor: Kuba »

Witam

Ponieważ w projekcie X4 napotkałem na problem budowy IMU postanowiłem zrobić z niego osobny moduł. Zmuszają mnie do tego koszta, gdyż nie stać mnie na zakup czujników do wszystkich projektów w których chciałbym użyć IMU - zamierzam przekładać gotowy moduł między projektami. Szczerze przyznam, że nie lubię budowy "kanapkowej" ale w tym przypadku zrobię wyjątek.

Główne założenia:
Procesor STM32 oparty o rdzeń CORTEX (jeszcze nie zdecydowałem który dokładanie)
2 akcelelometry 3-osiowe (MMA7331 oraz LIS344AL)
2 żyroskopy 3 osiowe (w praktyce najprawdopodobniej będą to 3 jednoosiowe piezaki MURATA i 2 dwuosiowe MEMS'y LPY5150AL i LPR5150AL)
1 magnetometr 3-osiowy
1 czujnik ciśnienia bezwzględnego
GPS z obsługą poprawek DGPS
termometr mierzący temperaturę układu (na potrzeby kompensacji termicznej pomiarów) DS18B20

Daje to 10 niezależnych stopni swobody, stąd 10 DOF w nazwie. (jeśli błędnie interpreduję stopnie swobody proszę o korektę ;-) )

Procesory STM32 posiadają 16 wejść ADC, które chcę rozplanować następująco:
0,1,2 - Akcelelometr nr 1
3,4,5 - Akcelelometr nr 2
6,7,8 - 3 żyroskopy piezo
9,10 - Żyroskop MEMS 2 osiowy (osie X,Y)
11 - Żyroskop MEMS 2 osiowy (oś Z, druga oś nieużywana)
12,13,14 - Magnetometr 3-osiowy
15 - Czujnik ciśnienia bezwzględnego

Cały układ będzie obsługiwał transmisję przez UART i I²C z tolerancją 3,3V lub 5V dla większej kompatybilności. Jeśli budowa się powiedzie i efekty będą zadowalające nie wykluczę produkcji seryjnej. Docelowo w późniejszej produkcji ilość czujników zostanie zredukowana celem minimalizacji kosztów, na razie chcę użyć kilku różnych akcelerometrów i żyroskopów w celu dobrania najlepszych.

Projekt będzie prowadzony równolegle z innymi więc jego rozwój będzie częściowo uzależniony od postępów pozostałych projektów.

W pierwszej kolejności ograniczę się do uruchomienia żyroskopów w stopniu wystarczającym do oderwania się X4 od ziemi a następnie będę dodawał kolejne czujniki.

Ponieważ znane mi są problemy z wibracjami w quad'ach itp od początku zamierzam z tym walczyć. Płytka IMU będzie zawierała otwory do montażu "na gumki" a samo połączenie z główną płytką będzie realizowane cienkim, elastycznym przewodem. Sam system amortyzacji będę testował dopiero na gotowym układzie ale na chwilę obecną mam już sporo pomysłów które będę chciał wypróbować.

Edit:
Zmiana nazwy z 10DOF na 6DOF, 10DOM (Degrees of Measurement)
Ostatnio zmieniony środa 17 mar 2010, 21:22 przez Kuba, łącznie zmieniany 1 raz.
Pozdrawiam
Kuba
Klenio
Posty: 182
Rejestracja: środa 17 mar 2010, 11:57
Lokalizacja: Warszawa

Post autor: Klenio »

No to będziemy mieli tą samą architekturę w swoich projektach ;-). Bardzo fajnie.

Od razu mam dwa pytania:
1) do czego chcesz użyć dwóch akcelerometrów?
2) jak liczysz te 10 stopni swobody?
Zerkaj nad siebie! Drony latają wszędzie...
Piotr
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

Podsumowując rozmowy na temat żyroskopów z tematu X4:

Żyroskopy, których chcialem użyć (LPY5150AL i LPR5150AL) nie nadają się i muszę poszukać ADXRS'ów. Żyra MURATA mają spory dryft i są wrażliwe na zmiany temperatury, ale na początek łatwiej na nich uruchomić układ i zostanę przy tym wyborze. Docelowo przeniosę wszystko na MEMS'y.

Żyra MURATA planuję pozyskać z HK401B dostępnych tu. Po głębszej analizie zdjęć wywnioskowałem, że wewnątrz znajduje się żyroskop MURATA
Obrazek

Kosztują 14$ za sztukę co jest akceptowalną ceną
Pozdrawiam
Kuba
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

Klenio pisze: Od razu mam dwa pytania:
1) do czego chcesz użyć dwóch akcelerometrów?
2) jak liczysz te 10 stopni swobody?
1) 2 akcelerometry aby wybrać lepszy z nich
2) Nie wiem jak należy to liczyć. Ja rozumiem to w ten sposób, że akcelerometry dają mi 3 stopnie, żyra 3 stopnie, magnetometr 3 stopnie i czujnik ciśnienia 1 stopień. W sumie czujnik pola magnetycznego można liczyć jako 1 stopień a nie jako 3..
Pozdrawiam
Kuba
Awatar użytkownika
PitLab
Posty: 967
Rejestracja: środa 17 mar 2010, 20:29
Lokalizacja: Warszawa
Kontakt:

Post autor: PitLab »

Kuba

Problem ze stopniami swobody miało wiele osób. Ostatnio nawet chłopaki z Open Pilota walnęli taką gafę pisząc o IMU 9DOF. Oczywiście jest 6 stopni swobody: przesunięcia w 3 osiach i obroty wokół tych osi. Dalsze stopnie swobody to albo wędrówka w czasie albo kompresja materiału. To o czym piszesz to są po prostu pomiary.
W tamtym przypadku wybrnęli z tego zmieniając DOF na DOM (Freedom -> Measurement).

Co do żyr Muraty to już napisał Ci miś że nie tędy droga. To żyro to jest tylko sam element drgający. Wymaga jeszcze odcięcia niskich częstotliwości i odfiltrowania zbyt wysokich. To musi być zrobione precyzyjnie. Wszystkie takie obwody umieszczone poza struktura układu pracują w innych warunkach termicznych.
Jeżeli masz te żyroskopy, to możesz się pobawić. Jeżeli masz je kupować to szkoda pieniędzy i czasu.
Piotrek.
Z różnych form kontaktu preferuję e-mail
Awatar użytkownika
mifau
Posty: 1740
Rejestracja: wtorek 02 lut 2010, 14:10
Lokalizacja: Sopot

Post autor: mifau »

No wlasnie....w mouserze Kuba masz tanie zyroskopy ST (5-6 EUR sztuka).
Nie warto pchac sie w zamierzchle technologie.
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

PitLab pisze:Kuba

Problem ze stopniami swobody miało wiele osób. Ostatnio nawet chłopaki z Open Pilota walnęli taką gafę pisząc o IMU 9DOF. Oczywiście jest 6 stopni swobody: przesunięcia w 3 osiach i obroty wokół tych osi. Dalsze stopnie swobody to albo wędrówka w czasie albo kompresja materiału. To o czym piszesz to są po prostu pomiary.
W tamtym przypadku wybrnęli z tego zmieniając DOF na DOM (Freedom -> Measurement).

Co do żyr Muraty to już napisał Ci miś że nie tędy droga. To żyro to jest tylko sam element drgający. Wymaga jeszcze odcięcia niskich częstotliwości i odfiltrowania zbyt wysokich. To musi być zrobione precyzyjnie. Wszystkie takie obwody umieszczone poza struktura układu pracują w innych warunkach termicznych.
Jeżeli masz te żyroskopy, to możesz się pobawić. Jeżeli masz je kupować to szkoda pieniędzy i czasu.
Zmieniłem nazwę na 6DOF, 10DOM zgodnie z tą konwencją :)
Pozdrawiam
Kuba
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

Rozwój innych projektów w których moje IMU będzie użyte wymaga ode mnie sprecyzowania rozmiaru i wyprowadzeń modułu. W najbliższych dniach muszę się zdecydować na jedną wersję której użyję we wszystkich projektach (chodzi o przygotowanie miejsca do wlutowania modułu). Ostatnio spodobała mi się miniaturyzacja i na chwilę obecną nie widzę innej opcji niż osadzenie modułu na goldpinach w rastrze 2.00mm. Dodatkowo na potrzeby mojego X4 chcę wyprowadzić wszystko na złączu ZIF do taśmy FFC aby mechanicznie odizolować IMU od drgań (zawieszając je na gumkach). Taśma raczej nie powinna przenosić drgań i mam nadzieję, że takie rozwiązanie się sprawdzi.
Przykładowy ziff:
Obrazek

Jeśli chodzi o wyprowadzenia to na pewno musi się w nich znaleźć:
SPI (4 piny)
UART (2 piny)
I2C (2 piny)
zasilanie (raczej tylko 3,3V o ile nic nie będzie wymagało 5V)
masa (masę chciałbym umieścić w kilku punktach aby zminimalizować zakłócenia)

myślę też o wyjściach PWM/napięciowych dla kanałów aby było łatwo odczytywać na obszczyloskopie wskazania bez potrzeby podłączania do zewnętrznego układu.

Procesor jaki będzie w IMU jest zasilany z 3,3V ale niektóre piny są "Five tolerant", czyli tolerują podłączenie do nich +5V. Zamierzam to wykorzystać i na jednej nodze modułu zrobić "logic level" czyli przy podłączeniu 5V cały moduł będzie miał na wyjściu stan wysoki jako 5V a nie 3,3V. Ma to znaczenie w przypadku, gdy ktoś zechce użyć imu w układzie który pracuje z 5V.

Jeśli macie jakieś sugestie co do tego co powinno być wyprowadzone z IMU oraz w jakiej konfiguracji to jestem otwarty. Jeśli z jakiegoś powodu mój pomysł z taśmą jest zły to krzyczcie śmiało :mrgreen:
Pozdrawiam
Kuba
Awatar użytkownika
mifau
Posty: 1740
Rejestracja: wtorek 02 lut 2010, 14:10
Lokalizacja: Sopot

Post autor: mifau »

Kuba....jakie zyroskopy?
Jesli wybierzesz dobre, to nie musisz niczego "izolowac" ;-)

Kazde z wyjsc powinno miec tez mase wyprowadzona. (czasem moze sie tez przydac zasilanie)


No i generalnie chyba lepiej zrobic zlacze na "listwach precyzyjnych" (na sztywno znaczy)
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

mifau pisze:Kuba....jakie zyroskopy?
Jesli wybierzesz dobre, to nie musisz niczego "izolowac" ;-)

Kazde z wyjsc powinno miec tez mase wyprowadzona. (czasem moze sie tez przydac zasilanie)


No i generalnie chyba lepiej zrobic zlacze na "listwach precyzyjnych" (na sztywno znaczy)
Przez "listwy precyzyjne" rozumiem listwy stykowe zwane dalej goldpinami - zgadza się? jeśli tak to właśnie tego chcę użyć tylko, że w rastrze 2mm a ziff ma być dodatkiem. Co masz na myśli poprzez masę przy każdym z wyjść?

Planuję zrobić to podobnie jak w przypadku radiomodemów Xbee:
Obrazek
One również są w rastrze 2mm. U mnie zmieni się rozmiar płytki, kształt i konfiguracja pinów - raczej na pewno nie zrobię x+x (po obu stronach równa liczba pinów) tylko np. x+2 x-2 aby było widać w którą stronę włożyć moduł. Dodatkowo będą otwory montażowe (w przypadku wykorzystania ziff'a posłużą do przymocowania modułu na gumki a w przypadku "klasycznym" umożliwią przykręcenie modułu na śrubki do dolnej płytki)

Co do żyroskopów - na razie jeszcze nie zdecydowałem, dlatego pewnie wersja V1 będzie przygotowana pod kilka rożnych w tym piezo muraty.
Pozdrawiam
Kuba
Awatar użytkownika
mifau
Posty: 1740
Rejestracja: wtorek 02 lut 2010, 14:10
Lokalizacja: Sopot

Post autor: mifau »

Kuba pisze: Przez "listwy precyzyjne" rozumiem listwy stykowe zwane dalej goldpinami - zgadza się? jeśli tak to właśnie tego chcę użyć tylko, że w rastrze 2mm a ziff ma być dodatkiem.
Tak. cos takiego na przyklad: http://www.tme.eu/html/PL/gniazda-precy ... pelny.html

Kuba pisze: Co masz na myśli poprzez masę przy każdym z wyjść?
Jak masz np wyjscie UART to warto wyprowadzic nie tylko TX i RX, ale tez i mase.
To samo dla i2c, itp
Jedna wspolna masa "gdziestam z boku" moze uprzykrzyc poslugiwanie sie urzadzeniem.
To samo dotyczy zasilania. Warto je miec rozprowadzone w okolicach tych zlacz. Bo kto wie, czy np nie zechcesz do UART'a podlaczyc modemu. I wtedy skad zasilanie? A tak, to bedziesz mial blisko i wygodnie:)
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

Good point :)
Pozdrawiam
Kuba
kinemax
Posty: 112
Rejestracja: poniedziałek 31 maja 2010, 08:40
Lokalizacja: Warszawa

Post autor: kinemax »

A oglądaliście to: http://www.chrobotics.com/index.php?mai ... ducts_id=2
Temat wygląda na nieźle rozpracowany...
Awatar użytkownika
miś
Posty: 9242
Rejestracja: niedziela 07 lut 2010, 15:24
Lokalizacja: Bytom

Post autor: miś »

Tylko szkoda że to jest oparte na tych paskudnych żyrach z ST. Gdyby nie to, byłaby rewelka, choć tanie toto nie jest.
Pzdr. -----MIŚ-----
Awatar użytkownika
Kuba
Posty: 487
Rejestracja: poniedziałek 01 lut 2010, 15:50
Lokalizacja: Gdynia - Warszawa

Post autor: Kuba »

Apropo wypowiedzi pitlaba na temat złego interpretowania skrótu "DOF"

http://www.st.com/stonline/products/fam ... 10_inemov2
The STEVAL-MKI062V2 is the second generation of the iNEMO™ module family. It combines accelerometers, gyroscopes and magnetometers with pressure and temperature sensors to provide 3-axis sensing of linear, angular and magnetic motion, complemented with temperature and barometer/altitude readings, representing the new ST 10-DOF (degrees of freedom) platform.
Nie tylko ja piszę zanim sprawdzę :P

Swoją drogą byłaby to bardzo fajna konstrukcja gdyby nie te nieszczęsne żyra ST...
Pozdrawiam
Kuba
ODPOWIEDZ