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

Visual walkthroughPID tuning — Ziegler-Nichols, loop shaping

2,289 words10 min read↑ Read in English

3.5.39 · D2 · Physics › Guidance, Navigation & Control (GNC) › PID tuning — Ziegler-Nichols, loop shaping

Yeh page assume karta hai ki tumne kabhi Bode plot, complex number, ya letter nahi dekha. Hum sab kuch banate hain. Jo prerequisites hum lean karte hain lekin re-explain bhi karte hain: PID controller basics, Bode plot & frequency response, Stability margins (gain & phase margin), aur Nyquist stability criterion.


Step 1 — "Sustained oscillation" ka matlab kya hai

KYA HAI. Socho ek loudspeaker jo us microphone ke paas rakha hai joh use feed karta hai. Ek chhoti si hum mic mein jaati hai, amplify hoti hai, speaker se bahar aati hai, wapas mic mein jaati hai, phir amplify hoti hai... Agar har chakkar mein awaaz bilkul utni hi tej rehti hai jitni pehle thi, toh tum ek steady screech paate ho jo na badhti hai aur na marti hai. Yahi ek sustained oscillation hai.

KYUN. Ziegler-Nichols ek control loop ko purpose se us exact edge par push karta hai. Thoda neeche, loop stable hai lekin sluggish. Thoda upar, yeh explode karta hai. Bilkul edge par plant ek clean frequency par ring karta hai — aur woh frequency plant ki apni timing ka fingerprint hai.

PICTURE. Loop ke around ek baar bheje gaye wobble ke teen fates:

Figure — PID tuning — Ziegler-Nichols, loop shaping
  • Red, growing: har lap louder → unstable.
  • Teal, shrinking: har lap quieter → stable, wobble mar jaata hai.
  • Plum, constant: har lap identical → woh knife-edge jise hum dhundh rahe hain.

Step 2 — Hum loop ko pure sine wave se kyun test karte hain

KYA HAI. "Ek chakkar mein loop ek wobble ko kaise badalta hai?" yeh probe karne ke liye, hum plant ko sabse simple possible wobble feed karte hain: ek pure sine wave , jahan

  • time hai seconds mein,
  • (Greek "omega") angular frequency hai — sine kitni tez spin karta hai, radians per second mein. Bada = fast wiggle, chhota = slow sway.

KYUN. Ek linear plant ki ek beautiful property hai: usse frequency ki sine feed karo, aur transients ke marne ke baad tumhe wapas usi frequency ki sine milti hai — bas scaled (louder ya softer) aur shifted (time mein delayed). Koi nayi frequencies nahi aatein. Toh ek plant ki poori personality do numbers per frequency se capture hoti hai: ek size aur ek shift. Yahi reason hai ki hum frequency response ki taraf kyun jaate hain aur, maan lo, differential-equation solver ki nahin — sines linear systems ko diagonalise karti hain.

PICTURE. Input sine (teal) andar, output sine (orange) bahar: same frequency, chhoti, aur lagging.

Figure — PID tuning — Ziegler-Nichols, loop shaping

Step 3 — se milo: "size aur shift" ke liye bookkeeping trick

KYA HAI. Size aur shift ko do alag numbers se track karna clumsy hai. Mathematicians unhe ek complex number mein bundle karte hain. Ek flat map par ek point ki tarah socho: origin se uski distance size encode karti hai, aur woh joh angle banata hai woh shift encode karta hai.

Symbol us map par ek unit "north" (seedha upar) wale point ka sirf naam hai — purely rotational direction. (Electrical engineers likhte hain; mathematicians likhte hain.) likhne ka matlab hai "us rotational direction mein rate par spin karo."

KYUN. Is trick se, frequency par plant ka gain aur phase dhundhne ke liye tum literally uske transfer function mein substitute karte ho. Ek akela map-point bahar aata hai jiska length gain hai aur jiska angle phase hai. Ek substitution ek poore sine experiment ki jagah le leta hai.

PICTURE. Complex map: length = gain, angle = phase.

Figure — PID tuning — Ziegler-Nichols, loop shaping

Step 4 — Knife-edge condition: gain aur phase

KYA HAI. Ek wobble ko loop ke around ek baar bhejo. Controller yahan pure proportional hai, , toh open-loop response hai . Ek lap wobble ki size ko se multiply karta hai aur use se shift karta hai.

Feedback loop mein signal wapas aata hai subtracted (error reference output). Subtraction khud ek flip hai — extra ka shift. Toh wobble khud ko perfectly reinforce karta hai jab:

Yahan woh special frequency hai jahan dono ek saath hold karte hain.

KYUN. Agar returned size exactly hai (gain condition) aur shift wobble ko wapas khud ke saath line up karta hai (phase condition), toh wobble hamesha ke liye perfectly copy hota hai — yahi Step 1 ki plum curve hai. Bada → bada return → growing (red). Chhota → shrinking (teal).

PICTURE. Phase clock se tak slide karta hai jaise badhta hai; crossing point hai.

Figure — PID tuning — Ziegler-Nichols, loop shaping

Step 5 — ka phase ek triangle se banana

KYA HAI. Hamara test plant hai . substitute karo (Step 3):

Ek building block dekho, . Complex map par (Step 3) yeh point east aur north hai — ek right triangle ka corner jiska base aur height hai.

Triangle kyun, aur kyun? Us point ka angle wahi hai jo humein phase ke liye chahiye. Ek right triangle mein, ratio corner angle ka tangent hai — tangent triangle ki steepness measure karta hai. "Yeh steepness kis angle ki hai?" ko invert karne ke liye, hum use karte hain (tangent ka undo button). Yahi ek aur sirf yehi tool hai jo side-ratio ko wapas angle mein turn karta hai. Toh:

Teen copies, aur ek flip. Plant woh block cubed aur denominator mein hai:

  • teen copies multiply karna unke angles ko add karta hai → ;
  • denominator mein hona (ek ) angle ko negate karta hai → minus sign.

PICTURE. Base-, height- triangle, uska angle , aur teen copies stack hote hue.

Figure — PID tuning — Ziegler-Nichols, loop shaping
  • base ("+1" real part), height ("" imaginary part);
  • corner angle , aur hum teen lete hain, phir sign flip karte hain.

Step 6 — ke liye solve karo: woh angle jo hit kare

KYA HAI. Phase ko knife-edge value radians par set karo:

se divide karne par: har triangle ko exactly contribute karna hoga. Ab arctan undo karo — "kaunsa angle deta hai?" — dono sides ka tangent lete hue:

KYUN. Phase se shuru hua (koi wiggle nahi → koi lag nahi) aur bina bound ke neeche slide karta hai jaise badhta hai, kyunki ki taraf chadh'ta hai aur hamare paas teen hain (total ki taraf). Kahi beech mein yeh se zaroor guzarega — aur yeh exactly ek baar karta hai, par. Single crossing = single ultimate frequency = ek clean period. (Degenerate check: sirf ek ya do poles wale plant mein, phase ya sirf limit mein jaata hai, finite par tak sach mein kabhi nahi pohuncha — toh pure-P oscillate nahi kar sakta; koi finite nahi hai. Humein yahan teen lags chahiye, yahi reason hai ki test plant cubed hai.)

PICTURE. Phase curve ek baar line ko cross karti hai, par.

Figure — PID tuning — Ziegler-Nichols, loop shaping

Step 7 — ke liye solve karo: woh gain jo size ko exactly banaye

KYA HAI. Ab size. Map par ki length triangle ka hypotenuse hai, (Pythagoras). Cubing teen lengths multiply karta hai; denominator invert karta hai:

par hamare paas hai, toh :

Knife-edge (Step 4) demand karta hai , toh

\boxed{\;T_u=\frac{2\pi}{\omega_u}=\frac{2\pi}{\sqrt3}\approx3.63\ \text{s}\;}$$ **KYUN.** $\omega_u$ par plant already ek wobble ko per lap uski size ke $1/8$ tak shrink karta hai. Lap ko *break even* banane ke liye (size $\times 1$), proportional knob ko $8$ ka missing factor supply karna hoga. $K_p$ ko $8$ se past turn karo aur har lap grow karta hai — instability. $8$ se neeche, har lap fade hota hai — stable. Exactly $8$ plum curve hai. **PICTURE.** Hypotenuse $\sqrt{\omega^2+1}$, $\sqrt3$ par evaluate karne par length $2$ milti hai, cube karke $8$, invert karke $1/8$. ![[deepdives/dd-physics-3.5.39-d2-s07.png]] --- ## Step 8 — $K_u,T_u$ se teen PID knobs tak **KYA HAI.** Apna fingerprint $(K_u,T_u)=(8,\,3.63)$ classic ZN **PID** row mein feed karo (parent §2): $$K_p=0.6\,K_u=4.8,\qquad T_i=\frac{T_u}{2}=1.81\ \text{s},\qquad T_d=\frac{T_u}{8}=0.454\ \text{s}.$$ Integral/derivative *times* ko woh gains mein convert karo jo code actually use karta hai: $$K_i=\frac{K_p}{T_i}=\frac{4.8}{1.81}\approx2.65,\qquad K_d=K_p\,T_d=4.8\times0.454\approx2.18.$$ **Yeh fractions kyun?** $K_p=0.6K_u$ gain ko unstable $8$ se $4.8$ tak back off karta hai, stability margin kharidta hai. Dono time constants $T_u$ se tied hain kyunki $T_u$ *hi* plant ki natural ringing period hai — integral lagbhag aadhe ring mein act karta hai, derivative ek eighth ring mein, toh har term plant ki apni clock ke scale par hai, koi arbitrary number nahi. Yahi exactly woh handoff hai [[Stability margins (gain & phase margin)|margin]]-based checking ki taraf aur, agar tum deeper jaana chahte ho, [[Root locus method]] ya [[Bode plot & frequency response]] loop shaping ki taraf. **PICTURE.** Pipeline: phase eq → $\omega_u$ → gain eq → $K_u$ → table → teen knobs. ![[deepdives/dd-physics-3.5.39-d2-s08.png]] > [!mistake] Bhool jaana ki table kaun sa form use karta hai > ZN table $T_i,T_d$ (times) deta hai, **$K_i,K_d$ (gains) nahi**. Times ko seedha ek > $K_i,K_d$ controller mein plug karo aur tum $K_p$ ke factors se off ho jaoge. Hamesha convert karo: > $K_i=K_p/T_i$, $K_d=K_pT_d$. --- ## Ek-picture summary Upar ki sab cheezein, ek canvas par: woh triangle jisne phase banaya, single $-180°$ crossing jisne $\omega_u=\sqrt3$ fix kiya, woh hypotenuse jisne $K_u=8$ fix kiya, aur teen knobs mein jaate arrows. ![[deepdives/dd-physics-3.5.39-d2-s09.png]] > [!recall]- Feynman retelling — ek dost ko batao > Hum jaanna chahte hain woh ek speed kaunsi hai jis par hamara plant "gaana" shuru karega agar > hum use push karein. Ek plant ek pure wiggle par react karta hai *same-speed* wiggle wapas deke, > bas chhoti aur delayed. Hum "chhoti" aur "delayed" ko ek map par ek single point mein bundle > karte hain ($s=j\omega$ trick). Hamara plant teen identical lag-blocks hai; har block base $1$ aur > height $\omega$ wala right triangle hai, aur uska angle $\arctan\omega$ hai. Teen unka, negative > flip kiya, plant ki delay $-3\arctan\omega$ deta hai. Ek feedback loop gaata hai jab signal wapas > same size mein aata hai *aur* khud ke saath line up hota hai; feedback subtraction already use > $180°$ flip karta hai, toh hum chahte hain ki plant $180°$ aur delay add kare. $-3\arctan\omega=-180°$ > set karne ka matlab hai har triangle $60°$ hai, toh $\omega_u=\tan60°=\sqrt3$. Us speed par plant > wiggle ko $1/8$ tak shrink karta hai, toh hum P-knob ko $8$ tak turn karte hain break even karne > ke liye — yahi $K_u=8$ hai. Ek wiggle $2\pi/\sqrt3\approx3.63$ s leta hai, yahi $T_u$ hai. Woh > do numbers Ziegler-Nichols table ko do aur $K_p,K_i,K_d$ bahar aate hain. Yahi poori trick hai: > **sing dhundho, uski pitch aur loudness padho, knobs lookup karo.** > [!recall]- Numbers to remember > Plant $1/(s+1)^3$ ::: $\omega_u=\sqrt3$, $K_u=8$, $T_u\approx3.63$ s. > Phase pehle kyun? ::: Phase equation mein koi $K_p$ nahi hai, toh akela yahi $\omega_u$ pin karta hai. > Pure-P single-lag plant par kyun fail karta hai? ::: Uska phase finite $\omega$ par kabhi $-180°$ tak nahi pohuncha, toh koi finite $K_u$ exist nahi karta.