|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
zaz Član
Pridružen-a: Pon 06 Apr 2015 14:23 Prispevkov: 89 Aktiv.: 0.81 Kraj: Ljubljana
|
Objavljeno: Pon Apr 06, 2015 5:28 pm Naslov sporočila: Modul MPU-6050 |
|
|
Pozdravljeni,
zanima me ali je kdo že delal z tem modulom v arduino okolju.
Modul sem uspešno povezal, vzpostavil I2C komunikacijo, problem pa mi predstavlja interpretacija podatkov iz žiroskopa.
V navodilih piše, da bi moral prebrano vrednost deliti z 131. Tako naj bi dobil kotni pospešek v stopinjah na sekundo, do določitve kota nam manjka samo še integracija, ki jo izvedem tako, da stari vrednosti prištejem spremembo vrednosti iz žiroskopa pomnoženo z časom ki je pretekel.
hvala za pomoč! |
|
Nazaj na vrh |
|
|
rafaellsi Član
Pridružen-a: Ned 11 Sep 2011 18:54 Prispevkov: 478 Aktiv.: 3.11 Kraj: Radovljica
|
Objavljeno: Pon Apr 06, 2015 6:01 pm Naslov sporočila: |
|
|
Obstaja še celo nekaj že narejenih knjižnic za ta modul v Arduino okolju. S koliko moraš deliti, je verjetno odvisno od nastavitev senzorja/modula.
Citiram: |
For precision tracking of both fast and slow motions, the parts feature a user -
programmable gyroscope full - scale range of ±250, ±500, ±1000, and ±2000°/sec (dps). |
če imaš nastavljeno občuljivost ±250°/sec, potem mislim da je število s katerim deliš res okoli 131 (2^16 / 500) ..... |
|
Nazaj na vrh |
|
|
zaz Član
Pridružen-a: Pon 06 Apr 2015 14:23 Prispevkov: 89 Aktiv.: 0.81 Kraj: Ljubljana
|
Objavljeno: Pon Apr 06, 2015 7:43 pm Naslov sporočila: |
|
|
V navodilih sem prebral, da je občutljivost ±250°/sec privzeta. Ali je možno, da bi bila ta vrednost drugače nastavljena, če jo v kodi ne spreminjam? |
|
Nazaj na vrh |
|
|
rafaellsi Član
Pridružen-a: Ned 11 Sep 2011 18:54 Prispevkov: 478 Aktiv.: 3.11 Kraj: Radovljica
|
Objavljeno: Pon Apr 06, 2015 9:48 pm Naslov sporočila: |
|
|
Mislim da ne. |
|
Nazaj na vrh |
|
|
galjotj Član
Pridružen-a: Pet 02 Nov 2012 15:08 Prispevkov: 231 Aktiv.: 1.66 Kraj: Zgornji Brnik
|
Objavljeno: Tor Apr 07, 2015 12:30 am Naslov sporočila: |
|
|
Malce bom "off-topic", da se vidi bistvo sistema.
Sem delal z MPU-6050 in sicer s PIC-em in sem "plonkal" iz arduino kode...
Če boš poizkušal narediti uporaben giroskop s podatki iz registrov, potem se boš pošteno namučil, ker boš moral dodati tudi podatke pospeškomera ter vse dobro filtrirati .
MPU-6050 ima sam svoj procesor in vanj se vpiše koda (arduino primeri) ter potem dobiš iz fifo registra že uporabne rezultate .
V vednost in ravnanje na kratko
Janez _________________ Pa sam programirat sem hotu! |
|
Nazaj na vrh |
|
|
zaz Član
Pridružen-a: Pon 06 Apr 2015 14:23 Prispevkov: 89 Aktiv.: 0.81 Kraj: Ljubljana
|
Objavljeno: Sob Apr 11, 2015 4:51 pm Naslov sporočila: |
|
|
pozdravljen galjotj,
bi mi lahko prosim poslal link do te kode, ker nobena koda iz Arduino strani mi ne vrača vrednosti kotov.
V začetku je bil to moj cilj, da bi prebral obe vrednosti ločeno in jih bi potem skušal sfiltrirati v uporabno vrednost z uporabo Kalmanovega filtra. Sedaj pa se je izkazalo, da je že interpretacija vrednosti precej zahteven podvig za moje skromno programersko zananje. |
|
Nazaj na vrh |
|
|
tilz0R Član
Pridružen-a: Čet 31 Maj 2012 15:39 Prispevkov: 898 Aktiv.: 6.21 Kraj: Črnomelj
|
Objavljeno: Sob Apr 11, 2015 9:57 pm Naslov sporočila: |
|
|
zaz,
zelo enostavno dobiš kote s pomočjo enačbe na spodnji povezavi.
Klik _________________ Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net
Nazadnje urejal/a tilz0R Ned Apr 12, 2015 12:02 am; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
|
galjotj Član
Pridružen-a: Pet 02 Nov 2012 15:08 Prispevkov: 231 Aktiv.: 1.66 Kraj: Zgornji Brnik
|
Objavljeno: Ned Apr 12, 2015 12:01 am Naslov sporočila: |
|
|
zaz, brez panike, ker je elektronski žiroskop dosti bolj kompleksna zadeva, kot se zdi....
Pred približno dvema letoma sem se MPU-6050 lotil s PIC kontrolerjem, na podoben način, kot ti.
"Bližnjica do rešitve" je tukaj:
https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/MPU6050
Ne vem kako na koncu deluje, ker takrat nisem imel Arduina, vendar so tam "lepa" poimenovanja takrat še "tajnih" registrov ter programska koda za MPU "skrekana" od nekega Rus-a...
Vendar je pametno iti po daljšnjici, ker se lahko marsikaj naučiš-predvsem tudi elektro-fizikalne teorije.
Na primer, da je predstava o tem, da iz elektronskega senzorja, ki meri naraven pojav, pride že kar "lep" podatek, precej zgrešena. Tako direktno iz senzorja dobimo običajno, zelo "šumeč" signal in ga je zato treba filtrirati. Elektronski senzor pač nima pričakovane "mehanske" inercije.
Rezultat sprogramiranega MPU-ja je 4-dimenzionalni opis rotiranja imenovan quaternion-malo matematične teorije je tudi potrebne...
Tale "čajnik" https://vimeo.com/31417019 deluje na quternion odčitke.
Žiroskop je vedno kombiniran-korigiran s pospeškometron (težnost), tako kot elektronski kot tudi tradicionalni mehanski. To potem vse to dela Motion-procesor v sprogramiranem MPU-ju.
Treba je biti pazljiv pri "kitajskih" MPU-jih na točno verzijo, ki jo dobiš v enem od njegovih registrov. Lahko kaj deluje ravno obratno, ali pa z odstopanje ipd... Nekje na Invensensovi strani so opisi teh verzij, če se še prav spomnim...
Kar nekaj podrobnosti mi je že zbledelo, vendar se bom poskusil spomniti, če me boš vprašal..
Janez _________________ Pa sam programirat sem hotu! |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 70 dni
Powered by phpBB © 2001, 2005 phpBB Group
|