Exercises — Attitude estimation — triad method (two vector measurements)
3.5.12 · D4· Physics › Guidance, Navigation & Control (GNC) › Attitude estimation — triad method (two vector measurements)
Shuru karne se pehle, ek reminder — yahan hum jo bhi symbols use karte hain, unka plain words mein matlab:
Neeche ke figures ko kaise padhein. Teen step-figures geometry visually walk karte hain: pehle ek triad ki cross-product construction (s01), phir ek rotation kaise reference triad ko body triad par le jaata hai (s02), aur aakhir mein woh danger zone jahan do vectors parallel ho jaate hain (s03). Solve karte waqt inhe refer karte raho — text specific arrows ki taraf point karta hai.

s01 dekho: magenta arrow axis 1 ban jaata hai bilkul unchanged; violet arrow hai (do orange/magenta inputs ke plane ke perpendicular); navy arrow right-handed set complete karta hai. Har exercise jo "triad build karna" karta hai, woh yahi picture alag numbers ke saath kar raha hai.
Level 1 — Recognition
L1.1
Ek-ek sentence mein batao, ek vector measurement kyun kaafi nahi hai aur do kyun kaafi hain.
Recall Solution
Ek kaafi nahi: ek akela known direction do "aiming" angles fix karta hai lekin spacecraft ko us direction ke baare mein spin karne ki freedom de deta hai — woh spin dikhta nahi, isliye 3 rotational freedoms mein se 1 unknown rehta hai. Do kaafi hain: doosra non-parallel direction us spin ke saath ghisit jaata hai, isliye uski position last angle expose karti hai — do non-parallel arrows teen saare rotational freedoms lock kar dete hain.
L1.2
aur diye gaye hain, pehle do triad axes aur compute karo.
Recall Solution
— hum trusted (slot-1) vector ko hamesha axis 1 rakhte hain. Cross product: . Iski length hai, isliye normalizing se kuch nahi badlta: Yeh literally s01 picture hai jisme , hai.
L1.3
Sahi ya galat: box triad axes ko apni rows mein store karta hai.
Recall Solution
Galat. Inhe columns mein store kiya jaata hai: . Yeh isliye matter karta hai kyunki column-by-column kaam karna chahiye (); rows se woh reading toot jaayegi.
Level 2 — Application
Yeh karte waqt s02 dekhte raho: yeh finished reference triad aur wahi triad rotation ke baad body frame mein jaata hua dikhata hai — exactly yahi karta hai, column by column.
L2.1
Reference: , . Body (true attitude = about , right-hand rule): , . Dono triads build karo aur nikalo.
Recall Solution
Reference triad (parent note ki tarah): ; isliye ; . Body triad: ; isliye ; . Multiply : Sign check convention ke saath: , ko bhejaata hai — exactly ✅, aur ✅. Counter-clockwise (looking down ), jaisa promise tha.
L2.2
Reference: , . Body: , . nikalo aur rotation identify karo, sign explicitly batao.
Recall Solution
Reference: ; isliye ; . Body: ; isliye ; . : Kaun sa sign? Hamare right-hand rule ke under, positive -rotation hai kyunki , ko sign pattern ke saath -aur-waapis bhejta hai. Hamare mein opposite off-diagonal signs hain, isliye yeh hai ke baare mein clockwise turn (equivalently ke baare mein ). Seedha verify karo: ✅, ✅. Lesson: akele numbers turn direction nahi batate — pehle convention fix karo, phir off-diagonal pattern se sign padho.
L2.3
, ke liye ( separation), compute karo aur confirm karo ki yeh ke barabar hai.
Recall Solution
. Length ✅. Yeh cross-product length ka geometric meaning hai: yeh separation angle measure karta hai.
Level 3 — Analysis
L3.1
Dikhao ki roles swap karna ( aur ) generally alag deta hai jab data noisy ho, lekin same deta hai jab noise-free ho. Explain karo kyun.
Recall Solution
Noise-free: agar exactly dono ke liye hain, toh dono triads exact rotated copies hain chahe hum koi bhi vector "1" kahlayein; TRIAD dono taraf se recover karta hai, isliye answer identical hai. Noisy: TRIAD slot 1 ko exactly honor karta hai aur slot 2 ka angle throw away karta hai. Noisy vector ko slot 1 mein daalo aur uski poori error mein jaati hai; slot 2 mein daalo aur sirf uska plane bachta hai. Alag information discard hoti hai, isliye dono estimates differ karti hain. Conclusion: method asymmetric hai — hamesha accurate sensor ko slot 1 banao.
L3.2
Cross product ki length hoti hai. Jab do reference vectors parallel hone lagte hain (), ka kya hota hai, aur TRIAD wahan unreliable kyun ho jaata hai?
Recall Solution
. Hum normalize karne ke liye isi se divide karte hain, isliye numerator mein koi tiny measurement wobble se amplify ho jaati hai, jo blow up karta hai. Geometrically (s03 dekho): do near-parallel arrows apna common plane bahut loosely define karte hain, isliye perpendicular wildly jitter karta hai. Best conditioning ke paas hoti hai jahan sabse bada aur stable hota hai.
s03 dekho: jab orange arrow magenta ki taraf swing karta hai, toh violet cross-product arrow zero length ki taraf shrink hota hai — wahi vanishing arrow hai jisse tum divide karte ho, isliye danger zone noise ko itna amplify karta hai.
L3.3
Prove karo ki , satisfy karta hai aur hai (yani yeh ek genuine rotation hai, Rotation Matrices and SO(3) ka member).
Recall Solution
Dono ke orthonormal columns hain, isliye aur . Toh
=M_bM_r^{\mathsf T}M_rM_b^{\mathsf T}=M_b\,I\,M_b^{\mathsf T}=I.$$ Determinant ke liye: har triad right-handed cross product se close ki gayi thi ($\hat{\mathbf t}_3=\hat{\mathbf t}_1\times\hat{\mathbf t}_2$), jo $\det M_r=\det M_b=+1$ force karta hai. Kyunki determinants multiply hote hain, $\det A=\det M_b\cdot\det M_r^{\mathsf T}=(+1)(+1)=+1$. ✅ Ek proper rotation.Level 4 — Synthesis
L4.1
Ek sun sensor (Sun Sensors and Magnetometers) accurate direction deta hai; ek magnetometer noisier deta hai. Reference: sun , field . Measured (is drill ke liye noise-free): , . Kaun sa vector slot 1 mein jaata hai, aur kya hai?
Recall Solution
Accurate sun vector ko slot 1 mein daalo (most-trusted → slot 1): , ; , . Reference: ; isliye ; . Body: ; isliye ; . : Check: ✅, ✅. Yeh ek valid rotation hai (), axes ko cyclically permute karta hai.
L4.2
TRIAD sirf do vectors use karta hai. Wahba's Problem (jise QUEST algorithm ya Davenport q-method solve karta hai) bahut saare weighted vectors ko optimally blend karta hai. Ek paragraph mein batao ki TRIAD kya sacrifice karta hai aur in methods ke comparison mein kya gain karta hai.
Recall Solution
Sacrifice: TRIAD suboptimal hai — yeh ek vector ko poori tarah trust karta hai aur slot 2 ka angle discard karta hai, isliye yeh Wahba's cost function ki tarah dono measurements par weighted least-squares error minimize nahi karta, aur yeh teen ya zyada sensors fuse nahi kar sakta ya per-sensor confidence weights apply nahi kar sakta. Gain: yeh closed-form aur sasta hai — sirf cross products, ek ek normalization, aur ek transpose-multiply, bina kisi eigenvalue solve ke (jo QUEST algorithm aur Davenport q-method dono require karte hain). Isliye TRIAD coarse acquisition ke liye, fast on-board sanity checks ke liye, ya ek iterative estimator jaise Kalman Filter — Attitude ko initialize karne ke liye ideal hai. Summary mein: TRIAD Wahba/QUEST/Davenport ka statistically-optimal, multi-sensor answer speed aur simplicity ke liye trade karta hai — perfect jab tumhare paas exactly do vectors hain aur ek clearly zyada trusted hai.
L4.3
L4.1 ke se, kya corresponding quaternion (Quaternion Attitude Kinematics) unique hai? Scalar part magnitude batao use karke, jahan hai.
Recall Solution
. Rotation angle satisfy karta hai , isliye , jo deta hai. Toh . Quaternion unique nahi hai: aur same rotation describe karte hain (double cover), isliye aur dono valid hain.
Level 5 — Mastery
L5.1 ke liye s03 samne rakhho — yeh do reference arrows ko parallel hote hua aur cross-product arrow ko zero hote hua dikhata hai.
L5.1
Reference vectors exactly collinear hain: . Precisely dikhao kahan TRIAD break karta hai aur describe karo ki attitude ka kaun sa piece undetermined ho jaata hai.
Recall Solution
, length . Normalizing ke liye se divide karna padta — undefined, isliye form nahi ho sakta aur TRIAD fail ho jaata hai. Physically: ek akela direction sirf 3 mein se 2 freedoms fix karta hai; us common axis ke baare mein spin completely unobservable hai. Koi bhi algebra ise recover nahi kar sakta — tumhe genuinely independent doosri direction add karni hogi.
L5.2
Doosra body measurement noisy hai: true separation hai lekin , se par aata hai. Slot 1 exact hai, argue karo ki estimated first body axis mein is error ka zero contribution hai, aur sirf plane tilt hota hai.
Recall Solution
Construction se , jisme bilkul involve nahi — isliye uska estimate noise se untouched rehta hai (zero contribution). Noisy sirf cross product ke through enter karta hai, jise phir length 1 tak normalize kiya jaata hai. Normalizing magnitude information delete kar deta hai; jo bachta hai woh plane ki orientation hai, jise shift thoda tilt karta hai. Isliye first-order error sirf second aur third axes (plane) mein appear karta hai, jabki axis 1 exact rehti hai. Accurate sensor ko slot 1 assign karne ki poori wajah yahi hai: uski poori precision seedhi estimate mein pass hoti hai, aur weaker sensor sirf remaining plane ko thoda tilt kar sakta hai — ek chhota, bounded effect.
L5.3
Noise-free data diya gaya hai: , , aur uska rotation angle nikalo se (sign batao).
Recall Solution
Reference (L2.1 jaisa): . Body: ; , already unit, isliye ; . — yeh hai (top row mein positive off-diagonal → ke baare mein counter-clockwise). . Toh deta hai , isliye . ✅ Consistent — body pair, reference pair ko about rotate karke milta hai.
Recall Page band karne se pehle ek-line self-test
kyun aur kyun nahi? ::: Kyunki rotation reference columns ko body columns mein map karta hai (), isliye orthonormality use karke — ka aisa koi meaning nahi. TRIAD literally zero se kahan divide karta hai? ::: Jab (ya body pair), cross product ki length hoti hai. Slot 1 mein kaun sa sensor jaata hai? ::: Zyada accurate wala — ise exactly honor kiya jaata hai aur uski poori precision estimate mein pass hoti hai.