牛头刨床运动仿真matlab程序.docx

上传人:b****3 文档编号:27513358 上传时间:2023-07-02 格式:DOCX 页数:11 大小:35.49KB
下载 相关 举报
牛头刨床运动仿真matlab程序.docx_第1页
第1页 / 共11页
牛头刨床运动仿真matlab程序.docx_第2页
第2页 / 共11页
牛头刨床运动仿真matlab程序.docx_第3页
第3页 / 共11页
牛头刨床运动仿真matlab程序.docx_第4页
第4页 / 共11页
牛头刨床运动仿真matlab程序.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

牛头刨床运动仿真matlab程序.docx

《牛头刨床运动仿真matlab程序.docx》由会员分享,可在线阅读,更多相关《牛头刨床运动仿真matlab程序.docx(11页珍藏版)》请在冰豆网上搜索。

牛头刨床运动仿真matlab程序.docx

牛头刨床运动仿真matlab程序

 

_main和子函数

角加速度

附录

牛头刨床主运动机构MATLAB程序由主程序six」six_bar两部分组成。

1.主程序six_bar_main文件

%1.输入已知数据clear;

11=0.125;

13=0.600;

14=0.150;

16=0.275;

161=0.575;

omega1=1;

alpha仁0;

hd=pi/180;

du=180/pi;

%2.调用子函数six_bar计算牛头刨床机构位移,角速度,

forn1=1:

459;

theta1(n1)=-2*pi+5.8199+(n1-1)*hd;

II=[I1,I3,I4,I6,I61];

[theta,omega,alpha]=six_bar(theta1(n1),omega1,alpha1,ll);

s3(n1)=theta

(1);

theta3(n1)=theta

(2);

theta4(n1)=theta(3);

sE(n1)=theta(4);

v2(n1)=omega

(1);

omega3(n1)=omega

(2);

omega4(n1)=omega(3);

vE(n1)=omega(4);

a2(n1)=alpha

(1);

alpha3(n1)=alpha

(2);

alpha4(n1)=alpha(3);

aE(n1)=alpha(4);

end

%3.位移、角速度、角加速度、和牛头刨床图形输出

figure©);

n1=1:

459;

t=(n1-1)*2*pi/360;

subplot(2,2,1);%绘角位移及位移线图plot(t,theta3*du,'r-.');

gridon;

holdon;

axisauto;

[haxes,hline1,hline2]=plotyy(t,theta4*du,t,sE);

gridon;

holdon;

xlabel('时间/s')

axes(haxes

(1));

ylabel('角位移八circ')

axes(haxes

(2));

ylabel('位移/m')

holdon;

gridon;

text(1.15,-0.15,'\theta_3')

text(3.40,0.27,'\theta_4')

text(2.25,-0.15,'s_E')

subplot(2,2,2);%绘角速度及速度线图

plot(t,omega3,'r-.');

gridon;

holdon;

axisauto;

[haxes,hline1,hline2]=plotyy(t,omega4,t,vE);

gridon;

holdon;

xlabel('时间/s')

axes(haxes

(1));

ylabel('角速度/rad\cdotsA{-1}')

axes(haxes

(2));

ylabel('速度/m\cdotsA{-1}')

holdon;

gridon;

text(3.1,0.35,'\omega_3')

text(2.1,0.1,'\omega_4')

text(5.5,0.45,'v_E')

subplot(2,2,3);%绘角加速度及加速度线图

plot(t,alpha3,'r-.');

gridon;

holdon;

axisauto;

[haxes,hline1,hline2]=plotyy(t,alpha4,t,aE);gridon;

holdon;

xlabel('时间/s')

axes(haxes

(1));

ylabel('角加速度/rad\cdotsA{-2}')

axes(haxes

(2));

ylabel('加速度/m\cdotsA{-2}')

holdon;

gridon;

text(1.5,0.3,'\alpha_3')

text(3.5,0.51,'\alpha_4')

text(1.5,-0.11,'a_E')

subplot(2,2,4);%牛头刨床机构

n1=20;

x

(1)=0;

y(i)=0;

x

(2)=(s3(n1)*1000-50)*cos(theta3(n1));

y

(2)=(s3(n1)*1000-50)*sin(theta3(n1));

x(3)=0;

y(3)=16*1000;

x(4)=l1*1000*cos(theta1(n1));

y⑷=s3(n1)*1000*sin(theta3(n1));

x(5)=(s3(n1)*1000+50)*cos(theta3(n1));

y(5)=(s3(n1)*1000+50)*sin(theta3(n1));

x(6)=13*1000*cos(theta3(n1));

y(6)=13*1000*sin(theta3(n1));

x(7)=13*1000*cos(theta3(n1))+14*1000*cos(theta4(n1));

y(7)=13*1000*sin(theta3(n1))+14*1000*sin(theta4(n1));

x(8)=13*1000*cos(theta3(n1))+14*1000*cos(theta4(n1))-900;

y(8)=161*1000;

x(9)=13*1000*cos(theta3(n1))+14*1000*cos(theta4(n1))+600;

y(9)=161*1000;

x(10)=(s3(n1)*1000-50)*cos(theta3(n1));

y(10)=(s3(n1)*1000-50)*sin(theta3(n1));

x(11)=x(10)+25*cos(pi/2-theta3(n1));

y(11)=y(10)-25*sin(pi/2-theta3(n1));

x(12)=x(11)+100*cos(theta3(n1));

y(12)=y(11)+100*sin(theta3(n1));

x(13)=x(12)-50*cos(pi/2-theta3(n1));

y(13)=y(12)+50*sin(pi/2-theta3(n1));x(14)=x(10)-25*cos(pi/2-theta3(n1));y(14)=y(10)+25*sin(pi/2-theta3(n1));x(15)=x(10);

y(15)=y(10);

x(16)=0;

y(16)=0;

x(17)=0;

y(17)=16*1000;

k=1:

2;

plot(x(k),y(k));

holdon;

k=3:

4;

plot(x(k),y(k));

holdon;

k=5:

9;

plot(x(k),y(k));

holdon;

k=10:

15;

plot(x(k),y(k));

holdon;

k=16:

17;

plot(x(k),y(k));

holdon;

gridon;

axis([-5006000650]);title('牛头刨床运动仿真');gridon;

xlabel('mm')

ylabel('mm')plot(x

(1),y

(1),'o');plot(x(3),y(3),'o');plot(x(4),y(4),'o');plot(x(6),y(6),'o');

plot(x⑺,y(7),'o');

holdon;

gridon;

xlabel('mm')

ylabel('mm')

axis([-4006000650]);

%4牛头刨床机构运动仿真

figure

(2)

m=moviein(20);

j=0;

forn仁1:

5:

360

j=j+1;

elf;

x

(1)=0;

y(i)=0;

x

(2)=(s3(n1)*1000-50)*cos(theta3(n1));

y

(2)=(s3(n1)*1000-50)*sin(theta3(n1));

x(3)=0;

y(3)=l6*1000

x⑷=l1*1000*cos(theta1(n1));

y⑷=s3(n1)*1000*sin(theta3(n1));

x(5)=(s3(n1)*1000+50)*cos(theta3(n1));

y(5)=(s3(n1)*1000+50)*sin(theta3(n1));

x(6)=l3*1000*cos(theta3(n1));

y(6)=l3*1000*sin(theta3(n1));

x(7)=l3*1000*cos(theta3(n1))+l4*1000*cos(theta4(n1));

x(7)=l3*1000*cos(theta3(n1))+l4*1000*cos(theta4(n1));y(7)=l3*1000*sin(theta3(n1))+l4*1000*sin(theta4(n1));

x(8)=l3*1000*cos(theta3(n1))+l4*1000*cos(theta4(n1))-900;

y(8)=l61*1000;

x(9)=l3*1000*cos(theta3(n1))+l4*1000*cos(theta4(n1))+600;

y(9)=l61*1000;

x(10)=(s3(n1)*1000-50)*cos(theta3(n1));

y(10)=(s3(n1)*1000-50)*sin(theta3(n1));

x(11)=x(10)+25*cos(pi/2-theta3(n1));

y(11)=y(10)-25*sin(pi/2-theta3(n1));

x(12)=x(11)+100*cos(theta3(n1));

y(12)=y(11)+100*sin(theta3(n1));

x(13)=x(12)-50*cos(pi/2-theta3(n1));

y(13)=y(12)+50*sin(pi/2-theta3(n1));

x(14)=x(10)-25*cos(pi/2-theta3(n1));

y(14)=y(10)+25*sin(pi/2-theta3(n1));

x(15)=x(10);

y(15)=y(10);x(16)=0;

y(16)=0;

x(17)=0;

y(17)=l6*1000;

k=1:

2;

plot(x(k),y(k));

holdon;

k=3:

4

plot(x(k),y(k));

holdon;

k=5:

9;

plot(x(k),y(k));

holdon;

k=10:

15;

plot(x(k),y(k));

holdon;

k=16:

17;

plot(x(k),y(k));

holdon;

gridon;

axis([-5006000650]);

title('牛头刨床运动仿真');gridon;

xlabel('mm');

ylabel('mm');

plot(x

(1),y

(1),'o');

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

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

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

plot(x⑺,y(7),'o');

axisequal;

m(j)=getframe;

end

movie(m)

2.子函数six_bar文件

function[theta,omega,alpha]=six_bar(theta1,omega1,alpha1,ll)

11=11

(1);

l3=ll

(2);

14=11(3);

16=11(4);

161=11(5);

%1计算角位移和线位移

s3=sqrt((l1*cos(theta1))*(l1*cos(theta1))+(l6+l1*sin(theta1))*(l6+l1*sin(t

heta1)));

theta3=acos((l1*cos(theta1))/s3);

theta4=pi-asin((l61-l3*sin(theta3))/l4);

sE=l3*cos(theta3)+l4*cos(theta4);

theta

(1)=s3;

theta

(2)=theta3;

theta(3)=theta4;

theta(4)=sE;

%2计算角速度和线速度

%从动件位置参数矩阵

A=[sin(theta3),s3*cos(theta3),0,0;-cos(theta3),s3*sin(theta3),0,0;

0,l3*sin(theta3),l4*(theta4),1;

0,l3*cos(theta3),l4*cos(theta4),0];

%3计算角加速度和加速度

A=[sin(theta3),s3*cos(theta3),0,0;%从动件位置参数矩阵

cos(theta3),-s3*sin(theta3),0,0;

0,l3*sin(theta3),l4*(theta4),1;

0,l3*cos(theta3),l4*cos(theta4),0];

At=[omega3*cos(theta3),(v2*cos(theta3)-s3*omega3*sin(theta3)),0,0;

-omega3*sin(theta3),(-v2*sin(theta3)-s3*omega3*cos(theta3)),0,0;

0,l3*omega3*cos(theta3),l4*omega4*cos(theta4),0;

0,-l3*omega3*sin(theta3),-l4*omega4*sin(theta4),0];

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

alpha=A\(-At*omega+omega1*Bt);

a2=alpha

(1);

alpha3=alpha

(2);

alpha4=alpha(3);

aE=alpha(4);

%机构从动件的加速度矩阵

%a2表示滑块2的加速度

%alpha3表示杆件3的角加速度

%alpha4表示杆件4的角加速度

%构件5的加速度

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1