官术网_书友最值得收藏!

第三節 曲柄滑塊機構的運動分析

在圖1-4所示的曲柄滑塊機構中,已知各構件的尺寸及原動件1的方位角θ1和勻角速度ω1,需對其位置、速度和加速度進行分析。

圖1-4 曲柄滑塊機構

一、數學模型的建立

為了對機構進行運動分析,先如圖1-4建立直角坐標系,將各構件表示為桿矢,并將各桿矢用指數形式的復數表示。

1.位置分析

如圖1-4所示,由封閉圖形ABCA可寫出機構各桿矢所構成的封閉矢量方程

  (1-9)

其復數形式表示為

  (1-10)

將式(1-10)的實部和虛部分離,得

  (1-11)

由式(1-11)得

  (1-12)

2.速度分析

將式(1-10)對時間t求一次導數, 得速度關系

  (1-13)

將式(1-13)的實部和虛部分離,得

  (1-14)

若用矩陣形式來表示,則式(1-14)可寫為

  (1-15)

解式(1-15)即可求得角速度ω2和線速度vC

3.加速度分析

將式(1-10)對時間t求二次導數,可得加速度關系表達式

  (1-16)

解式(1-16)即可求得角加速度α2和線加速度aC

二、計算實例

【例1-2 在圖1-4所示的曲柄滑塊機構中,AB為原動件,以勻角速度ω1=10rad/s逆時針旋轉,曲柄和連桿的長度分別為l1=100mm,l2=300mm。試確定連桿2和滑塊3的位移、速度和加速度,并繪制出運動線圖。

三、程序設計

曲柄滑塊機構MATLAB程序由主程序slider_crank _main和子函數slider_crank兩部分組成。

1. 主程序slider_crank _main文件

********************************************************

%1.輸入已知數據

clear;

l1=100;

l2=300;

e=0;

hd=pi/180;

du=180/pi;

omega1=10;

alpha1=0;

%2.調用子函數 slider_crank 計算曲柄滑塊機構位移,速度,加速度

for n1=1:720

 theta1(n1)=(n1-1)*hd;

[theta2(n1),s3(n1),omega2(n1),v3(n1),alpha2(n1),a3(n1)]=slider_crank(theta1(n1),omega1,alpha1,l1,l2,e);

end


%3.位移,速度,加速度和曲柄滑塊機構圖形輸出

figure(11);

n1=1:720;

subplot(2,2,1);  % 繪位移線圖

[AX,H1,H2]=plotyy(theta1*du,theta2*du,theta1*du,s3);

set(get(AX(1),'ylabel'),'String','連桿角位移/\circ')

set(get(AX(2),'ylabel'),'String','滑塊位移/mm')

title('位移線圖');

xlabel('曲柄轉角 \theta_1/\circ')

grid on;


subplot(2,2,2);  % 繪速度線圖

[AX,H1,H2]=plotyy(theta1*du,omega2,theta1*du,v3)

title('速度線圖');

xlabel('曲柄轉角 \theta_1/\circ')

ylabel('連桿角速度/rad\cdots{-1}')

set(get(AX(2),'ylabel'),'String','滑塊速度/mm\cdots{-1}')

grid on;


subplot(2,2,3); % 繪加速度線圖

[AX,H1,H2]=plotyy(theta1*du,alpha2,theta1*du,a3)

title('加速度線圖');

xlabel('曲柄轉角 \theta_1/\circ')

ylabel('連桿角加速度/rad\cdots{-2}')

set(get(AX(2),'ylabel'),'String','滑塊加速度/mm\cdots{-2}')

grid on;


subplot(2,2,4); % 繪曲柄滑塊機構圖

x(1)=0;

y(1)=0;

x(2)=l1*cos(70*hd);

y(2)=l1*sin(70*hd);

x(3)=s3(70);

y(3)=e;

x(4)=s3(70);;

y(4)=0;

x(5)=0;

y(5)=0;

x(6)=x(3)-40;

y(6)=y(3)﹢10;

x(7)=x(3)﹢40;

y(7)=y(3)﹢10;

x(8)=x(3)﹢40;

y(8)=y(3)-10;

x(9)=x(3)-40;

y(9)=y(3)-10;

x(10)=x(3)-40;

y(10)=y(3)﹢10;

i=1:5;

plot(x(i),y(i));

grid on;

hold on;

i=6:10;

plot(x(i),y(i));

title('曲柄滑塊機構');

grid on;

hold on;

xlabel('mm')

ylabel('mm')

axis([-50 400 -20 130]);

plot(x(1),y(1),'o');

plot(x(2),y(2),'o');

plot(x(3),y(3),'o');


%4.曲柄滑塊機構運動仿真

 figure(2)

 m=moviein(20);

 j=0;

 for n1=1:5:360

  j=j﹢1;

  clf;

  %

  x(1)=0;

  y(1)=0;

  x(2)=l1*cos(n1*hd);

  y(2)=l1*sin(n1*hd);

  x(3)=s3(n1);

  y(3)=e;

  x(4)=(l1﹢l2﹢50);

  y(4)=0;

  x(5)=0;

  y(5)=0;

  x(6)=x(3)-40;

  y(6)=y(3)﹢10;

  x(7)=x(3)﹢40;

  y(7)=y(3)﹢10;

  x(8)=x(3)﹢40;

  y(8)=y(3)-10;

  x(9)=x(3)-40;

  y(9)=y(3)-10;

  x(10)=x(3)-40;

  y(10)=y(3)﹢10;

  %

  i=1:3;

  plot(x(i),y(i));

  grid on; hold on;

  i=4:5;

  plot(x(i),y(i));

  i=6:10;

  plot(x(i),y(i));

  plot(x(1),y(1),'o');

  plot(x(2),y(2),'o');

  plot(x(3),y(3),'o');


  title('曲柄滑塊機構');

  xlabel('mm')

  ylabel('mm')

  axis([-150 450 -150 150]);

  m(j)=getframe;

 end

 movie(m)

2.子函數slider_crank 文件

*************************************************

function [theta2,s3,omega2,v3,alpha2,a3]=slider_crank(theta1,omega1,alpha1,l1,l2,e)

%1.計算連桿2的角位移和滑塊3的線位移

theta2=asin((e-l1*sin(theta1))/l2);

s3=l1*cos(theta1)﹢l2*cos(theta2);


%2.計算連桿2的角速度和滑塊3的線速度

A=[l2*sin(theta2),1; -l2*cos(theta2),0 ];    % 機構從動件的位置參數矩陣

B=[-l1*sin(theta1); l1*cos(theta1)];        % 機構原動件的位置參數列陣

omega=A\(omega1*B);             % 機構從動件的速度列陣

omega2=omega(1);

v3=omega(2);


%3.計算連桿2的角加速度和滑塊3的線加速度

At=[omega2*l2*cos(theta2),0;

  omega2*l2*sin(theta2),0];          % At=dA/dt

Bt=[-omega1*l1*cos(theta1);

  -omega1*l1*sin(theta1)];          % Bt=dB/dt

alpha=A\(-At*omega﹢alpha1*B﹢omega1*Bt);    % 機構從動件的加速度列陣

alpha2=alpha(1);

a3=alpha(2);

四、運算結果

圖1-5為曲柄滑塊機構的運動線圖和機構運動仿真圖。

圖1-5 曲柄滑塊機構的運動線圖和機構運動仿真圖

主站蜘蛛池模板: 临漳县| 瓮安县| 柳州市| 北海市| 阳西县| 玛纳斯县| 常州市| 庆云县| 自贡市| 澄城县| 金门县| 迁西县| 正定县| 台南市| 新营市| 枝江市| 平南县| 双江| 连州市| 饶阳县| 连南| 齐河县| 长阳| 佳木斯市| 昌都县| 东港市| 剑川县| 龙南县| 荔波县| 高雄县| 维西| 榕江县| 手机| 新营市| 邻水| 瑞丽市| 安化县| 东方市| 盈江县| 宾阳县| 彩票|