clc;
clear all;
close all;
%% 状态空间法建模
m=5;k=2;c=0.1;
A=[0 1;-k/m,-c/m];
B=[0;1/m];
C=[1 0];
D=0;
sys1=ss(A,B,C,D)
step(sys1)
%% 模型转换
sys2=tf(sys1)
sys3=zpk(sys2) %原式无法因式分解
[z,p,k]=ss2zp(A,B,C,D)
[num,den]=ss2tf(A,B,C,D)
%% 对不同惯性环节分析
n=4;
T_in=[1 2 10 0];
figure
for i=1:n
subplot(2,2,i)
num=1;
if i<=3
den=[T_in(i),1];
sys=tf(num,den)
step(sys,30);
else
fplot(@(t)heaviside(t),'r-o')
end
end
设G(s)为系统开环传递函数,在G(s)中取s=jω得到系统开环频率响应G(jω)
当参变量ω 由0变化到+∞时,可在复数平面上画出 G(jω)随ω的变化轨迹,称为奈奎斯特图。奈奎斯特稳定判据的基本形式表明,如果系统开环传递函数G(s)在s复数平面的虚轴jω上既无极点又无零点,那么有 Z=P-N
P是开环传递函数在右半s平面上的极点数。
N是当角频率由ω=0变化到ω=+∞时 G(jω)的轨迹沿逆时针方向围绕实轴上点(-1,j0)的次数。
奈奎斯特稳定判据还指出:Z=0时,闭环控制系统稳定;Z≠0时,闭环控制系统不稳定。
%% 对系统稳定性的分析
%{
1、利用 pzmap( ) 绘制连续系统的零极点图;
2、利用 tf2zp( ) 求出系统零极点;
3、利用 roots( ) 求分母多项式的根来确定系统
的极点。
4、画出系统开环奈氏图,根据奈氏曲线对(-1,j0)
点的包围情况和开环右极点的个数判断闭环稳定
性。
%}
figure
subplot(1,3,1);
sys=tf(1,[1 1.8 1.8 1]);
pzmap(sys);
grid on
subplot(132)
nyquist(sys)
grid
subplot(1,3,3);
sys1=feedback(sys,1); % (Gk,H,-1)(开环传递函数,反馈函数,负反馈(可省略))
step(sys1,30)
grid
sys =
1
-------------------------
s^3 + 1.8 s^2 + 1.8 s + 1
系统稳定
k=100;
z=-5;
p=[2,-8 -20];
GH=zpk(z,p,k);
subplot(131)
pzmap(GH,'r')
grid
subplot(132)
nyquist(GH,'k')
grid
subplot(133)
step(feedback(GH,1),'b')
grid
%%
% step:单位阶跃响应
% impulse:单位脉冲响应
% heaviside:单位阶跃函数(赫维赛德函数)
% dirac:单位脉冲函数 (狄拉克函数)
figure
fplot(@(t)dirac(t),'r-o')
%%