Matlab基础教程《自动控制原理》
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Transfer function: 6 s^2 + 1
---------------------
Gs
s3
6s2 3s2
1 3s
1
s^3 + 3 s^2 + 3 s + 1
>>Hs=zpk([-1 -2],[-2*i 2*i -3],1)
Zero/pole/gain: (s+1) (s+2) ---------------(s+3) (s^2 + 4)
2019年7月28日星期日
国防科技大学自动控制系
3. 基本绘图操作
基 本 命 令 及 函 数 : plot, title, ylabel, xlabel,
legend, grid
1)数据准备
>> t=0:0.01:1; >> y=sin(2*pi*t);
2)画图
>> plot(t,y)
3)图样的说明
5
解:
y t y1 t y2 t
y1 t et
y2 t 5e5t
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行系统分析仿真
1 传递函数的描述
Gs=tf(num,den),Hs=zpk(z,p,k)
>>Gs=tf([6 0 1],[1 3 3 1])
et e2it e2it 2.5i e2it e2it
et 2 cos 2t 2.5* 2sin 2t
2et cos 2t 5et sin 2t
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
2)变量:不用说明,在使用前附值
缺省的变量:
pi:圆周率()
i, j:在没有重新附值前,表示虚数单位
ans:上次计算的结果
2019年7月28日星期日
国防科技大学自动控制系
1. 常量、变量的说明
>> 3.5 ( >> 为系统输入提示符,ans表示计算结果)
ans = 3.5000
>> 1.5e3 ans =
[r,p,k]=residue(num,den)
>> [r,p,k]=residue([1 3],[1 3 2])
r=
-1 2
Gs
s
s3
1s
2
s2
s
3 3s
2
p=
-2 -1 k=
G s k r1 r2 1 2
s p1 s p2 s 2 s 1
0.4 0.3
p = -1.0000
s
r3
p3
1 s 1
s
0
12
s
2
13
-1.0000
k=
[]
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
1 拉普拉斯逆变换的留数展开:
[r,p,k]=residue(num,den)
>> [r,p,k]=residue([2 12],[1 2 5])
[]
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
1 拉普拉斯逆变换的留数展开:
[r,p,k]=residue(num,den)
>> [r,p,k]=residue([1 5 9 7],[1 3 2])
r= -1 2
Gs
s3
s
5s2
1s
9s
例:求下列函数的反拉普拉斯变换
Fs
2s 12 s2 2s
5
解:对于复根情况,利用衰减正弦、衰减余弦函数的
源自文库
拉普拉斯变换对,更为简单。
eat
sin
t
s
a2
2
,
eat
cos t
s
sa
a2
2
F
s
2s s2
12 2s
5
2s 1 5*2 s 12 22
2
s
s 1 12
22
5
s
2
12
22
f t 2et cos 2t 5et sin 2t
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
例:哪个极点起主要作用
Y
s
6s s2
10 6s 5
s
1 1
s
5
>> [r,p,k]=residue([1 2 3],[1 3 3 1])
r=
1.0000 0.0000 2.0000
Gs
s2 2s 3
s 13
s3
s2 2s 3 3s2 3s 1
p= -1.0000 -1.0000
Gs
k
s
r1
p
s
r2
p2
num = 0 1 3 2 den = 1 3 4 12 >> [z,p,k]=zpkdata(Gs,'v')
H
s
s
s 1s 2 2is 2is
3
z = 0 + 0.4082i
0 - 0.4082i p = -1.0000 -1.0000 + 0.0000i -1.0000 - 0.0000i
控制系统分析仿真工具Matlab简介
《自动控制原理》
Theories of Automatic Control
任课教员:韦庆
电 话:74380
教学方式:讲授为主
学习方式:自学+实验
2019年7月28日星期日
国防科技大学自动控制系
控制系统分析仿真工具Matlab简介
1、基本运算、画图、帮助
•数的运算:+,-,*,/,^,i, j,pi
k=
[]
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
有: 有
Gs
2s s2
12 2s
5
1 2.5i s 1 2i
1 2.5i s 1 2i
g t 1 2.5i e12it 1 2.5i e12it 1 2.5i ete2it 1 2.5i ete2it et 1 2.5i e2it 1 2.5i e2it
ans =
0.7854
2019年7月28日星期日
国防科技大学自动控制系
2. 基本运算
3)常用的函数:sqrt(), log10(),log(),exp()
>> sqrt(2) ans =
1.4142 >> log10(10) ans =
1 >> exp(1) ans =
2.7183 >> log(exp(1)) ans =1
2019年7月28日星期日
国防科技大学自动控制系
4.多项式描述及解代数方程
1 多项式表示:用多项式的系数
>> Num=[1 3]
s3
>> Den=[1 3 2] s2 3s 2
>> num=[1 0]
s
>> num=[1 0 2] s2 2
2 多项式乘法
>> conv([1 1],[1 2]) s 1s 2 s2 3s 2
b=
4
5
6
>> c=[1 2 3;4 5 6;7 8 9](矩阵,矩阵向量用中括号定义)
c=
123
456
2019年7月28日星期日
789
国防科技大学自动控制系
2. 基本运算
1)算术运算:+,-,*,/,^(乘方)
>> 3+4 ans = 7 >> 3-4 ans = -1 >> 3*4 ans = 12 >> 3/4 ans = 0.7500 >> 3^4 ans = 81
2019年7月28日星期日
国防科技大学自动控制系
2. 基本运算
4)复数的模和幅角运算: abs(),angle()
>> a=3+4*i a=
3.0000 + 4.0000i >> abs(a) ans =
5 >> angle(a) ans =
0.9273 >> atan(4/3) ans =
0.9273
>> title(‘正弦函数图’)
>> xlabel(‘时间:秒’)
>> ylabel(‘幅值’)
>> grid
2019年7月28日星期日
为图形增加网格线
国防科技大学自动控制系
3. 基本绘图操作
3 4i e3t sin 4t
>> t=0:0.01:1; >> y=exp(-3*t).*sin(4*t);
H
s
s
s
2i
1s 2 s 2is
3
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行系统分析仿真
2 传递函数的转换
[num,den]=tfdata(sys,’v’),[z,p,k]=zpkdata(sys,’v’)
>> [num,den]=tfdata(Hs,'v')
2019年7月28日星期日
国防科技大学自动控制系
4.多项式描述及解代数方程
5 多项式的值 >> polyval([1 3 2],-1) ans=0
s2 3s 2 0 s 1
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
1 拉普拉斯逆变换的留数展开:
国防科技大学自动控制系
2. 基本运算
6)非常规矩阵运算(点运算.*,./,.^)
>> a=[1 2 3] a=1 2 3 >> a.*a ans =
149 >> a./a ans =
111 >> a.^a ans =
1 4 27
(行向量,同行元素间用空格分开)
(点运算.*:对应元素相乘) (点运算./:对应元素相除) (点运算.^:对应元素的乘方)
ans=[1 3 2]
2019年7月28日星期日
国防科技大学自动控制系
4.多项式描述及解代数方程
3 解代数方程 >> roots([1 3 2]) ans=-1
-2
s2 3s 2 0
4 利用根构造多项式
>> poly([-1 -2])
ans=[1 3 2] s 1s 2 s2 3s 2
2019年7月28日星期日
国防科技大学自动控制系
2. 基本运算
2)三角函数运算:sin, cos, tan, asin, acos, atan
>> sin(pi/4) 三角函数的自变量、计算结果都以弧度表示
ans =
0.7071
>> acos(ans)
函数的自变量在小括号内
ans =
0.7854
>> pi/4
r= 1.0000 - 2.5000i 1.0000 + 2.5000i
Gs
2s s2
12 2s 5
p= -1.0000 + 2.0000i -1.0000 - 2.0000i
G s k r1 r2 1 2.5i 1 2.5i
s p1 s p2 s 1 2i s 1 2i
Gs
s3
6s2 3s2
1 3s
1
k= 6
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行系统分析仿真
3 零极点图绘制 pzmap(sys)
Gs
s3
6s2 3s2
1 3s 1
>>pzmap(Gs)
0.5
Pole-Zero Map
>>
[p,z]=pzmap(Gs)
1500 >> 3+4*i ans =
3.0000 + 4.0000i >> pi ans =
3.1416
2019年7月28日星期日
国防科技大学自动控制系
1. 常量、变量的说明
3)变量可以附值成为向量或矩阵
>> a=[1 2 3]
(行向量,同行元素间用空格分开)
a=
123
>> b=[4;5;6]
(列向量,用分号分开不同的行)
•复数:abs(),angle()
•变量:
•函数:sin,cos,exp
•画 图 : plot, title, ylabel, xlabel,
legend, grid
•帮助:help, which, who, lookfor
2019年7月28日星期日
国防科技大学自动控制系
1.常量、变量的说明
1)常量:定义与其他语言基本相同 3.5 -1.5e3 3+4*i
angle(3+4i)
4i 3
2019年7月28日星期日
国防科技大学自动控制系
2. 基本运算
5)常规矩阵运算
>> a=[1 2 3] a=1 2 3
>> b=[4;5;6] b =4
5 6 >> a*b 32 >> b*a 4 8 12 5 10 15 6 12 18
2019年7月28日星期日
(行向量,同行元素间用空格分开) (列向量,用分号分开不同的行)
2
7
p=
-2
G s k r1 r2 s 2 1 2
-1
s p1 s p2
s 2 s 1
k=
12
2019年7月28日星期日
国防科技大学自动控制系
利用Matlab进行拉普拉斯变换
1 拉普拉斯逆变换的留数展开:
[r,p,k]=residue(num,den)