bode関数で出したボード線図とSimulinkのSystem Identification Toolboxのモデルの線形化を用いて出したボード線図が一致しない
3 views (last 30 days)
Show older comments
DCモータのモデルに位置型PIDによって角速度制御をするシステムの目標値から出力までのボード線図をbode関数及びとSimulinkのSystem Identification Toolboxのモデルの線形化を用いてプロットしていたのですが、同様のモデルを対象としているのにも関わらず、ボード線図が一致しません。一致しないのはなぜでしょうか?
モデル及び制御器は離散系にしています。slxは拡張子をmに変更しています。
Simulink側のモデル:入力点が見切れてますが、図左側の加算点の前を入力の摂動点としています。
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/196740/image.png)
Mファイル側コード:
num1 = [Kd_po Kp_po Ki_po];
den1 = [(L*J)/Kt (((L*D) + (R*J))/Kt)+Kd_po (R*D/Kt)+Ke+Kp_po Ki_po];
sys1 = tf(num1, den1);
sys1 = c2d(sys1,Ma_P,'tustin');
figure(2);
subplot(2,2,1);
bode(sys1,'r');
title('Model with PID Controller','Fontsize',13, 'fontname','times new roman');
grid on;
Simulink側ボード線図:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/196741/image.jpeg)
Mファイル側ボード線図:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/196742/image.jpeg)
ご回答宜しくお願い致します。
0 Comments
Accepted Answer
Shoumei
on 1 Nov 2018
dlinmod関数でSimulinkモデルから伝達関数を取得してみましたが、MATLABの結果と同じになっているようです。 
System Identification Toolboxで伝達関数を取得するのは、具体的にどのようにされていますか?
0 Comments
More Answers (0)
See Also
Categories
Find more on Control System Toolbox 入門 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!