机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 12784|回复: 21

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

[复制链接]
发表于 2014-12-20 21:13:57 | 显示全部楼层 |阅读模式
目的:设计一个平面凸轮的外轮廓
# D- u/ A  g* _+ z如下图,从动件为滚针轴承,带导轨,需要确定基圆直径,和升程曲线。. _4 t9 P% ^6 F. u0 ]2 L
(参考书籍:凸轮算法,80年代的国产货,我也不知道书名;另一本,英文:cam design handbook)  z8 U, M6 X6 y

& X: W2 l" @4 m) r2 `0 w2 x6 y
0 k4 s4 W( Q8 K6 s' a" N! r凸轮升程曲线要求运动尽可能平滑,就是加速度平滑,这样电机寿命长,当前比较好的是7段组合式加速度曲线(参考书1),如图,我们知道总升程h,总角度,需要通过计算得出每一段的加速度,速度,和行程(升程)的表达式,进而计算并绘制凸轮外轮廓。
3 j1 `9 N1 V7 E" ^9 k! q- N: }1 z$ E0 L! Q
公式如下5 b6 p; k& I$ ~! z$ g8 V
, T$ ?% T' i. u6 X: I
因为是举升,重力向下,我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多
. a' ~( L3 l2 d0 d3 V8 @
. ^4 L9 X/ H3 X- e# [/ B: d于是我们需要一个程序,输入角度和升程,以及加减速段的比值,输出每个角度对应的升程数值;
3 ^, [( H5 X- o+ z9 k/ O部分程序如下(MATLAB):
) O) G* w7 F4 mrb=45;rt=31;e=0;h=85;
1 _( |8 m0 k: l7 E3 ~' m. i( C%  推程运动角;远休止角;回程运动角;近休止角;推程许用压力角;凸轮转速+ o0 ~; L% a. g  O! L0 N
ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60;% L0 k3 n' m) ^  J" J$ v9 u1 H
%  角度和弧度转换系数;机构尺度
+ ~$ Z0 M! Z7 d6 l" |5 u1 Ghd=pi/180;du=180/pi;se=sqrt(rb^2-e^2);
: n: M! g  n9 W" ^( @" U% \  t7 i9 Fw=n*2*pi/60; omega=w*du;         % 凸轮角速度(°/s)- T' l  o# V2 W! V
p=3; % 加速段角度和减速段角度比值; Q) h7 ]! x2 m+ V
for f=1:ft3 T9 `" V2 ?( F: e' a* e" ?2 q
    if (0<=f&&f<=1/4*p/(1+p)*ft)! E  `$ I: T: l; m# X6 ]
        %s(f)=0.09724613*h*(4*f/ft-1/pi*sin(4*pi*f/ft));sxs=s(f);   - B8 O9 B' w# z3 _1 I4 U* Q4 [
        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); ( O8 f8 R+ a* l: r$ ^
        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);: c3 }) L- v) t+ Z& X' a9 g! q6 T
        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);   * a$ N7 u7 ?8 a: Q9 I* Y
    end
+ t' m8 S( y$ E  P+ \    if (1/4*p/(1+p)*ft<f&&f<=3/4*p/(1+p)*ft)
+ R+ q6 ^" t& X0 |" @; G        %s(f)=(p/(1+p)*h)*(2.444016188*(f/ft)^2-0.22203094*f/ft+0.00723406);sxs=s(f);: P/ {( D8 c8 y& ^# g3 {
        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);. N3 d* v" O' ~$ i2 i4 m3 v' }
        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);9 X* S7 ~) @$ ]/ |( W
        d2s(f)=4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2;sxd2s=d2s(f);   . {6 V& k2 D( L) F% y% M2 R* o
    end
. r  R" R: v  P" E: a& M% Q    if (3/4*p/(1+p)*ft<f&&f<=4/4*p/(1+p)*ft)2 e* |1 T9 {0 k- Y; D( r
        %s(f)=(p/(1+p)*h)*(1.6110155*f/ft-0.0309544*sin(4*pi*f/ft)-0.3055077);sxs=s(f);
& J. e* T: s2 r) I        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);
" k9 \* T9 r9 H, g2 G        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);* x0 p' {0 k4 B5 j( c0 F
        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);   
# [, |( L/ S4 I- W     end: a% j& e5 R, i
上面的程序最终会计算出,在1-155度中,每一度变化对应的升程数值s;速度ds;加速度d2s。
! Y" |  |5 P% K$ O, A最终效果(把计算的点给autocad画图)我不用担心睡不着觉了。. K5 b6 v, m& w6 t' \- t) W) q
8 G0 i; J$ v7 U5 E" G% D% x/ e2 ?# F
  u3 d! B7 M) S3 X/ e
有兴趣的可以一起聊这个曲线。7 q. {2 s1 b) u# x4 _
附书1的部分目录,可以帮助找到同一本书
0 A- T$ f" |! l9 p4 Y0 w# q9 @
) D/ U' N; M& y& `3 n; @4 ]1 ^5 C  \* j/ M0 ~

5 C; R$ s" m2 N
2 N8 g% k0 ~8 H9 I) }" b6 Y1 b1 ~; S# d6 R2 G3 |) E
, l+ X& Q, e& I8 L& @

本帖子中包含更多资源

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

x

本帖被以下淘专辑推荐:

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

使用道具 举报

发表于 2014-12-20 23:45:33 | 显示全部楼层
”当前比较好的是7段组合式加速度曲线“
  l& F. |' I7 d6 G( l) @/ N+ Y" p
为何是这种曲线?
9 o& w8 x4 ^4 Z- S; }  _1 `& _
' }# C7 B9 }1 i1 O我喜欢用正弦余弦曲线,我的速度比较慢

点评

因为中间一段加速度为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 编辑
9 }  N; H+ A0 B& {. p! |
% `- t: X, i& K* {8 ~( T6 E; W, n5 `哈哈,大侠用的是标准的修正梯形再变形。9 E1 S: c+ J- a% s5 ~
按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。, K8 z, S$ m. {$ j" k7 J
“p=3; % 加速段角度和减速段角度比值”。表述不严谨,会误解。( a& @( F! R! F: n( o
因为推程和回程都有加速段和减速段。
+ F+ d* ?4 z  s9 x+ Z
' N2 S# a& x1 X7 H0 I" {实际上,“加速度是时间的函数”这样理解更合适。
! Z, R* L, f2 s1 E% W为了达到“我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多;”这一目的5 j: d4 J+ B& J& ?2 [* U
设定一个系数=p/(1+p),那么:
4 C2 c2 e# @( R* H推程:用的是1/4 *系数 ,  3/4*系数 ,   1*系数。
5 _0 [# N' |# t, K1 u& ]回程:没下载大侠的程序,由于上面的误解,不好妄下结论。
( G+ @. l: ?3 t# y% {- T按我的理解,推程取一系列T值,回程再取一系列T值,完全可以实现LZ的设计目的。
3 u% a7 X, e8 f: }  H. V; }: H8 o& F' E7 }" P& Z) f
另外,大侠的程序好像没有体现文中所说“7段组合”。不知大侠能否把各曲线补齐。3 U) m, }- \6 j. T+ \3 {- j7 S) G( g
要求过分了点,哈哈1 t  E' E4 {* ?3 H! o" W
给个建议,不等式两边可以约去“*p/(1+p)*ft”,把“f&&f”改成时间T,不要用角度。这样,你的程序将有极大的通用性。, T/ ?, q& j! p' ^, U& `0 \
; y5 y6 ~' r( @4 K+ K& O- \
对应的中文目录
$ b+ K, j  E- u1 a+ M3 _

本帖子中包含更多资源

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

x

点评

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

使用道具 举报

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

使用道具 举报

发表于 2015-11-5 19:55:26 | 显示全部楼层
本帖最后由 georgemcu 于 2015-11-5 19:58 编辑
% Z9 n; R3 W% c* \, ^1 L; [! c
hoot6335 发表于 2014-12-21 18:52 ; R* i9 q2 c# j: e8 R7 |
哈哈,大侠用的是标准的修正梯形再变形。
6 t6 z" p2 k- a/ h1 P/ y: G- F按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。 ...

, e9 S" x" M" i. t9 E+ H. cCam design handbook,2011年看过,也受益匪浅。( z% S: Y1 o0 z
就是由于看了这本书,让我在那一年完成自己的第一版凸轮设计程序,在11年公司工作需要用的凸轮都可以完成!+ h3 s- F/ R  W* e( q
* p( k3 F2 O5 Q. e! ^0 y) Q8 v4 k8 u
上个月由于遇到了凸轮设计的新问题,所以又重新阅读了多本凸轮著作。
+ q' C& K. T2 ~9 ^% c3 A不过对凸轮优化,感觉快要抓住了可以还是没有抓住。( _- k  O4 i2 O/ C8 D0 X
意思就是没有透彻。
+ S; R/ F# j+ `$ ]hoot前辈一个对凸轮曲线的优化应该算是比较精通了吧!
/ `: j+ d4 V! j4 R
# E' ~" n2 \: n& @/ ]$ Q0 d4 N. o对与那些著作里提到的30几中曲线,上个月,我也是已经全部收纳成功:)
& w* ^+ P: e  h% A( P; ]1 U自己做个程序,自己用!! M3 M% _! f/ l; {: |
就像你在其他贴中说的一样,自己建的数学模型,自己写的代码,用的放心!; k! r5 I6 k& c+ A& Z& X; N4 S
出错,立马查得到!2 E; r- {7 r  T7 T+ o# t
哈哈!
" u) i0 y; M) W
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2015-11-9 21:27:09 | 显示全部楼层
pacelife 发表于 2015-11-7 17:38 , |/ l- e/ L/ n& t9 Z# l8 V
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的

) I$ j/ K4 {9 m" j三维弧面。。。想当初2011年接触分度凸轮indexing的时候,没有看过正规的书籍,就凭网上的几篇论文,硬着头皮去研究,做INDEXING的设计程序,影响中程序做到了可以展开到平面的曲线部分,剩下只能通过手工包覆到凸轮曲面去生成槽,不过还不是弧面,没有读书多可怕,当时真的是犀利糊涂的,呵呵,不过现在也忘记了,有空等我手头上的事处理完,可以去完成我的那部分了
7 {- K9 J7 a0 J! F* ^" j, f  q
回复 支持 反对

使用道具 举报

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

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 17:10 , Processed in 0.091196 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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