机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 13522|回复: 21

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

[复制链接]
发表于 2014-12-20 21:13:57 | 显示全部楼层 |阅读模式
目的:设计一个平面凸轮的外轮廓; q( T+ s1 ^& h. |
如下图,从动件为滚针轴承,带导轨,需要确定基圆直径,和升程曲线。3 [, N# }/ @$ E) T, Y- ^# c
(参考书籍:凸轮算法,80年代的国产货,我也不知道书名;另一本,英文:cam design handbook). c1 T1 V4 i& L/ o8 n# I8 J% G( d9 J; @

% h1 B9 E/ Z: {7 P5 W8 K9 C3 W% v$ S0 d  j3 \
凸轮升程曲线要求运动尽可能平滑,就是加速度平滑,这样电机寿命长,当前比较好的是7段组合式加速度曲线(参考书1),如图,我们知道总升程h,总角度,需要通过计算得出每一段的加速度,速度,和行程(升程)的表达式,进而计算并绘制凸轮外轮廓。
8 |( E5 I% F$ m- N$ e% {. f$ w+ U  `& D0 W: V- p( `% m9 n0 n2 _
公式如下3 z: r* |& O6 O6 U/ ^
& P+ U# y1 n( L9 K% s
因为是举升,重力向下,我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多
3 |; x! ?. P7 O4 |7 C) ]) r! b. j: e! S6 G& G. H5 [
于是我们需要一个程序,输入角度和升程,以及加减速段的比值,输出每个角度对应的升程数值;0 J6 d1 c2 V: s4 f
部分程序如下(MATLAB):
$ ?/ |; }' }. |5 Urb=45;rt=31;e=0;h=85;- }% w3 a6 T9 M2 j% v
%  推程运动角;远休止角;回程运动角;近休止角;推程许用压力角;凸轮转速
$ E6 e: ]& U' P; O. d# G! L" Wft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60;* n6 i* p, {* ^& J. g1 y
%  角度和弧度转换系数;机构尺度, i& \) S# u" O3 l" z( k* S
hd=pi/180;du=180/pi;se=sqrt(rb^2-e^2);3 A/ p1 @/ u! I- n$ X
w=n*2*pi/60; omega=w*du;         % 凸轮角速度(°/s)
$ j( P# [  V6 _3 I: Fp=3; % 加速段角度和减速段角度比值+ q* R6 n, s) {7 \* E
for f=1:ft
/ U! L8 E: F) K& z8 K' |1 e! \    if (0<=f&&f<=1/4*p/(1+p)*ft)( s1 X! a2 Z; T# z7 o( y& ]
        %s(f)=0.09724613*h*(4*f/ft-1/pi*sin(4*pi*f/ft));sxs=s(f);   ; j% S( r3 \8 g! o3 m8 k6 ]
        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);
0 X3 Q: f3 |! o        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);- T0 s5 L1 g3 c/ I) g/ o6 c& @
        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);   + n/ d7 R) t8 s& Q( ^6 i  ?
    end; a" R( `5 c' V$ a
    if (1/4*p/(1+p)*ft<f&&f<=3/4*p/(1+p)*ft)
. Z' h. A+ ^) J0 \5 l+ e$ e% _$ k        %s(f)=(p/(1+p)*h)*(2.444016188*(f/ft)^2-0.22203094*f/ft+0.00723406);sxs=s(f);! l/ v5 U  r' y
        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);0 D# t- r# N- v6 }& j
        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);
8 R* l. s" ^/ V8 a+ g% ^! R        d2s(f)=4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2;sxd2s=d2s(f);   6 @9 N9 l: h1 E8 {0 y& \
    end
: O# B5 j/ X6 J# B    if (3/4*p/(1+p)*ft<f&&f<=4/4*p/(1+p)*ft)5 \2 I2 I! y2 ^! X9 i" M& |! v
        %s(f)=(p/(1+p)*h)*(1.6110155*f/ft-0.0309544*sin(4*pi*f/ft)-0.3055077);sxs=s(f);. n3 B: W2 n$ _& _4 G- @0 n" u6 \
        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);
; r' I) L+ X7 z0 l) j. Z        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);
  V* c; }: V2 P+ f/ O        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);   , M0 n/ v& X' w  M: ?6 o
     end0 {' X& c/ h- W7 Z5 O8 d* |9 }# I
上面的程序最终会计算出,在1-155度中,每一度变化对应的升程数值s;速度ds;加速度d2s。
3 O6 H/ ?) h3 b& I, Z' ]( s, @+ F最终效果(把计算的点给autocad画图)我不用担心睡不着觉了。1 P7 s$ c+ }) z# I% \- R) @
4 i- e7 h0 H) E/ P+ s
/ t$ H6 m3 `- w8 J) ]
有兴趣的可以一起聊这个曲线。! D& C4 _9 ~. Z  f! F, b* _
附书1的部分目录,可以帮助找到同一本书3 @+ G; ^, q( |9 s' X, g

* w2 \; o/ d. `6 v% ]( R1 M% _3 E: e  F* s5 W" B9 R
/ m  Z( J6 Y$ @# W  I
. t, C4 |4 L9 I
: J* W: A9 \* O3 `* L2 S( r/ l

3 N1 i9 z0 }" D9 m' E5 h& f

本帖子中包含更多资源

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

x

本帖被以下淘专辑推荐:

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

使用道具 举报

发表于 2014-12-20 23:45:33 | 显示全部楼层
”当前比较好的是7段组合式加速度曲线“
0 a- `6 |8 t% ^9 ]( O* c
# x1 }5 ^" t* y* L) n6 Q为何是这种曲线?3 S' u9 H3 c; `& w+ B2 t
1 f. C$ ^7 Q& T' Y- b: B" P
我喜欢用正弦余弦曲线,我的速度比较慢

点评

因为中间一段加速度为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 编辑 + p8 h# `% c! P1 K% \3 `' D
# z/ j2 i" A# W3 h2 s! v) i2 t
哈哈,大侠用的是标准的修正梯形再变形。
8 e; A, h' Y, v: M& K) E# q/ K# O按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。
. x0 G7 M5 Q' R& T! G“p=3; % 加速段角度和减速段角度比值”。表述不严谨,会误解。& y; J. v! m& a. L+ Y0 p1 B2 c
因为推程和回程都有加速段和减速段。- d* s  w* m8 A1 _6 c

# N0 t6 a6 V# V; B实际上,“加速度是时间的函数”这样理解更合适。
1 X1 ~) T9 Q$ P5 d& Z为了达到“我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多;”这一目的
! U  I4 J' B0 n6 l! a& f设定一个系数=p/(1+p),那么:
! o& g, x/ r! y4 S3 A- u推程:用的是1/4 *系数 ,  3/4*系数 ,   1*系数。) t7 s3 B6 L1 J2 |% y/ G& \
回程:没下载大侠的程序,由于上面的误解,不好妄下结论。* J) M" @2 v9 }1 j- l# k
按我的理解,推程取一系列T值,回程再取一系列T值,完全可以实现LZ的设计目的。/ L: f: `5 s0 V7 n

( B( ~0 h* a: n. B* y另外,大侠的程序好像没有体现文中所说“7段组合”。不知大侠能否把各曲线补齐。
* \: [, t1 Q' M( e5 N! H" X要求过分了点,哈哈
. s' p$ ~5 d) l) Z; E4 x+ G给个建议,不等式两边可以约去“*p/(1+p)*ft”,把“f&&f”改成时间T,不要用角度。这样,你的程序将有极大的通用性。
7 y0 X" N6 Q; i$ N
* [' i3 j  J4 [4 q% ~8 J) |! Y0 I对应的中文目录
$ }8 Z3 H: n, U- {$ C" T& Y- A

本帖子中包含更多资源

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

x

点评

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

使用道具 举报

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

使用道具 举报

发表于 2015-11-5 19:55:26 | 显示全部楼层
本帖最后由 georgemcu 于 2015-11-5 19:58 编辑
9 {$ l  n3 N6 U9 c2 M% O8 H
hoot6335 发表于 2014-12-21 18:52 7 E+ Q: m' ?6 {# A: |
哈哈,大侠用的是标准的修正梯形再变形。+ j6 e" x, a$ u% c7 E! W3 ~; |
按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。 ...
3 T$ @2 F. V  L
Cam design handbook,2011年看过,也受益匪浅。3 j6 {0 k/ K( W; v
就是由于看了这本书,让我在那一年完成自己的第一版凸轮设计程序,在11年公司工作需要用的凸轮都可以完成!
9 k3 ^$ G* Q7 K0 O4 ]+ f8 p. t: \6 \  B0 {  X: z
上个月由于遇到了凸轮设计的新问题,所以又重新阅读了多本凸轮著作。
% [! {) Y" w6 i5 F! v不过对凸轮优化,感觉快要抓住了可以还是没有抓住。, x% o8 {6 n% ?" [; f; I
意思就是没有透彻。
" ^& I- K1 t% u" \hoot前辈一个对凸轮曲线的优化应该算是比较精通了吧!5 A+ E- U" L$ f0 D
7 h0 \8 C  o: q6 ]
对与那些著作里提到的30几中曲线,上个月,我也是已经全部收纳成功:)
- }& P( ~; c2 U, h2 Y2 i5 y" x, F9 ]自己做个程序,自己用!
- c. x$ y, G7 \! ]/ r) O4 x; h; W! j就像你在其他贴中说的一样,自己建的数学模型,自己写的代码,用的放心!8 G7 k9 j" q, j3 a2 b
出错,立马查得到!& i# w% x4 ?; F; p! W: Y
哈哈!. Z# N5 [, e; w& [
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2015-11-9 21:27:09 | 显示全部楼层
pacelife 发表于 2015-11-7 17:38 ( w, Q/ y7 V% {0 ]: q' e& o
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的
$ S7 Y' E& G0 {& b7 X8 K
三维弧面。。。想当初2011年接触分度凸轮indexing的时候,没有看过正规的书籍,就凭网上的几篇论文,硬着头皮去研究,做INDEXING的设计程序,影响中程序做到了可以展开到平面的曲线部分,剩下只能通过手工包覆到凸轮曲面去生成槽,不过还不是弧面,没有读书多可怕,当时真的是犀利糊涂的,呵呵,不过现在也忘记了,有空等我手头上的事处理完,可以去完成我的那部分了, ~& `" F; R' o6 E" H
回复 支持 反对

使用道具 举报

发表于 2015-11-12 18:01:42 | 显示全部楼层
问楼主一个问题,里面的公式有自己推导过吗?我今天自己推了一下,发现有一个地方,为什么是 -3/8beta 和 1/2beta,而不是-3/8beta 和 3/8beta, cam design hand book,第63页。具体请见附件!
$ Z1 H: t& x5 y# q5 L2 x/ S/ M2 y

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-1 19:05 , Processed in 0.065974 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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