预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于MATLAB下的PID控制仿真【摘要】自动化控制的参数的定值控制系统多采用P、I、D的组合控制。本文通过MATLAB软件用于直流伺服电机对单位阶跃信号输入的PID控制进行动态仿真,显示了不同作用组合和不同增益设置时的动态过程,为系统控制规律的选择和参数设定提供了依据。【关键词】自动化控制仿真直流伺服电机MATLABPID【引言】现代自动化控制中,参数的自动控制占有很大的比例,这些控制多采用P、I、D的组合。通常情况下,对系统的动态过程利用微分方程经拉普拉斯变换导出时间函数,可得到输出量的时间函数,但要得到系统的动态响应曲线,其计算量庞大。因而在一般情况下对控制结果很难得到精确的预见。矩阵实验室(Matrixlaboratory,MATLAB)软件是一个适用于科学计算和工程应用的数学软件系统,历尽20多年的发展,现已是IEEE组织认可的最优化的科技应用软件。该软件有以下特点:数值运算功能强大;编程环境简单;数据可视化功能强;丰富的程序工具箱;可扩展性能强等。在本文中以工程控制中常用的直流伺服电机的自动控制为例,演示MATLAB编程在自动控制系统动态仿真中的应用。【理论推断】1.直流伺服电机模型1.1直流伺服电机的物理模型图1直流伺服电机的物理模型---电枢输入电压()---电枢电阻()---电枢电感(H)---感应电动势()---电机电磁转矩(N)J---转动惯量()B---粘性阻尼系数()---流过电枢的电流(A)---电机输出的转角()本文所采用的直流伺服电机的物理模型和参数如图1所示。1.2直流电机的数学模型1.2.1基本方程根据基尔霍夫定律和牛顿第二定律对图1所示的电机列基本方程:①②③④式中:为电机的转动常数();为感应电动势常数()1.2.2电机的传递函数对上式进行拉普拉斯变换,得:设,则图1所示的伺服直流电机模型的方框图如图2所示图2直流伺服电机模型方框图消去方程组(2)的中间变量,整理得即G(S)为图2所示系统的开环传递函数设图2中的系统参数如下:2.MATLATB仿真利用MATLAB软件对自动控制系统进行仿真的方法有多种,本文介绍一种比较简单的方法Mfile方法,即新创建一个M程序文件,然后将其在MATLABWindows主界面内运行,MATLAB软件会自动绘制出系统对外界输入的响应曲线。2.1仿真系统的要求图1所示的直流伺服电机的电枢在外加控制电压前是停转状态的,当电枢外加阶跃电压后,由于电枢绕组有电感,电枢电流不能突然增加,有一个电气过程,响应的电磁转矩的增加也有一个过程。但是,为了满足自动控制系统快速响应的要求,只有伺服电机的转速变化应能够快速跟上控制信号的变化。所以本文所述系统(图2)要求在电压输入端输入单位阶跃电压(1V)后,直流伺服电机的转轴应能输出1rad转角,且该系统应同时满足下列要求:系统调整时间ts<40ms,最大超调量MP<15%,系统稳态误差ess=0.2.2系统阶跃输入响应仿真首先创建一个MATLAB文件motor.m,即将直流电机的传递函数转换为MATLAB可执行的命令。文件motor.m的内容如下:J=3.23E-6;B=3.51E-6;Ra=4;La=2.75E-6;Kt=0.03;num=Kt;den=[(J*La)((J*Ra)+(La*B))((B*Ra)+Kt*Kt)0];t=0:0.001:0.2;step(num,den,t);现在,在MATLAB的主界面中输入motor后,就可以得到直流伺服电机对单位阶跃输入的响应曲线,如图3所示。图3系统阶跃响应(Kp=10)图3显示的结果是图4所示开环系统对单位阶跃输入的响应,即直流伺服电机输入1V单位阶跃电压时,电机的转轴输出呈直线性上升。这个分析结果表明,该系统没有达到预期的设计要求。U(s)U(s)图4开环系统对单位阶跃输入的响应2.3PID校正为了使系统能够达到设计要求,可以在图4的前向通道上设置一个控制构成闭环系统来校正直流伺服电机,如图5所示。图5PID校正2.3.1比例控制校正为能在要求的40ms内达到设定的角位移,比例增益尽可能的大,以提高比例作用的强度,但必须同时考虑系统的稳定性。采用单纯的比例控制,器调整时间和超调量是一对矛盾,无法同时满足,要缩短调整时间,Kp要加大