找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 13835|回复: 21

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

[复制链接]
发表于 2014-12-20 21:13:57 | 显示全部楼层 |阅读模式
目的:设计一个平面凸轮的外轮廓# `' i+ I. V( ~" R+ |
如下图,从动件为滚针轴承,带导轨,需要确定基圆直径,和升程曲线。
0 ]' C$ _. U( G+ e2 R5 H. Z7 q(参考书籍:凸轮算法,80年代的国产货,我也不知道书名;另一本,英文:cam design handbook)
6 t2 D. T& h2 Z5 y5 n& M. B" \+ F$ f' N% K, J; A* ~

# o' ^1 H, K) z  i- A  n凸轮升程曲线要求运动尽可能平滑,就是加速度平滑,这样电机寿命长,当前比较好的是7段组合式加速度曲线(参考书1),如图,我们知道总升程h,总角度,需要通过计算得出每一段的加速度,速度,和行程(升程)的表达式,进而计算并绘制凸轮外轮廓。5 b' O1 S+ m8 I; l! M+ B. }
# V3 W6 h. q/ |9 y# {6 m8 z
公式如下
6 `! _. b$ s! d' `3 O' m" |1 _0 g. b  x
因为是举升,重力向下,我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多
5 d8 r. U1 I6 I7 c
- D4 H  g* x) j9 V3 Q于是我们需要一个程序,输入角度和升程,以及加减速段的比值,输出每个角度对应的升程数值;0 J! X0 R+ U. q/ ~- r' I2 |
部分程序如下(MATLAB):7 u; i! ^9 k0 }/ j
rb=45;rt=31;e=0;h=85;
% L3 S. P! t0 Q4 A%  推程运动角;远休止角;回程运动角;近休止角;推程许用压力角;凸轮转速% i! T3 n$ D4 _$ q
ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60;5 q+ |) T) f8 V( z
%  角度和弧度转换系数;机构尺度  O4 o7 J* U" x2 J" e/ M, X, V2 W
hd=pi/180;du=180/pi;se=sqrt(rb^2-e^2);9 C: g" F5 D% z! S
w=n*2*pi/60; omega=w*du;         % 凸轮角速度(°/s)
, P8 \4 T, K2 v3 S  vp=3; % 加速段角度和减速段角度比值$ y9 m4 l8 e2 }* n& h0 F) @- I8 i$ S
for f=1:ft
! R* ?( F3 x! e7 K$ A' w    if (0<=f&&f<=1/4*p/(1+p)*ft)
0 y: ?. A/ P- X        %s(f)=0.09724613*h*(4*f/ft-1/pi*sin(4*pi*f/ft));sxs=s(f);   ) k: y: l; i+ x
        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);
( T+ {3 s/ i* X: G2 [4 }        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);6 Q& l3 [1 r& X8 \
        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);   ) e  T1 G. o3 \5 Y% |* n7 e
    end
# o2 M: m1 R- S) g0 k  q- V' [    if (1/4*p/(1+p)*ft<f&&f<=3/4*p/(1+p)*ft)4 f# q$ f4 o( z3 }% a$ h. Z3 n
        %s(f)=(p/(1+p)*h)*(2.444016188*(f/ft)^2-0.22203094*f/ft+0.00723406);sxs=s(f);
% u5 ?6 \& d- M        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);* _* ^5 ?! [% \. r
        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);! g! N. @6 w/ x! u
        d2s(f)=4.888124*(2*p/(1+p)*h)/(2*p/(1+p)*ft)^2;sxd2s=d2s(f);   
5 T4 z! D! ~5 z4 w. o) o5 A    end$ X% }9 }( y& Y+ B% r% F$ G6 r
    if (3/4*p/(1+p)*ft<f&&f<=4/4*p/(1+p)*ft)# S0 e) t* I; n- n. t" b' p! q' i0 J3 a' W
        %s(f)=(p/(1+p)*h)*(1.6110155*f/ft-0.0309544*sin(4*pi*f/ft)-0.3055077);sxs=s(f);: S0 Z! v- W0 z2 P
        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);
& J2 }! v& P  s" h- 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);
' R: T" ~* g0 N  ^        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);   
9 X/ b% T; N$ {6 j9 i     end
+ g/ k2 S' {! F) }: c1 }$ ]上面的程序最终会计算出,在1-155度中,每一度变化对应的升程数值s;速度ds;加速度d2s。
# i$ l( M: L; ], V6 Y2 U+ D最终效果(把计算的点给autocad画图)我不用担心睡不着觉了。
/ I( M3 a. j6 j8 |
7 N" l1 Q1 w% d
; x  b8 L. k- f, l( {3 D2 O有兴趣的可以一起聊这个曲线。
! g2 ?9 d- T; ]4 J9 J' c附书1的部分目录,可以帮助找到同一本书: Y, k# @6 w' m. u1 j* e
" Z  @) G  M9 \& Q

- U9 ?- S* g! y* R! C! D. B3 M4 X8 T! C$ ]- J9 u' J/ }
7 S6 U; h  Z% r# G+ y2 g$ {- H
- }2 z- {( X$ a7 [

. e% T6 ]: a3 i6 O

本帖子中包含更多资源

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

×

本帖被以下淘专辑推荐:

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

使用道具 举报

发表于 2014-12-20 23:45:33 | 显示全部楼层
”当前比较好的是7段组合式加速度曲线“; e% I" }4 g2 h. {; S! C- B
% ]7 c* [4 y1 Q$ l
为何是这种曲线?1 ]% u1 }6 R- G" V+ k2 W' y& b

' s7 c# C, i+ q我喜欢用正弦余弦曲线,我的速度比较慢

点评

因为中间一段加速度为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* i! N0 K7 O1 {- I/ X1 b- V
9 E+ Y0 c8 f: r7 S哈哈,大侠用的是标准的修正梯形再变形。1 H- b1 y+ S4 a7 T, M* X  O1 Y
按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。0 Z8 N; M( B. o8 K
“p=3; % 加速段角度和减速段角度比值”。表述不严谨,会误解。+ U8 D# g5 z( L0 \4 a4 q
因为推程和回程都有加速段和减速段。
7 m4 }5 u. K( s* |" h  M& W& Y8 C4 b5 z/ U
实际上,“加速度是时间的函数”这样理解更合适。
$ x. z' @6 x- l- _: }; |0 o为了达到“我们希望加速段比较长,减速段比较短,就是加速段的角度比减速段的多;”这一目的
" x, ^! J- F' j3 z7 J3 @. K设定一个系数=p/(1+p),那么:, z* D$ U2 n! v, p0 n! q, J
推程:用的是1/4 *系数 ,  3/4*系数 ,   1*系数。
; f4 Y5 r1 I, s6 M9 m% {+ I回程:没下载大侠的程序,由于上面的误解,不好妄下结论。
- x- Z$ F! R( n/ w& x+ \! J5 N按我的理解,推程取一系列T值,回程再取一系列T值,完全可以实现LZ的设计目的。
5 ^2 a; s5 q9 ~5 s, w' s, L$ j, \1 i% k) Q( s
另外,大侠的程序好像没有体现文中所说“7段组合”。不知大侠能否把各曲线补齐。
' _/ i% Z8 Y9 X! }9 j( e7 m要求过分了点,哈哈6 B3 d% ]; {" H& g8 r2 C
给个建议,不等式两边可以约去“*p/(1+p)*ft”,把“f&&f”改成时间T,不要用角度。这样,你的程序将有极大的通用性。
+ o8 ]: I& Y* j* w: I  }3 f( x. F7 {$ i
对应的中文目录
: G' l& [- |6 v/ x% ?! C/ }; H

本帖子中包含更多资源

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

×

点评

你说的很对,凸轮一般计算用的是角度和升程的关系,但其实电机一般转速恒定,所以二者是通用的  发表于 2014-12-23 07:45
发表于 2014-12-25 09:07:16 | 显示全部楼层
感谢分享啊
发表于 2015-11-5 19:55:26 | 显示全部楼层
本帖最后由 georgemcu 于 2015-11-5 19:58 编辑
  ^1 }3 N* T+ v; D5 u
hoot6335 发表于 2014-12-21 18:52 3 Y: v& x! o  S" l1 g
哈哈,大侠用的是标准的修正梯形再变形。8 q2 X  r9 Z( n* B$ O) b( b9 q" _
按照机构的设定“ft=155;fs=20;fh=155;fx=30;alpha_p=35;n=60”。 ...
) z* x% @  T  m
Cam design handbook,2011年看过,也受益匪浅。
" U; V* [4 t/ \; ]' [就是由于看了这本书,让我在那一年完成自己的第一版凸轮设计程序,在11年公司工作需要用的凸轮都可以完成!& I6 v  E! G. X$ {4 _

  v! z3 U! Q4 d: d7 ~5 d; l8 J- e上个月由于遇到了凸轮设计的新问题,所以又重新阅读了多本凸轮著作。$ n+ n7 k1 F/ T/ A6 M& G6 {
不过对凸轮优化,感觉快要抓住了可以还是没有抓住。) R: G4 l6 E% M" m! C
意思就是没有透彻。: `! m- w6 e, @, z/ b: ]+ G' x" [
hoot前辈一个对凸轮曲线的优化应该算是比较精通了吧!
- u+ d! C3 Z7 K" f3 w. F# N
+ P9 E  Y; d. E, O% C& i对与那些著作里提到的30几中曲线,上个月,我也是已经全部收纳成功:)
3 p# A+ e2 t2 D1 d5 {自己做个程序,自己用!! J" E4 [% A" h
就像你在其他贴中说的一样,自己建的数学模型,自己写的代码,用的放心!7 W7 y& [; c' [) N3 s% E, q% b
出错,立马查得到!
1 N* u9 A% M6 U! O- c. g% D: D哈哈!% W2 @: I: s( u) P3 M7 {: |3 G, G7 R
发表于 2015-11-7 17:38:47 | 显示全部楼层
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的
发表于 2015-11-9 21:27:09 | 显示全部楼层
pacelife 发表于 2015-11-7 17:38 2 f+ P; d, F# n5 J
盘式凸轮算是比较简单的了,而且也有现成的软件可以使用,复杂的是三维凸轮,这个才是考验功底的

, u/ u" d1 L' {, W6 \- ?# {  B三维弧面。。。想当初2011年接触分度凸轮indexing的时候,没有看过正规的书籍,就凭网上的几篇论文,硬着头皮去研究,做INDEXING的设计程序,影响中程序做到了可以展开到平面的曲线部分,剩下只能通过手工包覆到凸轮曲面去生成槽,不过还不是弧面,没有读书多可怕,当时真的是犀利糊涂的,呵呵,不过现在也忘记了,有空等我手头上的事处理完,可以去完成我的那部分了
. g& i4 M7 Z, |* X- f
发表于 2015-11-12 18:01:42 | 显示全部楼层
问楼主一个问题,里面的公式有自己推导过吗?我今天自己推了一下,发现有一个地方,为什么是 -3/8beta 和 1/2beta,而不是-3/8beta 和 3/8beta, cam design hand book,第63页。具体请见附件!- F0 _* J+ k  n* p

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2025-7-3 11:54 , Processed in 0.072719 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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