机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 13378|回复: 21

平面直动滚子凸轮设计,附算法

[复制链接]
发表于 2014-12-20 21:13:57 | 显示全部楼层 |阅读模式
目的:设计一个平面凸轮的外轮廓2 g* f( M7 C/ V3 X, \) |* s! s
如下图,从动件为滚针轴承,带导轨,需要确定基圆直径,和升程曲线。
! d" g# X7 M! D1 P* a(参考书籍:凸轮算法,80年代的国产货,我也不知道书名;另一本,英文:cam design handbook)
8 m" \" y0 y2 C5 K0 M  _! F8 Q' r- w4 e+ @$ u) U9 Z

! b1 m* _! B* R  N凸轮升程曲线要求运动尽可能平滑,就是加速度平滑,这样电机寿命长,当前比较好的是7段组合式加速度曲线(参考书1),如图,我们知道总升程h,总角度,需要通过计算得出每一段的加速度,速度,和行程(升程)的表达式,进而计算并绘制凸轮外轮廓。
# M" |& L& c3 @* k! I( X. _# `/ c. Q" e. [
$ D% [1 f% S( u% y. K0 w( V. K2 D公式如下9 \3 k$ C0 [7 f) m- b# M# z

# o7 r3 z0 E) [; ]  v: X! z因为是举升,重力向下,我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多4 n* y" H" I( |1 b- }7 F; g

+ N8 d( R/ z# P+ _& _. t于是我们需要一个程序,输入角度和升程,以及加减速段的比值,输出每个角度对应的升程数值;. S+ ^8 ?2 w2 }: l% }
部分程序如下(MATLAB):5 j* Z0 t; Y9 {9 C7 a, X
rb=45;rt=31;e=0;h=85;# X: H8 n/ T4 h  ]( e$ t
%  推程运动角;远休止角;回程运动角;近休止角;推程许用压力角;凸轮转速
) {8 }/ m+ N! f* Tft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60;) ?% b$ n4 c( m1 i( `
%  角度和弧度转换系数;机构尺度
& X! [* z( ?% U/ g5 Nhd=pi/180;du=180/pi;se=sqrt(rb^2-e^2);3 }/ q, E* x$ d  }
w=n*2*pi/60; omega=w*du;         % 凸轮角速度(°/s)2 {& G( f- _9 q" d7 z  P, u( D& R
p=3; % 加速段角度和减速段角度比值) s, g* @, g3 ^$ Z4 d7 O
for f=1:ft
3 w) _+ L6 Y  e- F. k$ Y    if (0<=f&&f<=1/4*p/(1+p)*ft)
& a* X, Y2 h  S7 N! @3 N/ s8 \, R        %s(f)=0.09724613*h*(4*f/ft-1/pi*sin(4*pi*f/ft));sxs=s(f);   - R9 @; c( L% u, O( F
        s(f)=2*p/(1+p)*h/(2+pi)*(2*f/(2*p/(1+p)*ft)-1/2/pi*sin(4*pi*f/(2*p/(1+p)*ft)));sxs=s(f);
$ d% d& P; T" R. m2 b) s$ {9 C9 |6 F        ds(f)=0.3889845*(2*p/(1+p)*h)/(2*p/(1+p)*ft)*(1-cos(4*pi*f/(2*p/(1+p)*ft)));sxds=ds(f);
* F$ G: t# R0 F# \4 {1 a        d2s(f)=4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2*sin(4*pi*f/(2*p/(1+p)*ft));sxd2s=d2s(f);   . q5 H! y( D3 A
    end. T& B% j$ W& I% r
    if (1/4*p/(1+p)*ft<f&&f<=3/4*p/(1+p)*ft)
6 V( Z/ p3 {' g  C8 r! u        %s(f)=(p/(1+p)*h)*(2.444016188*(f/ft)^2-0.22203094*f/ft+0.00723406);sxs=s(f);
# Q- I4 K4 s; l0 J% @        s(f)=(2*p/(1+p)*h)/(2+pi)*(1/4-1/2/pi+2/(2*p/(1+p)*ft)*(f-(2*p/(1+p)*ft)/8)+4*pi/(2*p/(1+p)*ft)^2*(f-(2*p/(1+p)*ft)/8)^2);sxs=s(f);
; J& ^* j7 @0 _  y' M        ds(f)=(2*p/(1+p)*h)/(2*p/(1+p)*ft)*(4.888124*f/(2*p/(1+p)*ft)-0.222031);sxds=ds(f);
; ^# t) l" r( p6 v/ s  Q        d2s(f)=4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2;sxd2s=d2s(f);   : P/ }  S1 j/ x8 n2 d+ e$ n
    end
. w8 u" H* k1 @) D3 ], z    if (3/4*p/(1+p)*ft<f&&f<=4/4*p/(1+p)*ft)
3 M2 {* U! w: N7 k- v- N) r        %s(f)=(p/(1+p)*h)*(1.6110155*f/ft-0.0309544*sin(4*pi*f/ft)-0.3055077);sxs=s(f);' S- B8 O: H" L
        s(f)=(2*p/(1+p)*h)/(2+pi)*(-pi/2+2*(1+pi)*f/(2*p/(1+p)*ft)+1/2/pi*sin(4*pi*f/(2*p/(1+p)*ft)));sxs=s(f);
) T3 q( A* J0 X' d8 E- [3 y        ds(f)=(2*p/(1+p)*h)/(2*p/(1+p)*ft)*(1.6110155+0.3889845*cos(4*pi*f/(2*p/(1+p)*ft)));sxds=ds(f);
9 b6 r$ ]' J, b7 l        d2s(f)=-4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2*sin(4*pi*f/(2*p/(1+p)*ft));sxd2s=d2s(f);   
: V- H5 ?) k  C( I  O+ A7 f     end5 v, G0 A3 }8 z- S# k& K8 L2 i
上面的程序最终会计算出,在1-155度中,每一度变化对应的升程数值s;速度ds;加速度d2s。/ i. ], i% Q/ p# ^7 K) x1 M
最终效果(把计算的点给autocad画图)我不用担心睡不着觉了。
3 U/ K1 |7 |6 J2 m/ V& c2 o2 P# @4 _

6 S% D" L6 s- n( a* P: r3 i5 L) D有兴趣的可以一起聊这个曲线。8 y  O& R/ v/ V" P# J
附书1的部分目录,可以帮助找到同一本书1 \2 T7 z1 k5 l

8 O+ ~5 W; Q! H$ N6 t  `; R. ?" B$ E: m( ~' ^$ {7 g
2 t+ x+ H7 ^8 W. |+ {
1 `  n* w4 q2 }" j1 ~

$ s3 J7 U  E& D: [+ B( s# q3 T% g. s( E$ [7 Y

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x

本帖被以下淘专辑推荐:

  • · 凸轮|主题: 13, 订阅: 6
回复

使用道具 举报

发表于 2014-12-20 23:45:33 | 显示全部楼层
”当前比较好的是7段组合式加速度曲线“9 W2 |: d  J) K2 s$ D; b' j
' V5 a' V1 a; ^2 V4 ]& ?
为何是这种曲线?, @6 L# [8 t, a5 Z" g% j

0 Q# ~# J) ?+ P- n我喜欢用正弦余弦曲线,我的速度比较慢

点评

因为中间一段加速度为0,速度较大,可以理解成这种曲线运动更平滑  发表于 2014-12-23 07:42
7段的好处就是可以让加速度在一定时间内为0  发表于 2014-12-21 18:59
回复 支持 反对

使用道具 举报

发表于 2014-12-21 10:55:53 | 显示全部楼层
谢谢
回复 支持 反对

使用道具 举报

发表于 2014-12-21 11:44:25 | 显示全部楼层
晚上回家试一下
回复 支持 反对

使用道具 举报

发表于 2014-12-21 18:52:17 | 显示全部楼层
本帖最后由 hoot6335 于 2014-12-21 21:42 编辑 ( [/ l: Q* F2 @: p0 f! k3 h& j

% w8 c3 ]6 s5 x  W+ [- ^# X/ B哈哈,大侠用的是标准的修正梯形再变形。
' Z* s5 Q; Q) h5 A7 A按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。5 j- i2 M& g0 ?
“p=3; % 加速段角度和减速段角度比值”。表述不严谨,会误解。
: c/ D: O+ |2 E6 U& d( W" w# v+ V/ @因为推程和回程都有加速段和减速段。& ]4 H; f) R7 u7 L, O" S

+ Z5 Y! T. C  E8 ?5 _实际上,“加速度是时间的函数”这样理解更合适。0 l8 V& w4 |2 m  U( ]
为了达到“我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多;”这一目的* S5 W2 _- ?6 k; g8 L
设定一个系数=p/(1+p),那么:' K- ]2 g4 K+ {' j5 T- A- x
推程:用的是1/4 *系数 ,  3/4*系数 ,   1*系数。4 p0 O6 `3 h, J1 f: P: k
回程:没下载大侠的程序,由于上面的误解,不好妄下结论。
# d0 ?# {; C. \' ]+ ^: l按我的理解,推程取一系列T值,回程再取一系列T值,完全可以实现LZ的设计目的。9 A' X7 ^/ k, i
2 H' C5 I5 d$ W+ p" s9 W3 R$ D% m# z
另外,大侠的程序好像没有体现文中所说“7段组合”。不知大侠能否把各曲线补齐。
* w- B5 Q% D- V/ L9 i要求过分了点,哈哈
. s- R. k$ o; y! a$ R, I9 S1 J给个建议,不等式两边可以约去“*p/(1+p)*ft”,把“f&&f”改成时间T,不要用角度。这样,你的程序将有极大的通用性。
7 i- P, T5 J& K8 z; f- E( T
  C4 R" O7 l4 x/ ]对应的中文目录$ c( w( @+ e- Y

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x

点评

你说的很对,凸轮一般计算用的是角度和升程的关系,但其实电机一般转速恒定,所以二者是通用的  发表于 2014-12-23 07:45
回复 支持 反对

使用道具 举报

发表于 2014-12-25 09:07:16 | 显示全部楼层
感谢分享啊
回复 支持 反对

使用道具 举报

发表于 2015-11-5 19:55:26 | 显示全部楼层
本帖最后由 georgemcu 于 2015-11-5 19:58 编辑 6 x- }3 D1 V4 m3 s# h2 \
hoot6335 发表于 2014-12-21 18:52
* G9 p! r" N9 w+ R哈哈,大侠用的是标准的修正梯形再变形。
1 K4 u/ M1 M3 [* @按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。 ...

5 V/ f* A) I. O* M9 e* SCam design handbook,2011年看过,也受益匪浅。  C6 A7 X  z7 c
就是由于看了这本书,让我在那一年完成自己的第一版凸轮设计程序,在11年公司工作需要用的凸轮都可以完成!
& k8 X! h+ s0 z0 K  Q8 @, {1 z1 n" T' x' Q4 S
上个月由于遇到了凸轮设计的新问题,所以又重新阅读了多本凸轮著作。4 h4 q0 x* J0 x
不过对凸轮优化,感觉快要抓住了可以还是没有抓住。8 q& `) K+ r8 U4 A3 e
意思就是没有透彻。
2 C* h% ^; ?% n2 ^, b. }hoot前辈一个对凸轮曲线的优化应该算是比较精通了吧!
! c  o( e. D4 U7 e. E- K( W8 Q! @) M
对与那些著作里提到的30几中曲线,上个月,我也是已经全部收纳成功:)( H2 R* h+ t/ Y1 t3 Q5 N! g/ M
自己做个程序,自己用!! H+ E$ o3 ^9 Z  ?& T1 s
就像你在其他贴中说的一样,自己建的数学模型,自己写的代码,用的放心!
5 O- Z: _: f, j3 R" C出错,立马查得到!
4 q' e( \! v* `) Q哈哈!* b; ?$ H9 W* A+ |
回复 支持 反对

使用道具 举报

发表于 2015-11-7 17:38:47 | 显示全部楼层
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的
回复 支持 反对

使用道具 举报

发表于 2015-11-9 21:27:09 | 显示全部楼层
pacelife 发表于 2015-11-7 17:38 9 p# o& K+ [/ I& m2 }
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的

2 h9 m* L9 V0 g; x9 j4 A三维弧面。。。想当初2011年接触分度凸轮indexing的时候,没有看过正规的书籍,就凭网上的几篇论文,硬着头皮去研究,做INDEXING的设计程序,影响中程序做到了可以展开到平面的曲线部分,剩下只能通过手工包覆到凸轮曲面去生成槽,不过还不是弧面,没有读书多可怕,当时真的是犀利糊涂的,呵呵,不过现在也忘记了,有空等我手头上的事处理完,可以去完成我的那部分了
6 p* P4 |7 Q. L3 A; a- v9 z
回复 支持 反对

使用道具 举报

发表于 2015-11-12 18:01:42 | 显示全部楼层
问楼主一个问题,里面的公式有自己推导过吗?我今天自己推了一下,发现有一个地方,为什么是 -3/8beta 和 1/2beta,而不是-3/8beta 和 3/8beta, cam design hand book,第63页。具体请见附件!' u3 T+ R9 T7 {  y) {3 {

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-4-4 07:08 , Processed in 0.068984 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表