หน้าแรก คลังความรู้ ระบบควบคุม Lead · Lag
Control Systems Engineering ดูครบทุกส่วน · 26 หน้า
// บทที่ 13.15 · ระบบควบคุม · Lead, Lag & Lag-Lead Compensators
ตัวชดเชย Lead, Lag และ Lag-Lead
เมื่อปรับเกนอย่างเดียวแล้วได้แค่ “เร็วแต่แกว่ง” หรือ “นิ่งแต่ช้าและไม่แม่น” ทางออกคือเพิ่มขั้วและศูนย์อย่างมีชั้นเชิงเพื่อดัดรูปทรงของรูทโลคัสและโบด Lead แก้ปัญหาช่วงความถี่กลาง (ความเร็ว เสถียรภาพ) Lag แก้ปัญหาความถี่ต่ำ (ความแม่นยำ) หน้านี้ออกแบบทั้งสองแบบทีละขั้นด้วยทั้งโบดและรูทโลคัส ตรวจทุกคำตอบด้วยการจำลอง และจบที่วงจรออปแอมป์ที่สร้างได้จริง สูตรใช้รหัส C
สรุปใน 30 วินาที
Lead: T s + 1 α T s + 1 , α < 1 \dfrac{Ts + 1}{\alpha Ts + 1},\ \alpha \lt 1 α T s + 1 T s + 1 , α < 1 เฟสสูงสุด sin ϕ m = 1 − α 1 + α \sin\phi_m = \frac{1 - \alpha}{1 + \alpha} sin ϕ m = 1 + α 1 − α ที่ ω m = 1 T α \omega_m = \frac{1}{T\sqrt\alpha} ω m = T α 1 วางให้ ω m \omega_m ω m = ครอสโอเวอร์ใหม่
Lag: T s + 1 β T s + 1 , β > 1 \dfrac{Ts + 1}{\beta Ts + 1},\ \beta \gt 1 βT s + 1 T s + 1 , β > 1 วางศูนย์ต่ำกว่าครอสโอเวอร์ 1 เดคาด เพิ่มเกนความถี่ต่ำ β \beta β เท่า
รูทโลคัส: lead ชดเชย “มุมที่ขาด” ให้โลคัสผ่านจุดที่ต้องการ · lag คู่ขั้ว-ศูนย์ใกล้ 0 เพิ่ม K v K_v K v โดยไม่ย้ายโลคัส
Lead ≈ PD + ฟิลเตอร์ · Lag ≈ PI · Lag-lead ≈ PID
ระดับ พื้นฐาน แนวคิดกลาง ออกแบบขั้นสูง งานจริง
ค้นหาสูตรในหน้านี้
โหมดฝึกทำ: ซ่อนวิธีทำ
ตัวชดเชยเฟสนำ (Lead) พื้นฐาน
ศูนย์อยู่ใกล้จุดกำเนิดกว่าขั้ว ช่วงระหว่างศูนย์กับขั้ว เฟสเป็นบวก (“นำ”) และเกนค่อย ๆ เพิ่มขึ้น 1 / α 1/\alpha 1/ α เท่า ใช้เฟสบวกนี้เติมเฟสมาร์จินตรงครอสโอเวอร์
C1 Lead compensator ตัวชดเชยเฟสนำ
G c ( s ) = K c T s + 1 α T s + 1 = K c α s + 1 / T s + 1 / ( α T ) , 0 < α < 1 G_c(s) = K_c\frac{Ts + 1}{\alpha Ts + 1} = K_c\alpha\,\frac{s + 1/T}{s + 1/(\alpha T)}, \qquad 0 \lt \alpha \lt 1 G c ( s ) = K c α T s + 1 T s + 1 = K c α s + 1/ ( α T ) s + 1/ T , 0 < α < 1
ศูนย์ที่ − 1 / T -1/T − 1/ T ขั้วที่ − 1 / ( α T ) -1/(\alpha T) − 1/ ( α T ) (ไกลกว่า 1 / α 1/\alpha 1/ α เท่า) · รูปแบบนี้ไม่เปลี่ยนเกน DC (G c ( 0 ) = K c G_c(0) = K_c G c ( 0 ) = K c ) ทำให้ใช้ K c K_c K c ตั้งความผิดพลาดอยู่ตัวแยกจากเรื่องเฟสได้
C2 Maximum phase lead เฟสนำสูงสุดและตำแหน่ง
sin ϕ m = 1 − α 1 + α ⟺ α = 1 − sin ϕ m 1 + sin ϕ m , ω m = 1 T α , ∣ j ω m T + 1 j ω m α T + 1 ∣ = 1 α \sin\phi_m = \frac{1 - \alpha}{1 + \alpha} \iff \alpha = \frac{1 - \sin\phi_m}{1 + \sin\phi_m}, \qquad \omega_m = \frac{1}{T\sqrt\alpha}, \qquad \left|\frac{j\omega_mT + 1}{j\omega_m\alpha T + 1}\right| = \frac{1}{\sqrt\alpha} sin ϕ m = 1 + α 1 − α ⟺ α = 1 + sin ϕ m 1 − sin ϕ m , ω m = T α 1 , j ω m α T + 1 j ω m T + 1 = α 1
ω m \omega_m ω m คือค่าเฉลี่ยเรขาคณิตของศูนย์และขั้ว (กึ่งกลางบนแกน log) · เกนที่ ω m \omega_m ω m เพิ่ม 10 log ( 1 / α ) 10\log(1/\alpha) 10 log ( 1/ α ) dB · ตาราง: ϕ m \phi_m ϕ m = 30° → α = 0.333 · 40° → 0.217 · 50° → 0.132 · 60° → 0.072
ออกแบบ Lead ด้วยโบด ทีละขั้น กลาง
C3 Lead design procedure (Bode) ขั้นตอนออกแบบ lead ด้วยโบด
เลือก K c K_c K c ให้ได้ K v K_v K v (หรือ K p , K a K_p, K_a K p , K a ) ตามสเปก วาดโบดของ K c G K_cG K c G หา PM เดิม
เฟสที่ต้องเติม ϕ m = PM ต้องการ − PM เดิม + ( 5 ∘ ถึง 12 ∘ ) \phi_m = \text{PM}_{\text{ต้องการ}} - \text{PM}_{\text{เดิม}} + (5^\circ\text{ ถึง }12^\circ) ϕ m = PM ต้องการ − PM เดิม + ( 5 ∘ ถึง 1 2 ∘ ) หา α จาก C2
ครอสโอเวอร์ใหม่ ω m \omega_m ω m คือความถี่ที่ ∣ K c G ( j ω ) ∣ = − 10 log ( 1 / α ) |K_cG(j\omega)| = -10\log(1/\alpha) ∣ K c G ( jω ) ∣ = − 10 log ( 1/ α ) dB (lead จะยกขึ้นมาเป็น 0 dB พอดี)
T = 1 ω m α T = \dfrac{1}{\omega_m\sqrt\alpha} T = ω m α 1 · ศูนย์ 1 / T 1/T 1/ T ขั้ว 1 / ( α T ) 1/(\alpha T) 1/ ( α T )
ตรวจ PM, GM และผลตอบสนองจริง ถ้าไม่ถึงให้เพิ่มค่าเผื่อแล้วทำซ้ำ
ตัวอย่าง C-1 · Lead ด้วยโบด พลานต์ G ( s ) = 4 s ( s + 2 ) G(s) = \dfrac{4}{s(s+2)} G ( s ) = s ( s + 2 ) 4 ต้องการ K v = 20 s − 1 K_v = 20\ \text{s}^{-1} K v = 20 s − 1 และ PM ≥ 50°
K v = lim s → 0 s K c G ( s ) = 4 K c 2 = 20 ⇒ K c = 10 K_v = \lim_{s\to0} sK_cG(s) = \dfrac{4K_c}{2} = 20 \Rightarrow K_c = 10 K v = lim s → 0 s K c G ( s ) = 2 4 K c = 20 ⇒ K c = 10 ได้ K c G = 40 s ( s + 2 ) K_cG = \dfrac{40}{s(s+2)} K c G = s ( s + 2 ) 40
PM เดิม: ω g c = 6.17 \omega_{gc} = 6.17 ω g c = 6.17 , PM = 18.0° น้อยเกินไป (step แกว่ง overshoot 60%)
เฟสที่ต้องเติม: 50 ∘ − 18 ∘ + 6 ∘ = 38 ∘ 50^\circ - 18^\circ + 6^\circ = 38^\circ 5 0 ∘ − 1 8 ∘ + 6 ∘ = 3 8 ∘ C2
α = 1 − sin 38 ∘ 1 + sin 38 ∘ = 0.384 1.616 = 0.2375 ( lead เพิ่มเกน 10 log 1 0.2375 = 6.24 dB ) \alpha = \frac{1 - \sin38^\circ}{1 + \sin38^\circ} = \frac{0.384}{1.616} = 0.2375 \quad (\text{lead เพิ่มเกน } 10\log\tfrac{1}{0.2375} = 6.24 \text{ dB}) α = 1 + sin 3 8 ∘ 1 − sin 3 8 ∘ = 1.616 0.384 = 0.2375 ( lead เพิ่มเกน 10 log 0.2375 1 = 6.24 dB )
หาความถี่ที่ ∣ K c G ∣ = − 6.24 |K_cG| = -6.24 ∣ K c G ∣ = − 6.24 dB: 40 ω ω 2 + 4 = 0.488 ⇒ ω m = 8.95 \dfrac{40}{\omega\sqrt{\omega^2 + 4}} = 0.488 \Rightarrow \omega_m = 8.95 ω ω 2 + 4 40 = 0.488 ⇒ ω m = 8.95 rad/s
T = 1 8.95 0.2375 = 0.229 T = \dfrac{1}{8.95\sqrt{0.2375}} = 0.229 T = 8.95 0.2375 1 = 0.229 · ศูนย์ − 4.36 -4.36 − 4.36 ขั้ว − 18.4 -18.4 − 18.4
G c ( s ) = 10 0.229 s + 1 0.0545 s + 1 = 42.1 s + 4.36 s + 18.4 G_c(s) = 10\,\frac{0.229s + 1}{0.0545s + 1} = \hlC{42.1\,\frac{s + 4.36}{s + 18.4}} G c ( s ) = 10 0.0545 s + 1 0.229 s + 1 = 42.1 s + 18.4 s + 4.36
PM = 50.6° ที่ ω g c = 8.95 \omega_{gc} = 8.95 ω g c = 8.95 rad/s, GM = ∞ · overshoot ลดจาก 60% เหลือ 21.5% และ t s t_s t s จาก 3.69 s เหลือ 0.62 s (เร็วขึ้น 6 เท่า) โดย K v = 20 K_v = 20 K v = 20 ตามสเปก
ตรวจด้วย python-control ทุกค่า ✓ · ครอสโอเวอร์ขยับจาก 6.17 ไป 8.95 rad/s คือเหตุผลที่ต้องเผื่อเฟส · ลองใส่ L = 42.1 ( s + 4.36 ) / ( s ( s + 2 ) ( s + 18.4 ) ) L = 42.1(s+4.36)/(s(s+2)(s+18.4)) L = 42.1 ( s + 4.36 ) / ( s ( s + 2 ) ( s + 18.4 )) ในแล็บท้ายหน้า
ตัวชดเชยเฟสล้าหลัง (Lag) พื้นฐาน
ขั้วอยู่ใกล้จุดกำเนิดกว่าศูนย์ ไม่ได้ใช้เฟส (ซึ่งเป็นลบ) แต่ใช้เกนที่ลดลง β \beta β เท่าที่ความถี่สูง หรือมองกลับกัน: เพิ่มเกน DC β \beta β เท่าโดยไม่ไปแตะช่วงครอสโอเวอร์ ความผิดพลาดอยู่ตัวจึงลดลง β \beta β เท่า
C4 Lag compensator ตัวชดเชยเฟสล้าหลัง
G c ( s ) = K c T s + 1 β T s + 1 = K c β ⋅ s + 1 / T s + 1 / ( β T ) , β > 1 G_c(s) = K_c\frac{Ts + 1}{\beta Ts + 1} = \frac{K_c}{\beta}\cdot\frac{s + 1/T}{s + 1/(\beta T)}, \qquad \beta \gt 1 G c ( s ) = K c βT s + 1 T s + 1 = β K c ⋅ s + 1/ ( βT ) s + 1/ T , β > 1
ที่ความถี่สูง เกนลดลง β \beta β เท่า (− 20 log β -20\log\beta − 20 log β dB) · วางศูนย์ 1 / T ≈ ω g c / 10 1/T \approx \omega_{gc}/10 1/ T ≈ ω g c /10 เพื่อให้เฟสล้าหลังที่ครอสโอเวอร์เหลือแค่ประมาณ 5°
C5 Lag design procedure (Bode) ขั้นตอนออกแบบ lag ด้วยโบด
เลือก K c K_c K c ให้ได้ค่าคงตัวความผิดพลาดตามสเปก
หาความถี่ ω g c ′ \omega_{gc}' ω g c ′ ที่เฟสของ K c G K_cG K c G เท่ากับ − 180 ∘ + PM ต้องการ + ( 5 ∘ ถึง 12 ∘ ) -180^\circ + \text{PM}_{\text{ต้องการ}} + (5^\circ\text{ ถึง }12^\circ) − 18 0 ∘ + PM ต้องการ + ( 5 ∘ ถึง 1 2 ∘ )
β = ∣ K c G ( j ω g c ′ ) ∣ \beta = |K_cG(j\omega_{gc}')| β = ∣ K c G ( j ω g c ′ ) ∣ (ลดให้เหลือ 0 dB ที่ความถี่นั้น)
ศูนย์ 1 / T = ω g c ′ / 10 1/T = \omega_{gc}'/10 1/ T = ω g c ′ /10 · ขั้ว 1 / ( β T ) 1/(\beta T) 1/ ( βT )
ออกแบบ Lag ด้วยโบด กลาง
ตัวอย่าง C-2 · Lag ด้วยโบด พลานต์ G ( s ) = 1 s ( s + 1 ) ( 0.5 s + 1 ) G(s) = \dfrac{1}{s(s+1)(0.5s+1)} G ( s ) = s ( s + 1 ) ( 0.5 s + 1 ) 1 ต้องการ K v = 5 s − 1 K_v = 5\ \text{s}^{-1} K v = 5 s − 1 , PM ≥ 40°, GM ≥ 10 dB
K v = K c = 5 K_v = K_c = 5 K v = K c = 5 · ปิดวงด้วยเกนนี้: GM = −4.4 dB, PM = −13° ไม่เสถียร (lead ไม่ช่วย เพราะเฟสลงเร็วมาก ต้องใช้ lag)
ต้องการเฟส − 180 ∘ + 40 ∘ + 12 ∘ = − 128 ∘ -180^\circ + 40^\circ + 12^\circ = -128^\circ − 18 0 ∘ + 4 0 ∘ + 1 2 ∘ = − 12 8 ∘ : − 90 ∘ − tan − 1 ω − tan − 1 0.5 ω = − 128 ∘ ⇒ ω g c ′ = 0.465 -90^\circ - \tan^{-1}\omega - \tan^{-1}0.5\omega = -128^\circ \Rightarrow \omega_{gc}' = 0.465 − 9 0 ∘ − tan − 1 ω − tan − 1 0.5 ω = − 12 8 ∘ ⇒ ω g c ′ = 0.465 rad/s
∣ K c G ( j 0.465 ) ∣ = 9.5 |K_cG(j0.465)| = 9.5 ∣ K c G ( j 0.465 ) ∣ = 9.5 (19.6 dB) ได้ β ≈ 10 \beta \approx 10 β ≈ 10 C5
ศูนย์ ≈ 0.465 / 10 ≈ 0.05 \approx 0.465/10 \approx 0.05 ≈ 0.465/10 ≈ 0.05 · ขั้ว 0.05 / 10 = 0.005 0.05/10 = 0.005 0.05/10 = 0.005
G c ( s ) = 5 20 s + 1 200 s + 1 = 0.5 s + 0.05 s + 0.005 G_c(s) = 5\,\frac{20s + 1}{200s + 1} = \hlC{0.5\,\frac{s + 0.05}{s + 0.005}} G c ( s ) = 5 200 s + 1 20 s + 1 = 0.5 s + 0.005 s + 0.05
PM = 47.5° ที่ ω g c = 0.448 \omega_{gc} = 0.448 ω g c = 0.448 , GM = 15.0 dB และ K v = 5 K_v = 5 K v = 5 ตามสเปก · แลกกับความเร็ว: ครอสโอเวอร์ลดจาก 1.8 เหลือ 0.45 rad/s
python-control: PM 47.5°, GM 14.96 dB ✓ · เลือกปัดศูนย์เป็นเลขกลม ๆ ได้ ผลเปลี่ยนเล็กน้อย ถ้าใช้ศูนย์ 0.1 ขั้ว 0.01 PM เหลือ 41.6° (ยังผ่าน แต่หมิ่นเหม่)
ออกแบบ Lead ด้วยรูทโลคัส: ชดเชยมุมที่ขาด กลาง
ถ้าสเปกให้มาเป็น ζ \zeta ζ และ ω n \omega_n ω n (หรือ M p M_p M p และ t s t_s t s ) จะได้จุดที่ต้องการ s d s_d s d บนระนาบ s s s ทันที ถ้ารูทโลคัสเดิมไม่ผ่าน s d s_d s d แปลว่าเงื่อนไขมุม ไม่ครบ 180° lead ต้องเติมมุมส่วนที่ขาด
C6 Angle deficiency มุมที่ตัวชดเชยต้องเติม
ϕ c = − 180 ∘ − ∠ G ( s d ) , ∠ ( s d + z c ) − ∠ ( s d + p c ) = ϕ c , K = 1 ∣ G c ( s d ) G ( s d ) ∣ \phi_c = -180^\circ - \angle G(s_d), \qquad \angle(s_d + z_c) - \angle(s_d + p_c) = \phi_c, \qquad K = \frac{1}{|G_c(s_d)G(s_d)|} ϕ c = − 18 0 ∘ − ∠ G ( s d ) , ∠ ( s d + z c ) − ∠ ( s d + p c ) = ϕ c , K = ∣ G c ( s d ) G ( s d ) ∣ 1
มีศูนย์-ขั้วหลายคู่ที่ให้ ϕ c \phi_c ϕ c เท่ากัน วิธีที่นิยม: (1) วางศูนย์ใต้ s d s_d s d หรือหักล้างขั้วพลานต์ที่สองแล้วหาขั้ว (2) วิธีเส้นแบ่งครึ่งมุม (bisector) ของ Ogata ซึ่งให้ α \alpha α ใหญ่ที่สุด
ตัวอย่าง C-3 · Lead ด้วยรูทโลคัส พลานต์ G ( s ) = 1 s ( s + 2 ) G(s) = \dfrac{1}{s(s+2)} G ( s ) = s ( s + 2 ) 1 ต้องการขั้ววงปิดที่ ζ = 0.5 , ω n = 4 \zeta = 0.5,\ \omega_n = 4 ζ = 0.5 , ω n = 4 rad/s
s d = − ζ ω n ± j ω n 1 − ζ 2 = − 2 ± j 3.464 s_d = -\zeta\omega_n \pm j\omega_n\sqrt{1 - \zeta^2} = -2 \pm j3.464 s d = − ζ ω n ± j ω n 1 − ζ 2 = − 2 ± j 3.464 · โลคัสเดิมเป็นเส้นดิ่ง σ = − 1 \sigma = -1 σ = − 1 ไม่ผ่าน
มุมของพลานต์ที่ s d s_d s d : จาก 0 คือ 120 ∘ 120^\circ 12 0 ∘ จาก −2 คือ 90 ∘ 90^\circ 9 0 ∘ ได้ ∠ G = − 210 ∘ \angle G = -210^\circ ∠ G = − 21 0 ∘ มุมที่ขาด ϕ c = − 180 ∘ + 210 ∘ = 30 ∘ \phi_c = -180^\circ + 210^\circ = 30^\circ ϕ c = − 18 0 ∘ + 21 0 ∘ = 3 0 ∘ C6
วางศูนย์หักล้างขั้ว −2 ของพลานต์ แล้วหาขั้ว p c p_c p c ให้มุมรวมถูก: ต้องการ − 120 ∘ − θ p = − 180 ∘ ⇒ θ p = 60 ∘ -120^\circ - \theta_p = -180^\circ \Rightarrow \theta_p = 60^\circ − 12 0 ∘ − θ p = − 18 0 ∘ ⇒ θ p = 6 0 ∘
p c = − 2 − 3.464 tan 60 ∘ = − 4 p_c = -2 - \frac{3.464}{\tan60^\circ} = -4 p c = − 2 − tan 6 0 ∘ 3.464 = − 4
เกนจากเงื่อนไขขนาด: L = K s ( s + 4 ) L = \dfrac{K}{s(s+4)} L = s ( s + 4 ) K ที่ s d s_d s d : K = ∣ s d ∣ ∣ s d + 4 ∣ = 4 × 4 = 16 K = |s_d||s_d + 4| = 4 \times 4 = 16 K = ∣ s d ∣∣ s d + 4∣ = 4 × 4 = 16
G c ( s ) = 16 s + 2 s + 4 G_c(s) = \hlC{16\,\dfrac{s + 2}{s + 4}} G c ( s ) = 16 s + 4 s + 2 วงปิด s 2 + 4 s + 16 s^2 + 4s + 16 s 2 + 4 s + 16 ได้ ζ = 0.5 , ω n = 4 \zeta = 0.5,\ \omega_n = 4 ζ = 0.5 , ω n = 4 พอดี · overshoot 16.3%, t s = 2.0 t_s = 2.0 t s = 2.0 s · K v = 16 / 4 = 4 K_v = 16/4 = 4 K v = 16/4 = 4
python-control: ขั้ววงปิด − 2 ± j 3.464 -2 \pm j3.464 − 2 ± j 3.464 ✓ · การหักล้างขั้วใช้ได้เพราะขั้ว −2 เสถียร และแม้ค่าจริงจะคลาดเล็กน้อย คู่ขั้ว-ศูนย์ที่เหลือจะอยู่ใกล้กันจนแทบไม่มีผล
ตัวอย่าง C-4 · เติม Lag ให้แม่นขึ้น 5 เท่า จากผลของ C-3 (K v = 4 K_v = 4 K v = 4 ) ต้องการ K v = 20 K_v = 20 K v = 20 โดยขั้วเด่นแทบไม่เปลี่ยน
ต้องเพิ่ม K v K_v K v 5 เท่า: β = 5 \beta = 5 β = 5 C4
วางคู่ศูนย์-ขั้วใกล้จุดกำเนิดมาก ๆ เทียบกับ ∣ s d ∣ = 4 |s_d| = 4 ∣ s d ∣ = 4 : ศูนย์ −0.1 ขั้ว −0.02 (มุมที่เสียที่ s d s_d s d ไม่ถึง 1.2°)
L ( s ) = 16 s ( s + 4 ) ⋅ s + 0.1 s + 0.02 , K v = 16 4 ⋅ 0.1 0.02 = 20 L(s) = \frac{16}{s(s+4)}\cdot\frac{s + 0.1}{s + 0.02}, \qquad K_v = \frac{16}{4}\cdot\frac{0.1}{0.02} = 20 L ( s ) = s ( s + 4 ) 16 ⋅ s + 0.02 s + 0.1 , K v = 4 16 ⋅ 0.02 0.1 = 20
ขั้ววงปิด − 1.96 ± j 3.44 -1.96 \pm j3.44 − 1.96 ± j 3.44 (แทบไม่ขยับ) และขั้วช้า − 0.102 -0.102 − 0.102 ที่เกือบหักล้างกับศูนย์ − 0.1 -0.1 − 0.1 · ความผิดพลาดต่อแรมป์ลดจาก 0.25 เหลือ 0.05
จำลอง: overshoot 18.9% (จาก 16.3%) และ t s t_s t s (2%) 2.86 s เพราะหางช้าจากขั้ว −0.102 คือราคาของ lag ที่ต้องรู้
Lag-Lead และความสัมพันธ์กับ PID กลาง
C7 Lag-lead and PID lag-lead กับ PID
G c ( s ) = K c T 1 s + 1 β T 1 s + 1 ⏟ lag T 2 s + 1 α T 2 s + 1 ⏟ lead , β → ∞ , α → 0 : PID แบบอนุกรม G_c(s) = K_c\underbrace{\frac{T_1s + 1}{\beta T_1s + 1}}_{\text{lag}}\ \underbrace{\frac{T_2s + 1}{\alpha T_2s + 1}}_{\text{lead}}, \qquad \beta \to \infty,\ \alpha \to 0:\ \ \text{PID แบบอนุกรม} G c ( s ) = K c lag β T 1 s + 1 T 1 s + 1 lead α T 2 s + 1 T 2 s + 1 , β → ∞ , α → 0 : PID แบบอนุกรม
ออกแบบทีละส่วน: lead ก่อนเพื่อเฟสมาร์จินและความเร็ว แล้ว lag เพื่อความแม่นยำ · lag ที่ขั้วอยู่ที่ 0 พอดีคือ PI · lead ที่ขั้วอยู่อนันต์คือ PD · ใช้ใน Type III compensator ของพาวเวอร์ซัพพลาย
Lead Lag Lag-lead / PID
แก้ปัญหา overshoot มาก ช้า PM น้อย ความผิดพลาดอยู่ตัว ทั้งสองอย่าง
บนโบด เติมเฟสที่ครอสโอเวอร์ ครอสโอเวอร์สูงขึ้น ลดเกนความถี่สูง ครอสโอเวอร์ต่ำลง รวมกัน
บนรูทโลคัส ดึงโลคัสไปทางซ้าย โลคัสเดิมแทบไม่เปลี่ยน ดึงไปซ้าย + แม่นขึ้น
แบนด์วิดท์ กว้างขึ้น (ไวต่อสัญญาณรบกวน) แคบลง ปรับได้
เทียบเท่า PD + ฟิลเตอร์ PI (โดยประมาณ) PID + ฟิลเตอร์
สร้างจริง: วงจร RC และออปแอมป์ กลาง
C8 Op-amp lead/lag วงจรออปแอมป์ตัวเดียว (Z i = R 1 ∥ C 1 Z_i = R_1 \parallel C_1 Z i = R 1 ∥ C 1 , Z f = R 2 ∥ C 2 Z_f = R_2 \parallel C_2 Z f = R 2 ∥ C 2 )
V o V i = − R 2 R 1 ⋅ R 1 C 1 s + 1 R 2 C 2 s + 1 { R 1 C 1 > R 2 C 2 lead R 1 C 1 < R 2 C 2 lag \frac{V_o}{V_i} = -\frac{R_2}{R_1}\cdot\frac{R_1C_1s + 1}{R_2C_2s + 1} \qquad \begin{cases} R_1C_1 \gt R_2C_2 & \text{lead} \\ R_1C_1 \lt R_2C_2 & \text{lag} \end{cases} V i V o = − R 1 R 2 ⋅ R 2 C 2 s + 1 R 1 C 1 s + 1 { R 1 C 1 > R 2 C 2 R 1 C 1 < R 2 C 2 lead lag
T = R 1 C 1 T = R_1C_1 T = R 1 C 1 , α T \alpha T α T (หรือ β T \beta T βT ) = R 2 C 2 = R_2C_2 = R 2 C 2 · เกน DC = R 2 / R 1 = R_2/R_1 = R 2 / R 1 · ต่อออปแอมป์อินเวอร์เตอร์อีกตัวเพื่อกลับเครื่องหมายและปรับเกน · ทดลองในแล็บออปแอมป์
C9 Passive RC lead network วงจร RC แบบพาสซีฟ
V o V i = α R 1 C s + 1 α R 1 C s + 1 , α = R 2 R 1 + R 2 \frac{V_o}{V_i} = \alpha\,\frac{R_1Cs + 1}{\alpha R_1Cs + 1}, \qquad \alpha = \frac{R_2}{R_1 + R_2} V i V o = α α R 1 C s + 1 R 1 C s + 1 , α = R 1 + R 2 R 2
R 1 ∥ C R_1 \parallel C R 1 ∥ C อนุกรม แล้ว R 2 R_2 R 2 ลงกราวด์ · ลดทอน α \alpha α เท่า ต้องชดเชยด้วยแอมป์ · ต้องการโหลดอิมพีแดนซ์สูงตามหลัง
ตัวอย่าง C-5 · ทำ C-3 ด้วยออปแอมป์ สร้าง G c ( s ) = 16 s + 2 s + 4 = 8 0.5 s + 1 0.25 s + 1 G_c(s) = 16\dfrac{s + 2}{s + 4} = 8\dfrac{0.5s + 1}{0.25s + 1} G c ( s ) = 16 s + 4 s + 2 = 8 0.25 s + 1 0.5 s + 1 โดยใช้ C 1 = C 2 = 10 μ F C_1 = C_2 = 10\ \mu\text{F} C 1 = C 2 = 10 μ F
R 1 C 1 = 0.5 ⇒ R 1 = 50 k Ω R_1C_1 = 0.5 \Rightarrow R_1 = 50\ \text{k}\Omega R 1 C 1 = 0.5 ⇒ R 1 = 50 k Ω · R 2 C 2 = 0.25 ⇒ R 2 = 25 k Ω R_2C_2 = 0.25 \Rightarrow R_2 = 25\ \text{k}\Omega R 2 C 2 = 0.25 ⇒ R 2 = 25 k Ω C8
เกน DC ของวงจร R 2 / R 1 = 0.5 R_2/R_1 = 0.5 R 2 / R 1 = 0.5 ต้องการ 8 ใช้อินเวอร์เตอร์เกน − 16 -16 − 16 (เช่น R f = 160 k Ω , R i = 10 k Ω R_f = 160\ \text{k}\Omega,\ R_i = 10\ \text{k}\Omega R f = 160 k Ω , R i = 10 k Ω )
ออปแอมป์ตัวแรก R 1 = 50 R_1 = 50 R 1 = 50 k, C 1 = 10 C_1 = 10 C 1 = 10 µF, R 2 = 25 R_2 = 25 R 2 = 25 k, C 2 = 10 C_2 = 10 C 2 = 10 µF ตามด้วยอินเวอร์เตอร์เกน 16 ได้ + 16 s + 2 s + 4 +16\dfrac{s+2}{s+4} + 16 s + 4 s + 2
แล็บ: ก่อนและหลังชดเชย
เลือกรายการ “ก่อน” และ “หลัง” ของแต่ละตัวอย่างเทียบกัน ดู PM GM และผลตอบสนองขั้นบันไดเปลี่ยน ในมุมมองรูทโลคัสจะเห็น lead ดึงโลคัสไปทางซ้าย ส่วน lag แทบไม่เปลี่ยนรูป
กำลังโหลดแล็บ (ต้องเปิด JavaScript)
ข้อผิดพลาดที่พบบ่อย
วาง ω m \omega_m ω m ไว้ที่ครอสโอเวอร์เดิม → lead ยกเกนทำให้ครอสโอเวอร์ย้าย ต้องวางที่ครอสโอเวอร์ใหม่ (ขั้น 3 ของ C3)
ลืมเฟสเผื่อ → ได้ PM ต่ำกว่าสเปกเล็กน้อยเสมอ
ใช้ lead กับระบบที่เฟสลงเร็วมาก → เติมเฟสไม่ทัน (ตัวอย่าง C-2) ใช้ lag หรือ lag-lead
วาง lag ใกล้ครอสโอเวอร์เกินไป → กินเฟสมาร์จิน วางศูนย์ต่ำกว่าอย่างน้อย 1 เดคาด
สับสนเกนสองรูปแบบ → K c T s + 1 α T s + 1 = K c α s + 1 / T s + 1 / ( α T ) K_c\frac{Ts+1}{\alpha Ts+1} = K_c\alpha\,\frac{s + 1/T}{s + 1/(\alpha T)} K c α T s + 1 T s + 1 = K c α s + 1/ ( α T ) s + 1/ T เกนหน้าวงเล็บต่างกัน α \alpha α เท่า ตรวจด้วยเกน DC ทุกครั้ง
ต่อยอดไปหน้าถัดไป
ตัวชดเชยที่นิยมที่สุดในอุตสาหกรรมคือPID ซึ่งก็คือ lag-lead ในอีกรูปหนึ่ง และเมื่อเข้าใจหน้านี้ ตัวชดเชย Type II และ Type III ของพาวเวอร์ซัพพลาย ก็คือ lead/lag ที่ใส่อินทิเกรเตอร์เพิ่ม ออกแบบด้วยขั้นตอนเดียวกันทุกประการ
คำถามที่พบบ่อย Lead กับ Lag ต่างกันอย่างไรสั้น ๆ? Lead (ศูนย์อยู่ก่อนขั้ว) เพิ่มเฟสบวกใกล้ความถี่ครอสโอเวอร์ ทำให้เฟสมาร์จินดีขึ้นและตอบสนองเร็วขึ้น เหมาะกับการแก้ overshoot และความเร็ว Lag (ขั้วอยู่ก่อนศูนย์ ใกล้จุดกำเนิด) เพิ่มเกนความถี่ต่ำ ทำให้ความผิดพลาดอยู่ตัวลดลงโดยแทบไม่แตะช่วงครอสโอเวอร์ เหมาะกับการแก้ความแม่นยำ
ทำไมออกแบบ lead ต้องบวกเฟสเผื่อ 5–12°? เพราะ lead เพิ่มเกนที่ความถี่สูงด้วย ทำให้ความถี่ครอสโอเวอร์ขยับไปทางขวา ซึ่งเฟสของพลานต์ที่ตำแหน่งใหม่ต่ำกว่าเดิม จึงต้องเผื่อเฟสไว้ชดเชยส่วนที่หายไปนี้ ถ้าคำนวณแล้ว PM ยังไม่ถึง ให้เพิ่มค่าเผื่อแล้วทำซ้ำ
Lead เพิ่มเฟสได้มากสุดเท่าไร? ในทางทฤษฎีเกือบ 90° เมื่อ α เข้าใกล้ 0 แต่ในทางปฏิบัตินิยมไม่เกิน 60–65° ต่อหนึ่งตัว (α ≥ 0.07) เพราะ α เล็กมากทำให้เกนความถี่สูงเพิ่ม 1/α เท่า ขยายสัญญาณรบกวน ถ้าต้องการเฟสมากกว่านั้นใช้ lead สองตัวต่ออนุกรม
Lag ทำให้ระบบช้าลงไหม? ช่วงต้นแทบไม่ แต่คู่ขั้ว-ศูนย์ใกล้จุดกำเนิดสร้างขั้ววงปิดช้าที่เกือบถูกหักล้างด้วยศูนย์ ทำให้ผลตอบสนองมีหางยาวค่อย ๆ เข้าที่ (slow tail) ยิ่งวางคู่นี้ใกล้จุดกำเนิดมาก หางยิ่งยาวแต่เล็กลง เป็นการแลกเปลี่ยนที่ต้องพิจารณา
มด
อาจารย์มด · ธีรวุฒิ แสวงบุญ อาจารย์สาขาวิชาวิศวกรรมไฟฟ้า มหาวิทยาลัยราชภัฏธนบุรี สมุทรปราการ · ดูโปรไฟล์
บทความอ่านง่ายเกี่ยวกับหัวข้อนี้
ดูบทความทั้งหมด →