基于MATLAB的曲柄滑块机构运动的仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于MATLAB的曲柄滑块机构运动的仿真
摘要:本文在曲柄滑块机构运动简图的基础上,对其数学运动模型进行分析,用解析法计算曲柄的转角和角速度,及滑块的位移和速度,并用MATLAB 软件进行仿真。
1 引言
在机械传动系统中,曲柄滑块机构是一种常用的机械机构,它将曲柄的转动转化为滑块在直线上的往复运动,是压气机、冲床、活塞式水泵等机械的主机构。这里用解析法,并用MATLAB 对其进行仿真。
2 曲柄滑块机构的解析法求解
曲柄滑块机构的运动简图如图1所示,在图1中,1L 、2L 和e 分别为曲柄滑块的曲柄、连杆和偏差,1ϕ、2ϕ分别为曲柄和连杆的转角,1ϕ•
、2ϕ•
分别为曲柄和连杆的角速度,S 为滑块的位移。
图1 曲柄滑块机构运动简图
设已知已知1L 、2L 、e 、1ϕ和1ϕ•
,求连杆的角位移2ϕ和角速度2ϕ•
,以及滑块的位移S 和速度S •
。
2.1 位移分析
按图1 中四边形ABCD 的矢量方向有:
AB CD →
→
=
将上式转化成幅值乘以角度的形式,得到如下等式:
1
2
12i i L e L e S ie ϕϕ+=+ (1)
分别取上式的虚部和实部,并在e 前面乘N ,N 取值1或-1,用以表示滑块在x 轴的上方或者下方,得到下面两式:
1122cos cos L L S ϕϕ+= (2)
1122sin sin L L Nb ϕϕ+= (3)
整理上面两个公式得到S 和2ϕ的计算公式:
1122cos cos S L L ϕϕ=+ (4)
11
22
sin arcsin
Ne L L ϕϕ-= (5) 2.2 速度分析
将(1)式两边对时间求导得(6)式
1
2
1212i i L ie L ie
S ϕϕϕϕ•
•
•
+= (6)
取(6)式的实部和虚部,整理得S •
和2ϕ•
的计算公式:
1211
2
sin()
cos S L ϕϕϕϕ•
•
-=- (7)
111
222
cos cos L L ϕϕϕϕ•
•=-
(8)
根据(7)式和(8)式即可得到滑块的速度及连杆的角速度。 2.3 实例分析及其MATLAB 仿真 2.3.1 实例分析
下面对图2所示的曲柄滑块机构做具体分析。
图2 曲柄滑块机构简图
例中:1236,140r mm r mm ==,160/sec d ω=,求2ϕ,2ω,S 和S •
。
建立图示的封闭矢量方程:
12r r S →
→→
+= (9)
将上式分解到x 与y 轴坐标上,得到:
11221122cos cos sin sin 0r r S r r ϕϕϕϕ+=⎫
⎬+=⎭
(11)
得:
1122122cos cos arcsin S r r r r ϕϕϕ=+⎫
⎪
⎬=-⎪⎭
(11)
对(10)式对时间求导得:
111222111222sin sin cos cos 0r r S r r ωϕωϕωϕωϕ•
⎫⎪--=⎬+=⎪⎭
(12) 将上式用矩阵形式表示,令:
222111
22111sin 1sin [],[],[]cos 0cos r r A X B r r S ωϕωϕϕωϕ•-===- (13)
则(12)可表示为:AX B =。从而可解出2ω和S •
。 2.3.2 MATLAB 仿真 Matlab 仿真程序如下: r1=36;%单位mm r2=140;
omiga1=60;%单位d/sec x11=1:720; for i=1:720 x1(i)=i*pi/180;
%sin(x2(i))=-r1/r2*sin(x1(i)); x2(i)=asin(-r1/r2*sin(x1(i))); x22(i)=x2(i)*180/pi;
r3(i)=r1*cos(x1(i))+r2*cos(x2(i));
B=[-r1*omiga1*sin(x1(i));r1*omiga1*cos(x1(i))]; A=[r2*sin(x2(i)) 1;-r2*cos(x2(i)) 0]; X=inv(A)*B;
omiga2(i)=X(1,1);
v3(i)=X(2,1);
end
plot(x11/60,0.5*r1*sin(x1));
xlabel('时间t/sec')
ylabel('连杆质心在Y轴上位置/mm') figure(2)
plot(x11/60,r3);
xlabel('时间t/sec')
ylabel('滑块位移r3/mm')
figure(3)
plot(x11/60,omiga2);
xlabel('时间t/sec')
ylabel('连杆角速度omiga2/rad/sec') figure(4)
plot(x11/60,v3*pi/180);
xlabel('时间t/sec')
ylabel('滑块速度v3/mm/sec')
图 4 MATLAB中连杆质心位置图图5 MATLAB中连杆角速度图