Valentínska akcia je tu! Získaj až 80 % extra kreditov ZADARMO na náš interaktívny e-learning. ZISTIŤ VIAC:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia: Výpočet otočení pomocí tříosého kompasu

Aktivity
Avatar
Lukáš Křehula:15.6.2016 21:33

Ahoj,
nevím, zda to vůbec nějak jde určit ale doufám, že ano. Mám tříosý kompas GY-271, používám ho na raspbíčku a potřebuji pomoct s nějakým vzorcem, který by mi určil jak je zrovna natočený (nejlépe ve stupních)
Respektive, mám vyrobené robotické auto a potřeboval bych získat nějakou hodnotu při startu programu, po které se bude robot rychlostí motorů vyrovnávat zpátky na tuto hodnotu. Nejideálnější by bylo získávat 0 - 359 stupňů. Používám pouze 2 osy - Y, Z
Díky za nápady nebo pomoc.

 
Odpovedať
15.6.2016 21:33
Avatar
Martin Dráb
Tvůrce
Avatar
Martin Dráb:16.6.2016 0:49

Mrkni sem
http://www.robotpark.com/…_COMPASS.pdf
případně si najdi datasheet či prostuduj knihovnu, kteoru používáš na získávání informací z čidla. Tak se dozvíš, v jakém formátu ta data jsou.

Akceptované riešenie
+20 Skúseností
+2,50 kreditov
Riešenie problému
Hore Odpovedať
16.6.2016 0:49
2 + 2 = 5 for extremely large values of 2
Avatar
Odpovedá na Martin Dráb
Lukáš Křehula:16.6.2016 19:33

Díky, pomohlo mi to. Předtím jsem si toho nevšiml kvůli tomu, že je to kód pro arduino. Ještě jednou, díky :)

 
Hore Odpovedať
16.6.2016 19:33
Avatar
Martin Dráb
Tvůrce
Avatar
Odpovedá na Lukáš Křehula
Martin Dráb:16.6.2016 19:44

Jestli to chápu době, tak fígl je v tom, že to čidlo je natočené ve směru vektoru v = (x;y;z), kde x, y, z jsou příspěvky ve směru jednotlivých os. Řekl bych, že platí:

v = (x;0;0) + (0;y;0) + (0;0;z)

takže pak jen zbývá vypočítat úhly, což se děje díky definicy funce tangens (protilehlá odvěsna ku přilehlé). Jelikož tangens úhlů znáš a potřebuješ naopak vypočítat ty úhly, tak použiješ arcus tangens pro správné podíly hodnot x, y a z (to si nakresli, z toho by to mělo být vidět). Pak už je to jenom o tom přepočítat radiány na stupně.

Hore Odpovedať
16.6.2016 19:44
2 + 2 = 5 for extremely large values of 2
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 4 správy z 4.