ccitonline.com

CCIT – Cara Cerdas Ingat Tuhan

| AI-DAI5 | DAI5 AI Agents | NIC | ZWI | | CCITEdu | DAI5 eBook | CFDSOF | Donation | Download | CCIT Corporation | DAI5 | 33 Kriteria Evaluasi Penerapan DAI5 | Search |

Self Balancing System — Pemodelan Matematis & Algoritma Komputasi


Dari Penurunan Model di atas, didapatkan persamaan dinamis:

(Jb+Jw)θ¨+Jwφ¨+bpθ˙−Mglsin⁡θ=0 (1)(J_b+J_w)\ddot{θ}+J_w\ddot{φ}+b_p\dot{θ} – Mgl\sinθ = 0 \\\\\ (1)
Jwθ¨+Jwφ¨+bwφ˙=τ2 (2)J_w \ddot{θ} + J_w \ddot{φ}+b_w\dot{φ} = τ_2 \\\\\ (2)

Substitusi persamaan (2) ke persamaan (1), sehingga:

θ¨=bw θ˙−bp φ˙+mgl sinθ−τ2Jb (3)\ddot{θ}=\frac{b_w\space\dot{θ}-b_p\space\dot{φ}+mgl\space sinθ – τ_2}{J_b} \\\\\ (3)
φ¨=τ2−bw x4Jw−θ¨ (4)\ddot{φ}=\frac{τ_2-b_w\space x_4}{J_w} – \ddot{θ} \\\\\ (4)

Dengan:

x1=θ,   x2=θ˙,   x3=φ˙x_1=θ,~~~x_2=\dot{θ},~~~x_3=\dot{φ}

Bentuk state yang benar adalah:

x1˙=x2\dot{x_1}=x_2
x2˙=bw θ˙−bp φ˙+mgl sinθJb\dot{x_2}=\frac{b_w\space\dot{θ}-b_p\space\dot{φ}+mgl\space sinθ}{J_b}
x3˙=τ2−bw x4Jw−bw θ˙−bp φ˙+mgl sinθJb\dot{x_3}=\frac{τ_2-b_w\space x_4}{J_w} – \frac{b_w\space\dot{θ}-b_p\space\dot{φ}+mgl\space sin θ}{J_b}

Penyelesaian Numerik Menggunakan RK4

State sistem terdiri atas sudut badan, laju kemiringan, dan laju roda relatif. Masukannya adalah torsi motor.

x=[x1x2x3]=[θθ˙ϕ˙],u=τ2x= \begin{bmatrix} x_1\\x_2\\x_3 \end{bmatrix} = \begin{bmatrix} \theta\\\dot{\theta}\\\dot{\phi} \end{bmatrix}, \qquad u=\tau_2

Percepatan sudut badan ditentukan oleh torsi gravitasi, damping, dan reaksi torsi motor.

a(x,u)=mglsin⁡x1−bpx2−u+bwx3Jba(x,u)= \frac{mgl\sin x_1-b_p x_2-u+b_w x_3}{J_b}

Ketiga persamaan gerak digabungkan menjadi fungsi yang menghitung laju perubahan state.

x˙=f(x,u)=[x2a(x,u)u−bwx3Jw−a(x,u)]\dot{x}=f(x,u)= \begin{bmatrix} x_2\\ a(x,u)\\ \dfrac{u-b_w x_3}{J_w}-a(x,u) \end{bmatrix}

Keadaan berikutnya dihitung menggunakan metode Runge–Kutta orde empat. Untuk langkah waktu h:

k1=f(xk,uk),k2=f(xk+h2k1,uk),k3=f(xk+h2k2,uk),k4=f(xk+hk3,uk).\begin{aligned} k_1 &= f(x_k,u_k),\\ k_2 &= f\left(x_k+\frac{h}{2}k_1,u_k\right),\\ k_3 &= f\left(x_k+\frac{h}{2}k_2,u_k\right),\\ k_4 &= f\left(x_k+h k_3,u_k\right). \end{aligned}

Kemudian:

xk+1=xk+h6(k1+2k2+2k3+k4),h=0,005 s\boxed{ x_{k+1} = x_k+\frac{h}{6} \left(k_1+2k_2+2k_3+k_4\right) }, \qquad h=0{,}005\ \mathrm{s}

Setiap k_i merupakan vektor yang berisi laju perubahan ketiga state. Torsi u_k ditahan konstan selama satu langkah integrasi. Dalam simulasi ini digunakan h=0,005 detik.

Model Linear untuk Perancangan LQR

Model dilinearkan di sekitar posisi tegak menggunakan pendekatan sudut kecil:

sin⁡θ≈θ\sin\theta\approx\theta

Model linear dinyatakan sebagai:

x˙=Ax+Bu\dot{x}=Ax+Bu

Matriks A menyatakan pengaruh setiap state terhadap perubahan keadaan sistem:

A=[010mglJb−bpJbbwJb−mglJbbpJb−bw(1Jw+1Jb)]A= \begin{bmatrix} 0 & 1 & 0\\ \dfrac{mgl}{J_b} & -\dfrac{b_p}{J_b} & \dfrac{b_w}{J_b}\\ -\dfrac{mgl}{J_b} & \dfrac{b_p}{J_b} & -b_w\left(\dfrac{1}{J_w}+\dfrac{1}{J_b}\right) \end{bmatrix}

Matriks B menyatakan pengaruh torsi motor terhadap perubahan state:

B=[0−1Jb1Jw+1Jb]B= \begin{bmatrix} 0\\ -\dfrac{1}{J_b}\\ \dfrac{1}{J_w}+\dfrac{1}{J_b} \end{bmatrix}

Diskretisasi model

xk+1=Adxk+Bdukx_{k+1}=A_d x_k+B_d u_k

Pengendali LQR

LQR menentukan gain kontrol dengan meminimalkan penyimpangan state dan penggunaan torsi:

J=∑k=0∞(xkTQxk+ukTRuk)J= \sum_{k=0}^{\infty} \left( x_k^{T}Qx_k+u_k^{T}Ru_k \right)

Model linear digunakan untuk menghitung gain LQR, sedangkan model nonlinear asli digunakan dalam integrasi RK4 untuk menghitung respons gerak sistem.