Portál AbcLinuxu, 6. května 2025 05:52

Dotaz: Arduino výškoměr + akcelerometr

18.11.2018 16:19 Petr
Arduino výškoměr + akcelerometr
Přečteno: 2456×
Odpovědět | Admin
Ahoj, používám pro měření výšky letu rakety a stanovení apogea arduino s tlakovým barometrickým čidlem.

Zařízení nefunguje spolehlivě. Chtěl bych doplnit akcelerometr, který jednak zamezil nechtěnému předčasnému výmetu při manipulaci na startu a taky zpřesnil výšku a spolehlivě detekoval apogeum.

Dočetl jsem se, že by na to šel použít komplementární filtr. Bohužel jsem objevil pouze teoretický popis.

Neporadil by někdo prosím, jak to řešit s Arduinem?

Díky-
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.11.2018 17:01 Kit | skóre: 45 | Brno
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Odpovědět | | Sbalit | Link | Blokovat | Admin
Akcelerometrem apogeum nezměříš. Na to je vhodný výškoměr.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
18.11.2018 18:36 Petr
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
No do teď je to realizováné právě tím barometrickým výškoměrem. Ale rychlost letu rakety + proudění vzduchu + velikost komory s čidlem dává různorodé hodnoty. Výška by akcelerometrem měla jít změřit - ale asi by tam byla chyba. Proto ten komplementární filtr.
18.11.2018 20:26 Kit | skóre: 45 | Brno
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Jenže v době vypnutí motoru začne akcelerometr ukazovat nulu, i když bude raketa setrvačností pokračovat ještě výš. Akcelerometr neukazuje rychlost, ale zrychlení.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
19.11.2018 00:03 Petr
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Vycházel jsem ze staré diskuze z roku 2013:

Kdyby jen rychlost.. dokonce i poloha! :-) Samozřejmě nepřímo a v kombinaci s dalším čidlem. Sám používám akcelerometr + senzor tlaku na přesné měření výšky. Stačí to, co se změřilo akcelerometrem prohnat dvojí integrací a sloučit to se senzorem tlaku komplementárním filtrem (dolní propust na talkové čidlo, horní na akcelerometr), když chce být někdo víc hardcore místo komplementárního filtru na to poštve Kalmana. Chodí to hezky i s tím kompl. filtrem +-1cm. Samozřejmě nemusí jít jen o výšku, jde to zkombinovat podobným způsobem i s GPSkou, na to se teprve chystám.

Tak nevím.
19.11.2018 01:38 Kit
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Možná by se to dalo, kdybys integroval zrychlení-1g. Na rampě by se integrovala nula, pak tah rakety a v setrvačném letu -1g. Při dopadu na zem bys měl dostat výchozí hodnotu výšky.
28.11.2018 20:25 m
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Tohle by platilo za předpokladu, že by osa akcelerometru byla po celou dobu letu kolmo k zemi (rovnoběžně s vektorem gravitace). Odchylky od tohoto předpokladu budou způsobovat chybu, terá poroste s kvadrátem času. Uvažujme chybu v úhlu 1 stupeň, takže za 10 sekund letu to dá chybu cca 17m.

Tato úloha se nazývá inerciální navigace a pro znalost úhlu se používá gyroskop. Původně gyroskopicky stabilizovaná plošina, která udržovala akcelerometry správně orientované. Dnes spíše snímače úhlové rychlosti, kde se integrací udržuje informace o natočení.

Nicméně s low cost snímači budou výsledky bídné. Investoval bych spíše do lepších barometrických výškoměrů v kombinaci s GPSkou.
19.11.2018 10:11 ehmmm
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Tohle uz je lepsi popis.

Chapu to tak, ze dotycny da nejak do kupy pomale zmeny tlaku a dvakrat zintegrovane velke zrychleni. Vysledne chovani je pak takove, ze pri pomalych zmenach vysky to bere spise hodnoty z barometru a pri dynamictejsim pohybu se veri spise akcelerometru.

Dolni propust je programatorsky trivialni. Horni propust asi bude podobna, ale naruby, to pujde vygooglit. Ale jak to slozit dohromady, to netusim. Pamatuji si, ze ve skole jsme kdysi meli prave neco o Kalmanove filtru. Pouzivalo se to na srovnani modelu s realitou. Presneji receno na to, aby se model, ktery si v case zije svym zivotem (zatimco my mezitim merime realny system), dostal do stavu odpovidajiciho realu. Takze bych kdyztak googlil timto smerem.
20.11.2018 11:34 Kit | skóre: 45 | Brno
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Pokud to chápu správně, bude se váženě průměrovat predikce, výška a dvakrát integrované zrychlení. Z toho se odvodí predikce, její přesnost a váha pro následující krok.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
20.11.2018 14:52 Kit | skóre: 45 | Brno
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Něco mi říká, že kdyby sonda Schiaparelli používala Kalmanův filtr, nemusela se rozflákat o povrch Marsu.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
28.11.2018 21:28 m
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Odpovědět | | Sbalit | Link | Blokovat | Admin
O jakých číslech se zde vlastně bavíme? Max. výška, rychlost, zrychlení, doba hoření motoru, jak moc letí raketa kolmo (jak daleko je v horizontálním směru od místa startu, když dosáhne nejvyššího bodu), rozměry/hmotnost elektroniky?

Jaký výškoměr používáš? Jak vyhodnocuješ apogeum?
9.12.2018 19:58 Petr
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Motor má tah cca 150 Ns a hoří 0,8s. Hmotnost rakety cca 1,5 kg. Výška dle simulace cca 250m. Startuje se kolmo, ale dle síly větru se odklání, aby raketa nepřistála daleko od místa vypuštění. Používám Arduino ProMini + BMP180. Apogeum se určuje z barometru, ale dochází k nepřesnostem. Proto chci použít akcelerometr.

9.12.2018 22:20 marek_hb
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
co gps? sice výšková přesnost taky není žádná hitparáda, ale proti barometru to zase nebude ovlivněné tím co jsi psal
27.12.2018 23:25 Ivan
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
GPS se samo vypina pokud zjisti, ze prijimac pohybuje prilis rychle. Leda ze bys' nekde sehnal vojenskou verzi.
31.12.2018 11:33 Jose
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Při rychlostech dosažených v tomhle případě by se vypínat nemělo.
10.12.2018 18:15 m
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Ok, tak to máme teoreticky/přibližně: zrychlení 100m/s^2, výška při vypnutí motoru 58m, nejvyšší rychlost 72m/s (260km/h) takže dalších 7.2s by letěla setrvačností ještě 260m.

Pro běžné GPS moduly je to asi příliš velké zrychlení (krátký čas letu) a pokud nejdou upravit parametry výpočtu, tak to bude nepřesné. Např. rychlý náhled do dokumentace ublox modulu NEO-M8Q říká zrychlení < 4g.

Jak se vlastně raketa chová, když se v apogeu neotevře padák? Otočí se špičkou dolů, nebo padá pořád špičkou nahoru?

Byl by ukázkový záznam dat z výškoměru při současném řešení? Jinak moje otázka "jak vyhodnocuješ apogeum" směřovala na algoritmus, který používáš k detekci apogea pomocí výškoměru. Filtrace šumu, detekce nulové rychlosti ...

Možná by bylo lepší jako u Pitotové trubice diferenciální tlak (tj. dopřednou rychlost rakety).

Kolik do snímačů hodláš přibližně investovat?
Bystroushaak avatar 27.12.2018 14:44 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Odpovědět | | Sbalit | Link | Blokovat | Admin
Trochu offtopic, ale nechceš sem o tom pak napsat blog? Přijde mi to zajímavé a rád bych viděl třeba nějaké fotky. Myslím že by to mohlo zajímat i ostatní.
blog.rfox.eu
31.12.2018 11:34 Jose
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
+1
3.1.2019 06:54 hydrandt | skóre: 35 | blog: Kanál | Herzogenburg
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
+1
I am Jack's wasted life.
2.1.2019 23:22 easySolution
Rozbalit Rozbalit vše Re: Arduino výškoměr + akcelerometr
Odpovědět | | Sbalit | Link | Blokovat | Admin
Niesto BMP180 by som pouzil modernejsi BMP280.

https://goo.gl/images/7XDE51

A rovno by som to pripojil cez I2C na Arduino.

https://learn.adafruit.com/adafruit-bmp280-barometric-pressure-plus-temperature-sensor-breakout/downloads

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.