kompas HMC5883L

Odpovědět
Jirka
Příspěvky: 55
Registrován: 18 lis 2015, 12:06

kompas HMC5883L

Příspěvek od Jirka »

Je tu někdo kdo se tím zabýval? Výsledky mi to sice dává ale je tam asi třeba nějaká kompenzace. S tím si nevím rady.
Uživatelský avatar
jrt
Příspěvky: 1921
Registrován: 17 úno 2013, 17:13

Re: kompas HMC5883L

Příspěvek od jrt »

Já jsem ho před několika roky připojoval k PICAXE podle tohoto návodu a chodil skvěle. Třeba ti to pomůže...
jrt
Pirx
Příspěvky: 181
Registrován: 24 úno 2013, 16:29
Kontaktovat uživatele:

Re: kompas HMC5883L

Příspěvek od Pirx »

Třeba se bude hodit postup, který používám:
- Spustím kalibrační rutinu, která pouze zaznamenává maximální a minimální hodnotu každé osy nezávisle.
- Při běhu této rutiny "protočím" zařízení několikrát kolem všech tří os.
- Potom pro každou osu z maxima a minima vypočítám střed a tím i ofset proti nule.
- Dále spočítám koeficient pro gain tak, aby výsledný rozsah hodnot pro každou osu byl -1.0 až 1.0 (lze zvolit libovolné číslo, klidně celé - dle schopností procesoru).

Přes tuto kalibraci potom proháním surová data z jednotlivých os a to je všechno.
Kalibraci je třeba provádět s magnetometrem namontovaným ve finální konstrukci a pokud se v okolí magnetometru změní něco kovového, je potřeba překalibrovat.
Jsou samozřejmě sofistikovanější metody, které např. do naměřených surových hodnot fitují kouli, ale pro moje účely tato primitivní kalibrace zatím vždy vyhověla.
Soldering fumes make you stronger!
Jirka
Příspěvky: 55
Registrován: 18 lis 2015, 12:06

Re: kompas HMC5883L

Příspěvek od Jirka »

Omlouvám se pokud bude moje reakce zobrazena 2x
Zdravím a díky oběma za pomoc.
Přidržím se zatím druhého protože pokud jsem to dobře pochopil mám snad představu jak to v Arduinu realizovat. Tak daleko jsem se ale nedostal.
Mám zapojení kde osy X=světová strana, Y, Z reagují na náklon (to reaguje zdá se dobře).
ALE i pokud X osu nechám bez změny polohy a změním náklon, změní se mi i data z X.
AlesH
Příspěvky: 323
Registrován: 25 úno 2013, 09:18

Re: kompas HMC5883L

Příspěvek od AlesH »

Ano. Samotný magnetometr funguje dobře jen "na rovině". Pokud chceš tzv. "3D kompenzovaný kompas", tak je třeba ten případný náklon určit nějakým jiným nezávislým senzorem, obvykle akcelerometrem (a pak podle toho výsledky z magnetometru přepočítat). Samotný HMC5883L na to tedy nestačí. Pro "3D kompas" se mohou použít kombinované senzory jako např. LSM303 (magnetometr + akcelerometr). Dostupné Arduino knihovny pro tyto kombinované senzory už většinou obsahují i ten přepočet podle náklonu (tedy "3D kompenzaci náklonu").
Jirka
Příspěvky: 55
Registrován: 18 lis 2015, 12:06

Re: kompas HMC5883L

Příspěvek od Jirka »

Díky, to je zatím na mě moc. Poštuduji.
Odpovědět