bode関数で出したボード線図とSimulinkのSystem Identification Toolboxのモデルの線形化を用いて出したボード線図が一致しない
6 ビュー (過去 30 日間)
古いコメントを表示
DCモータのモデルに位置型PIDによって角速度制御をするシステムの目標値から出力までのボード線図をbode関数及びとSimulinkのSystem Identification Toolboxのモデルの線形化を用いてプロットしていたのですが、同様のモデルを対象としているのにも関わらず、ボード線図が一致しません。一致しないのはなぜでしょうか?
モデル及び制御器は離散系にしています。slxは拡張子をmに変更しています。
Simulink側のモデル:入力点が見切れてますが、図左側の加算点の前を入力の摂動点としています。
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側ボード線図:
Mファイル側ボード線図:
ご回答宜しくお願い致します。
0 件のコメント
採用された回答
Shoumei
2018 年 11 月 1 日
dlinmod関数でSimulinkモデルから伝達関数を取得してみましたが、MATLABの結果と同じになっているようです。 
System Identification Toolboxで伝達関数を取得するのは、具体的にどのようにされていますか?
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Control System Toolbox 入門 についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!