Sebuah motor DC dapat dimodelkan dengan state-space model sebagai berikut:
dengan p adalah operator difersensial terhadap waktu.
Persamaan diatas dapat dinyatakan dengan ringkas sebagai berikut
X’ ̇=AX+BU
dengan vektor variabel state X=[ ia ωm ] dan vektor input U=[V Tl].
Jika parameter-parameter Mesin DC diketahui, maka persamaan di atas dapat diselesaikan untuk ia(t) dan ωm(t) dengan menggunakan metode Runge-Kutta.
Dari datasheet Motor DC Sonceboz 5455-15 (terlampir) didapatkan parameter sebagai berikut:
Tegangan nominal V = 48 volt
Resistansi terminal Ra = 0,45 ohm
Induktansi terminal La = 0,71 mH
Konstanta Torsi Kb = 36 mNm/A
Momen Inersia rotor J = 126 g.cm2 = 0,0126 Kg.m2
Koefisen gesekan Bl tidak didapatkan dari datasheet, jadi diasumsikan sebesar 0.0001 Nm/(rad/sec).
Torsi beban Tl diasumsikan sebesar torsi kontinyu 100 mNm.
Dari data di atas bisa didapatkan parameter-parameter state-space sebagai berikut:
A11 = -Ra/La = -633.8
A12 = -Kb/La = -50,70
A21 = Kb/J = 2857
A22 = -Bl/J = -7,937
B11 = 1/La = 1408
B22 = -1/J = -79365
Vektor input U sebagai berikut:
U1 = V = 48
U2 = Tl = 0.1
Berikut listing program penyelesaian persamaan dengan metode Runge Kutta menggunakan Octave maupun MATLAB.
***
clear all;
clc;
disp(‘A adalah’);
a=[-633.8 -50.70;2857 -7.937]
disp(‘dan B adalah’);
b=[1408 0;0 -79365]
x=[0;0]; %X(1) arus, X2 kecepatan sudut
t=0; dt=0.00001; takhir=0.015;
disp(‘U adalah’);
u=[48;0.1]
tampil=[];
vekt=[];
vekx1=[]; %arus ia
vekx2=[]; %kecepatan sudut
while t<=takhir %iterasi runge-kutta
k1=dt*(a*x+b*u);
k2=dt*(a*(x+0.5*k1)+b*u);
k3=dt*(a*(x+0.5*k2)+b*u);
k4=dt*(a*(x+k3)+b*u);
tampil=[tampil; t x(1) x(2)];
vekt=[vekt;t];
vekx1=[vekx1;x(1)];
vekx2=[vekx2;x(2)];
x=x+(k1+2*k2+2*k3+k4)/6;
t=t+dt;
end
tampil %menampilkan hasil iterasi dalam tabel
plot (vekt,vekx1,vekt,vekx2/10); %membuat plot, skala kecepatan sudut 1:10
legend (‘i, ampere’,’w, x10 rad/s’);
grid on;
title (‘Simulasi Starting Motor DC dengan Pemodelan State-Space Menggunakan Metode Runge-Kutta’,’Fontsize’,14);
xlabel (‘t, detik’,’Fontsize’,12);
ylabel (‘arus dan kecepatan sudut’,’Fontsize’,12);