MATLABSimulink与控制系统仿真(第3版)
- 格式:pptx
- 大小:3.38 MB
- 文档页数:88
控制系统MATLAB入计算及仿真第三版课程设计1. 课程设计概述本课程设计旨在通过MATLAB软件的应用,加深学生对控制系统理论知识的理解,并培养学生使用MATLAB进行控制系统计算和仿真的能力。
本课程设计将涉及以下内容:•PID控制器的设计•稳态误差和稳态稳定性分析•频率响应分析及幅度/相位裕度的计算•根轨迹设计•相关MATLAB工具的使用2. 课程设计要求2.1 设计要求设计一个PID控制器,将其应用于一个二阶系统的位置控制,使系统具有以下性能指标:•峰值超调小于5%•调节时间小于2秒•稳态误差小于0.12.2 设计流程1.根据系统的传递函数建立MATLAB数学模型。
2.根据设定的性能指标,计算PID控制器的参数。
3.利用MATLAB工具进行系统的模拟仿真,观察系统的输出响应。
4.对系统的性能进行分析,并对参数进行调整,直至满足所有性能指标要求。
3. 课程设计过程及结果3.1 系统传递函数的建立假设系统的传递函数为 $G(s) = \\frac{1}{s^2 + 6s + 8}$,利用MATLAB提供的tf函数,可将其转化为MATLAB数学模型:>> G = tf([1],[1 6 8]);3.2 PID控制器设计依据设定的性能指标,采用Ziegler-Nichols方法计算出PID控制器的参数:•K p=1.2•T i=2.0•T d=0.5将参数代入MATLAB中的pid函数创建PID控制器:>> Kp = 1.2;>> Ti = 2.0;>> Td = 0.5;>> C = pid(Kp,Ti,Td);3.3 系统的模拟仿真运用MATLAB中提供的feedback函数,将PID控制器与系统传递函数进行闭环连接:>> sys_cl = feedback(C*G,1);运用MATLAB中的step函数进行系统的步跃响应仿真,观察系统的响应情况:>> step(sys_cl)STEP结果STEP结果3.4 系统性能的分析根据仿真结果,可得出系统的性能指标:•峰值超调为4.97%,小于5%;•调节时间为1.986秒,小于2秒;•稳态误差为0,小于0.1。
第12章MATLAB Simulink系统仿真例12-8采用S函数实现y = nx,即把一个输入信号放大n倍。
①利用MATLAB语言编写S函数,程序如下。
%******************************************************* %S函数timesn.m,其输出是输入的n倍%******************************************************* function [sys,x0,str,ts]=timesn(t,x,u,flag,n)switch flagcase 0[sys,x0,str,ts]=mdlInitializeSizes; %初始化case 3sys=mdlOutputs(t,x,u,n); %计算输出量case {1,2,4,9}sys=[];otherwise %出错处理error(num2str(flag))end%******************************************************* %mdlInitializeSizes:当flag为0时进行整个系统的初始化%******************************************************* function [sys,x0,str,ts]=mdlInitializeSizes()%调用函数simsizes以创建结构sizessizes=simsizes;%用初始化信息填充结构sizessizes.NumContStates=0; %无连续状态sizes.NumDiscStates=0; %无离散状态sizes.NumOutputs=1; %有一个输出量sizes.NumInputs=1; %有一个输入信号sizes.DirFeedthrough=1; %输出量中含有输入量sizes.NumSampleTimes=1; %单个采样周期%根据上面的设置设定系统初始化参数sys=simsizes(sizes);%给其他返回参数赋值x0=[]; %设置初始状态为零状态str=[]; %将str变量设置为空字符串ts=[-1,0]; %假定继承输入信号的采样周期%初始化子程序结束%******************************************************* %mdlOutputs:当flag值为3时,计算输出量1%******************************************************* function sys=mdlOutputs(t,x,u,n)sys=n*u;%输出量计算子程序结束例12-9采用S函数来构造非线性分段函数。
控制系统MATLAB入计算及仿真第三版教学设计一、教学目标掌握MATLAB在控制系统中的计算和仿真方法,能够使用MATLAB软件对控制系统进行模拟设计和分析。
二、教学内容1. MATLAB基本操作•MATLAB软件的安装和基本操作;•MATLAB编程语言的基本语法和关键字;•变量、函数和程序文件的定义和使用;•MATLAB图形化操作的基本知识。
2. 控制系统基础知识•控制系统基本概念和分类;•控制系统建模及其性能指标;•传递函数的定义和应用;•时域分析和频域分析方法。
3. MATLAB在控制系统中的应用•MATLAB在传递函数建模中的应用;•MATLAB在时域分析中的应用;•MATLAB在频域分析中的应用;•MATLAB在控制系统的仿真和设计中的应用。
4. 综合应用•综合应用举例:PID控制器设计和仿真实验。
三、教学方法本教学采用“讲授+练习+实验”等多种教学方法,授课内容具有系统性、全面性和灵活性。
具体教学方法如下:1. 讲授•通过讲授理论知识,使学生了解控制系统和MATLAB的基本概念、原理和方法;•阐述MATLAB在控制系统建模和分析中的作用和意义。
2. 练习•通过编写MATLAB程序,练习掌握MATLAB的基本语法和编程方法;•通过掌握控制系统的基本概念和传递函数的应用,练习利用MATLAB 进行传递函数建模;•通过练习MATLAB的时域分析和频域分析,掌握控制系统的时域分析和频域分析方法;•通过实验,练习MATLAB在控制系统仿真和设计中的应用。
3. 实验•通过实验,让学生了解控制系统的实际应用和MATLAB软件的使用;•通过实验,让学生掌握PID控制器的设计和仿真方法。
四、实践环节本教学设计将控制系统和MATLAB知识点进行深入详细讲解,辅以大量的实践练习和仿真实验。
培养学生的计算机应用能力和工程技术实践能力,使学生能够迅速掌握MATLAB软件的使用,并能够灵活地应用MATLAB软件解决控制系统问题。