3.5.15 · D2 · HinglishGuidance, Navigation & Control (GNC)

Visual walkthroughIMU — integrated accelerometer + gyroscope

3,367 words15 min read↑ Read in English

3.5.15 · D2 · Physics › Guidance, Navigation & Control (GNC) › IMU — integrated accelerometer + gyroscope

Hum EK chain of reasoning ke peechhe hain, abhi simple words mein:

Isse left se right padho. Har word ek real symbol tab banta hai jab uska step use earn karta hai — isi chain ka symbol-laden version final summary figure hai, jab tak har letter define nahi ho jaata.


Step 1 — Ek box ke andar ek spring actually kya feel karti hai

KYA. Ek tiny ball (proof mass) ko imagine karo jo ek sealed box ke andar spring se latkhi hui hai. Yeh box accelerometer hai. Electronics sirf ek cheez measure kar sakti hai — spring kitni zyada ball ko push kar rahi hai.

KYUN. Log kehte hain "accelerometer acceleration measure karta hai" — lekin device ke paas bahar dekhne ki koi window nahi hai. Woh ground ya sky nahi dekh sakta. Usse sirf apni spring ki squeeze pata hai. Toh koi bhi maths se pehle hume poochhna chahiye: woh spring squeeze kiske barabar hai?

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Do boxes. Left mein, ek box table par rakha hai: gravity (, plum arrow) ball ko neeche kheenchti hai, toh spring ko use upar pakadne ke liye push karna padta hai — spring compressed hai, sensor ek push read karta hai. Right mein, wahi box free-fall mein: kuch bhi ball ko nahi pakad raha, spring relaxed hai, reading zero hai.


Step 2 — Spring squeeze ko equation mein badalna

KYA. Ball ke liye Newton ka law likho, phir spring ko isolate karo — kyunki spring hi sirf sense ki jaati hai.

KYUN. Humein ek formula chahiye jo sensed quantity () ko us cheez se link kare jo hum actually chahte hain (true acceleration ). Newton woh bridge hai.

Ek inertial frame mein ball follow karti hai:

Har term ko se divide karo aur use karo:

Boxed result ka har term: woh hai jo chip report karta hai; woh true acceleration hai jo hume chahiye; gravity vector hai (down point karta hai, toh upar point karta hai). Equation kehti hai: sensor true acceleration read karta hai jisme se gravity hata di gayi ho.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Vertical acceleration ki ek number line. Rest par (): (upar point karta hai). Free-fall mein (): . Yeh Step 1 ke donon boxes se exactly match karta hai.


Step 3 — Rotation ke liye cross product kyun chahiye

KYA. Ek rigid body lo jo ek axis ke around spin kar rahi hai. Centre se position par usse chipka ek point ek circle sweep karta hai. Uski velocity hai .

KYUN. Gyro humein deta hai (box kitni tez spin kar raha hai, aur kis axis ke around). "Spin rate" ko "orientation kaise change hoti hai" mein badalne ke liye, hume woh rule chahiye jo spinning ko motion se connect kare. Woh rule cross product hai.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Teal axis hai. Orange arm hai. Burnt-orange velocity arrow circle ke tangent hai — aur ke plane ke perpendicular. Note karo axis par wala point (grey dot) jiska velocity zero hai.


Step 4 — Cross product ko ek matrix mein pack karna

KYA. "" ko matrix multiplication ke roop mein rewrite karo.

KYUN — aur har axis ka cross product haath se kyun nahi karte? Orientation ek matrix hai: uske teen columns box ke teen body axes hain jo world coordinates mein likhe hain. Box ko spin karne ke liye hume un teeno column-vectors ko rotate karna hoga, aur har ek ki tarah change hoga. Hum har tick mein teen alag cross products compute kar sakte — lekin ek zyada saaf sachai hai. "Is vector ko se cross karo" operation vector mein linear hai: yeh follow karta hai. 3-vectors par har linear operation ek fixed matrix hoti hai. Toh teen haath se banaye cross products ki jagah, ek matrix ek baar mein sab vectors ke liye kaam karta hai — aur, zaroori baat, ek matrix doosri matrix se multiply ( ya ) teeno columns ko ek standard operation mein process karta hai jo computer pehle se tez karna jaanta hai. Isliye hum cross product ko skew-symmetric matrix ke roop mein package karte hain:

Ise kaise padhen: diagonal par sab zeros hain (ek vector khud se cross hone par zero hota hai), aur off-diagonal entries ke components hain alternating signs ke saath. Kisi bhi vector ko is matrix se multiply karo aur exactly milta hai — par try karo aur milega, yaani cross product.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Left: skew matrix jisme har entry labeled hai (, , …) aur zero diagonal highlighted hai. Right: wahi matrix ek vector ko "kha" ke "ugal" rahi hai — prove karte hue ki matrix disguise mein cross product hi hai.


Step 5 — Orientation har tick kaise change hoti hai (aur renormalize kyun karna padta hai)

KYA. Woh law batao jo ko time mein aage badhata hai, uska practical one-step update, aur woh clean-up jo usse chahiye.

KYUN. Gyro directly orientation nahi deta — woh spin ki rate deta hai. Rate ko orientation mein integrate karna hoga, bilkul jaise speed ko distance mein integrate karte hain. Rule hai:

Har term: ka matlab hai "orientation matrix per second kitna change hota hai". Yeh current orientation ko spin-matrix se multiply karne ke barabar hai — geometrically, "current attitude raho, phir ke around thoda twist apply karo".

Ek chote time step ke liye, exact update matrix exponential use karta hai; tiny-step approximation hai:

Har term: abhi ki orientation hai; "koi change nahi" hai; ek tick mein accumulated small twist hai. Inhe add karo aur aglee tick ki orientation milti hai.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Ek box teen successive ticks par draw kiya, har baar teal axis ke around thoda aur rotate hua. Frames ke beech, chhota orange twist arrow label hoke woh small rotation dikhata hai jo apply ki gayi. Faint dashed box woh slight stretch dikhata hai jo approximation introduce karti hai renormalization se pehle. Is repeated nudging ko strapdown mechanization kehte hain — sensor body se "strapped down" hai, toh uske axes uske saath rotate hote hain.


Step 6 — Push ko rotate karo, phir gravity wapas add karo

KYA. Ab jab pata hai, accelerometer ka (body frame mein) lo, use world mein rotate karo, aur true world acceleration recover karne ke liye gravity add karo.

KYUN. Step 2 se, . Lekin box se body coordinates mein nikla, har taraf tilted. Hum world gravity vector tabhi add kar sakte hain jab donon same frame mein hon. Toh pehle rotate karo.

Yahaan finally apna subscript earn karta hai: yeh true acceleration hai jo world frame mein express ki gayi hai.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Ek tilted box sense karta hai (teal, apne axes ke along). use world coordinates mein seedha karta hai (orange) ke roop mein. Plum gravity arrow add karne se still sensor ke liye woh exactly cancel ho jaata hai, deta hai — prove karta hai ki ek stationary tilted box accelerating nahi dikhta, jab ek baar rotate kar lo.


Step 7 — Map pe dot tak do integrations

KYA. World acceleration ko ek baar velocity ke liye integrate karo, dobara position ke liye — aur symbols earn karte hue.

KYUN. Acceleration velocity ka change hai; velocity position ka change hai. Yeh plain calculus hai — donon integrals "push" se "place" tak ki chain stack karte hain.

Yahaan world-frame velocity hai aur world-frame position hai — map pe dot.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Time ke upar teen stacked strips: constant (top), ramping (uska running area, middle), curving (area of the ramp, bottom). Har strip uske upar wale ki accumulated area hai — integration visible ho gayi. GPS ke bina yeh poora self-contained process Dead Reckoning hai.


Step 8 — Degenerate cases jo sab kuch barbad kar dete hain: bias drift

Har real sensor thodi constant matra se jhooth bolta hai, jise bias kehte hain. Do biases hain, aur woh chain ko alag-alag tarike se poison karte hain. Hum donon ko treat karte hain.

8a — Accelerometer bias akela: quadratic position error

KYA. Maano gyro perfect hai lekin accelerometer constant (m/s²) se zyada report karta hai, tab bhi jab box bilkul still ho.

KYUN. Woh fake acceleration seedha Step 7 ke donon integrals mein jaati hai — koi tilt ki zaroorat nahi:

Ek constant integrate hone par ramp banta hai (); woh ramp dobara integrate hone par parabola (). Toh sirf accel bias akela quadratic position blow-up deta hai.

8b — Gyro bias akela: cubic position error

KYA. Ab maano accelerometer perfect hai lekin gyro constant (rad/s) se zyada spin report karta hai, tab bhi jab still ho.

KYUN. Dekho yeh Steps 5 → 6 → 7 mein kaise cascade hota hai:

  • Tilt error seedha badhta hai: (constant bias ko ek baar integrate karna).
  • Woh tilt gravity ko galat taraf point karwata hai. angle se tilted ek frame gravity ka ek horizontal slice leak karta hai jiski value hai .
  • Ramp ko ek baar integrate karo → velocity error . Dobara integrate karo → position error:

kyun? Ek ramp () do baar integrate hone par ke do aur powers add ho jaate hain: . Cube isliye hai ki "tiny" gyro biases badi ho jaati hain — accel bias ke se bhi buri.

PICTURE.

Figure — IMU — integrated accelerometer + gyroscope

Teen curves ek plot par: linear tilt error (), quadratic accel-bias position error (), aur cubic gyro-tilt position error () sabse upar rocket kar raha hai. Cubic quadratic ko dwarf karta hai jo linear ko dwarf karta hai — yahi visual reason hai ki akela IMU long-term hopeless hai, aur isse GPS ya vision ke saath fuse karna padta hai.


Ek-picture summary

Figure — IMU — integrated accelerometer + gyroscope

Ek flow, paanch boxes, ab har symbol earned ke saath: gyro rate → integrate (renormalization ke saath) karke orientation → accelerometer ka rotate karo aur gravity add karo paane ke liye → integrate karke → integrate karke . Neeche do drift gremlins baithe hain: accel bias se badh raha hai, gyro bias se.

Recall Feynman retelling — plain words mein wapas bolke dikhao

Ek sealed box imagine karo jo bahar nahi dekh sakta. Andar ek spring par ek ball hai: usse sirf itna pata hai ki spring kitna push kar rahi hai — yahi specific force hai. Rest par spring ball ko gravity ke against pakadti hai, toh woh "upar" read karta hai; free-fall mein kuch nahi read karta. Us push ko real acceleration mein badalne ke liye gravity wapas add karni padti hai — lekin gravity world mein "down" point karti hai, aur box tilted hai, toh pehle tumhe jaanna hoga ki uska munh kis taraf hai. Yeh gyro ka kaam hai: woh batata hai box kitni tez spin kar raha hai, aur spinning-times-position ek cross product hai, jo — kyunki woh operation linear hai — hum ek chhoti skew matrix mein pack karte hain jo teen body axes ko ek baar mein handle karta hai. Orientation matrix ko har tick woh twist se nudge karo aur tumhe hamesha pata rahega "up" kaunsi taraf hai; lekin tiny-step nudge matrix ko slowly stretch karta hai, toh ise clean rotation mein wapas snap karna padta hai (renormalize) kabhi kabhi. Ab spring-push ko world coordinates mein rotate karo, gravity add karo — true acceleration. Ek baar integrate karo speed ke liye, dobara position ke liye: map pe ek dot, sirf spins aur squeezes se bana. Catch yeh hai: sensors thoda jhooth bolte hain. Ek steady accelerometer bias do baar integrate hokar ek error deta hai jo time squared ki tarah badhta hai; gyro bias ki ek whisper tumhara "up" tilt kar deti hai, aur chota tilt gravity ko angle ke proportion mein leak karta hai (), toh woh ramp do baar integrate hokar ek error deta hai jo time cube ki tarah badhta hai — pehle chhota, ek minute mein monstrous. Toh IMU par split-seconds ke liye lean karo aur GPS ya camera use karo ise honest rakhne ke liye.

Recall Quick self-test

Gyro data ko accelerometer data se pehle kyun handle karna padta hai? ::: Kyunki ko aur same frame mein chahiye; sirf gyro-derived hi ko world mein rotate kar sakta hai taaki gravity sahi tarah se add ho sake. Gyro-bias position error ki tarah kyun badhta hai jabki accel-bias ki tarah? ::: Accel bias ek constant hai jo seedha do integrals mein jaata hai (). Gyro bias pehle linear tilt mein integrate hota hai (), jo fake acceleration ka ek ramp leak karta hai ( via ); ramp ko do baar integrate karne se do aur powers aate hain (). Orientation matrix ko renormalize kyun karna padta hai? ::: Small-angle update exponential ke higher-order terms drop karta hai, toh columns unit length aur perpendicularity khote hain; baar baar karne par vectors ko purely rotate karne ki jagah warp karne lagta hai. Ise wapas snap karo (Gram–Schmidt / quaternion normalization). Ek stationary tilted accelerometer kya read karta hai, aur yeh "accelerating" kyun nahi hai? ::: Woh tilted gravity reaction read karta hai; world mein rotate karke add karne se milta hai — pehle rotate karo toh koi acceleration nahi.