KENDALI ADAPTIF
Tugas MRAC MIT
Kita fokus pada sistem simple orde pertama, yang direpresentasikan pada persamaan :
𝑑𝑦
= −𝑎𝑦 + 𝑏𝑢
𝑑𝑡
Dimana 𝑦 adalah keluaran dari sistem yang ingin kita kendalikan, 𝑢 merupakan keluaran dari
pengontrol (disebut sebagai masukan kendali), 𝑎 dan 𝑏 merupakan konstanta yang menentukan
dinamika sistem. Kami berasumsi bahwa konstanta 𝑎 dan 𝑏 tidak diketahui selama prosedur desain
kontrol.
Tujuan dari Model Reference Adaptive Controller (MRAC) adalah untuk menghitung input
kontrol sedemikian rupa sehingga output sistem sedekat mungkin dengan output dari model
referensi. Model referensi adalah model yang menentukan perilaku sistem yang
diinginkan. Artinya, output dari model referensi adalah output sistem yang diinginkan yang ingin
kita capai dalam praktik. Selama proses desain MRAC, diasumsikan bahwa model referensi
diketahui. Dengan demikian, untuk model ( 1 ), model referensi didefinisikan oleh persamaan
berikut:
𝑑𝑦𝑚
= −𝑎𝑚 𝑦𝑚 + 𝑏𝑚 𝑢𝑐 (1)
𝑑𝑡
Dimana 𝑦𝑚 adalah output dari model referensi, 𝑢𝑐 adalah input dari model referensi,
𝑎𝑚 dan 𝑏𝑚 merupakan parameter dari model referensi. Kami berasumsi bahwa 𝑎𝑚 dan 𝑏𝑚
diketahui. Sinyalnya 𝑢𝑐 diketahui. Karena 𝑢𝑐 diketahui, kita dapat mensimulasikan model
referensi ( 2 ) untuk menghasilkan output dari model referensi 𝑦𝑚 . Struktur input kontrol diberikan
oleh persamaan berikut:
𝑢(𝑡) = 𝜃1 (𝑡)𝑢𝑐 (𝑡) − 𝜃2 (𝑡)𝑦(𝑡) (2)
di mana 𝜃1 (𝑡) dan 𝜃2 (𝑡) adalah parameter kontrol adaptif yang ditentukan oleh algoritma kontrol
adaptif.
𝑑𝑦
= −(𝑎 + 𝑏𝜃2 )𝑦 + 𝑏𝜃1 𝑢𝑐 (3)
𝑑𝑡
Model ( 4 ) adalah sistem kontrol loop tertutup. Mari kita bandingkan ( 4 ) dengan model referensi
( 2 ). Jika parameter 𝜃1 dan 𝜃2 ambil nilai konstan berikut :
𝑏𝑚 𝑎𝑚 − 𝑎
𝜃1 = 𝜃1∗ = , 𝜃2 = 𝜃2∗ =
𝑏 𝑎
kemudian, kita dapat menyimpulkan bahwa dinamika sistem loop tertutup ( 4 ) identik dengan
model referensi ( 2 ). Namun, dalam praktiknya, kita tidak mengetahui konstanta 𝑎 dan 𝑏 sistem,
dan akibatnya, kita tidak dapat menentukan parameter 𝜃1 dan 𝜃2 dengan cara ini. Meskipun
demikian, analisis yang disajikan di atas akan membantu kami untuk memvalidasi konvergensi
pengontrol adaptif yang akan dikembangkan dalam sekuelnya.
Secara longgar, aturan kontrol adaptif MIT bertujuan meminimalkan fungsi biaya berikut:
1
𝐽 = 𝑒2
2
Untuk menurunkan nilai dari 𝐽 adalah wajar untuk menyesuaikan parameter 𝜃1 dan 𝜃2 dalam arah
gradien negatif dari 𝐽. Dengan menggunakan ide ini, kita memperoleh :
Untuk menghitung turunan parsial ini, kita perlu menyatakan 𝑦(𝑡) dari ( 4 ). Ini dapat dilakukan
dengan menggunakan operator turunan 𝑝, yang bekerja pada suatu fungsi dengan cara berikut:
𝑑𝑓(𝑡)
𝑝𝑓(𝑡) =
𝑑𝑡
𝑏𝜃1 𝑢𝑐
𝑒= − 𝑦𝑚
(𝑝 + 𝑎 + 𝑏𝜃2 )
(𝜕𝑒) 𝑏𝜃1 𝑢𝑐
=
𝜕𝜃1 (𝑝 + 𝑎 + 𝑏𝜃2 )
(𝜕𝑒) −𝑏𝑦
=
𝜕𝜃2 (𝑝 + 𝑎 + 𝑏𝜃2 )
Turunan parsial dalam ( 12 ) bergantung pada parameter sistem yang tidak diketahui 𝑎 dan
𝑏 akibatnya, kita tidak dapat menghitungnya secara eksplisit. Untuk melakukan perhitungan, kita
perlu memperkenalkan pendekatan yang dibenarkan secara fisik. Pada dasarnya, dalam skenario
ideal, parameter 𝜃1 dan 𝜃2 harus konvergen ke nilai 𝜃1∗ dan 𝜃2∗ yang membuat dinamika loop
tertutup sama dengan dinamika model referensi. Dalam kasus ideal ini, dari ( 5 ) kita memiliki
𝑎𝑚 = 𝑎 + 𝑏𝜃2∗ ≈ 𝑎 + 𝑏𝜃2
Akibatnya, kita dapat menggunakan aproksimasi ini untuk memperkirakan suku-suku yang tidak
diketahui dalam penyebut dari ekspresi dalam ( 12 ). Dengan demikian, kami memiliki
𝑝 + 𝑎 + 𝑏𝜃2∗ ≈ 𝑝 + 𝑎𝑚
Selanjutnya, kita substitusikan aproksimasi ini ke dalam ( 12 ) dan sebagai hasilnya, kita peroleh
(𝜕𝑒) 𝑏𝑢𝑐
≈
𝜕𝜃1 𝑝 + 𝑎𝑚
(𝜕𝑒) −𝑏𝑦
≈
𝜕𝜃2 𝑝 + 𝑎𝑚
Akhirnya, dengan mensubstitusi turunan parsial ini ke dalam ( 8 ) kita memperoleh ekspresi akhir
yang menjelaskan perubahan parameter dalam waktu
𝑑𝜃1 𝛼𝑏 𝑎𝑚 𝑢𝑐 𝑎𝑚 𝑢𝑐
=− . 𝑒 = −𝛾 𝑒
𝑑𝑡 𝑎𝑚 𝑝 + 𝑎𝑚 𝑝 + 𝑎𝑚
𝑑𝜃2 𝛼𝑏 𝑎𝑚 𝑦 𝑎𝑚 𝑦
= . 𝑒=𝛾 𝑒
𝑑𝑡 𝑎𝑚 𝑝 + 𝑎𝑚 𝑝 + 𝑎𝑚
𝛼𝑏
mana 𝛾 = 𝑎 keuntungan baru. Perhatikan bahwa kami telah menormalkan filter
𝑚
1
𝑝 + 𝑎𝑚
Lewat sini
𝑎𝑚
𝑝 + 𝑎𝑚
Di mana
Sistem persamaan diferensial ini digabungkan dengan persamaan model referensi ( 2 ) yang kami
tulis ulang di sini untuk kejelasan.
𝑑𝑦𝑚
= −𝑎𝑚 𝑦𝑚 + 𝑏𝑚 𝑢𝑐
𝑑𝑡
Untuk terpilih 𝑢𝑐 (𝑡) kita dapat mensimulasikan model referensi ( 21 ). Dengan cara ini, kita
memperoleh keluaran model referensi 𝑦𝑚 (𝑡) yang merupakan fungsi waktu yang diketahui. Deret
waktu {𝑢𝑐 (𝑡), 𝑦𝑚 (𝑡)} digunakan sebagai "input" yang diketahui untuk mengarahkan dinamika
yang diberikan oleh ( 19 ).
Untuk mensimulasikan model ( 19 ), kita perlu mengubahnya menjadi model state-space. Pertama,
kita perlu memperkenalkan variabel state-space:
Kombinasi parameter ini memberikan nilai parameter konvergen berikut (lihat persamaan pada
( 5 ))
Baris kode berikut digunakan untuk mendefinisikan model referensi dan untuk menghasilkan input
referensi dan sinyal output referensi.
am=2
bm=2
% reference model
Wm=tf([bm],[1 am])
figure(2)
plot(time,yr,'r')
hold on
plot(time,ur,'k')
Baris kode 36 pada kode di atas digunakan untuk membangkitkan sinyal keluaran referensi dengan
mensimulasikan model referensi.
Sinyal input referensi dan sinyal output referensi ditunjukkan pada Gambar 1 di bawah ini.
dxdt(1,1)=x(2);
dxdt(2,1)=-am*x(2)-gamma*am*x(5)*um_interp+gamma*am*ym_interp*um_interp;
dxdt(3,1)=x(4);
dxdt(4,1)=-am*x(4)+gamma*am*x(5)^2-gamma*am*x(5)*ym_interp;
dxdt(5,1)=-a*x(5)+b*x(1)*um_interp-b*x(3)*x(5);
Fungsi ini mengambil input waktu saat ini "t", status saat ini "x", vektor input kontrol model
referensi "um", vektor output model referensi "ym", vektor waktu "time_um", parameter "am",
"bm", "a", "b", dan kontrol mendapatkan "gamma". Fungsi ini merupakan implementasi MATLAB
dari dinamika sistem loop tertutup yang diberikan oleh ( 23 ).
Kami menggunakan pendekatan interpolasi untuk menangani input yang bervariasi waktu "um"
dan "ym" dalam simulasi fungsi ode45. Rincian lebih lanjut tentang pendekatan ini dapat
ditemukan di ini dan di posting ini.
theta1=state_trajectories(:,1)
theta2=state_trajectories(:,3)
y=state_trajectories(:,5)
figure(3)
plot(time,yr,'k')
hold on
plot(time,y,'m')
figure(4)
plot(time,theta1,'k')
hold on
plot(time,theta2,'m')
figure(3)
plot(time,yr,'k')
hold on
plot(time,y,'m')
figure(4)
plot(time,theta1,'k')
hold on
plot(time,theta2,'m')
Kami mensimulasikan respon sistem untuk tiga nilai gain controller 𝛾 = 0.5 , 𝛾 = 2 dan , 𝛾 = 4
Output model referensi dan output terkontrol dari pabrik ditunjukkan pada Gambar. 2 untuk 𝛾 =
0.5
Lintasan konvergensi parameter 𝜃1 dan 𝜃2 ditunjukkan pada Gambar. 3 untuk 𝛾 = 0.5
Output model referensi dan output terkontrol dari pabrik ditunjukkan pada Gambar. 6 untuk 𝛾 =
4