Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 04. 02. 2013 15:10

pavelk
Příspěvky: 123
Reputace:   
 

DCM matice

Dobrý den
Řeším jeden problém s rotačními maticemi.
Mám matici M, která mi popisuje jak je R/C model natočen vúči počáteční pozici (když se připojí řídící jednotka k napájení, resp = cca země). Tato matice je měněna v každém cyklu programu za pomocí rotačních matic, kde vstup dat tvoří přesný MEMS senzor.

Pak mám matici C, která mi popisuje chtěnou pozici modelu (jak bych chtěl, aby byl model ve vzduchu úhlově natočen), tuto matici ovlivňuje pouze to, co dělá pilot na páčkách vysílače.

Mám tedy dvě matice, které integrují dva ruzné vstupy za pomocí rotačních matic a mám tak dvě Direction Cosine Matrices.

Můj problém spočívá v tom, že potřebuji hodnoty, je jedno jakých jednotek a ty hodnoty mi mají udávat odchylku matice M od matice C. Tato odchylka má jednoduše řečeno udávat jak moc je model odkloněn od chtěné pozice, resp. úhlu natočení modelu, z matice C. Pomocí této odchylky a regulace pak za pomocí serv na modelu ho budu schopen vyrovnat do té pozice, jak si přeje pilot. Chci z těchto matic prostě dostat odchylku od setpointu (matice C).

Abych dostal úhel natočení z obou DCM pro osu X, Y a Z, využívám funkce atan2 a asin. Jsou to matice 3x3, v každém cyklu se pro zmenšení chyby normalizuji, vše potřebné o DCM lze zjistit asi tady: http://www.starlino.com/dcm_tutorial.html
O rotačních maticích zase zde: http://en.wikipedia.org/wiki/Rotation_matrix

Když obě matice mezi sebou vynásobím, tak sice to funguje, ale jen za předpokladu, že je model v počáteční pozici. Když model např. otočím vzhúru nohama (provedu rotaci kolem osy Y o 180°), i když jsem tak také nasměroval matici C, tak poté to co dostávám je, že tato získaná odchylka reaguje obráceně, než správně má.
Takže potřebuji, aby to bylo nezávislé na pozici vuči zemi, ale závislé vůči modelu, tedy násobení těchto matic není správné řešení.

Uměl by mi někdo poradit?
Velice děkuji

Offline

  • (téma jako vyřešené označil(a) pavelk)

#2 04. 02. 2013 22:37 — Editoval pavelk (05. 02. 2013 00:14)

pavelk
Příspěvky: 123
Reputace:   
 

Re: DCM matice

↑ pavelk:
Tak to vypadá, že mám řešení: $M\cdot C^{-1}$

Offline

 

#3 05. 02. 2013 22:45

etchie
Příspěvky: 159
Pozice: študent
Reputace:   
 

Re: DCM matice

↑ pavelk:

Gratulujem k samovyriešeniu.
Toto je krásny príklad toho, v čom je sila tohto fóra. Človek je nútený sformulovať a popísať problém dostatočne precízne, pretože ho predkladá "celému svetu". Samotná správna formulácia je potom často kľúčom k samovyriešeniu. Niekedy to môže zájsť až tak ďaleko, že si stačí problém iba sformulovať v hlave (ale so zámerom to sem napísať) a zatiaľ čo sa človek chystá písať to, tak už sa mu začína objavovať vlastná odpoveď.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson