[VIP专享]机械控制工程基础实验指导书(2013年)

  • 格式:pdf
  • 大小:164.97 KB
  • 文档页数:9

中北大学机械工程与自动化学院

实验指导书

课程名称:《机械工程控制基础》课程代号:02020102适用专业:机械设计制造及其自动化实验时数:4学时实 验 室:数字化实验室实验内容:1.系统时间响应分析2.系统频率特性分析

机械工程系2013.11实验一 系统时间响应分析实验课时数:2学时 实验性质:设计性实验实验室名称:数字化实验室 一、实验项目设计内容及要求1.试验目的本实验的内容牵涉到教材的第3、4、5章的内容。本实验的主要目的是通过试验,能够使学生进一步理解和掌握系统时间响应分析的相关知识,同时也了解频率响应的特点及系统稳定性的充要条件。

2.试验内容完成一阶、二阶和三阶系统在单位脉冲和单位阶跃输入信号以及正弦信号作用下的响应,求取二阶系统的性能指标,记录试验结果并对此进行分析。3.试验要求学习教材《机械工程控制基础(第5版)》第2、3章有关MATLAB的相关内容,要求学生用MATLAB软件的相应功能,编程实现一阶、二阶和三阶系统在几种典型输入信号(包括单位脉冲信号、单位阶跃信号、单位斜坡信号和正弦信号)作用下的响应,记录结果并进行分析处理:对一阶和二阶系统,要求用试验结果来分析系统特征参数对系统时间响应的影响;对二阶系统和三阶系统的相同输入信号对应的响应进行比较,得出结论。4.试验条件利用机械工程与自动化学院数字化试验室的计算机,根据MATLAB软件的功能进行简单的编程来进行试验。

二、具体要求及实验过程

1.系统的传递函数及其MATLAB表达(1)一阶系统传递函数为: 1)(Ts

KsG

传递函数的MATLAB表达: num=[k];den=[T,1];G(s)=tf(num,den)(2)二阶系统

传递函数为:22

22)(nnnwswsw

sG



传递函数的MATLAB表达: num=[];den=[1,wn,wn^2];G(s)=tf(num,den)2nw2

(3)任意的高阶系统

传递函数为: nnnnmmmmasasasabsbsbsbsG11101110)(

传递函数的MATLAB表达: num=[];den=[];G(s)=tf(num,den)mmbbbb,,,110nnaaaa,,,110若传递函数表示为:)())(()())(()(1010nmpspsps

zszszsKsG



则传递函数的MATLAB表达: z=[];p=[];K=[K];G(s)=zpk(z,p,k)mzzz,,,10nppp,,,10

2.各种时间输入信号响应的表达(1)单位脉冲信号响应:[y,x]=impulse[sys,t](2)单位阶跃信号响应:[y,x]=step[sys,t](3)任意输入信号响应:[y,x]=lsim[sys,u,t] 其中,y为输出响应,x为状态响应(可选);sys为建立的模型;t为仿真时间区段(可选)试验方案设计可参考教材相关内容,相应的M程序可参考(杨叔子主编的《机械工程控制基础》第五版)提供的程序,在试验指导教师的辅导下掌握M程序的内容和格式要求,并了解M程序在MATLAB软件中的加载和执行过程。3.实验的具体内容(1)完成一阶(选用不同的时间常数)、二阶系统(选择不同的阻尼比和无阻尼固有频率,T

nw

而且阻尼比要有欠阻、临界阻尼和过阻尼三种情况)在典型输入信号(单位脉冲、单位阶跃、正弦信号)作用下所对应的时间响应实验;(2)完成二阶系统性能指标的求取(设计的二阶系统必须是欠阻尼的二阶系统)。(3)完成一稳定三阶系统的单位阶跃响应的实验;(选作)(4)完成一个稳定的三阶系统和一个不稳定的三阶系统的单位脉冲响应,比较两响应曲线的差别并说明原因。(选作)4.实验分析内容(1)分析时间常数对一阶系统时间响应的影响;(2)分析参数对二阶系统的时间响应的性能指标的影响;(3)分析系统稳定性与系统特征值的关系;(4)了解系统频率响应的特点。

三、实验参考程序

程序1: 求取一阶系统单位脉冲和单位阶跃响应的响应曲线clear all;t=[0:0.001:0.2];%nG=[1];tao=0.0125;dG=[tao 1];G1=tf(nG,dG);tao=0.025;dG=[tao 1];G2=tf(nG,dG);tao=0.05;dG=[tao 1];G3=tf(nG,dG)%[y1,T]=impulse(G1,t);[y1a,T]=step(G1,t);[y2,T]=impulse(G2,t);[y2a,T]=step(G2,t);[y3,T]=impulse(G3,t);[y3a,T]=step(G3,t);%subplot(121),plot(T,y1,'--',T,y2,'-.',T,y3,'-')legend('tao=00125','tao=0.025','tao=0.05')xlabel('t(sec)'),ylabel('x(t)');grid on;subplot(122),plot(T,y1a,'--',T,y2a,'-.',T,y3a,'-')legend('tao=00125','tao=0.025','tao=0.05')grid on;xlabel('t(sec)'),ylabel('x(t)');title('一阶系统单位脉冲和单位阶跃响应的响应曲线----班级,学号,姓名')

程序2: 求取二阶系统单位脉冲和单位阶跃响应的响应曲线% e2 :求取二阶系统单位脉冲和单位阶跃响应的响应曲线(欠阻尼)clear all;t=[0:0.01:4];wn=7;nG=[wn^2];kc=0.2;dG1=[1 2*kc*wn wn^2];G1=tf(nG,dG1);kc=0.5;dG2=[1 2*kc*wn wn^2];G2=tf(nG,dG2);kc=0.8;dG3=[1 2*kc*wn wn^2];G3=tf(nG,dG3);[y1,T]=impulse(G1,t);[y1a,T]=step(G1,t);[y2,T]=impulse(G2,t);[y2a,T]=step(G2,t);[y3,T]=impulse(G3,t);[y3a,T]=step(G3,t);subplot(121),plot(T,y1,'--',T,y2,'-.',T,y3,'-')legend('kc=0.2','kc=0.5','kc=0.8'),xlabel('t(sec)'),ylabel('y(t)');grid on;subplot(122),plot(T,y1a,'--',T,y2a,'-.',T,y3a,'-')legend('kc=0.2','kc=0.5','kc=0.8'),grid on;xlabel('t(sec)'),ylabel('y(t)');title('二阶系统单位脉冲和单位阶跃响应的响应曲线(欠阻尼----班级,学号,姓名')

程序3:求二阶系统正弦响应及响应曲线% e3 二阶系统正弦响应及响应曲线clear all;t=[0:0.01:14];u=sin(0.3*pi*t);wn=7;nG=[wn^2];kc=0.7;dG=[1 2*kc*wn wn^2];G=tf(nG,dG);y=lsim(G,u,t);plot(t,u,'-.',t,y,'-',t,u'-y,'--','linewidth',1)legend('u(t)','y(t)','e(t)')grid;xlabel('t(sec)'),ylabel('y(t)');title('二阶系统正弦响应及响应曲线----班级,学号,姓名')

程序4:求二阶系统单位阶跃响应的性能指标 % e4 求取二阶系统单位阶跃响应的性能指标(欠阻尼) close all; % t=0:0.001:4; % yss=1;dta=0.02; % wn=7; nG=[wn^2]; kc=0.2;dG1=[1 2*kc*wn wn^2];G1=tf(nG,dG1); kc=0.5;dG2=[1 2*kc*wn wn^2];G2=tf(nG,dG2); kc=0.8;dG3=[1 2*kc*wn wn^2];G3=tf(nG,dG3); y1=step(G1,t);y2=step(G2,t);y3=step(G3,t); % kc=0.2; % 求上升时间tr r=1;while y1(r) tr1=(r-1)*0.001; %求峰值ymax和峰值时间tp [ymax,tp]=max(y1); tp1=(tp-1)*0.001; %求超调量mp mp1=(ymax-yss)/yss; %求调整时间ts s=4001;while y1(s)>1-dta & y1(s)<1+dta;s=s-1;end ts1=(s-1)*0.001;

% kc=0.5; r=1;while y2(r) tr2=(r-1)*0.001; [ymax,tp]=max(y2); tp2=(tp-1)*0.001; mp2=(ymax-yss)/yss; s=4001;while y2(s)>1-dta &y3(s)<1+dta;s=s-1;end ts2=(s-1)*0.001;

% % kc=0.8; r=1;while y3(r) tr3=(r-1)*0.001; [ymax,tp]=max(y3); tp3=(tp-1)*0.001; mp3=(ymax-yss)/yss; s=4001;while y3(s)>1-dta & y3(s)<1+dta;s=s-1;end ts3=(s-1)*0.001; %输出数据 [tr1 tp1 mp1 ts1;tr2 tp2 mp2 ts2;tr3 tp3 mp3 ts3]