IMU
IMU
Hej
Jag funderar på att försöka bygga en IMU, alltså en manick bestående av 3 gyron och 3 accelerationsmätare (x-, y- och z-led) kopplad till en uC för att hålla koll på postionen i rummet. Någon som har erfarenhet av sådant? Hur exakt kan man få positionen?
Någon som vet var man kan få tag i gyron och acc-censorer för en billig peng? Dom gyron jag hittade på elfa överskrider min budget med hästlängder... (över 2500kr/gyro! )
Tacksam för synpunker och tips!
Jag funderar på att försöka bygga en IMU, alltså en manick bestående av 3 gyron och 3 accelerationsmätare (x-, y- och z-led) kopplad till en uC för att hålla koll på postionen i rummet. Någon som har erfarenhet av sådant? Hur exakt kan man få positionen?
Någon som vet var man kan få tag i gyron och acc-censorer för en billig peng? Dom gyron jag hittade på elfa överskrider min budget med hästlängder... (över 2500kr/gyro! )
Tacksam för synpunker och tips!
Har inte provat själv men ADXL202 från Analog Devices kanske fungerar för att mäta accelerationen. ADXL202 går att beställa som gratisprov.
http://www.analog.com/Analog_Root/produ ... %2C00.html
http://www.analog.com/Analog_Root/produ ... %2C00.html
-
- Inlägg: 2360
- Blev medlem: 16 september 2003, 17:18:13
- Ort: Dubai, United Arab Emirates
- Kontakt:
Har man mera bråttom eller behöver för många kan man köpa tiltkänsliga gamepads, tillexempel "Logitech Wingman Extreme" eller "Gravis Destroyer Tilt" eller "Microsoft Freestyle Gamepad". Dessa har jag sett för extremt låga priser. 150 är normalt. Har för mig att jag såg Microsoftaren för 99 kr på OnOff-reda för nån vecka sedan.
Alla ovanstående innehåller en ADXL202.
Med tanke på att dom kostar uppåt/över hundringen styck om man köper minst 100 st åt gången så är 99 kr/styck riktigt billigt. Och då får man en del extra skrot att lägag i bra-att-ha-lådan också.
Alla ovanstående innehåller en ADXL202.
Med tanke på att dom kostar uppåt/över hundringen styck om man köper minst 100 st åt gången så är 99 kr/styck riktigt billigt. Och då får man en del extra skrot att lägag i bra-att-ha-lådan också.
- lord_dubbdäck
- Inlägg: 207
- Blev medlem: 11 juni 2003, 20:00:18
- Ort: Älvkarleby
- Kontakt:
Gratis är gott! Tack för tipsen, har gjort en liten beställning från
analog.com. Skiter den sig av nån anledning blir det en sväng förbi
onoff...
En IMU (Inertial Measurement Unit) består av 3 gyron, för att hålla koll på
riktningen på föremålet och 3 accelerationsmätare. Om man integrerar
accelerationen får man ju ut hastigheten, och integrerar man hastigheten får
man ut sträckan. Så kopplar man ihop dessa gyron och accelerations mätare
så ska man med trigonometri och integrering kunna beräkna positionen för
föremålet.
IMU används bland annat i sateliter, obemannade flygplan och missiler mm.
Största problemet lär väl bli att integrera insignalen från acc-mätarna i
microcontrollern.
En lösning är väl att använda riemansumma för så små tidsenheter som
möjligt. Vet dock inte hur bra det blir.
Skulle man kunna använda op-ampar kopplade som integratorer kanske?
Kan man nollställa sådana på nått sätt när man nått max/min-värdet för
vad ADC omvandlaren på microcontrollern klarar av, alltså så att den börjar
om från mitten på skalan (samtidigt som man lägger till motsvarande
sträcka i nån variabel i microcontrollern)?
analog.com. Skiter den sig av nån anledning blir det en sväng förbi
onoff...
En IMU (Inertial Measurement Unit) består av 3 gyron, för att hålla koll på
riktningen på föremålet och 3 accelerationsmätare. Om man integrerar
accelerationen får man ju ut hastigheten, och integrerar man hastigheten får
man ut sträckan. Så kopplar man ihop dessa gyron och accelerations mätare
så ska man med trigonometri och integrering kunna beräkna positionen för
föremålet.
IMU används bland annat i sateliter, obemannade flygplan och missiler mm.
Största problemet lär väl bli att integrera insignalen från acc-mätarna i
microcontrollern.
En lösning är väl att använda riemansumma för så små tidsenheter som
möjligt. Vet dock inte hur bra det blir.
Skulle man kunna använda op-ampar kopplade som integratorer kanske?
Kan man nollställa sådana på nått sätt när man nått max/min-värdet för
vad ADC omvandlaren på microcontrollern klarar av, alltså så att den börjar
om från mitten på skalan (samtidigt som man lägger till motsvarande
sträcka i nån variabel i microcontrollern)?
-
- Inlägg: 2360
- Blev medlem: 16 september 2003, 17:18:13
- Ort: Dubai, United Arab Emirates
- Kontakt:
Det finns en hel del info att hitta på integrerings och brus/drift-problem rörande gyron och accelerationsmätare om du söker på info om självbalanserade robotar. En länk att börja letande från är tillexempel http://www.geology.smu.edu/~dpa-www/robo/nbot/
Jag har sysslat lite med ADXL202. Jag använder den till en Pitch-kontroller till min ubåt.
Problemet blir kanske inte själva integreringen. Om man vill integrera i diskret tid så är det lika med summan av alla insignaler. Men problemet blir konstanterna. För varje integrering tillkommer en konstant. Och om man inte har rätt konstanter så driver sträck mätningen.
Det finns i alla fall en del Application notes på Analog Devices hemsida.
Problemet blir kanske inte själva integreringen. Om man vill integrera i diskret tid så är det lika med summan av alla insignaler. Men problemet blir konstanterna. För varje integrering tillkommer en konstant. Och om man inte har rätt konstanter så driver sträck mätningen.
Det finns i alla fall en del Application notes på Analog Devices hemsida.
Att sträckan "driver" beror väl kanske på att man integrerar i diskret tid
(riemansumma). Då uppstår ju ett visst fel mot verkligeheten (som är
kontinuerlig). Men detta fel kan man iofs försumma om man kan mäta
tillräckligt ofta i förhållande till derivatan på kurvan.
En mix av dessa två grafer beskriver detta fall, övre summa (högra) när
värdet stiger och undre summa (vänstra) när värdet faller.
För att få resultatet närmare verkligheten kan man ta bort en triangel som
har arean (y2 - y1)*dt/2, där y1 är denna mätning, y2 föregående och dt
tiden där emellan.
Använder du timer för att få konstant tid mellan mätningarna, eller gör du
på nått annat sätt?
(riemansumma). Då uppstår ju ett visst fel mot verkligeheten (som är
kontinuerlig). Men detta fel kan man iofs försumma om man kan mäta
tillräckligt ofta i förhållande till derivatan på kurvan.
En mix av dessa två grafer beskriver detta fall, övre summa (högra) när
värdet stiger och undre summa (vänstra) när värdet faller.
För att få resultatet närmare verkligheten kan man ta bort en triangel som
har arean (y2 - y1)*dt/2, där y1 är denna mätning, y2 föregående och dt
tiden där emellan.
Använder du timer för att få konstant tid mellan mätningarna, eller gör du
på nått annat sätt?