自动控制常见MATLAB函数的应用
更新时间:2023-12-29 10:10:01 阅读量: 教育文库 文档下载
- matlab自动拟合函数推荐度:
- 相关推荐
自动控制常见MATLAB函数的应用
1、 在matlab中采用roots函数求解多项式的根,采用conv函数实
现多项式的积,相互连接的模块的模型求解也相当简单(1)、串联连接命令G=G1*G2(2)、并联连接命令G=G1±G2(3)、反馈连接命令G=feedback(G1,G2,Sign)(sign用来表示系统是正反馈或负反馈,sign=-1为负反馈) 例如:① 程序如下: >> p=[1 3 0 4]; >> roots(p) ans =
-3.3553 0.1777 + 1.0773i 0.1777 - 1.0773i ②、用matlab实现: 程序如下: >> p=[3 2 1];q=[1 4]; >> n=conv(p,q) n =
3 14 9 4 ③、一个传递函数模型, s)?G(可以由下面的命令输入:
p(s)?s?3s?432n(s)?(3s?2s?1)(s?4)2s?5s3?3s2?4s?5>> num=[1 5];den=[1 3 4 5]; >> G=tf(num,den)
Transfer function: s + 5 --------------------- s^3 + 3 s^2 + 4 s + 5
④、如下图所示,前向传递函数为G(S),反馈回路传递函数为H(S),利用feedback计算系统的闭环传递函数
程序如下:
>> numg=[1];deng=[500 0 0]; >> numh=[1 1];denh=[1 2];
>> [num,den]=feedback(numg,deng,numb,denh,-1);
>> [num,den]=feedback(numg,deng,numh,denh,-1); >> G=tf(num,den)
H(S)?1R(S)E(S)C(S)?????????G(S)?????2?500SS?1S?2 Transfer function: s + 2 -------------------------- 500 s^3 + 1000 s^2 + s + 1
2、在matlab中,可以轻松的求解系统的所有极点,从而判断其稳定性
例子:系统的传递函数为: G(S)?
用matlab判断其稳定性,程序如下: >> num=[1,7,24,24]; >> den=[1:9]; >> roots(den) ans =
-1.2888 + 0.4477i -1.2888 - 0.4477i -0.7244 + 1.1370i -0.7244 - 1.1370i 0.1364 + 1.3050i 0.1364 - 1.3050i 0.8767 + 0.8814i 0.8767 - 0.8814i
可见4个极点带有正实部,所以系统不稳定
S?7S?24S?24S?2S?3S?4S?6S?7S?8S?9876532323、 MATLAB中给出了一个函数step()直接求取线性系统的阶跃
响应,该函数的调用方式如下:y=step(G, t)(G为系统的传递函数,t为要计算的点到所在时刻的值组成的时间向量,t一般可以由t=0:dt:t_end等步长地产生,t-end为终值时间,而dt为步长;y为系统的输出量) 例子:系统的传递函数为:
G(S)?SS43?7S32?24S?242?10S?35S?50S?24线性系统的稳态值可以通过dcgain()来求得,impulse()函数可以求出系统的脉冲响应
程序如下:>> num=[1,7,24,24];den=[1,10,35,50,24]; >> G=tf(num,den); >> t=0:0.1:10; >> y=step(G,t); >> plot(t,y) >> Y=dcgain(G) Y = 1 >> hold on >> y1=impulse(G,t); >> plot(t,y1)
例子:控制精度
ka变化时,系统的闭环传递函数为:
5000Kas?1020s?20000s?5000ka32 ?(s)?kaG1(S)G2(S)?1?kaG1(S)G2(S)应用如下MATLAB语言,可得到
ka=10、 ka=40、k a=80时
的系统响应。可见,当 80时,系统响应速度明显加快,但出k a ?现振荡 程序如下: >> ka=80;
>> nf=[5000];df=[1 1000]; >> ng=[1];dg=[1 200];
>> [num,den]=series(ka*nf,df,ng,dg); >> [n,d]=cloop(num,den); >> t=[0:0.01:2]; >> y=step(n,d,t);
>> plot(t,y,'black'),grid on
4、 用matlab绘制根轨迹
MTLAB中提供了rlocus()函数,用来绘制给定的根轨迹,该函数
R= rlocus(G, K) 的调用方式为:(G为系统的模型,
输入变量k为用户自己选择的增益,返回的变量R为根轨迹各点构成的复数矩阵)如果k值不给定,则该函数自动选择k,在这种情况下
,
调
用
格
式
为
[R,K]?rlocus(G)
这样产生的k值可以用来确定闭环系统稳定的增益范围
如果在函数调用中不返回任何参数,则将在图形窗口中自动绘制系统根轨迹曲线
Rlocus(G) Rlocufind()函数允许用户求取根轨迹上指定点处的开环增益,并将该增益下的所有的闭环极点显示出来:
[K P]=rlocufind(G) 例子:闭环系统的闭环传递函数为: ?(s)?特征方程可以写为: 1?Ks?1s(s?2)(s?3)K(s?1)(s?2)
s(s?2)(s?3)?K(s?1)P(s)?0?0在解题前,必须将特征方程写成下面形式: 1?KQ(s)K为所关心的参数,变化范围从0到 ?? ,绘制的根轨迹如下:
程序如下: >> num=[1 1]; >> den=[1 5 6 0]; >> G=tf(num,den); >> hold on;rlocus(G); >> [K,P]=rlocfind(G)
Select a point in the graphics window selected_point = -2.4621 + 0.0248i K = 0.4196 P =
-2.4655 + 0.0246i -2.4655 - 0.0246i
-0.0690
例子:研究系统根轨迹曲线和阶跃响应曲线之间的关心,考虑系统输出:
C(s)??(s)R(s)?K(s?1)(s?2)s(s?2)(s?3)?K(s?1)R(s)输入为单位阶跃信号时:程序如下: >> t=0:0.2:15; >> K=16.2859; >> num=K*[1 4 3]; >> den=[1 5 6+K K]; >> G=tf(num,den); >> y=step(G,t); >> plot(t,y) >> grid on
5、 在MATLAB中,使用较多的频域稳定性函数有bode函数、
nyquist函数、nichols函数、margin函数,pade函数,ngrid函数等。
MATLAB的控制系统工具箱中提供了bode()函数来求取、绘制给给定线性系统的伯德图,函数调用方式如下:
[mag,pha]=bode(G.,w)
其中G为系统的对象模型,变量w为用户制定频率点构成的向量,该函数在这些频率点上对系统进行频率分析。mag、pha对应系统的幅值和相位向量,相位的单位为角度。同时经常要将幅值向量转换成分贝形式,MATLAB命令为:
magdB=20*log10(mag) 该函数的另一种调用格式为: [mag,pha,w]=bode(G.) 这时w可以自动生成,如果在调用bode函数时不返回变量,则MATLAB自动生成系统的伯德图。一般和计算增益裕度和相角裕度的函数margin结合使用
例子:考虑系统传递函数: G(s)?s?3s(s?1)(s?2)则可以用下面的命令绘出系统的伯德图,计算出增益裕度和相角裕度,程序如下: >> w=logspace(-1,1,200); >> num=[1 3];
>> den=[conv([1 1],[1 2]),0]; >> G=tf(num,den); >> [x y w]=bode(G,w); >> margin(x,y,w)
例子:考虑系统传递函数
G(s)?0.5s?2s?s?0.532则可用下面命令绘出系统的奈氏图 >> num=[0.5]; >> den=[1 2 1 0.5];
>> [re,im]=nyquist(num,den); >> plot(re,im),grid on
正在阅读:
自动控制常见MATLAB函数的应用12-29
青少年犯罪成因分析12-27
2014,3,31 - 习题参考答案 - 9、10、12章05-26
高考作文救星05-26
关于回忆的作文03-31
格塞尔的成熟势力理论07-24
解放思想大讨论活动02-17
幼儿园开学第一课活动总结6篇03-25
读故事背单词-高考student04-24
勤俭节约手抄报图片02-12
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 自动控制
- 函数
- 常见
- 应用
- MATLAB
- 2014年浙江省高考模拟冲刺卷
- 计算机网络技术基础论文
- 高温中暑现场处置方案
- 河南省淮阳中学2018-2019学年高三上学期第三次月考试卷数学含答案
- 劳动与社会保障法试题六答案
- -《GIS原理及应用》试题 - 图文
- 生活中的小数练习练习题
- 北语16秋《唐宋古文研究》作业1
- 素质教育概论 考试
- 专题-高中函数值域的求法集锦
- 2017届高考历史一轮复习(考题演练跟踪检测)10.25“蒸汽”的力量及走向整体的世界人民版
- 有关相对分子质量的计算导学案
- 电子商务专业跟岗实习报告书
- 中国硫醇甲基锡行业运营格局与发展动向预测报告(2015-2019)
- 教学资源库建设计划与实施方案
- 环氧树脂A、B胶
- GPU HPC集群方案
- 学位英语考试汉译英解题指导
- 校团发200917号
- 《怪老头儿》推荐课教案