matlab中绘制Bode图以及nyquist图
绘制自动控制原理书上的图形
例如 G(s) = -1/(s^2+3s+1)
使用tf()来建立传递函数
g=tf([-1],[1 3 1]);
bode(g);
nyquist(g)
如果遇到比较难分解的传递函数,可以使用matlab进行分解例如
使用conv 命令将分母可以分解为按s次数递减的多项式
chuanhan=conv ([1 1],[1 3 5])
chuanhan =
1 4 8 5
g=tf([6],[1 4 8 5])
g =
6
---------------------
s^3 + 4 s^2 + 8 s + 5
bode(g);
nyquist(g)
使用simulink来绘制bode图
打开simulink 插入一个 Transfer Fcn模块,双击这个模块,编写一般形式传递函数(按照s降幂来填写,不清楚可参考上一篇博客)
鼠标右键点击该模块,选择linear analysis