欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Matlab-自动控制系统设计与分析1数学模型

程序员文章站 2022-03-26 18:13:16
...

Matlab-自动控制系统设计与分析1数学模型

本文内容:数学模型的建立

操作环境:matlab2019b(大部分语法和老版本一样,版本不影响使用

1.数学模型的建立

(1)传递函数已知

主要函数:tf
如:
Matlab-自动控制系统设计与分析1数学模型
键入:

num=[33.3];  %分子
den=[1 2.2 11.1]; %分母
G=tf(num,den);

在m文件里运行或者命令行窗口直接输入后,在命令行窗口输入G+回车,可以看见建立了传递函数G

Matlab-自动控制系统设计与分析1数学模型
(若想具体了解函数的功能,只需在命令行输入help+函数名即可,如help tf)
Matlab-自动控制系统设计与分析1数学模型
(2)结构图已知求传递函数

主要函数:parallel;series;feedback

如求以下系统的传递函数
Matlab-自动控制系统设计与分析1数学模型

num1=[1];den1=[1 1];  %表示G1
num2=[1];den2=[1 2];   %表示G2
num3=[1 2];den3=[1 4 5];  %表示G3
num4=[1];den4=[1 3];    %表示G4
[nump,denp]=parallel(num2,den2,num3,den3);   %并联合并G2、G3得到Gp
[nums,dens]=series(num1,den1,nump,denp);     %串联合并G1、Gp
[num,den]=feedback(nums,dens,num4,den4,-1);  %负反馈连接,-1表示负反馈
G=tf(num,den);

Matlab-自动控制系统设计与分析1数学模型

(3)各类模型的变换

主要函数:zpk,tf2zp,pzmap,ss,tf2ss,c2d, minreal

零极点形式
在上文的基础上输入

Gzpk=zpk(G)  %零极点模型

Matlab-自动控制系统设计与分析1数学模型

[z,p,k]=tf2zp(num,den) %求零极点与增益

Matlab-自动控制系统设计与分析1数学模型
绘制零极点图

pzmap(G)
grid on

Matlab-自动控制系统设计与分析1数学模型
状态空间模型

 Gss=ss(G); %得到状态空间模型

Matlab-自动控制系统设计与分析1数学模型
还有几个简单的操作,大家可以自己试一试,小编这里就先不放图了~

[A,B,C,D]=tf2ss(num,den);%得到各矩阵
[a,b,c,T]=obsvf(A1,B1,C1) %可观性分解 T为变换阵
[a,b,c,T]=ctrbf(A1,B1,C1) %可控性分解 T为变换阵

离散系统

Gz=c2d(G,0.1) %采样时间为0.1s

Matlab-自动控制系统设计与分析1数学模型
零极点相消与最小实现

num=[1 7 10];
den=[1 5 6];
G=tf(num,den);
minreal(G);  

Matlab-自动控制系统设计与分析1数学模型

本文为小编自行编辑与整理,如有错误还请大家批评指出~

相关标签: 控制