第一篇:连杆机构设计__轨迹生成机构的运动设计
连杆机构设计:轨迹生成机构的运动设计 图谱法
这种方法是利用编纂汇集的连杆曲线图册来设计平面连杆机构。现举一例说明如下:例如生产上需要设计带停歇运动的机构(这种机构常用于打包机等一些机器中),首先查阅连杆曲线图册,找到连杆曲线上有一段接近圆弧的铰链四杆机构如图所示,图中连杆曲线的每一段短线的大小相当于曲柄AB转过50时连杆上点M所描绘的距离。整个连杆曲线由72段短线所组成。将曲柄的长度作为基准并取为1,其他构件的长度对曲柄的长度成比例,因此按图册上表示的杆长成比例地放大或缩小机构时,并不改变连杆曲线的特性。由图上可找出连杆曲线上的点P至点Q部分接近于圆弧,其曲率半径f=1.26。这段圆弧由十八段短线组成,因此当点M运动经过这段圆弧时,曲柄转过900,而其曲率中心G保持不动。再将另一构件MF的一端与连杆上的点M铰接,另一端F与滑块在点G处铰接,该构件的长度即等于曲率半径的大小(G处的输出件可以是滑块也可以是摇杆,视实际需要而定)。这样在图示机构中,当点M自点P运动至点Q时,滑块F静止不动;点M至点Q运动至点R时,滑块F向下运动;点M至点R运动至点P时,滑块F作返回运动。滑块F的行程H=1.48,调整滑块导路倾角b的大小,就能改变滑块行程H的大小和往返行程的时间比。但需注意机构的最小传动角不得小于许用值。
由上述可知,使用图谱法可从连杆曲线图册中查到与所要求实现的轨迹非常接近的连杆曲线,从而确定了该机构的参数,使设计过程大大简化。解析法
对于图示铰链四杆机构,以A点为原点、机架AD为x'轴建立直角坐标系Ax'y'。若连杆上一点M在该坐标系中的位置坐标为x'、y',则有
或:
由式(7.26)和(7.27)消去f,得:
由式(7.28)和(7.29)消去y,得:
再由式(7.30)和(7.31)消去b,则得在坐标系Ax'y'中表示的M点曲线方程:
式中:
式(7.32)是关于x'、y'的一个六次代数方程。
在用铰链四杆机构的连杆点M再现给定轨迹时,给定轨迹通常在另一坐标系Oxy中表示。如图所示,若设A在Oxy中的位置坐标为xA、yA,x轴正向至x'轴正向沿逆时针方向的夹角为f0,M点在Oxy中的坐标为x、y,则有
将上式代入式(7.32),得关于x、y的六次代数方程
式中共有九个待定尺寸参数,即铰链四杆机构的连杆点最多能精确通过给定轨迹上所选的九个点。若已知给定轨迹上九个点在坐标系Oxy中的坐标值为xMi、yMi(i=1,2,...,9),将其代入式(7.34),得九个非线性方程,采用数值方法解此方程组,便可求得机构的九个待定尺寸参数。当需通过的轨迹点数少于九个时,可预先选定某些机构参数,以获得唯一解;而当轨迹点数大于九个时,由于受到待定尺寸参数个数的限制,铰链四杆机构的连杆点只能近似实现给定要求,此时可采用优化方法进行轨迹逼近。罗培兹定理
当用以上方法来设计实现已知轨迹的平面四杆机构时,如果所得到的机构尺寸不能满足传动角和其他的几何条件(例如机构的安装位置不适合等),这时需要求出另外一个平面四杆机构,使它能实现同一连杆曲线。罗培兹定理可帮助解决这一问题。
罗培兹定理可表述为:铰链四杆机构连杆上任一点的轨迹可以由三个不同的铰链四杆机构来实现。当实现已知轨迹的第一个铰链四杆机构求得后,另外两个机构的作法如下述。
如图所示,若已求得铰链四杆机构ABCD的连杆上某一点M能实现已知轨迹,则其余两个能实现相同轨迹的铰链四杆机构可用铰链四杆机构ABCD为基础,先作两个平行四边形ABME和CDFM,再作ΔGEM∽ΔMBC∽ΔHMF,最后作平行四边形GMHK。
这样形成的十杆机构其自由度不变。且当机构运动时,铰链K相对于机架永远保持静止不动。因此可将K固定于机架上而不影响机构的运动。这样原来的平面十杆机构就变为三个以点M为公共点的铰链四杆机构:ABCD、AEGK及DFHK。它们在点M处具有相同的轨迹。因此,当原设计的铰链四杆机构ABCD不能满足要求时,可从另外两个铰链四杆机构AEGK和DFHK中选择一个较好的方案。(end)
第二篇:机构运动创新设计实验报告
实验十三
机构运动创新设计实验报告
班级:
学号:
姓名:
一.实验目的二.实际拼装的机构运动方案图
三.绘制实际拼装的机构运动方案简图
四.简要说明机构感组的拆组过程,并画出所拆杆组的简图
五.根据你所拆开的杆组,按不同的顺序进行排列,可能组合的机构运动方案有哪些?要求用简图表示出来。就运动传递情况作方案比较,并简要说明之
第三篇:平面连杆机构教学设计
平面连杆机构教学设计
赵县职教中心
翟伟波
[教材分析]平面连杆机构能以简单的结构实现复杂的运动规律,而且更以其独特可靠的低副联接形式,倍受广大机械设计人员的瞩目。其在工业、农业、冶金、化工、纺织、食品等机械中的应用实例不胜枚举。如此重要的教学内容,只有探寻一种形式新颖、方法独特的教学方法,才能收到良好的教学效果。
[教学对象分析]
机械制造专业的学生,普遍存在机械常识匮乏与对现实机械现象的有视无睹,该现象严重阻碍了专业课教学的进程和效果。教师在教学过程中,应充分考虑学生的现实情况,采取有效措施,让学生建立机械意识,以思维理念的变化架起理论与实践相结合的桥梁。
[对教师的要求]
教师在熟练掌握教材的基础上,善于运用生活中饶有兴趣的机械现象导入新课,巧妙地制造悬念,激发学生学习新知识的强烈愿望。教师要发挥主导作用,精心设计教学过程,为学生创造一个学习、发现、探索、创造的情境。教师要正确引导学生思维,让学生积极主动地做到理论与实践相结合。
一、教学目标:
知道:铰链四杆机构的组成。掌握:铰链四杆机构曲柄存在的条件。熟悉:铰链四杆机构三种基本形式的形成条件。
二、教学重点、难点: 铰链四杆机构曲柄存在的条件。铰链四杆机构三种基本形式的形成条件。
三、教学方法: 诱趣探求,思维探索。
四、教具:
投影仪和屏幕、软质细杆:6cm(1根)、10cm(1根)、15cm(1根)、18cm(1根)、50cm(8根)、大头针(若干枚)、小刀(8把)
五、教学过程:
(一)提出问题、引发思维、诱趣探求 导入语:同学们都观看过现场直播的电视节目,在这样的节目当中,摄影师最不想让观众看到的图像是什么?(稍顿)
学生回答:
1、质量不好的画面。
2、灯光不好、有阴影的画面。
3、表演出现 错误的画面。
(一一否定、加强悬念,诱发求知欲)是电视画面中出现摄影架的镜头。摄影师要想把多角度、多层次的电视画面呈现在观众面前,这要归功于摄影机的驱动架。究竟驱动架采用了什么样的结构设计,能够让摄影师随心所欲,运动自如,诀窍就在四根小小的杆件上,下面我们来做一个模拟设计。
(二)示范操作,发展思维
[策略分析] 对于铰链四杆机构曲柄存在条件这一重要知识点的学习,传统的教学方法是根据三角形二边之和大于第三边的理论进行不等式的数学推导,其过程繁琐而刻板,效果欠佳。如果利用教具演示与思维点拨相结合的教学方法,学生会在宽松的课堂气氛中获得非常直观的感性知识,既突破难点,又发展了学生思维。
取出四根杆件(6cm,10cm,15cm,18cm),用大头针组成平面连杆机构。分别以四根杆件为机架,演示并引导学生观察两个连架杆的运动情况.平面连杆机构定义,类型(板书)测量四根杆件的长度并让学生做记录,计算最短杆与最长杆长度之和与其余两杆长度之和的关系.引导学生探求曲柄存在条件 曲柄存在条件(板书).出示投影:铰链四杆机构三种基本形式:曲柄摇杆机构,双曲柄机构,双摇杆机构的形成条件.(三)动手设计
深化思维
[策略分析] 该程序是“思维探索型”教学方法的中心环节,学生感性认识形成以后,要分组进行设计。在设计过程中,充分发挥其主观能动性,边设计,边思考,既巩固了理论知识,又提高了动手能力,从而实现感性知识上升为理性知识,达到理论与实践有效结合。分组:32人,4人/组,共8组,由动手能力强的学生担任组长,发挥骨干作用。组长领取设计材料:软质细杆1根,大头针若干,小刀一把。分配设计任务。
(1,2)组
曲柄摇杆机构(3,4)组
双曲柄机构(5,6)组
双摇杆机构 最长杆+最短杆≤其余两杆长度之和。以最短杆的相对杆为机架。
(7,8)组
双摇杆机构:最长杆+最短杆〉其余两杆长度之和。巡回指导,及时解答学生疑问并纠正设计过程中的错误操作。每组选派一人,表述设计思路,展示设计成果。
(四)探索创新,升华思维
[策略分析]通过展示设计成果,学生心中普遍产生一种成就感,自然的心理倾向是学有所用,此时教师要善于捕捉学生心理,适时提问:究竟谁的设计成果能应用在摄影机的驱动机构上?课堂气氛再度活跃,既升华学生思维,又能达到首尾呼应,探索创新的目的。提问:究竟谁的设计成果能应用在摄影机的驱动机构上?
引导学生进行小组讨论。总结发言:指出应为双摇杆机构。课堂小结:网络知识体系。
教学反馈:自由研读教材当中列举的应用实例。布置作业:P118:3、4、5、6、7、8
附:板书设计:平面连杆机构
一、平面连杆机构
3、基本类型 1、定义、特点
(1)曲柄摇杆机构 2、类型
条件:
二、铰链四杆机构:
(2)双曲柄机构 1、组成 条件: 2、曲柄存在条件
(3)双摇杆机构(1)
条件:(2)
第四篇:四连杆机构运动分析
游梁式抽油机是以游梁支点和曲柄轴中心的连线做固定杆,以曲柄,连杆和游梁后臂为三个活动杆所构成的四连结构。1.1四连杆机构运动分析:
图1
复数矢量法:
为了对机构进行运动分析,先建立坐标系,并将各构件表示为杆矢量。结构封闭矢量方程式的复数矢量形式:
l1ei1l2ei2l3ei3l(1)应用欧拉公式eicosisin将(1)的实部、虚部分离,得 l1cos1l2cos2l4l3cos3
(2)l1sin1l2sin2l3sin3由此方程组可求得两个未知方位角2,3。
解得
tan(3/2)(BA2B2C2)/(AC)
(4)当要求解3时,应将2消去可得
222l2l3l4l122l3l4cos32l1l3cos(31)2l1l4cos
1(3)2arctanBl3sin
3(5)Al3cos3Al4l1cos1其中:Bl1sin12A2B2l32l2C2l3
(4)式中负号对应的四连杆机构的图形如图2所示,在求得3之后,可利用(5)求得2。
图2 由于初始状态1有个初始角度,定义为10,因此,我们可以得到关于110t,是曲柄的角速度。而通过图形3分析,我们得到OA的角度3因此悬点E的位移公式为s|OA|,速度vdvd2sd2a2|OA|2。
dtdtdt210。
dsd|OA|,加速度dtdt
图3 已知附录4给出四连杆各段尺寸,前臂AO=4315mm,后臂BO=2495mm,连杆BD=3675mm,曲柄半径O’D=R=950mm,根据已知条件我们推出|OO'||O'D||OB||BD|违背了抽油系统的四连结构基本原则。为了合理解释光杆悬点的运动规律,我们对四连结构进行简化,可采用简谐运动、曲柄滑块结构进行研究。
1.2 简化为简谐运动时的悬点运动规律
一般我们认为曲柄半径|O’D|比连杆长度|BD|和游梁后臂|OA|小很多,以至于它与|BD|、|OA|的比值可以忽略。此时,游梁和连杆的连接点B的运动可以看为简谐运动,即认为B点的运动规律和D点做圆周运动时在垂直中心线上的投影的运动规律相同。则B点经过时间t时的位移sB为
sBr(1cos)r(1cost)其中是曲柄转角;
曲柄角速度; t时间。
因此,悬点A的位移sA|OA||OA|'sB|OD|(1cost)|OB||OB| A点的速度为
AA点的加速度为
dsA|OA|'|OD|sint dt|OB|aAdA|OA|'|OD|2cost dt|OB|
图4
图5
图6
1.3 简化为曲柄滑块结构的选点运动规律
由于简谐运动只能在不太精确的近似计算和分析中应用,而在实际中抽油机的曲柄/杆长值不能忽略不计,特别是冲程长度较大时,忽略会引起很大误差。把B点绕游梁支点的弧线运动看做直线运动,则四杆运动可被简化为图所示的曲柄滑块运动。
0时,游梁与连杆的连接点B在B’点,为距曲柄轴心最远的位置,相应于悬点A的下死点。180时,游梁与连杆的连接点B在B’’点,为距曲柄轴心最远的位置,相应于悬点A的上死点。因此,我们有|O'B'||BD||OD'|,|O'B''||BD||OD'|,B点的最大位移sB2|O'D|。
B点在任意时刻的位移sB为
sB|BB'||O'B'||O'B|1|O'D||O'B|
在O'DB中有:
'|O'B||OC||BC||O'D|cos|BD|cos
则
sB|BD||O'D||O'D|cos|BD|cos |OD|[1cos'1(1cos)]
|O'D|式中。
|BD|通过转化分析,我们得到B点的位移:
sB|O'D|(1cos2sin2)
则sA为
sAsB|OA||OA||O'D|(1cossin2)|OB|2|OB|速度A为
AdsA|OA||O'D|(sinsin2)dt2|OB|加速度aA为
aA
dA|OA| 2|O'D|(coscos2)dt|OB|
22u(x,t)u(x,t)2u(x,t)ac 22txta是波动速度英尺/秒;
c是阻尼系数,1/秒; t是时间,单位是秒;
x是在无限制杆离光杆之间的距离,单位是英尺;
u(x,t)抽油杆离平衡位置的位移。
c2L
无因次阻尼;
Lx1x2...xm杆的总长度(英尺)。
4.42102L(PRhpHhp)T2 2(A1x1A2x2...Amxm)SPRhp光杆马力;
Hhp液压泵马力; T抽运周期;
A1,A2,...,An每个杆的面积; x1,x2,...,xm杆的区间长度;
S杆的负载。
D(t)L(t)Wr02ncosntnsinnt
n1和
U(t)02vncosntnsinnt
n1是角速度;
D(t)动态光杆负载函数; L(t)总负载函数;
Wr流动的杆重;
U(t)光杆的位移函数。
2D(t)cosntdt,n0,1,2,...,n0
2D(t)sinntdt,n0,1,2,...,n1n01n把t得
1n2D()cosndt,n0,1,2,...,n 02p,p0,1,2,...,K KD2pDD K对于一个数学例子,是个离散变量
采用简单的标记
我们可以用梯形公式写出
2n02n12n12n2DcosDcosDcosDcos1120KKKK...12221nK2n(K1)2nKDcosDcosK1KKK2
因此,我们可以得出
1nDKcos(2n)2D0cos02n2n2。DcosDcos...12K22KK对于周期函数,由于cos0cos2n,则我们得到D0Dk,即
2K2npDcos,n0,1,...,n 1npKp1K同样得到其他傅里叶展开系数
2K2npDsin,n1,2,...,n 1npKp1K2K12npUsin,n0,1,...,n 1npK1p1K12K12npUsin,n1,2,...,n p1nK1p1K1通过分离变量法求解,得到特征根的形式
nnin
其中
2ncn11 a2n和
2ncn11
a2n通过变化分析,我们得到
D(t)EA(knnnn)cosnt(knnnn)sinnt
n1n1因此,我们有充分的利用定义新的常数
nEA(knnnn),n0,1,2,...nEA(knnnn),n1,2,...02EA
通过上述方程我们得到
knnnnn,n1,2,3,...2EA(nn2)n通过上面一系列的推导,我们得到
nnnn,n1,2,3,...2EA(nn2)u(x,t)02EA02(On(x)cosntPn(x)sinnt)
n1其中
On(x)(kncoshnxnsinhnx)sinnx(ncoshnxnsinhnx)cosnx Pn(x)(knsinhnxncoshnx)sinnx(nsinhnxncoshnx)sinnx
根据胡可定理,力F(x,t)可以被计算为
F(x,t)EA因此,我们得到
u(x,t)x0'F(x,t)EA(On(x)cosntPn'(x)sinnt)
2EAn1其中
'On(x)nsinhnx(nnnn)coshnxsinnxEA
ncoshx()sinhxnnnnnncosnxEA和
Pn'(x)ncoshnx(nnnn)sinhnxcosnxEA
nsinhx()coshxnnnnnnsinnxEA工程量的递归计算
j10vj0xjEAjj0
j1nj1vjOn(xj)
njPn(xj)j1j1j10j0'nEAjjOn(xj)
nEAjjPn'(xj)
j1j1knnnj1nn2EAj1(nn2)j1nnj1nnj1n2EAj1(nn2)
j1On(xj1)(j1kncoshnxj1j1nsinhnxj1)sinnxj1(j1nsinhnxj1j1ncoshnxj1)cosnxj1j1Pn(xj1)(j1knsinhnxj1j1ncoshnxj1)cosnxj1(j1ncoshnxj1j1nsinhnxj1)sinnxj1
j1nsinhnxj1(j1nnj1nn)coshnxj1sinnxj1j1O(xj1)EAj1'nj1n coshnxj1(j1nnj1nn)sinhnxj1cosnxj1EAj1'j1nj1nP(xj1)coshnxj1(j1nnj1nn)sinhnxj1cosnxj1EAj1
j1nsinhnxj1(j1nnj1nn)coshnxj1sinnxj1EAj1此处,j1,2,...,m1,n1,2,...,n。因此,泵的位移和负载用下列公式计算
u(xm,t)m02EAmxmm02(mOn(xm)cosntmPn(xm)sinnt)
n1nnm0'F(xm,t)EAm(mOn(xm)cosntmPn'(xm)sinnt)
2EAmn1上冲程悬点静载荷
由于游动阀关闭,悬点静载荷主要包括柱塞上、下流体压力及抽油杆柱重力。
1)抽油杆柱在空气中的重力:
WrArgLpr
式中:
Wr抽油杆柱在空气中的重力,KN; Ar抽油杆截面积,m2;
r抽油杆密度,t/m3;
g重力加速度;
Lp抽油杆柱长度 2)泵排出压力
p0ptLPLg
式中:
pt井口压力,kpa
L液体密度
3)吸入压力
上冲程时的沉没压力导致井内液体流入泵中,此时液流所具有的压力即吸入 压力,此压力作用在柱塞底部,产生的载荷方向向上:
ptpspr
式中:
ps沉没压力,kpa;
pr流体通过泵入口设备产生的压力降,m。
将以上三个力综合可得出上冲程的静载荷:
WupWrp0(ApAr)ptA WrW(ptpc)ApptAr''L
由于上冲程时井口回压与套压造成的悬点载荷方向相反,故可近似为相互抵消,因此上冲悬点载荷可简化为下式
WupWr'WL'
下冲程悬点载荷
下冲程时,游动阀打开使得柱塞上下的液体连通,抽油杆柱受到向上的浮力作用。因此,下冲程时抽油杆柱在液体中的重力等于自身重力减去浮力。而液柱荷载通过固定阀作用在油管上,不作用在悬点上。所以下冲程悬点载荷为:
WdownWr'ptAr
迭代计算
通过分析我们知道,计算阻尼系数必须预先知道泵功图,但是要知道泵功图必须预先知道阻尼系数,故采用迭代法解决这个问题,首先,先给一个任选一个初值c0,根据c0求泵功图,再用式子求c0。
第五篇:基于matlab的连杆机构设计
目 录
1平面连杆机构的运动分析…………………………………………………………………………1
1.2 机构的工作原理……………………………………………………………………………………1 1.3 机构的数学模型的建立……………………………………………………………………………1 1.3.1建立机构的闭环矢量位置方程...................................................1 1.3.2求解方法.....................................................................2 2 基于MATLAB程序设计………………………………………………………………………………4 2.1 程序流程图…………………………………………………………………………………………4
2.2 M文件编写…………………………………………………………………………………………6
2.3 程序运行结果输出…………………………………………………………………………………7 3 基于MATLAB图形界面设计…………………………………………………………………………11 3.1界面设计……………………………………………………………………………………………11
3.2代码设计……………………………………………………………………………………………12 4 小结…………………………………………………………………………………………………17
参考文献 ………………………………………………………………………………………………18
平面连杆机构的运动分析
1.1 机构运动分析的任务、目的和方法
曲柄摇杆机构是平面连杆机构中最基本的由转动副组成的四杆机构,它可以用来实现转动和摆动之间运动形式的转换或传递动力。
对四杆机构进行运动分析的意义是:在机构尺寸参数已知的情况下,假定主动件(曲柄)做匀速转动,撇开力的作用,仅从运动几何关系上分析从动件(连杆、摇杆)的角位移、角速度、角加速度等运动参数的变化情况。还可以根据机构闭环矢量方程计算从动件的位移偏差。上述这些内容,无论是设计新的机械,还是为了了解现有机械的运动性能,都是十分必要的,而且它还是研究机械运动性能和动力性能提供必要的依据。
机构运动分析的方法很多,主要有图解法和解析法。当需要简捷直观地了解机构的某个或某几个位置的运动特性时,采用图解法比较方便,而且精度也能满足实际问题的要求。而当需要精确地知道或要了解机构在整个运动循环过程中的运动特性时,采用解析法并借助计算机,不仅可获得很高的计算精度及一系列位置的分析结果,并能绘制机构相应的运动线图,同时还可以把机构分析和机构综合问题联系起来,以便于机构的优化设计。1.2 机构的工作原理
在平面四杆机构中,其具有曲柄的条件为: a.各杆的长度应满足杆长条件,即:
最短杆长度+最长杆长度≤其余两杆长度之和。
b.组成该周转副的两杆中必有一杆为最短杆,且其最短杆为连架杆或机架(当最短杆为连架杆时,四杆机构为曲柄摇杆机构;当最短杆为机架时,则为双曲柄机构)。
在如下图1所示的曲柄摇杆机构中,构件AB为曲柄,则B点应能通过曲柄与连杆两次共线的位置。
1.3 机构的数学模型的建立 1.3.1建立机构的闭环矢量位置方程
在用矢量法建立机构的位置方程时,需将构件用矢量来表示,并作出机构的封闭矢量多边形。如图1所示,先建立一直角坐标系。设各构件的长度分别为L1、L2、L3、L4,其方位角为、、、。以各杆矢量组成一个封闭矢量多边形,即ABCDA。其个矢量之和必等于零。即:
式1
式1为图1所示四杆机构的封闭矢量位置方程式。对于一个特定的四杆机构,其各构件的长度和原动件2的运动规律,即程可求得未知方位角、。
为已知,而
=0,故由此矢量方角位移方程的分量形式为:
式2
闭环矢量方程分量形式对时间求一阶导数(角速度方程)为:
式3 其矩阵形式为:
式4 联立式3两公式可求得:
式5
式6
闭环矢量方程分量形式对时间求二阶导数(角加速度方程)矩阵形式为:
式7 由式7可求得加速度:
式8
式9
注:式1~式9中,Li(i=1,2,3,4)分别表示机架
1、曲柄
2、连杆
3、摇杆4的长度;(i=1,2,3,4)是各杆与x轴的正向夹角,逆时针为正,顺时针为负,单位为 rad;是各杆的角速度。
,单位为 rad/s;为各杆的角加速度,单位为 1.3.2求解方法
(1)求导中应用了下列公式:
式10
(2)在角位移方程分量形式(式2)中,由于假定机架为参考系,矢量1与x轴重合,=0,则有非线性超越方程组:
式11
可以借助牛顿-辛普森数值解法或Matlab自带的fsolve函数求出连杆3的角位移和摇杆4的角位移。
(3)求解具有n个未知量(i=1,2,…,n)的线性方程组:
式12 式中,系列矩阵 是一个 阶方阵:
式13 的逆矩阵为;常数项b是一个n维矢量:
式14 因此,线性方程组解的矢量为:
式15
式11是求解连杆3和摇杆4角速度和角加速度的依据。
基于MATLAB程序设计
MATLAB 是Mathworks 公司推出的交互式计算分析软件,具有强大的运算分析功能,具有集科学计算、程序设计和可视化于一体的高度集成化软件环境,是目前国际上公认的最优秀的计算分析软件之一,被广泛应用于自动控制、信号处理、机械设计、流体力学和数理统计等工程领域。通过运算分析,MATLAB 可以从众多的设计方案中寻找最佳途径,获取最优结果,大大提高了设计水平和质量。四连杆机构的解析法同样可以用MATLAB 的计算工具来求值,并结合MATLAB 的可视化手段,把各点的计算值拟合成曲线,得到四连杆机构的运动仿真轨迹。
2.1 程序流程图
2.2 M文件编写
首先创建函数FoutBarPosition,函数fsolve通过他确定。function t=fourbarposition(th,th2,L2,L3,L4,L1)t=[L2*cos(th2)+L3*cos(th(1))-L4*cos(th(2))-L1;… L2*sin(th2)+L3*sin(th(1))-L4*sin(th(2))];主程序如下:
disp ' * * * * * *平面四杆机构的运动分析 * * * * * *' L1=304.8;L2=101.6;L3=254.0;L4=177.8;%给定已知量,各杆长L1,L2,L3,L4 th2=[0:1/6:2]*pi;%曲柄输入角度从0至360度,步长为pi/6 th34=zeros(length(th2),2);%建立一个N行2列的零矩阵,第一列存放options=optimset('display','off');%θ_3,第二列存放θ_3
for m=1:length(th2)%建立for循环,求解θ_3,θ_4
th34(m,:)=fsolve('fourbarposition',[1 1],…
%调用fsove函数求解关于θ_3,θ_4 options,th2(m),L2,L3,L4,L1);%的非线性超越方程,结果保存在th34中 end y=L2*sin(th2)+L3*sin(th34(:,1)');%连杆3的D端点Y坐标值 x=L2*cos(th2)+L3*cos(th34(:,1)');%连杆3的D端点X坐标值 xx=[L2*cos(th2)];%连杆3的C端点X坐标值 yy=[L2*sin(th2)];%连杆3的C端点Y坐标值 figure(1)plot([x;xx],[y;yy],'k',[0 L1],[0 0],… %绘制连杆3的几个位置点 'k--^',x,y,'ko',xx,yy,'ks')title('连杆3的几个位置点')xlabel('水平方向')ylabel('垂直方向')axis equal %XY坐标均衡
th2=[0:2/72:2]*pi;%重新细分曲柄输入角度θ_2,步长为5度 th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',[1 1],… options,th2(m),L2,L3,L4,L1);end figure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2))%绘制连杆3的角位移关于曲柄2的角位移图
plot(th2*180/pi,th34(:,1)*180/pi,…
th2*180/pi,th34(:,2)*180/pi)%绘制摇杆4的角位移关于曲柄2的角位移图 axis([0 360 0 170])%确定XY边界值 grid %图形加网格 xlabel('主动件转角theta_2(度)')ylabel('从动件角位移(度)')title('角位移线图')text(120,120,'摇杆4角位移')text(150,40,'连杆3角位移')w2=250;%设定曲柄角速度 for i=1:length(th2)A=[-L3*sin(th34(i,1))L4*sin(th34(i,2));… L3*cos(th34(i,1))-L4*cos(th34(i,2))];B=[w2*L2*sin(th2(i));-w2*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end figure(3)plot(th2*180/pi,w3,th2*180/pi,w4);%绘制角速度线图 axis([0 360-175 200])text(50,160,'摇杆4角速度(omega_4)')text(220,130,'连杆3角速度(omega_3)')grid xlabel('主动件转角theta_2(度)')ylabel('从动件角速度(radcdot s^{-1})')title('角速度线图')for i=1:length(th2)C=[-L3*sin(th34(i,1))L4*sin(th34(i,2));… L3*cos(th34(i,1))-L4*cos(th34(i,2))];D=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*L2*sin(th2(i))+w3(i)^2*L3*sin(th34(i,1))-w4(i)^2*L4*sin(th34(i,2))];a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);end figure(4)plot(th2*180/pi,a3,th2*180/pi,a4);%绘制角加速度线图 axis([0 360-70000 65000])text(50,50000,'摇杆4角加速度(alpha_4)')text(220,12000,'连杆3角加速度(alpha_3)')grid xlabel('从动件角加速度')ylabel('从动件角加速度(radcdot s^{-2})')title('角加速度线图')disp '曲柄转角连杆转角-摇杆转角-连杆角速度-摇杆角速度-连杆加速度-摇杆加速度' ydcs=[th2'*180/pi,th34(:,1)*180/pi,th34(:,2)*180/pi,w3',w4',a3',a4'];disp(ydcs)
2.3 程序运行结果输出
>> * * * * * *平面四杆机构的运动分析 * * * * * * 曲柄转角 连杆转角-摇杆转角-连杆角速度-摇杆角速度-连杆加速度-摇杆加速度
1.0e+004 *
0 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458 0.0005 0.0042 0.0094-0.0126-0.0107 0.2300 5.5630 0.0010 0.0039 0.0092-0.0124-0.0086 0.8946 6.0520 0.0015 0.0037 0.0091-0.0119-0.0065 1.4143 6.2982 0.0020 0.0034 0.0090-0.0114-0.0043 1.7801 6.3174 0.0025 0.0032 0.0089-0.0107-0.0021 2.0027 6.1467 0.0030 0.0030 0.0089-0.0100 0.0000 2.1046 5.8339 0.0035 0.0028 0.0089-0.0093 0.0020 2.1134 5.4272 0.0040 0.0026 0.0090-0.0085 0.0038 2.0566 4.9687 0.0045 0.0025 0.0091-0.0078 0.0054 1.9578 4.4918 0.0050 0.0023 0.0092-0.0072 0.0069 1.8356 4.0198 0.0055 0.0022 0.0093-0.0065 0.0082 1.7040 3.5680 0.0060 0.0021 0.0095-0.0060 0.0094 1.5725 3.1450 0.0065 0.0019 0.0097-0.0055 0.0104 1.4474 2.7545 0.0070 0.0018 0.0099-0.0050 0.0113 1.3328 2.3968 0.0075 0.0017 0.0102-0.0045 0.0121 1.2307 2.0702 0.0080 0.0017 0.0104-0.0041 0.0128 1.1425 1.7716 0.0085 0.0016 0.0107-0.0037 0.0134 1.0687 1.4971 0.0090 0.0015 0.0110-0.0034 0.0138 1.0095 1.2426 0.0095 0.0014 0.0112-0.0030 0.0142 0.9653 1.0035 0.0100 0.0014 0.0115-0.0027 0.0145 0.9364 0.7752 0.0105 0.0013 0.0118-0.0024 0.0148 0.9232 0.5530 0.0110 0.0013 0.0121-0.0020 0.0149 0.9269 0.3319 0.0115 0.0013 0.0120 0.0012 0.0125 0.0012 0.0130 0.0012 0.0135 0.0012 0.0140 0.0012 0.0145 0.0012 0.0150 0.0012 0.0155 0.0012 0.0160 0.0013 0.0165 0.0013 0.0170 0.0014 0.0175 0.0015 0.0180 0.0016 0.0185 0.0018 0.0190 0.0019 0.0195 0.0021 0.0200 0.0023 0.0205 0.0025 0.0210 0.0027 0.0215 0.0029 0.0220 0.0031 0.0225 0.0033 0.0230 0.0036 0.0235 0.0038 0.0240 0.0040 0.0245 0.0042 0.0250 0.0044 0.0255 0.0046 0.0260 0.0048 0.0265 0.0050 0.0270 0.0052 0.0275 0.0054 0.0280 0.0055 0.0285 0.0056 0.0124-0.0017 0.0150 0.9485 0.1069 0.0127-0.0014 0.0150 0.9899-0.1276 0.0130-0.0010 0.0149 1.0530-0.3773 0.0133-0.0006 0.0147 1.1404-0.6481-0.0002 0.0145 1.2544-0.9455 0.0139 0.0002 0.0141 1.3967-1.2743 0.0142 0.0008 0.0136 1.5677-1.6368 0.0144 0.0013 0.0129 1.7648-2.0314 0.0147 0.0020 0.0121 1.9807-2.4495 0.0149 0.0027 0.0112 2.2018-2.8735 0.0151 0.0035 0.0101 2.4071-3.2754 0.0153 0.0044 0.0089 2.5697-3.6186 0.0155 0.0053 0.0076 2.6616-3.8650 0.0156 0.0063 0.0063 2.6609-3.9849 0.0157 0.0072 0.0049 2.5591-3.9674 0.0158 0.0080 0.0035 2.3638-3.8244 0.0159 0.0088 0.0022 2.0959-3.5866 0.0159 0.0095 0.0010 1.7823-3.2931 0.0159 0.0100-0.0001 1.4487-2.9815 0.0159 0.0105-0.0011 1.1152-2.6809 0.0159 0.0108-0.0020 0.7942-2.4103 0.0158 0.0111-0.0028 0.4916-2.1794 0.0158 0.0112-0.0035 0.2086-1.9913 0.0157 0.0112-0.0042-0.0565-1.8450 0.0156 0.0111-0.0048-0.3071-1.7375 0.0155 0.0110-0.0054-0.5475-1.6650 0.0154 0.0108-0.0060-0.7817-1.6233 0.0153 0.0104-0.0065-1.0139-1.6089 0.0151 0.0100-0.0071-1.2479-1.6181 0.0150 0.0096-0.0077-1.4868-1.6480 0.0148 0.0090-0.0082-1.7336-1.6955 0.0146 0.0084-0.0088-1.9905-1.7574 0.0145 0.0076-0.0095-2.2588-1.8304 0.0143 0.0068-0.0101-2.5391-1.9100 0.0141 0.0058-0.0108-2.8305-1.9910 0.0136 0.0290 0.0057 0.0138 0.0048-0.0115-3.1300-2.0660 0.0295 0.0058 0.0136 0.0037-0.0122-3.4326-2.1255 0.0300 0.0059 0.0133 0.0024-0.0130-3.7297-2.1572 0.0305 0.0059 0.0131 0.0011-0.0137-4.0091-2.1451 0.0310 0.0059 0.0128-0.0004-0.0145-4.2538-2.0696 0.0315 0.0059 0.0125-0.0019-0.0152-4.4419-1.9079 0.0320 0.0058 0.0122-0.0035-0.0158-4.5473-1.6352 0.0325 0.0058 0.0119-0.0051-0.0163-4.5411-1.2273 0.0330 0.0056 0.0115-0.0066-0.0166-4.3954-0.6661 0.0335 0.0055 0.0112-0.0081-0.0167-4.0889 0.0551 0.0340 0.0053 0.0109-0.0095-0.0166-3.6129 0.9243 0.0345 0.0051 0.0105-0.0106-0.0161-2.9781 1.9058 0.0350 0.0049 0.0102-0.0115-0.0152-2.2178 2.9395 0.0355 0.0047 0.0099-0.0122-0.0140-1.3857 3.9473 0.0360 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458
图形输出:
图2 连杆3的几个位置点
图3 角位移线图
图4 角加速度线图
图5 角加速度线图 基于MATLAB图形界面设计
所谓图形用户界面, 简称为GU I(Graphic User Interface), 是指包含了各种图形控制对象, 如图形窗口、菜单、对话框以及文本等内容的用户界面。利用这些用户界面, 用户可以和计算机之间进行信息交流。用户可以通过某种方式来选择或者激活这些图形对象, 来运行一些特性的M 文件。最常见的激活方式是利用鼠标或者其它设备来点击这些对象。对于一个用户来说, 图形用户界面就是他所面对的应用程序, 对图形界面的操作直接影响应用程序的应用前途。对于以往专门用于科学计算的语言, 如FORTRAN 语言等, 编写图形界面的功能较弱, 因而用其开发的程序, 其界面往往不够友好, 用户使用起来很不方便。而目前流行的可视化语言, 对科学计算的功能又相对弱一些。MATLAB提供了非常强大的编写图形用户界面的功能。用户只和前台界面下的控件发生交互,而所有运算、绘图等内部操作都封装在内部,终端用户不需要区追究这些复杂过程的代码。图形用户界面大大提高用户使用MATLAB程序的易用性。因此,学习MATLAB图形用户界面编程,即GUI程序的创建,是MATLAB编程用户应该掌握的重要一环。对于一个MATLAB 中的图形用户界面, 它的设计过程一般可以分为两个部分: ①用户界面的外观设计。在这里, 主要是通过不同的对话框、按钮、文本框等许多工具的使用, 设计出一个图形用户界面。同时也应搞清楚这个图形界面的功能是什么, 也即在图形界面上的操作会引发什么样的结果。②图形界面的完成。在这里, 用户将根据在外观设计阶段所确定的图形界面的功能, 针对各个不同的图形对象来编写出能够实现该功能的函数代码, 确保这个图形界面能够完成所预定的功能。3.1 界面设计
首先我们新建一个GUI文件,如下图所示:
图6 新建GUI文件 选择Blank GUI(Default)。
进入GUI开发环境以后添加5个编辑文本框,8个静态文本框,和1个下拉菜单。利用菜单编辑器,创建Open、Print、Close三个菜单。创建好GUI界面需要的各交互控件并调整好大概的位置后,设置这些控件的属性。最后的界面效果如下图示:
图7 界面效果 3.2 代码设计
(1)打开M文件编辑器(M-file Edit),点击
向下的三角图标,可以看到各个对象的回调函数(Callback),某些对象的创建函数或打开函数等。通过选中相应项就可以跳动对应函数位置进行程序编辑。
选中’edit_callback’选项,光标跳到’ function edit1_Callback(hObject, eventdata, handles)’下面空白处,添加以下代码: user_entry=str2double(get(hObject,'String'));if isnan(user_entry)errordlg('请输入数值!','Bad Input')end 该语句严格限制编辑框内必须输入数值,否则出现错误对话框(如下图所示)。同理在其他四个编辑框的回调函数下输入相同的代码。
图8 错误对话框(2)打开M文件编辑器(M-file Edit),点击
向下的三角图标,设置下拉菜单返回函数,光标跳到’ function popupmenu1_Callback(hObject, eventdata, handles)’下面空白处。由于下拉菜单是本界面设计关键控件,与本设计相关的程序都放在这个返回函数下。添加代码如下:L1=str2double(get(handles.edit1,'String'));L2=str2double(get(handles.edit2,'String'));L3=str2double(get(handles.edit3,'String'));L4=str2double(get(handles.edit4,'String'));w2=str2double(get(handles.edit5,'String'));th2=[0:2/72:2]*pi;th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',[1 1],options,th2(m),L2,L3,L4,L1);end w2=250;for i=1:length(th2)A=[-L3*sin(th34(i,1))L4*sin(th34(i,2));L3*cos(th34(i,1))-L4*cos(th34(i,2))];B=[w2*L2*sin(th2(i));-w2*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end for i=1:length(th2)C=[-L3*sin(th34(i,1))L4*sin(th34(i,2));L3*cos(th34(i,1))-L4*cos(th34(i,2))];D=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*L2*sin(th2(i))+w3(i)^2*L3*sin(th34(i,1))-w4(i)^2*L4*sin(th34(i,2))];a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);end val=get(hObject,'Value');str=get(hObject,'String');switch str{val} case '连杆3的几个位置点' th2=[0:1/6:2]*pi;th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',[1 1],options,th2(m),L2,L3,L4,L1);end y=L2*sin(th2)+L3*sin(th34(:,1)');x=L2*cos(th2)+L3*cos(th34(:,1)');xx=[L2*cos(th2)];yy=[L2*sin(th2)];plot([x;xx],[y;yy],'k',[0 L1],[0 0],'k--^',x,y,'ko',xx,yy,'ks')title('连杆3的几个位置点')xlabel('水平方向')ylabel('垂直方向')axis equal grid on case '角位移线图' plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)axis([0 360 0 170])grid on xlabel('主动件转角theta_2(度)')ylabel('从动件角位移(度)')title('角位移线图')text(120,120,'摇杆4角位移')text(150,40,'连杆3角位移')case '角速度线图' plot(th2*180/pi,w3,th2*180/pi,w4);axis([0 360-175 200])text(50,160,'摇杆4角速度(omega_4)')text(220,130,'连杆3角速度(omega_3)')grid on xlabel('主动件转角theta_2(度)')ylabel('从动件角速度(radcdot s^{-1})')title('角速度线图')case '角加速度线图' plot(th2*180/pi,a3,th2*180/pi,a4);axis([0 360-50000 65000])text(50,50000,'摇杆4角加速度(alpha_4)')text(220,12000,'连杆3角加速度(alpha_3)')grid on xlabel('主动件转角theta_2(度)')ylabel('从动件角加速度(radcdot s^{-2})')title('角加速度线图')end guidata(hObject,handles)%
其中,guidata(hObject,handles)命令用于更新句柄,当输入不同参数是,程序能够做出相应的相应。
(3)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码: file = uigetfile('*.fig');if ~isequal(file, 0)open(file);end 此菜单用以打开fig文件。其相应界面如图9所示:
向下的三角图标,在Open菜单
图9(4)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码:
向下的三角图标,在Print菜单printdlg(handles.figure1)%用于图形输出。(5)打开M文件编辑器(M-file Edit),点击 回调函数下添加以下代码:
向下的三角图标,在Close菜单selection = questdlg(['Close ' get(handles.figure1,'Name')'?'],...['Close ' get(handles.figure1,'Name')'...'],'Yes','No','Yes');if strcmp(selection,'No')return;end delete(handles.figure1)此菜单用于关闭界面,其响应界面如图10所示:
图10
(6)完成M文件编写后,运行程序进行检验,单击 图标或M文件工具栏的
图标,在编辑栏输入个构件参数,运行结果如图11:
图11 界面运行效果图
分别点击下拉菜单
小结
在本次基于MATLAB平面四杆机构机构的运动分析课程设计中,不仅用到了MATLAB的m语言编程,还有GUI图形用户界面设计。对于课程的设计来说,m语言本身来说,功能相当强大,但是由于其复杂的编程方法,让大多数初学者望而却步;而GUI图形界面则正好弥补了它的不足,它采用的是所见即所得的编程方式,用它来做软件的界面就如图制作网页一样简单明了,用它制作出来的软件不需要太多的编程知识都可以轻松搞定;在此次课程设计中,本人尽量扬长避短,把这些工具的优点结合到一起,发挥其最大的作用。通过此次课程设计,不仅使我们对使我们对四杆机构有了进一步认识,并且使我们认识到计算机技术对工程应用的重要性。本此设计凝结了团队合作的结晶,是我们利用三周的时间努力学
下各选项,则在绘图区域分别显示图2~图5。习、设计的成果,同时,在设计过成中得到了郑XX老师的悉心指导,在此表示衷心的感谢!
参考文献
[1] 孙桓,陈作模.机械原理[M].7版.北京:高等教育出版社,2006.[2] 符炜.机构设计学.[M].1版.长沙:中南工业大学出版社,1995.[3] MATLAB原理与工程应用[M].1版.北京:电子工业出版社,2002.[4] http:///pro-t2-p137-dzd.html?dk=80288644