Çok basit bir şekilde şu şekilde modelleyebilirsin:
MATLAB editörüne de aşağıdaki kod bloğunu yazarsan (gerçekçi değerler vermeye çalıştım):
J=850e-6; % [kg*m^2] atalet
B=36.8e-4; % [N*m*s/rad] viskoz sürtünme
Kt=0.1434; % [N*m/A] Motor tork sabiti
Kp=1;Ki=0;Kd=0; % PID kontrolcü katsayıları (Kp
roportional, Ki:integral, Kd:derivative)
GPID=tf(Kp,1)+tf(Ki,[1,0])+tf([Kd,0],1); % PID kontrolcü transfer fonksiyonu
G=tf(1,[J,B]); % Motor transfer fonksiyonu (J*w_dot+B*w=T denkleminin laplasını alınca geliyor)
Gc=(GPID*G*Kt*1.2)/(1+GPID*G*Kt*1.2); % Closed loop transfer fonksiyonu (Genel olarak K(s)G(s)/(1+K(s)G(s)H(s)) şeklinde yazılır)
figure(1);
margin(Gc); % bode plot
Kontrolcü transfer fonksiyonunu 1 aldım. Sürücü çevrim katsayısını 1.2 aldım, yani sürücüye 10V verince motora 12amper, 5V verince 6amper vb. basıyor diye varsaydım.
Step cevabında ve ramp cevabında ofset var. Bunların da nedeni niçini kontrolün temeli. Bunlardan kurtulmak için kontrolcüyü 1 almak yerine Kp, Ki, Kd değerlerine ne vermen gerektiğini öğrenmelisin.
Umarım yardımcı olur.