当前位置:文档之家› (机电控制系统时域频域分析)

(机电控制系统时域频域分析)

《机电系统控制基础》大作业一
基于MATLAB的机电控制系统响应分析
哈尔滨工业大学
2013年11月9日
1
作业题目
1. 用MATLAB 绘制系统2
()25()()
425
C s s R s s s Φ==
++的单位阶跃响应曲线、单位斜坡响应曲线。

2. 用MATLAB 求系统2
()25
()()425
C s s R s s s Φ==++的单位阶跃响应性能指标:上升时间、峰值时间、调节时间和超调量。

3. 数控直线运动工作平台位置控制示意图如下:
X i
伺服电机原理图如下:
L
R
(1)假定电动机转子轴上的转动惯量为J 1,减速器输出轴上的转动惯量为J 2,减速器减速比为i ,滚珠丝杠的螺距为P ,试计算折算到电机主轴上的总的转动惯量J ;
(2)假定工作台质量m ,给定环节的传递函数为K a ,放大环节的传递函数为K b ,包括检测装置在内的反馈环节传递函数为K c ,电动机的反电势常数为K d ,电动机的电磁力矩常数为K m ,试建立该数控直线工作平台的数学模型,画出其控制系统框图;
(3)忽略电感L 时,令参数K a =K c =K d =R=J=1,K m =10,P/i =4π,利用MATLAB 分析kb 的取值对于系统的性能的影响。

题目1
直接用matlab编程运行程序,得出结果
仿真结果
源代码
>> dum=[25];
>> den1=[1 4 25];
>> den2=[1 4 25 0];
>> G1=tf(dum,den1);
>> G2=tf(dum,den2);
>> t=[0:0.01:4];
>> [y1,T]=step(G1,t);
>> [y2,T]=step(G2,t);
>> xlabel('t(sec)')
>> ylabel('x(t)')
>> plot(T,y1,'-',T,y2,'--')
>> legend('单位阶跃响应曲线','单位斜坡响应曲线')
>> grid on;
题目2
用matlab编程运行仿真结果如下图
ans =
0.4330 0.6860 0.2538 1.0000
说明由仿真结果可知系统对单位阶跃信号响应上升时间tr=0.4330s ,峰值时间tp=0.6860s ,最大超调量Mp=25.38% ,调整时间ts=1s.
源代码
>> t=[0:0.001:3];
>> yss=1;dta=0.02;
>> dum=[25];
>> den=[1 4 25];
>> G=tf(dum,den);
>> y=step(G,t);
>> r=1;while y(r)<yss;r=r+1;end
>> tr=(r-1)*0.001;
>> [ymax,tp]=max(y);tp=(tp-1)*0.001;
>> Mp=(ymax-yss)/yss;
>> s=1001;while y(s)>1-dta & y(s)<1+dta ; s=s-1;end
>> ts=(s-1)*0.001;
>> [tr tp Mp ts]
题目3
(1)由题可推出
2
22212)2(21)1(212121i
p m i J J J πωωωω++= 即 2221)2(i P m i j J J π++= (2)系统框图如下 系统方框图:
(3)忽略电感L 时,令参数K a =K c =K d =R=J=1,K m =10,P/i =4π 系统传递函数可简化成b
b
x K s s K s G i 201020)(2++=
仿真结果图:
ans =
0.2420 0.3630 0.1630 0.8070
0.1470 0.2370 0.3050 0.7740
0.0630 0.1130 0.5688 0.7120
由此可知,当Kb增大时,系统的上升时间、峰值时间和调整时间逐渐减少,对单位阶跃干扰的影响最大值(绝对值)减少,而系统的超调量逐渐增大。

这说明二阶系统性能指标之间存在一定矛盾性。

程序源代码:
>> t=[0:0.001:3];
>> yss=1;dta=0.02;
>> dum=[20];
>> Kb=5;den1=[1 10 20*Kb];G1=tf(dum*Kb,den1);
>> Kb=10;den2=[1 10 20*Kb];G2=tf(dum*Kb,den2);
>> Kb=40;den3=[1 10 20*Kb];G3=tf(dum*Kb,den3);
>> [y1,T]=step(G1,t);
>> [y2,T]=step(G2,t);
>> [y3,T]=step(G3,t);
>> plot(T,y1,'-',T,y2,'--',T,y3,'-.')
>> legend('Kb=5','Kb=10','Kb=40')
>> r=1;while y1(r)<yss;r=r+1;end
>> tr1=(r-1)*0.001;
>> [ymax,tp]=max(y1);tp1=(tp-1)*0.001;
>> Mp1=(ymax-yss)/yss;
>> s=1001;while y1(s)>1-dta & y1(s)<1+dta ; s=s-1;end
>> ts1=(s-1)*0.001;
>> r=1;while y2(r)<yss;r=r+1;end
>> tr2=(r-1)*0.001;
>> [ymax,tp]=max(y2);tp2=(tp-1)*0.001;
>> Mp2=(ymax-yss)/yss;
>> s=1001;while y2(s)>1-dta & y2(s)<1+dta ; s=s-1;end >> ts2=(s-1)*0.001;
>> r=1;while y3(r)<yss;r=r+1;end
>> tr3=(r-1)*0.001;
>> [ymax,tp]=max(y3);tp3=(tp-1)*0.001;
>> Mp3=(ymax-yss)/yss;
>> s=1001;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] >> grid on;。

相关主题