【doc】 平底顶杆凸轮机构的MATLAB动画编程
平底顶杆凸轮机构的MATLAB动画编程
74力学与实践2005年第27卷
积与荷载分布已完全失去对应的物理意义,其合力作用线的
位置亦不能用分布区域面积形心之类的概念来描述了,且其
分布函数求解更加困难,表达式?qAz的计算已超出普通
高等数学讨论和应用的范围.
3讨论
若将线荷载集度定义为沿分布线荷载垂向单位长度分布
的线荷载,则对于上述各例,其荷载集度均为分布荷载垂向
单位长度所对应部分的物体自重;荷载图中荷载集度均沿其
垂向均匀分布,整个荷载图可以看成是一个均匀的单位力的
矢量场,其荷载图分别如图1(c),图2(c),图3(c)所示.故
合力大小即等于荷载图的面积,其简化结果分别为:
对图1(c)有
=0DEB一,b’&OAB
/[q(z)+,(z)]dz一/,(z)dz=
q’l=W
对图2(c)有
R=S~oDB——SAOAB
/[q(z)+,()]dz一/,(z)dz:
g,mf/2=W
对图3(c)有
R=(z)+)一/r)=
式中,q(x)为荷载集度分布函数;f(x)为分布荷载作用点
的空间位置函数;z为分布荷载垂向广义坐标.
4结论
1)文献[1]给出的线荷载集度的定义存在一定局限.
2)若将线荷载集度定义为沿分布线荷载垂向单位长度
分布的线荷载,对任意平行分布线荷载则有:荷载图中线荷
载集度应沿荷载垂向分布均匀,整个荷载图可以看成是一个
均匀的单位力的矢量场;其合力作用线平行于分布荷载,且
通过荷载图的形心,合力大小等于荷载图的面积,其合力简
化计算均可采用如下的一般表达形式
rr
R=/[g(z)+f(x)]dx一/f(x)dx(6)
显然,对于平行垂直分布的线荷载的简化,只不过是式(6)
仅当f(x)三0的特例而已.
3)对于任意平行分布荷载(包括线荷载,面荷载和体荷
载)集度可以给出如下定义:沿分布荷载垂向单位尺度(长
度,面积,体积)分布的荷载相应地称为线荷载,面荷载和体
荷载集度.显然,按此定义,这时荷载图将直接表达分布荷
载的分布情况,且具有明确的物理意义;平行分布荷载的简
化计算即可转化为求荷载图面积,体积之类的计算,便于进
行数学分析和计算.
参考文献
1同济大学理论力学教研室.理论力学(第1版,
).上海:同
济大学出版社,1990
平底顶杆凸轮机构的MATLAB动画编程
李琳
(华东理工大学机械与动力工程学院,上海200237)
摘要给出了一个用MATLAB语言编制的动画文件,用于
演示平底顶杆凸轮机构运动过程以及动点的相对运动轨迹.
对该程序稍加修改,即可演示理论力学中其它机构运动的过
程及相关轨迹..
关键词MATLAB,机构,相对运动轨迹,动画,编程
1引言
理论力学”点的合成运动”一章中,如何选择动点和动
系是一个教学难点.特别是当两个物体间不存在恒定的接触
点时,学生往往因为无法想象选接触点为动点时相对运动轨
迹的形状而造成求解错误.为此,本文以平底顶杆凸轮机构
2004-06-14收到第1稿,2005-03-21收到修改稿
为例,编制了一个MATLAB动画演示程序,将它用于课堂
教学,形象直观,便于学生掌握正确的求解
.
2题目,程序及运行结果
题目图1所示机构,顶杆AB可沿导槽上下移动,偏
心圆盘以角速度绕轴0转动,轴O位于顶杆轴线上.工作
时顶杆平底始终接触凸轮表面.该凸轮半径R=400mm,
偏心距0C=e=300mm,0C与水平线成角,求
=0.时顶杆的速度.
设t=0的瞬时=0.(图2),如果选此时凸轮上与顶
杆相接触的点(设为D点)为动点,动系0zY固结在顶杆
??
第5期李琳:平底顶杆凸轮机构的MATLAB动画编程75
[.]
B
I
,一一干aJ
图1
图2
AB上的话,相对运动轨迹将为何种曲线呢?在编程之前,
先推导相关的运动方程.
设点I(xi,yI)为t=0的瞬时凸轮轮廓线上的任意一
点,有
f=e+RCOS,yz=Rsin(1)
设定在0.和360.间,以1.为步长变化,就可得到
该瞬时轮廓线上一系列点的坐标值.将这些坐标值存放在程
序的数组xl和yJ中.
当凸轮绕轴0做定轴转动,转角为a时,设轮廓线上
各点的坐标变为(,),有
=
b-/cos(~+a)=JCOS—YJsina(2)
当a取某一确定值时,将凸轮轮廓线上各点的坐标(,
)存放在程序的数组x_I1和y_I1中.
另外,将点D在t=0瞬时的坐标值XI=300,
YI=400代入式(2)和(3),还可得动点D的绝对运动
而动系OY相对于定系Oxy的运动可由下面方程描
述[】
X0,=0,Yo,=R+esin,=0(因动系平动)(5)
动系0Y与定系Oxy之间的坐标变换方程为
联立式(4)一(6),可得动点的相对运动方程为
=一XO,,Y=Y—Yo,(7)
设定a在0.和360.间,以1.为步长变化,由式(4)一(7)
可得动点D在各个瞬时的相对坐标.将不同瞬时的相对坐
标值(,Y)存放在数组1和1中.
MATLAB程序如下.其中,符号”%”及其后的文字为
注释语句,符号”…”为续行符.该程序在MATLAB6.5环
境下通过.
clear;R=400;e=300;
%由式(1)计算初始瞬时凸轮轮廓线上各点的坐标
tl=pi/180;sita=[0:tl:2pi】;
xJ=Rcos(sita)+e;yl=Rsin(sita);
%由式(4),(5),(7)计算相对轨迹坐标
tt=pi/180;alf=[0:tt:2pi】;
x=300cos(alf)-400sin(alf);y=400cos(alf)+300sin(alf);
x_ol=0;y_ol=R+esin(alf);xl=x-x_ol;yl=y-y_ol;
%画滑道约束(hd)及固定铰支(gdjz)
gdjz=line(0,-30/color/,/kl,marker,,markersize/,8)
hdl=patch([-140,-100,-100,-140],[820,820,1100,1100],g);
hd2=patch([100,140,140,100],[820,820,1100,11001,,g);
%创建顶杆(dg)
dgl=patch([-700,700,700,-700],【R,R,500,500],Y,…
EdgecolorIIblJeraLsemode,
xor
dg2=patch([-60,60,60,-60】,[500,500,R+850,R+850],?.
y,Edgecolor’,’b,erasemode’,’xor
contour=line([e+R,e+R],[0,0】,/linewidth,3Icolor,r,…
erasemodeIIxor%创建凸轮轮廓曲线
centerl=line(e,0,color’,’k,marker,.,markersize’,5,…
erasemodeIIxor%仓0建凸轮圆心C
%创建线OC
oc=line([0,e],【0,0],linewidth’,3,color’,’r/,Ierasemode,
xor
%创建线DC
dc=line([e,e],【0,R],linewidth/,3,color,rlIerasemode,
xor
trace=line([300,300],[400,400],/linewidth,3,/color….
【0.5,0.7,1],erasemode’,’xor%创建动点相对运动轨迹
move=line(300,400,’color/,/k//marker,,
markersize/,15.erasemodeIIxor%创建动点D
%动画
axis(I-800,1500,-800,1500]);axisequal;dt=pi/60;
fori=0:360
,???,,??,
nS?
,+
-量
+十
=fl
,
3
,
a
S
o
C
,
+
口
n
.虬
,
=
,,
得
可
理
同
,I?I,J
aa.量
伽伽
一+
口a.量
湖湖
==
程
方
76力学与实践2005年第27卷
dcos=cos(dti);dsin=sin(dti);
x=300dcos.400dsin;y=400dcos+300dsin;
x_ol=O;y_ol=R+edsin;%动系原点o坐标
x_c~edcos;y_c=edsin;%凸轮圆心C的坐标
dgl_x=[-700,700,700,一700];%顶杆底部4个角点坐标
dg1.y=[y_ol,y_ol,y_ol+lO0,y_ol+100];
dg2-)(=[一60,60,60,一6o];%顶杆顶部4个角点的坐标
dg2_y=[y_ol+lO0,y_ol+100,y_o1+750,Y.o1+75o];
%以下为凸轮轮廓线上各点在该时刻的坐标
x_II=x-.[dcos—yJdsin;yJ1=xJdsin+yldcos;
x_oc=[O,X.c];y_oc=[0,yuc];%线OC端点坐标
x_dc=[x_c,x];y_dc=[y_c,y];%线DC端点坐标
set(oc,xda七a,X.oc,ydatd,y—oc);
set(dc,xdatd,x_dc,ydata,yc);
set(centerl,xdata’,X-C,ydata~,y_c);
set(dgl/xdata~,dgl_x,’ydata’,dg1.y);
set(dg2,xdatd,dg2_x,ydata~,dg2_y);
set(move,xdatd,X/ydata~,y);
set(trace,xdatat,xl,ydata~,yl+y_o1);
set(contour,xdatd,x_I1,ydata~,yJ1);
drawnow;pause(O.1);
end
图3为程序运行结果中的两帧画面.为动点,灰色
曲线为动点的相对运动轨迹.它说明,当两机构间不存在恒
定接触点时,选接触点为动点,相对运动轨迹是复杂曲线,
将给加速度的求解带来困难.
图3
3结束语
MATLAB语言具有极强的数值计算功能和作图(包括
动画)功能,是一种国际流行的优秀科学与工程计算软件【引.
本文仅为其在理论力学课程中应用的一个例子.事实
上,本文用到的编程思想还可用于编制运动学中其它机构
(如:曲柄摇杆机构,四连杆机构等)的运动及轨迹演示文件
(只需更改相应的计算公式即可).
掌握运动学中机构运动动画文件的MATLAB编程方
法,一方面可以使教师根据自己的教学需要编程,得到丰富
的多媒体
素材;另一方面,鼓励学有余力的学生进行编
程实践,能加深他们对运动学概念的理解,激发他们将MAT—
LAB语言用于解决力学问题的兴趣,有助于培养他们的创
新能力,提高综合素质.
参考文献
1哈尔滨工业大学理论力学教研室编.理论力学(I)(第6版).北
京:高等教育出版社,2002.8
2张志涌编.精通MATLAB6.5版.北京:北京航空航天大学出
版社,2003.8
一
钢丝软轴是怎样传递扭矩的
白墨宇孟宪红
(jE京航空航天大学航空科学与工程学院,北京100083)
黥包法兰
轴的套管的协同工作起着至关重要的作用.…一
关键词钢丝软轴,扭矩,套管
输
在机器设备中,常常会遇到一些钢丝软轴(又称挠性轴),
它们的作用是传递扭矩,其突出优点是可以改变轴端之间的
距离及轴端力偶矢的方向,给需要扭矩且处于运动状态的部
件带来极大的方便(见图1).
一
根曲曲弯弯的钢丝软轴怎么能传递扭矩呢?奥妙究竟
在哪儿呢?通过受力分析不难找到答案.原来,包轴的套管
的协同工作起着至关重要的作用.
2004—04—15收到第1稿,2005-01-16收到修改稿
图1
我们知道,钢丝软轴在弯曲段传递正扭矩时,两端的扭
矩矢量将合成一指向软轴弧线法向内侧的合矢量(见图2),
为了使此弯曲段平衡,该轴段上还必须有一反向的力偶矢量
存在,且在数值上要满足
=