院校 :************
班级 : 机械工程及自动化+软件工程04级5班
设计者 : ***
指导教师: ***
时间 : 2007-07-00
目录
一、设计条件
二、设计要求
三、运动分析以及动态静力分析
四、源程序
五、计算结果
六、心得体会
前言:
该运动学分析的任务是:找出角的位置, 驱动杆的角速度和角加速度或位置, 直线运动速度和线性加速度在驱动杆上的点,并找到了驱动力t, 根据输入参数驱动线和各个方面各个环节.
六杆系统
输入数据表
单位 rpm m m m m m m m kg kg kg m m Kgm2 Kgm2 KN
一、设计条件
1、按照知道教师布置的机构类型和设计参数进行机构分析。
2、已知机构的工作阻力Pr,从动件的工作摆角(舍),主动件角速度W1连杆和滑块的质心位置已知。主动杆件不考虑惯性力的影响,各杆件的几何尺寸已知。
二、设计要求
1、整理说明书一份(主要内容:题目、设计条件及要求、机构运动简图。数据模型,列出矢量方程,程序流程图,计算结果分析及评估,要求:步骤清楚,叙述简明,文字通顺,书写端正。)
2、画机构运动起始位置简图(在说明书中简单说)。
3、打印结果一份:对应主动件处各位置时,从动件的位移,速度(角速度),加速度(角加速度)和主动件的平衡力偶M(平衡力F)。
4、打印位移S,速度V,加速度A曲线。
三.运动分析以及动态静力分析
数学模型
计算连杆2 , 3 , 4的角度和滑杆的位置: L1* cosθ1+L2* cosθ2=L3* cosθ3+LED* cosθ3θ4=arcsin((b-L3* sinθ
3)/L
4)
从上式可得:θ2 ,θ3,θ4
计算杆和角速度和滑块的速度,对以上的函数求导即可得:ω2=(ω3*(L3-Lce)*sin(θ
3)-ω1*L1*sin(θ
1))/(L2*sin(θ
2))
ω4=-(ω3*L3*cos(θ
3))/(L4*cos(θ
4))
vf=-ω3*L3*sin(θ
3)-ω4*L4*sin(θ
4)
对上面的函数求导计算连杆的角加速度和滑块的加速度:
ε3=(D*cos(θ
2)-E*sin(θ
2))/((L3-Lce)*sin(θ2-θ
3))
ε2=(D+(L3-Lce)* ε3*sin(θ
3))/(L2*sin(θ
2))
ε4=(L4*ω4*ω4*cos(θ
4)-L3*(ε3*cos(θ
3)-ω3*ω3*sin(θ
3)))/(L4*cos(θ
4))
af=-L3*(ε3*sin(θ
3)+ω3*ω3*cos(θ
3))-L4*(ε4*sin(θ
4)+ω4*ω4*cos(θ
4)) E=-(L3-Lce)*ω3*ω3*sin(θ
3)-L1*(ε1*cos(θ
1)-ω1*ω1*sin(θ
1))+L2*ω2*ω2*sin(θ
2);
极限位置图
力分析
受力图
构件1:
构件2
构件3
构件4
1 如图建立直角坐标系。
2 建立构件位置方程 L1*cos(arg
1)+L2*cos(arg
2)-L3*cos(arg
3)-a=0 Lo2c=s5+L4
L4sin(arg
4)=Lo2csin(arg
3)
令: B=2*L1*L2*cos(arg
1)-2*a*L2 得出:
arg2=2*atan((A-sqrt(A*A+B*B-C*C))/(B-C)) arg4=asin((b-L3*sin(a
3))/(L
4))
xf=a+L3*cos(a
3)+L4*cos(a
4)
求导得出: 2杆的角速度: t3=(L1*sin(arg1-arg
2)*t
1)/(L3-Lce)*sin(arg3-arg
2) 4杆的角速度: t4=-(t3*L3*cos(arg
3))/(L4*cos(arg
4))
滑块的速度: vf=-t3*L3*sin(arg
3)-t4*L4*sin(arg
4)
再求导得出:
原动件的角加速度:s1=0
3杆的角加速度: s3=(D*cos(arg
2)-E*sin(arg
2))/((L3-Lce)*sin(arg2-arg
3))
2杆的角加速度: s2=(D+(L3-Lce)*s3*sin(arg
3))/(L2*sin(arg
2))
4杆的角加速:
s4=(L4*t4*t4*cos(arg
4)-L3*(s3*cos(arg
3)-t3*t3*sin(arg
3)))/(L4*cos(arg
4))
滑块的加速度:
af=-L3*(s3*sin(arg
3)+t3*t3*cos(arg
3))-L4*(s4*sin(arg
4)+t4*t4*cos(arg
4))
3:建立质心方程:
A:对质心S3分析如下:
Xs3=a+(L3*COS(arg
3))/2; Ys3=b+(L3*sin(arg
3)/2
通过上式两边求导;
Vs3x=(-L3*t3*sin(arg
3))/2;Vs3y=(L3*t3*cos(arg))/2
进一步求导:
As3x=(-L3*s3*sin(arg
3))/2+(-L3*t3*t3*cos(arg
3))/2
As3y=(L3*s3*cos(arg
3))/2+(-L3*t3*t3*sin(arg
3))/2
B:对质心S4分析如下:
Xs4=a+L3*cos(arg
3)+(L4*cos(arg
4))/2
Ys4=b+(L4*sin(arg
4))/2
通过上式两边求导:
Vs3x=-L3*t3*sin(arg
3)-(L4*t4*sin(arg
4))/2
Vs3y=(L4*t4*cos(arg
4))/2
进一步求导:
As4x=-L3*s3*sin(arg
3)-L3*t3*t3*cos(arg
3)-(L4*s4*sin(arg
4))/2-(L4*t4*t4*cos(arg
4))/2
As4y=(L4*s4*cos(arg
4)/2-(L4*t4*t4*sin(arg
4))/2
C:对质心S5分析如下:
Xs5=a+L3*cos(arg
3)+L4*cos(arg
4)
求导:
Vs5x=-L3*t3*sin(arg
3)-L4*t4*sin(arg
4)
As5x=-L3*s3*sin(arg
3)-L3*t3*t3*cos(arg
3)-L4*s4*sin(arg
4)-L4*t4*t4*cos(arg
4) Program Design程序设计
A:构件1受力分析如下:
∑M1=0 ∑X=0 ∑Y=0 B:构件2受力分析如下:
∑M2=0
(YB-YC)*Fr32x-(XB-XC)*Fr32y=0
∑X=0 ∑Y=0 C:构件3受力分析如下:
∑M3=0
Fr23y*(XC-XD)-Fr23x*(YC-YD)-Fr43y*
(XE-XD)+Fr43x*(YE-YD)-Fi3x*(Ys3-YD)
+Fi3y(Xs3-XD)+Mi3=0
∑X=0
Fr23x-Fr43x+Fi3x+Fr63x=0
∑Y=0
Fr23y-Fr43y+Fi3y+Fr63y-G3=0
D:构件4受力分析如下:
∑M4=0
-Fr34x*(YE-YF)-Fr34y*(XE-XF)-Fi4y*
(XF-Xs
4)-Fi4x(Ys4-YF)+GD*(XF-Xs
4)+Mi4=0
∑X=0
Fr34x+Fi4x-Fr54=0
∑Y=0
Fr34y+Fi4y+Fr54y-G4=0
E:构件5受力分析如下:
∑X=0
Fr45x+Fi5x-Pr=0
∑Y=0
Fr65y-Fr45y-G5=0
程序模型
程序变量定义L2=0.4, L3=0.44, L4=0.6, Lce=0.12,Les4=0.32, Js3=0.03, Js4=3;t1,t2,t3,t4 各杆的角速度xf,vf,af 滑块的速度,加速度
A,B,C,D,E;
g=9.8;
Pr;
四.源文件清单
//机械原理课程设计
//题目六:摆动式运输机运动分析与动态静力分析(方案
3)
#include<iostream.h>
#include<math.h> L2=0.4, L3=0.44, L4=0.6, Lce=0.12, Les4=0.32, Js3=0.03, Js4=3;
double t1,t2,t3,t4;//各杆的角速度double xf,vf,af;//滑块的速度,加速度
double A,B,C,D,E;
double g=9.8;
double Pr;
double Func_360(double z)
{
if(z<0)
return z=z+360;
else
return z;
}
double Func_2PI(double z)
{
if(z<0)
return z=z+2*PI;
else
return z;
}
double Angle_To_Radian(double z)//角度转弧度
{
z=PI*z/180;
return z;
}
double Radian_To_Angle(double z)//弧度转角度
{
z=180*z/PI;
return z;
}
void YunDongFenXi()//运动分析
{ B=2*L1*L2*cos(a
1)-2*a*L2;
a2=2*atan((A-sqrt(A*A+B*B-C*C))/(B-C)); a4=asin((b-L3*sin(a
3))/(L
4));
xf=a+L3*cos(a
3)+L4*cos(a
4);
double a22=Func_360(Radian_To_Angle(a
2));
double a33=Func_360(Radian_To_Angle(a
3));
double a44=Func_360(Radian_To_Angle(a
4));
t3=(L1*sin(a1-a
2)*t
1)/(L3-Lce)*sin(a3-a
2);//2杆的角速度 t4=-(t3*L3*cos(a
3))/(L4*cos(a
4));//4杆的角速度
vf=-t3*L3*sin(a
3)-t4*L4*sin(a
4);//滑块的速度
s1=0;//原动件的角加速度 E=-(L3-Lce)*t3*t3*sin(a
3)-L1*(s1*cos(a
1)-t1*t1*sin(a
1))+L2*t2*t2*sin(a
2);
s3=(D*cos(a
2)-E*sin(a
2))/((L3-Lce)*sin(a2-a
3));//3杆的角加速度
s2=(D+(L3-Lce)*s3*sin(a
3))/(L2*sin(a
2));//2杆的角加速度
s4=(L4*t4*t4*cos(a
4)-L3*(s3*cos(a
3)-t3*t3*sin(a
3)))/(L4*cos(a
4));//4杆的角加速度
af=-L3*(s3*sin(a
3)+t3*t3*cos(a
3))-L4*(s4*sin(a
4)+t4*t4*cos(a
4));//滑块加速度
cout<<"原动件位置角度:"<<Radian_To_Angle(a
1)<<"角速度:"<<t1<<"角加速度:"<<s1<<endl;
cout<<"2杆的位置角度:"<<a22<<"角速度:"<<t2<<"角加速度:"<<s2<<endl;
cout<<"3杆的位置角度:"<<a33<<"角速度:"<<t3<<"角加速度:"<<s3<<endl;
cout<<"4杆的位置角度:"<<a44<<"角速度:"<<t4<<"角加速度:"<<s4<<endl;
cout<<"滑块的位移:"<<xf<<"滑块的速度:"<<vf<<"加速度:"<<af<<endl;
}
void JingLiFenXi()//动态静力分析
{
if(a1>=4.043056565&& a1<=6.086718
5
6)
Pr=2200;
else
Pr=0;
double as3x=-Lds3*(cos(a
3)*t3*t3+sin(a
3)*s
3);
double as3y=-Lds3*sin(a
3)*t3*t3;
double as4x=-Les4*(cos(a
4)*t4*t4+sin(a
4)*s
4)-L3*(cos(a
3)*t3*t3+sin(a
3)*s
3);
double as4y=-Les4*sin(a
4)*t4*t4+L3*sin(a
3)*t3*t3;
double xa=0, xb=L1*cos(a
1);
double ya=0, yb=L1*sin(a
1); double xd=a, yd=-b;
double xe=a+L3*cos(a
3), ye=L3*sin(a
3)-b;
double xf=a+L3*cos(a
3)+L4*cos(a
4), yf=0;
double xs3=a+Lds3*cos(a
3), ys3=Lds3*sin(a
3)-b;
double xs4=Les4*cos(a
4)+xe, ys4=Les4*sin(a
4)+ye;
double F3x=-m3*as3x, F3y=-m3*as3y;
double F4x=-m4*as4x, F4y=-m4*as4y;
double F5=-m5*af;
double M3=Js3*s3, M4=Js4*s4;
double G3=m3*g, G4=m4*g, G5=m5*g;
double F43x=F4x-Pr;
double F43y=(M4+G4*(xs4-xf)+F4x*(yf-ys
4)+F4y*(xs4-xf)-(F4x-Pr)*(yf-ye))/(xe-xf);
double F54x=-Pr+F5;
double F54y=G4+F43y-F4y;
double F65y=G5+F54y;
double F32y=(M3+G3*(xs3-xd)+F3x*(yd-ys
3)+F3y*(xs3-xd)+F43x*(yd-ye)+F43y*(xe-xd))/((xc-xd)+(xc-xb)/(yb-yc)*(yd-yc));
double F32x=-F32y*(xc-xb)/(yb-yc); double F12y=-F32y; double F61y=F12y; double F63x=F32x-F43x-F3x;
double F63y=G3+F32y-F43y-F3y;
cout<<"1杆的转矩为:"<<M1<<endl; cout<<"1杆对2杆在Y方向上的力为:"<<F12y<<endl;
cout<<"3杆对2杆在X方向上的力为:"<<F32x<<endl;
cout<<"3杆对2杆在Y方向上的力为:"<<F32y<<endl;
cout<<"4杆对3杆在X方向上的力为:"<<F43x<<endl;
cout<<"4杆对3杆在Y方向上的力为:"<<F43y<<endl;
cout<<"5杆对4杆在X方向上的力为:"<<F54x<<endl;
cout<<"5杆对4杆在Y方向上的力为:"<<F54y<<endl;
cout<<"6杆对1杆在X方向上的力为:"<<F61x<<endl;
cout<<"6杆对1杆在Y方向上的力为:"<<F61y<<endl;
cout<<"6杆对3杆在X方向上的力为:"<<F63x<<endl;
cout<<"6杆对3杆在Y方向上的力为:"<<F63y<<endl;
cout<<"6杆对5杆在Y方向上的力为:"<<F65y<<endl;
}
void main()
{
a1=0;
a1=Angle_To_Radian(a
1);
for(int i=1;i<=6;i++)
{
YunDongFenXi();
JingLiFenXi();
cout<<endl<<"------------------------------------------------------"<<endl<<endl;
a1+=PI/3; } a1=Angle_To_Radian(a
1);
YunDongFenXi();
JingLiFenXi();
cout<<endl<<"------------------------------------------------------"<<endl<<endl; a1=Angle_To_Radian(a
1);
YunDongFenXi();
JingLiFenXi();
cout<<endl<<"------------------------------------------------------"<<endl<<endl;
}
五.输出结果
原动件位置角度:0角速度:48.1711角加速度:03杆的位置角度:1.85923角速度:1.03424角加速度:3314.6滑块的位移:1.22361滑块的速度:0.0508925加速度:162.2321杆对2杆在X方向上的力为:88371.73杆对2杆在X方向上的力为:-88371.7
3杆对2杆在Y方向上的力为:20315.7
4杆对3杆在X方向上的力为:-1669.8
4杆对3杆在Y方向上的力为:12387.7
5杆对4杆在X方向上的力为:-14600.96杆对1杆在X方向上的力为:88371.76杆对3杆在X方向上的力为:-86806.2
6杆对3杆在Y方向上的力为:8045.58
------------------------------------------------------
原动件位置角度:60角速度:48.1711角加速度:0
2杆的位置角度:355.646角速度:108.587角加速度:16431.24杆的位置角度:346.64角速度:-6.23446角加速度:-15672.71杆的转矩为:163851杆对2杆在Y方向上的力为:-11498.43杆对2杆在Y方向上的力为:11498.4
4杆对3杆在X方向上的力为:185711
4杆对3杆在Y方向上的力为:56823.7
5杆对4杆在X方向上的力为:735059
5杆对4杆在Y方向上的力为:57754.66杆对1杆在Y方向上的力为:-11498.4
6杆对3杆在X方向上的力为:-349767
6杆对3杆在Y方向上的力为:-45258.1
6杆对5杆在Y方向上的力为:58636.6
------------------------------------------------------
原动件位置角度:120角速度:48.1711角加速度:03杆的位置角度:63.8067角速度:13.5015角加速度:-192.561滑块的位移:0.90679滑块的速度:-6.80996加速度:96.5901
1杆的转矩为:-155.81杆对2杆在Y方向上的力为:-283.9943杆对2杆在Y方向上的力为:283.9944杆对3杆在Y方向上的力为:-1597.12
5杆对4杆在X方向上的力为:-8693.11
5杆对4杆在Y方向上的力为:631.8666杆对1杆在Y方向上的力为:-283.994
6杆对3杆在X方向上的力为:3256.12
6杆对3杆在Y方向上的力为:1841.68
6杆对5杆在Y方向上的力为:1513.87
------------------------------------------------------
原动件位置角度:180角速度:48.1711角加速度:03杆的位置角度:85.5745角速度:7.83443角加速度:-761.14
4杆的位置角度:325.634角速度:-0.537069角加速度:106.8331杆的转矩为:-966.1991杆对2杆在Y方向上的力为:-8051.663杆对2杆在Y方向上的力为:8051.66
4杆对3杆在X方向上的力为:-9127.05
4杆对3杆在Y方向上的力为:2473.26
5杆对4杆在X方向上的力为:-33107.3
5杆对4杆在Y方向上的力为:3429.496杆对1杆在Y方向上的力为:-8051.66
6杆对3杆在X方向上的力为:22153.6
6杆对3杆在Y方向上的力为:5637.25
6杆对5杆在Y方向上的力为:4311.49
------------------------------------------------------
原动件位置角度:240角速度:48.1711角加速度:03杆的位置角度:92.6593角速度:-1.18108角加速度:-977.488
4杆的位置角度:325.537角速度:-0.0487394角加速度:-39.0961
滑块的位移:0.664279滑块的速度:0.502566加速度:416.3851杆对2杆在X方向上的力为:-19119.93杆对2杆在X方向上的力为:19119.9
3杆对2杆在Y方向上的力为:26309.6
4杆对3杆在X方向上的力为:-13187.1
4杆对3杆在Y方向上的力为:5880.27
5杆对4杆在X方向上的力为:-39674.6
5杆对4杆在Y方向上的力为:6151.02
6杆对1杆在X方向上的力为:-19119.96杆对3杆在X方向上的力为:33244.4
6杆对3杆在Y方向上的力为:20545.6
6杆对5杆在Y方向上的力为:7033.02
------------------------------------------------------
原动件位置角度:300角速度:48.1711角加速度:03杆的位置角度:62.4684角速度:-4.92588角加速度:-233.801滑块的位移:0.918551滑块的速度:2.4755加速度:116.9381杆对2杆在X方向上的力为:-5006.513杆对2杆在X方向上的力为:5006.514杆对3杆在X方向上的力为:-4868.5
4杆对3杆在Y方向上的力为:1358.145杆对4杆在Y方向上的力为:1873.73
6杆对1杆在X方向上的力为:-5006.516杆对3杆在X方向上的力为:10063.3
6杆对3杆在Y方向上的力为:3921.3
6杆对5杆在Y方向上的力为:2755.73
------------------------------------------------------
原动件位置角度:348.743角速度:48.1711角加速度:0
2杆的位置角度:348.743角速度:-14.4513角加速度:4437.64杆的位置角度:9.39348角速度:3.81437e-007角加速度:-4207.911杆的转矩为:-0.00247071杆对2杆在Y方向上的力为:-282703杆对2杆在Y方向上的力为:28270
4杆对3杆在X方向上的力为:-7609.13
4杆对3杆在Y方向上的力为:20603.2
5杆对4杆在X方向上的力为:-38231
5杆对4杆在Y方向上的力为:208586杆对1杆在Y方向上的力为:-28270
6杆对3杆在X方向上的力为:-134452
6杆对3杆在Y方向上的力为:7784.38
6杆对5杆在Y方向上的力为:21740
------------------------------------------------------
原动件位置角度:231.65角速度:48.1711角加速度:0
2杆的位置角度:51.6501角速度:14.4513角加速度:-555.3724杆的位置角度:325.548角速度:2.52801e-008角加速度:-41.7613
滑块的位移:0.662387滑块的速度:-2.37093e-007加速度:391.665
1杆的转矩为:-0.0001365781杆对2杆在Y方向上的力为:-19021
3杆对2杆在X方向上的力为:15048.84杆对3杆在X方向上的力为:-10355.3
4杆对3杆在Y方向上的力为:4161.07
5杆对4杆在X方向上的力为:-35249.9
5杆对4杆在Y方向上的力为:4415.87
6杆对1杆在X方向上的力为:-15048.86杆对3杆在X方向上的力为:26289.5
6杆对3杆在Y方向上的力为:14977.5
6杆对5杆在Y方向上的力为:5297.87
------------------------------------------------------
结果分析
数据图
think the result is right, and it has been inspected. But there may be a little mistake. It maybe caused by the digit number of the float or double datatype. The value of PI is also not very exactitude.
六.实验心得
本次课程设计,虽说时间较短,但就在这几天的紧张工作中,我却学到了很多东西,这些都是我在平时无法学习到的。它不仅使我对机械原理这门课程有了更为深刻的理解,而且对于我的工作品质的培养也是大有收益的。
作为一名机械系,机械设计制造及自动化大三的学生,我觉得能做类似的课程设计是十分有意义,而且是十分必要的。在已度过的大三的时间里我们大多数接触的是专业基础课。我们在课堂上掌握的仅仅是专业基础课的理论面,如何去锻炼我们的实践面?如何把我们所学到的专业基础理论知识用到实践中去呢?我想做类似的大作业就为我们提供了良好的实践平台。在做本次大作业的过程中,我感触最深的当数查阅大量的设计手册了。为了让自己的设计更加完善,更加符合工程标准,一次次翻阅机械设计手册是十分必要的,同时也是必不可少的。我们是在作设计,但我们不是艺术家。他们可以抛开实际,尽情在幻想的世界里翱翔,我们是工程师,一切都要有据可依.有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。
作为一名专业学生掌握编程同样是必不可少的,由于本次大作业要求用VC++编程等,所以我们还要好好掌握这门语言。虽然过去从未独立应用过它,但在学习的过程中带着问题去学我发现效率好高,为我们没有把自己放在使用者的角度,单单是为了学而学,这样效率当然不会高。边学边用这样才会提高效率,这是我作本次课程设计的第二大收获。但是由于水平有限,难免会有错误,还望老师批评指正。
参考文献
“Mechanisms and Machine Theory” Ye Zhonghe, Lan Zhaohui, M.R.Smith, 2001.7
“机械原理”
“线性代数”