找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 14218|回复: 21

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

  [复制链接]
发表于 2014-12-20 21:13:57 | 显示全部楼层 |阅读模式
目的:设计一个平面凸轮的外轮廓: I' ]& s) M! j* |) u5 ]9 U
如下图,从动件为滚针轴承,带导轨,需要确定基圆直径,和升程曲线。  o) U& c, ?4 h1 `4 _
(参考书籍:凸轮算法,80年代的国产货,我也不知道书名;另一本,英文:cam design handbook)
9 k* g1 ?8 H/ w1 o5 n1 t
# \3 J; U+ f: W' y9 n6 k5 w( l9 k5 I* v. S# H0 h
凸轮升程曲线要求运动尽可能平滑,就是加速度平滑,这样电机寿命长,当前比较好的是7段组合式加速度曲线(参考书1),如图,我们知道总升程h,总角度,需要通过计算得出每一段的加速度,速度,和行程(升程)的表达式,进而计算并绘制凸轮外轮廓。9 v( r/ S4 M8 I) h0 l4 v
8 ^4 a8 L! v7 t0 X. v6 M: Z
公式如下
: t3 S( d. N9 x6 H, g7 v; Z( G3 \  S( Y; C3 X" Q  S3 N' p
因为是举升,重力向下,我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多
$ H# W4 V6 ]8 i/ d0 o+ B/ s' M
; M, @3 r- e' X: B& ?: r1 W于是我们需要一个程序,输入角度和升程,以及加减速段的比值,输出每个角度对应的升程数值;
/ p7 m+ `* O" u& a, G部分程序如下(MATLAB):
- D* C4 v3 Q, \( Frb=45;rt=31;e=0;h=85;
' p, h* a0 |+ e0 L* V%  推程运动角;远休止角;回程运动角;近休止角;推程许用压力角;凸轮转速
7 S; q, U/ Q/ H  k! ]7 Z3 e: Hft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60;
1 W( U" h0 M7 y. s" F%  角度和弧度转换系数;机构尺度" `# a6 O8 A$ \8 g
hd=pi/180;du=180/pi;se=sqrt(rb^2-e^2);
: U8 d9 _- I$ j7 }1 Pw=n*2*pi/60; omega=w*du;         % 凸轮角速度(°/s)
+ B: G6 b' a: r) I$ G8 cp=3; % 加速段角度和减速段角度比值
5 P( e9 ?/ w. O4 F# s4 o6 hfor f=1:ft# @% Y3 u% w) y6 P' W2 V6 ]& Y
    if (0<=f&&f<=1/4*p/(1+p)*ft)/ {, Y) p; h* s5 t6 w  w6 |
        %s(f)=0.09724613*h*(4*f/ft-1/pi*sin(4*pi*f/ft));sxs=s(f);   6 {3 g/ G9 U& u1 T" b; G
        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);
3 `; _+ \' \3 y2 R0 c: P( @7 y5 ~. v        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);/ y- g- {  C, E0 v; 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);   
  o; ?+ ?0 U6 W* a+ S$ m; }8 b! X    end
! t) |( B3 ?0 R5 J: n    if (1/4*p/(1+p)*ft<f&&f<=3/4*p/(1+p)*ft)9 Q% U9 w  y' f  a8 ^8 i
        %s(f)=(p/(1+p)*h)*(2.444016188*(f/ft)^2-0.22203094*f/ft+0.00723406);sxs=s(f);! y! F; b( f+ B' Q% 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);% M% c; m' v5 ?
        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);
& w# S0 [; ^0 w# S6 v0 A        d2s(f)=4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2;sxd2s=d2s(f);   
# L& }; S7 e# P  Z/ C; n    end% A+ R  s( z5 o; E
    if (3/4*p/(1+p)*ft<f&&f<=4/4*p/(1+p)*ft)8 B6 a% f' L0 ]$ o5 d5 z' ^5 ]
        %s(f)=(p/(1+p)*h)*(1.6110155*f/ft-0.0309544*sin(4*pi*f/ft)-0.3055077);sxs=s(f);$ S* \3 f% L# b& M
        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);
1 m9 c6 I% i' a  n        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);/ Z% T( ~* S; E2 ~' Z
        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);   & s  S' K% F7 |* d( ]
     end! V3 k7 ~" M) h
上面的程序最终会计算出,在1-155度中,每一度变化对应的升程数值s;速度ds;加速度d2s。- r8 r, l2 [) J3 t# _& @  K
最终效果(把计算的点给autocad画图)我不用担心睡不着觉了。
8 P7 e9 C) M' A: b! x8 ?* Z& c8 N
1 [5 n1 I1 N, T+ \) z! t. _* _4 m& e
有兴趣的可以一起聊这个曲线。
& X3 ^) d1 C& S1 p3 R( @; X附书1的部分目录,可以帮助找到同一本书
5 A7 M# _2 U. e* ?6 c- ]4 [
6 t$ _7 C  X) X4 [$ K5 `. @2 g4 X, Y# ^3 a' T3 X
5 H; S1 A' a+ k- r9 E( Y

' p( |  k  Y+ I- @% R" [1 `" u  G' G. K5 A
) a4 }7 R/ U. V4 Q* m) s+ [- _/ v

本帖子中包含更多资源

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

×

本帖被以下淘专辑推荐:

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

使用道具 举报

发表于 2014-12-20 23:45:33 | 显示全部楼层
”当前比较好的是7段组合式加速度曲线“
% ^$ G! \) D& b" ^4 n7 W% C, C# r  o8 R0 @1 N" B2 h3 E
为何是这种曲线?& B( M4 l7 f% S: i: d' Z) g

7 S4 x8 l& }* K) y* M- L我喜欢用正弦余弦曲线,我的速度比较慢

点评

因为中间一段加速度为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 编辑 + d+ {& _: v/ D6 Y

! n9 `7 H+ b) J4 Y哈哈,大侠用的是标准的修正梯形再变形。: b; q/ L* i: W7 z( P, r* B
按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。
' C3 e+ ^0 W4 }$ f“p=3; % 加速段角度和减速段角度比值”。表述不严谨,会误解。4 @( I) \# m# R  f
因为推程和回程都有加速段和减速段。. w9 D2 g. s4 Q& H8 x  d( _
! k5 Y4 J8 @5 Q" ~9 B
实际上,“加速度是时间的函数”这样理解更合适。
" d5 z' `9 \3 X. T# J5 R为了达到“我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多;”这一目的
  n. l0 [1 K$ X! m8 V设定一个系数=p/(1+p),那么:
2 n8 K7 m4 d' T6 d推程:用的是1/4 *系数 ,  3/4*系数 ,   1*系数。* v$ B! M  ~6 o
回程:没下载大侠的程序,由于上面的误解,不好妄下结论。1 @7 s1 E) t. d4 k$ p' z/ \
按我的理解,推程取一系列T值,回程再取一系列T值,完全可以实现LZ的设计目的。
, Y  s. C% d$ U. ^4 r" g) J
" B& @. g1 j0 v* J1 Q另外,大侠的程序好像没有体现文中所说“7段组合”。不知大侠能否把各曲线补齐。
  L! J! l. r7 o$ c6 L5 L7 d: Y7 Q要求过分了点,哈哈
/ g1 e" x2 n% Z  F给个建议,不等式两边可以约去“*p/(1+p)*ft”,把“f&&f”改成时间T,不要用角度。这样,你的程序将有极大的通用性。
$ s# T* ~4 d2 o. K; h  R
6 K0 U# }- L$ s对应的中文目录
' K; I9 l1 t1 s; r# B4 f4 y5 W# P

本帖子中包含更多资源

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

×

点评

你说的很对,凸轮一般计算用的是角度和升程的关系,但其实电机一般转速恒定,所以二者是通用的  发表于 2014-12-23 07:45
发表于 2014-12-25 09:07:16 | 显示全部楼层
感谢分享啊
发表于 2015-11-5 19:55:26 | 显示全部楼层
本帖最后由 georgemcu 于 2015-11-5 19:58 编辑
! s$ R( z3 p9 I5 m2 }
hoot6335 发表于 2014-12-21 18:52 " L9 p8 l0 e, }, r
哈哈,大侠用的是标准的修正梯形再变形。7 ^7 N, M& y6 B) }; Y
按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。 ...
+ ~5 l. v( K+ r: S1 Q
Cam design handbook,2011年看过,也受益匪浅。
7 ^+ p6 Y* [  H8 V' }+ I就是由于看了这本书,让我在那一年完成自己的第一版凸轮设计程序,在11年公司工作需要用的凸轮都可以完成!* M' p( c8 w+ m  X; T+ ]1 i
( R$ I/ J8 ~9 ?
上个月由于遇到了凸轮设计的新问题,所以又重新阅读了多本凸轮著作。% b$ A. R- q: e( y( m
不过对凸轮优化,感觉快要抓住了可以还是没有抓住。
# T$ R( A( b9 y4 C意思就是没有透彻。$ u4 ?( w8 Z2 U4 q6 O
hoot前辈一个对凸轮曲线的优化应该算是比较精通了吧!+ ]  Y5 s3 Y5 A; z6 U' z

* V) O# q- h& S+ H" I# F对与那些著作里提到的30几中曲线,上个月,我也是已经全部收纳成功:)
! J, v6 \' A, c$ O4 F5 j- K5 Z# J自己做个程序,自己用!0 T( Y6 t* M8 y3 E
就像你在其他贴中说的一样,自己建的数学模型,自己写的代码,用的放心!+ g5 U" g" i/ a
出错,立马查得到!
! `1 b7 v9 E7 s4 v& r哈哈!9 v# J1 P5 q1 Q5 _# o: G9 T
发表于 2015-11-7 17:38:47 | 显示全部楼层
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的
发表于 2015-11-9 21:27:09 | 显示全部楼层
pacelife 发表于 2015-11-7 17:38 % d, l: Z/ b( f0 I2 j! \; y6 m# v
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的
# Y& l  K$ Z. L) Z4 a! n
三维弧面。。。想当初2011年接触分度凸轮indexing的时候,没有看过正规的书籍,就凭网上的几篇论文,硬着头皮去研究,做INDEXING的设计程序,影响中程序做到了可以展开到平面的曲线部分,剩下只能通过手工包覆到凸轮曲面去生成槽,不过还不是弧面,没有读书多可怕,当时真的是犀利糊涂的,呵呵,不过现在也忘记了,有空等我手头上的事处理完,可以去完成我的那部分了
0 n$ A" M, Y- B9 S! E: D, K! \
发表于 2015-11-12 18:01:42 | 显示全部楼层
问楼主一个问题,里面的公式有自己推导过吗?我今天自己推了一下,发现有一个地方,为什么是 -3/8beta 和 1/2beta,而不是-3/8beta 和 3/8beta, cam design hand book,第63页。具体请见附件!
+ Z/ S! b+ M6 H3 F, y

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2025-9-19 08:50 , Processed in 0.074372 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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