MATLABでPID制御器を作って実装する。MATLABにはモデルを与えればそれっぽくPID制御器を構築してくれる便利な関数pidtuneがあるので今回はこれを使う。pidtuneの構文は下記の通り。
[C,info] = pidtune(G,'PID');
今回は二次遅れ系を調整しシミュレーションした。ソース以下の通り。
N=1000;
s=tf("s");
omega=1;
zeta=0.1;
G=omega^2/(s^2+2*zeta*omega*s+omega^2);
[C,info] = pidtune(G,'PID');
P=feedback(C*G,1);
r=ones(1,N);
t=linspace(0,10,N);
y=lsim(P,r,t);
figure;
plot(t,r);
hold on
plot(t,y);
grid on
オーバーシュートしているが、目標値へ収束はしている模様。
コメント
[…] 以前MATLABでPID制御をシミュレーションした。今回はアナログ電子回路でPID制御を実装する。 […]