时域分析:
num:代表传递函数分母 den:代表传递函数分子 sys代表传递函数
sys=tf(num,den) tf:传递函数(transform function的缩写)
sys=zpk(z,p,k)其中z=[z1 z2 z3 z4....] p=[p1 p2 p3 ......] z(zero) p(pole) zpk:传递函数的零极点形式,例如zpk(sys1)就可以将多项式的形式转化为零极点形式
sys=series(sys1,sys2) 串联
sys=parallel(sys1,sys2)并联
sys=feedback(sys前向通道,sys反馈通道,sign正负反馈符号)注:负反馈可省略
impulse(sys)impulse(num,den,t)[y,x,t]=impulse(num,den) 单位脉冲响应函数
step(sys)step(num,den)单位阶跃响应函数
lsim(sys,u任意输入,t)任意输入响应函数
r=roots(p)求多项式的根
z=zero(sys)求传递函数零点 [z k]=zero(sys)求零点和增益
p=pole(sys)求传递函数极点
[p z]=pzmap(sys) 绘制零极点分布图
[num den]=[conv(1 5),conv(1 8)]
频域分析:
根轨迹:
rlocus(sys),与simulink模型和linmod函数配合使用进行反馈增益设计
Bode图
bode(sys)bode(sys,w频率点或范围)bode(num,den) bode(num,den,w)
[mag,phase]=bode(sys)[ma,phase,w]=bode(sys) magdb=20log(mag)对数幅值
Nyquist图
[re,im]=nyquist(sys,W)
Nichols图
[mag,phase]=nichols(sys,W)
拉氏变换:
[r p]=residue(num ,den) 将分式多项式展开r系数向量 p极点,再通过查表可进行反变换
F=laplace(f)拉氏变换 f=ilaplace(F)拉氏反变换
syms
现代控制理论:
[Num Den]=ss2tf(A,B,C,D) 状态空间转为传递函数 (ss是state space简写,2即to)
[Z P K]=ss2zp(A,B,C,D) 状态空间转为零极点形式
sys=ss(A,B,C,D)
作动器与飞机串联[A B C D]=series(SSAct,SSPlant)
连续系统与离散系统相互转化函数:c2d和d2c(c即continuous,d即discrete)
仿真:t=0:0.01:100
[y x t]=initial(A,B,C,D,x0,t) 初值x0输入响应
同理:lsim任意输入响应 impulse脉冲响应 step单位阶跃响应
f=rank(ctrb(A,B));可控性判断
f=rank(obsv(A,C));可观性判断
反馈极点配置
SISO: K=acker(A,B,R期望位置)
MIMO:K=place(A,B,R)
线性二次型控制器设计
[K P E]=lqr(A,B,Q,R,N)
lqry
注:无论lqr还是lqry都是状态反馈,不是输出反馈,lqry只是目标函数中有输出量
lyap:解李雅普诺夫方程函数
kalman:卡尔曼滤波器设计函数