自动控制常用MATLAB函数

自动控制常用MATLAB函数提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、注意事项二、具体函数1.ezplot函数(不用定义自变量画图)2.tf函数(表示传递函数)3.laplace函数和ilaplace函数(拉氏逆变换)4.lsim函数(求输出)5.impulse函数(求脉冲响应)6.step函数(求阶跃响应)7.subplot函数(多个坐标图像显示)三、总结前言这学期刚学的自动控制,老师布置了挺多matlab的画图作业,把之前常用的基础函数整理下方便复习(其实是懒得记笔记)。提示:.

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

这学期刚学的自动控制,老师布置了挺多matlab的画图作业,把之前常用的基础函数整理下方便复习(其实是懒得记笔记)。


提示:以下是本篇文章正文内容,下面案例可供参考

一、注意事项

  1. 由于是专门对付作业的,所以有些解释为了方便理解会比较狭隘,基本只说用到的功能。
  2. Gb为闭环传递函数,Gk是开环传递函数。
  3. Rs/rt为输入函数,Cs/st为输出函数,在复域和时域上。
  4. s是复域变量。
  5. t是时域变量。
  6. kosi 阻尼比,w无阻尼振荡频率

二、具体函数

1.ezplot函数(不用定义自变量画图)

ezplot(ct,[0 3*pi])

作用: 绘制某个区间的图像
类似plot,但不用定义自变量,问题是拉普莱斯变换后会把你的s变量自动转化成t,就里就可以用ezplot画图,但一般要考虑自变量范围

%示例:
 syms s; 
 syms t;
 rt=2*sin(3*t+30);
 Gs=4/(s^2+6*s+4);
 Rs=laplace(rt)%求取拉式变换
 Cs=Rs*Gs
 ct=ilaplace(Cs)%求取拉式[逆]变换
 ezplot(ct,[0 3*pi])%自变量范围0到3*pi
 hold on;%和下一个曲线放在同一个坐标中
 ezplot(rt,[0 3*pi])%绘制某个区间的图像可定范围

2.tf函数(表示传递函数)

y=tf(num,den)
num表示分子各阶系数,den表示分母各阶系数

作用:可以用来表示传递函数

%示例:
%        s^2+2*kosi*w*s+0
% y= -----------------------------
%       s^2+2*kosi*w*s+w^2

   y=tf([1 2*kosi*w 0] ,[1 2*kosi*w w^2])
 % y=tf(num,den)
 % num=[1 2*kosi*w 0],den=[1 2*kosi*w w^2]
 


3.laplace函数和ilaplace函数(拉氏逆变换)

Rs=laplace(rt)
b为时域函数,a为拉氏变换后的复域函数

作用:laplace求拉氏变换 ilaplace求拉氏逆变换(会自动t–>s)

 syms s; 
 syms t;
 rt=2*sin(3*t+30);
 Gs=4/(s^2+6*s+4);
 Rs=laplace(rt)%求取拉式变换
 Cs=Rs*Gs
 ct=ilaplace(Cs)%求取拉式[逆]变换
 ezplot(ct,[0 3*pi])
 hold on;
 ezplot(rt,[0 3*pi])%绘制某个区间的图像可定范围

4.lsim函数(求输出)

lsim(sys,u,t)
sys传递函数,u 输入函数,t时域自变量

作用:已知输入函数和传递函数,用这个可以的到每次系统的输入对应的输出(输入函数u要是时域中的,,可以输出图像也可以是对应的值)

%代码如下(示例):
clear
clc   
%  Gb=(s+10)/(s^3+15*s^2+s+10)  %
syms s;
sys = tf([1 10],[1 15 1 10]);
t=0:0.01:50;  %定一下范围
u=t;
lsim(sys,u,t)%输出图像
%C=lsim(sys,u,t)%输出每个t对应的值

5.impulse函数(求脉冲响应)

impulse(num,den)
num表示分子各阶系数,den表示分母各阶系数

作用:已知闭环传递函数,求其脉冲响应
impulse(num,den)会输出图像;ct2=impulse(num,den)输出数值。

clear
clc   
%利用解析法绘制%
syms s; 
Rs=1;
Gb=15/(s^2+8*s+15);
Cs=Rs* Gb;
ct1=ilaplace(Cs)%求取拉式[逆]变换
figure (1)
ezplot(ct1,[0 3])
%利用impulse绘制%
num=[0 0 15];%分子系数
den=[1 8 15];%分母系数
figure (2)
impulse(num,den)%输出图像
ct2=impulse(num,den)%输出每个t对应的值

6.step函数(求阶跃响应)

step(num,den)
num表示分子各阶系数,den表示分母各阶系数

作用:已知闭环传递函数,求其阶跃响应
step(num,den)会输出图像;ct2=step(num,den)输出数值。

clear
clc   
num=[1 2 3];分子系数
den=[4 5 6] ;分母系数
step(num,den)%输出图像

7.subplot函数(多个坐标图像显示)

subplot(a, b, n)

作用:a和b指定将图形窗口分成a*b个绘图区,n为这个图像所在的位置
(注意要写在如ezplot这种函数前面)

三、总结

后面再有问题或者新的作业的话会更新。
另外matlab画图真好用。

今天的文章自动控制常用MATLAB函数分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/24550.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注