พิมพ์คำที่ต้องการค้นหา ทั้งภาษาไทยและอังกฤษ

  1. หน้าแรก
  2. คลังความรู้
  3. ระบบควบคุม
  4. ปริภูมิสถานะ

// บทที่ 13.18 · ระบบควบคุม · State-Space Representation

ปริภูมิสถานะ (State-Space): สมการสถานะ รูปแบบมาตรฐาน และ e^{At}

ปี 1960 รูดอล์ฟ คาลมาน (Rudolf Kalman) เปลี่ยนมุมมองระบบควบคุมจาก “อินพุต-เอาต์พุต” เป็น “สถานะภายใน” เขียนระบบอันดับ nn ใด ๆ เป็นสมการเชิงอนุพันธ์อันดับหนึ่ง nn สมการในรูปเมทริกซ์ ทำให้พีชคณิตเชิงเส้นทั้งหมดใช้ได้ทันที: ค่าเฉพาะคือขั้ว eAte^{At} คือคำตอบ และระบบหลายอินพุตหลายเอาต์พุตไม่ยากกว่าระบบเดียว นี่คือประตูสู่ modern control ที่ใช้ในหุ่นยนต์ โดรน และยานอวกาศ สูตรใช้รหัส X

เขียนโดย อาจารย์มดอัปเดต
สรุปใน 30 วินาที
  • x˙=Ax+Bu,  y=Cx+Du\dot{\mathbf x} = A\mathbf x + B\mathbf u,\ \ \mathbf y = C\mathbf x + D\mathbf u · สถานะ = ตัวเก็บพลังงาน (iL, vCi_L,\ v_C, ตำแหน่ง, ความเร็ว)
  • G(s)=C(sI−A)−1B+DG(s) = C(sI - A)^{-1}B + D · ขั้ว = ค่าเฉพาะของ AA
  • x(t)=eAtx(0)+∫0teA(t−τ)Bu(τ) dτ\mathbf x(t) = e^{At}\mathbf x(0) + \int_0^te^{A(t-\tau)}B\mathbf u(\tau)\,d\tau · eAt=L−1{(sI−A)−1}e^{At} = \mathcal L^{-1}\{(sI - A)^{-1}\}
  • ฟังก์ชันเดียวมีได้หลายแบบจำลอง (รูปแบบควบคุมได้ สังเกตได้ โมดัล) เชื่อมกันด้วย TT

แบบจำลองปริภูมิสถานะ กลาง

X1 State-space model แบบจำลองปริภูมิสถานะ

x˙(t)=Ax(t)+Bu(t),y(t)=Cx(t)+Du(t)\dot{\mathbf x}(t) = A\mathbf x(t) + B\mathbf u(t), \qquad \mathbf y(t) = C\mathbf x(t) + D\mathbf u(t)

x∈Rn\mathbf x \in \mathbb R^n สถานะ · u∈Rm\mathbf u \in \mathbb R^m อินพุต · y∈Rp\mathbf y \in \mathbb R^p เอาต์พุต · An×nA_{n\times n} (พลวัต) Bn×mB_{n\times m} Cp×nC_{p\times n} Dp×mD_{p\times m} (มักเป็นศูนย์)

X2 Controllable canonical form รูปแบบมาตรฐานควบคุมได้

G(s)=bn−1sn−1+⋯+b0sn+an−1sn−1+⋯+a0:A=(01⋱⋱01−a0−a1⋯−an−1), B=(0⋮01), C=(b0  b1 ⋯ bn−1)G(s) = \frac{b_{n-1}s^{n-1} + \cdots + b_0}{s^n + a_{n-1}s^{n-1} + \cdots + a_0}:\quad A = \begin{pmatrix} 0 & 1 & & \\ & \ddots & \ddots & \\ & & 0 & 1 \\ -a_0 & -a_1 & \cdots & -a_{n-1} \end{pmatrix},\ B = \begin{pmatrix} 0 \\ \vdots \\ 0 \\ 1 \end{pmatrix},\ C = (b_0\ \ b_1\ \cdots\ b_{n-1})

เขียนได้ทันทีจากสัมประสิทธิ์ · ใช้ในการวางขั้ว (ป้อนกลับสถานะ) · รูปแบบสังเกตได้ (observable) คือทรานสโพส: AT,CT,BTA^T, C^T, B^T

ตัวอย่าง X-1 · วงจร RLC

เขียนแบบจำลองปริภูมิสถานะของวงจร RLC อนุกรม R=10 Ω, L=10R = 10\ \Omega,\ L = 10 mH, C=100 μC = 100\ \muF เอาต์พุตคือ vCv_C

  1. สถานะ x1=iL, x2=vCx_1 = i_L,\ x_2 = v_C · KVL: Li˙=vin−Ri−vCL\dot i = v_{in} - Ri - v_C · ตัวเก็บประจุ: Cv˙C=iC\dot v_C = i

  2. เขียนเป็นเมทริกซ์ X1

    (i˙v˙C)=(−R/L−1/L1/C0)(ivC)+(1/L0)vin=(−1000−1001040)x+(1000)vin\begin{pmatrix} \dot i \\ \dot v_C \end{pmatrix} = \begin{pmatrix} -R/L & -1/L \\ 1/C & 0 \end{pmatrix}\begin{pmatrix} i \\ v_C \end{pmatrix} + \begin{pmatrix} 1/L \\ 0 \end{pmatrix}v_{in} = \begin{pmatrix} -1000 & -100 \\ 10^4 & 0 \end{pmatrix}\mathbf x + \begin{pmatrix} 100 \\ 0 \end{pmatrix}v_{in}

    y=vC=(0  1) xy = v_C = (0\ \ 1)\,\mathbf x

ค่าเฉพาะของ AA: λ2+1000λ+106=0\lambda^2 + 1000\lambda + 10^6 = 0 ตรงกับตัวส่วนของตัวอย่าง M-1 ✓ (ωn=1000, ζ=0.5\omega_n = 1000,\ \zeta = 0.5)

python-control ss2tf: 106s2+1000s+106\dfrac{10^6}{s^2 + 1000s + 10^6} ✓ · ดูวงจรอื่นในประยุกต์พีชคณิตเชิงเส้น

จากปริภูมิสถานะสู่ฟังก์ชันถ่ายโอน กลาง

X3 Transfer function ฟังก์ชันถ่ายโอน

G(s)=C(sI−A)−1B+D=C adj⁡(sI−A) Bdet⁡(sI−A)+DG(s) = C(sI - A)^{-1}B + D = \frac{C\,\operatorname{adj}(sI - A)\,B}{\det(sI - A)} + D

ใช้อินเวอร์สแบบแอดจอยต์ (อินเวอร์ส) · ตัวส่วน det⁡(sI−A)\det(sI - A) = พหุนามลักษณะเฉพาะ

X4 Poles = eigenvalues ขั้ว = ค่าเฉพาะของ A

det⁡(sI−A)=0\det(sI - A) = 0

เสถียร   ⟺  \iff Re⁡λi(A)<0\operatorname{Re}\lambda_i(A) \lt 0 ทุกตัว (ค่าเฉพาะ)

X5 Similarity transformation เปลี่ยนตัวแปรสถานะ

x=Tz:  A^=T−1AT, B^=T−1B, C^=CT\mathbf x = T\mathbf z:\ \ \hat A = T^{-1}AT,\ \hat B = T^{-1}B,\ \hat C = CT

ค่าเฉพาะและฟังก์ชันถ่ายโอนไม่เปลี่ยน · TT = เวกเตอร์เฉพาะ ได้รูปแบบโมดัล (ทแยงมุม)

ตัวอย่าง X-2 · ไปและกลับ

เขียน G(s)=s+3s2+3s+2G(s) = \dfrac{s + 3}{s^2 + 3s + 2} ในรูปแบบควบคุมได้ แล้วตรวจกลับด้วย X3

  1. X2: a0=2, a1=3, b0=3, b1=1a_0 = 2,\ a_1 = 3,\ b_0 = 3,\ b_1 = 1

    A=(01−2−3),B=(01),C=(3  1)A = \begin{pmatrix} 0 & 1 \\ -2 & -3 \end{pmatrix},\quad B = \begin{pmatrix} 0 \\ 1 \end{pmatrix},\quad C = (3\ \ 1)
  2. X3: (sI−A)−1=1s2+3s+2(s+31−2s)(sI - A)^{-1} = \dfrac{1}{s^2 + 3s + 2}\begin{pmatrix} s + 3 & 1 \\ -2 & s \end{pmatrix} ได้ (sI−A)−1B=1s2+3s+2(1s)(sI - A)^{-1}B = \dfrac{1}{s^2 + 3s + 2}\begin{pmatrix} 1 \\ s \end{pmatrix}

    C(sI−A)−1B=3+ss2+3s+2 ✓C(sI - A)^{-1}B = \frac{3 + s}{s^2 + 3s + 2} \ \checkmark

คำตอบของสมการสถานะ: e^{At} ขั้นสูง

X6 State solution คำตอบของสมการสถานะ

x(t)=eAtx(0)⏟ผลตอบสนองอิสระ+∫0teA(t−τ)Bu(τ) dτ⏟ผลตอบสนองบังคับ,eAt=L−1{(sI−A)−1}=PeΛtP−1\mathbf x(t) = \underbrace{e^{At}\mathbf x(0)}_{\text{ผลตอบสนองอิสระ}} + \underbrace{\int_0^te^{A(t - \tau)}B\mathbf u(\tau)\,d\tau}_{\text{ผลตอบสนองบังคับ}}, \qquad e^{At} = \mathcal L^{-1}\big\{(sI - A)^{-1}\big\} = Pe^{\Lambda t}P^{-1}

eAte^{At} เรียกว่าเมทริกซ์ทรานซิชันสถานะ Φ(t)\Phi(t) · คำนวณได้ทั้งด้วยลาปลาซและด้วยการทำเป็นทแยงมุม (ค่าเฉพาะ) · คือแกนของการแปลงเป็นดิจิทัลแบบ ZOH Ad=eATA_d = e^{AT}

ตัวอย่าง X-3 · หา e^{At}

หา eAte^{At} ของ A=(01−2−3)A = \begin{pmatrix} 0 & 1 \\ -2 & -3 \end{pmatrix}

  1. (sI−A)−1=1(s+1)(s+2)(s+31−2s)(sI - A)^{-1} = \dfrac{1}{(s+1)(s+2)}\begin{pmatrix} s + 3 & 1 \\ -2 & s \end{pmatrix}

  2. เศษส่วนย่อยทีละช่อง เช่น s+3(s+1)(s+2)=2s+1−1s+2\dfrac{s+3}{(s+1)(s+2)} = \dfrac{2}{s+1} - \dfrac{1}{s+2}

eAt=(2e−t−e−2te−t−e−2t−2e−t+2e−2t−e−t+2e−2t)e^{At} = \begin{pmatrix} 2e^{-t} - e^{-2t} & e^{-t} - e^{-2t} \\ -2e^{-t} + 2e^{-2t} & -e^{-t} + 2e^{-2t} \end{pmatrix}

ตรวจ t=0t = 0: ได้ II ✓ · เทียบ scipy expm ที่ t=0.5t = 0.5: ทุกช่องตรง ✓

รูปแบบมาตรฐานต่าง ๆ ใช้ทำอะไร ขั้นสูง

รูปแบบลักษณะใช้เมื่อ
ฟิสิกส์ (physical)สถานะมีความหมายจริง (iLi_L, vCv_C, ตำแหน่ง)วัดได้ ออกแบบตัวสังเกต จำกัดสถานะ
ควบคุมได้ (controllable)แถวล่างคือสัมประสิทธิ์ตัวส่วนวางขั้ว (เทียบสัมประสิทธิ์ตรง ๆ)
สังเกตได้ (observable)ทรานสโพสของแบบควบคุมได้ออกแบบตัวสังเกต
โมดัล / จอร์แดนAA ทแยงมุม (หรือบล็อก)แยกโหมดอิสระ วิเคราะห์การสั่นของโครงสร้าง

ต่อยอดไปหน้าถัดไป

มีแบบจำลองแล้ว คำถามคือ “ขับสถานะไปที่ไหนก็ได้หรือไม่” และ “ดูสถานะทั้งหมดจากเอาต์พุตได้หรือไม่” ไปที่ความสามารถควบคุมได้และสังเกตได้

คำถามที่พบบ่อย

ทำไมต้องใช้ปริภูมิสถานะในเมื่อมีฟังก์ชันถ่ายโอนแล้ว?

ปริภูมิสถานะจัดการระบบหลายอินพุตหลายเอาต์พุตได้เป็นธรรมชาติ รวมเงื่อนไขเริ่มต้นได้ เห็นสัญญาณภายในทั้งหมด (ไม่ใช่แค่อินพุต-เอาต์พุต) ใช้กับระบบแปรตามเวลาและไม่เชิงเส้นได้ และเป็นฐานของการวางขั้ว ตัวสังเกต LQR และตัวกรองคาลมาน ซึ่งใช้ในหุ่นยนต์ โดรน และยานยนต์สมัยใหม่

เลือกตัวแปรสถานะอย่างไร?

ในวงจรไฟฟ้าเลือกกระแสตัวเหนี่ยวนำและแรงดันตัวเก็บประจุ (ตัวเก็บพลังงาน) ในกลไกเลือกตำแหน่งและความเร็ว จำนวนสถานะเท่ากับอันดับของระบบ การเลือกไม่ซ้ำกัน ชุดต่างกันสัมพันธ์กันด้วยการแปลงความคล้าย และให้ค่าเฉพาะ (ขั้ว) เท่ากันเสมอ

ขั้วของระบบในปริภูมิสถานะหาอย่างไร?

คือค่าเฉพาะของเมทริกซ์ A หรือรากของ det(sI − A) = 0 ซึ่งตรงกับตัวส่วนของฟังก์ชันถ่ายโอน (ถ้าไม่มีการหักล้างขั้ว-ศูนย์) ระบบเสถียรเมื่อค่าเฉพาะทุกตัวมีส่วนจริงเป็นลบ

อาจารย์มด · ธีรวุฒิ แสวงบุญ
อาจารย์สาขาวิชาวิศวกรรมไฟฟ้า มหาวิทยาลัยราชภัฏธนบุรี สมุทรปราการ · ดูโปรไฟล์