找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 816|回复: 0

小模数齿轮滚刀CAD系统

[复制链接]
发表于 2010-9-13 22:24:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

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

×

1 引言

3 w2 h3 E! G C( R7 C: ]# `/ _
由于小模数-齿轮滚刀的模数小(m≤1mm)、滚刀尺寸相对较小且精度要求高,因而其设计有别于普通齿轮滚刀的设计,其结构具有以下特点:①小模数剃前齿轮滚刀由于凸角很小难以加工,因此需采用小压力角,以非均匀留剃形式减少磨损;②滚刀采用整体式结构,而不是镶齿或装配式结构;③无需键槽;④容屑槽采用直槽型式。
2 s: H7 B/ G( j% b+ ?, L1 W7 i
采用传统方法设计小模数齿轮滚刀时计算量和绘图量大,其中还有许多繁琐的重复性工作。而将以ObjectARX的应用工具为载体、用VC++编写对话框以及使用数据库管理技术开发的 AutoCAD 系统用于小模数齿轮滚刀的设计,可大大简化小模数齿轮滚刀的设计计算,并可自动校核铲背曲线。 7 Y# F4 }7 u: t% L$ ?4 F2 G

2 参数化设计的特点

+ A' j% D4 A7 ?5 P
AutoCAD 是一种开放体系结构的应用程序,用户可以利用它进行定制和编程,是参数化设计常用的开发平台,其主要的开发系统有AutoLISP、ADS及 ObjectARX等。AutoLISP是CAD早期版本的编程语言,是一种解释性编程语言,不必编译,通俗易懂,但缺点是运行速度慢;由C 语言和提供给开发者用来创建应用程序的C程序库组成的ADS(AutoCAD Development System)随着AutoCAD R11被我们所认知,现已以ADSRX 的形式被集成到ARX中。ObjectARX应用程序是一个动态链接库(DLL),其运行速度快,能共享AutoCAD的地址空间并可直接调用 AutoCAD的函数,同时能提供一个面向对象的C++应用程序设计接口,是AutoCAD推出的新一代二次开发工具。因此,本系统程序采用ARX应用程序进行参数化设计,其程序结构具有以下特点: ; ~* X7 X" |/ j1 O* N
    . @7 h" Q$ C6 A2 |7 Y$ w/ O
  1. 利用ARX 开发-工具,可方便地使用MFC 开发ObjectARX 应用程序;提供了AutoCAD内部实体和其他对象的数据结构,使应用程序和AutoCAD完全结合在一起。
  2. 4 ]1 Y( P* [( }) o
  3. ObjectARX环境提供了一组类,使开发者能够创建基于MFC的用户界面,其外观和内建与AutoCAD的用户界面完全相同,因此具有良好的人机对话功能。
4 g! M, n0 ^% E" J, ~0 X5 @$ e

3 滚刀外径参数优化及铲磨可能性校核

8 N" D2 P: d& s! s/ I* H
    & {. _# j; Z$ m
  1. 滚刀外径参数优化 6 i- A5 W$ g. c* B/ M
    通常,滚刀外径可按式(1)计算。 ! N5 \% r* M+ y: R0 y8 Q; j" W" h0 @% p # h) j" k4 n* F3 S/ P i+ A) f% F3 |0 a) r) J3 Y u9 F( \0 f* H* c1 _& Y/ U a8 ~2 m, [. @
    Ded=S02 sinafn/(4?cos2bf (1)
    式中:?——被切齿轮齿面波度(?m)
    : g# x' r5 U: t2 j f& ^5 z3 i
    S0——工件每转一转时滚刀沿工件轴向的进给量(mm/n)
    ) q1 s( ~) y- q
    afn——滚刀分度圆法向齿形角
    7 t- d+ O* n) Y
    bf——被切齿轮分度圆上的螺旋角
    6 F3 ? n) t+ @! j2 E: G( m _& X4 h4 Q+ |0 e' d |7 ?' L8 T( S& }! K' Q, r# W4 [% J" g" ^
    4 c6 I3 k' X- t4 H5 x- Y


    图1 滚刀外径对齿轮齿面波度的影响afn= 20°,bf= 15°)

    $ E, v1 |, Q; U5 h0 h
    由式(1)可得被切齿轮齿面波度与滚刀外径的关系曲线(见图1)。
    # {, {% D; Q5 M- a* \1 N
    由图1可知,随着滚刀外径的增大,被切齿轮沿齿向表面的波度将逐渐减小。故对精度要求高的齿轮,应选外径较大的滚刀。但外径的增大应有度,不宜过大:一方面,在加工小模数齿轮时,轴向进给量一般不大于0.5mm/r,过分增大滚刀外径对减少齿面波度无显著效果;另一方面,当滚刀外径大于50mm时,外径对波度的影响已经很小。因而外径取值宜控制在25~63mmm 之间。
    2 ~& G* b- P2 ^2 J7 Y
    外径初始化程序如下:
    E$ C/ `; G# \4 F8 @
    void InitGunDao { ……
    & U6 U+ O E( x$ a; k
    (if m fmodule > 0 && m fmodule <= 0.15)m_uouterdia = 25;
    : o5 g7 ?7 v) ?0 W( b0 c! r8 T) J/ D
    else (if m fmodule > 0.15 && m fmodule <= 0.4)m_uouterdia = 32;
    5 h0 c' f9 ~. F6 p V
    else (if m fmodule > 0.4 && m fmodule <= 0.6)m_uouterdia= 40;
    " c3 o1 R+ T" J7 D j
    else (if m fmodule > 0.6 && m fmodule <= 0.8)m_uouterdia= 50;
    3 q( X8 g7 `# Z8 s
    else(m fmodule > 0.8 && m fmodule <= 1.0)m_uouterdia= 63;
    . ^5 x1 {9 U) Q0 \% J
    ……}
    3 z/ T( N2 K7 ] # [: ^6 a) V$ I- R/ C3 `9 i( |$ ]8 N0 ~8 w" ]" u) x% h; {* q. C$ ]0 \* n( D! M/ t
    6 O0 L' q% ~. V8 `' [; f# Q% Y


    图2 铲磨校核流程

  2. 6 ] M" }5 J9 K( w- r
  3. 铲磨可能性校核 7 t) B% W+ J/ L+ J1 {: o: w# l
    用传统方法设计滚刀时,通常采用人工作图法对于滚刀铲磨可能性进行判别,其准确性无法保证,常导致铲磨滚刀轮齿齿背时,砂轮和下一个齿发生干涉。因此在小模数齿轮滚刀CAD 系统中需要编制自动校核铲磨可能性的程序,其流程如图2 所示。使用时,通过对话框交互修改参数,完成铲磨校核,具体程序如下:
    * {7 Z, O3 i6 w. k2 V1 b3 r
    void Check { ……
    ) o7 A/ {1 ~! Y* j" w! {- M+ a5 |
    BOOL flag = TRUE;
    % @5 O& m8 v5 Q$ j, Z% N5 K
    while(flag) { flag = FALSE;
    8 G% E2 e8 _( ~6 `# a7 i
    for(len = 4/7*len1;len<= 6/7*len1;len + = 1/14*len1) / / 确定铲背曲线与砂轮的交点
    7 O6 k: e" Z5 e+ {! o1 I
    {
    0 @' d0 E: G6 \ q, [0 I
    …… . / / 作图以准备校核
    1 o( G' U, `. T$ W0 e3 C
    (if dist1>dist2)break;} / / 有干涉吗?若无干涉,跳出循环
    # C6 {1 Q) ]2 a. \" ^. ?
    (if dist1 <= dist2){
    % I# L- d. u4 H3 |% G3 K. p
    $ b' r4 ~: \) j/ L4 _& \" X
    CanShuDlg. Domode(l); / / 对话框交互修改铲背量K、外径Ded
    1 L) P( N6 J) @2 b* w5 n
    flag = TRUE;}} ……}

, w" A. |7 H0 T) L( ] ) o, J i) h" b8 J$ i5 b/ z4 I0 ^% r5 w0 t6 A1 I4 }4 @1 w
, c- R5 r7 |; ]$ s


图3 面向对象的滚刀CAD 系统信息模型

7 N- w' l4 C$ b" W5 y

4 小模数齿轮滚刀CAD程序结构分析

. P( a+ f3 b5 b" t
滚刀CAD系统由刀具图纸标题栏参数输入、刀具选择、被切齿轮参数输入、刀具参数输入等模块组成。通过面向对象的分析方法对滚刀CAD系统进行分析,建立如图3 所示的信息模型。在此基础上,再采用面向对象的程序设计语言对对象和对象间的关系进行分析。
$ ^" k0 Y. A5 V/ q: Z/ E4 z
为便于拓展齿轮刀具设计的通用性,通过归纳,将齿轮刀具的共性作为基类。此基类依附于各具体齿轮刀具,不必有具体实体,故可设为抽象类。其部分属性如下所示:
: P) e+ R. `, r: s* w
class Cutter{
9 }( U' X* z1 q+ ^
 
% d% N0 H( m% ~* c. q
2 q8 M' r* t1 Y- R
string Cutter_ID; / / 刀具编号
8 s0 l) g& L+ {) B( h
0 A! _0 n1 H1 v. H, k
string CutterName; / / 刀具名称
+ w% P: J0 s$ {% p7 l( e
" T2 ^! V S4 b( D( u/ x
string Material; / / 刀具材质
8 U& U3 |" h+ U t
7 y8 n' v6 _8 N% e$ B
string Product_ID; / / 对应产品编号
' F1 g! y* ^9 L
- ~7 H) P9 Q' E A' Y
string Designer; / / 设计者
: O5 v% k6 J% T5 }. ~% K
, T+ }" G# x! r/ ~ m
string DesignDate / / 设计日期
# B. h8 G8 a0 P4 g2 |( O
……
6 v. t% w$ _1 X! E; E6 N+ d2 a; j
};
; [7 ]) G4 Z; X; M6 y: W1 j) e. S
滚刀类为刀具类的派生类,自动继承了刀具的一切属性,同时又具有模数、齿数、头数、前角、后角等独有属性,其部分属性如下:
) p- O; W$ j- x# E0 \1 q
class GunDao :public Cutter{
, k7 c+ H. z; t" J1 @, k5 K
 
0 q0 O/ m- @& u& ] g
/ D; F; N ?0 L; l- A/ o
float GD_Module; / / 滚刀模数
0 w$ D3 _3 Z* [7 h7 u- D$ }6 p
8 s$ m9 S4 s, n" h1 b( H
UINT GD_Number; / / 滚刀齿数
6 m* O0 v/ X! D. [) x
! ^2 {; i v/ u9 y' P" O
UINT GD_TouShu; / / 滚刀头数
! S$ W3 ^3 |* z: p V
) @6 @$ a- p8 ?
……
/ A! ^/ }) ^; J( C3 S- M
public:
- n) G" i. p+ O: u( X
) ^+ g& U; A& P" V/ ?3 V9 g
void OnCalculation();
! x7 T$ O+ M2 U
# v( P- ]! `& n$ k' l% c& x- ~; O
void OnDraw();
5 }: H7 P; U$ [9 s$ r8 ]
};
: ^5 g5 p; |" ~' q9 H4 g) `6 u8 ]
加工机床和工具含有若干具有内在联系的数据项,将其归纳为一种结构体,说明滚刀加工的一些基本属性,以便在滚刀类中定义:
- H0 s% ]0 Q5 x
struct MACHINE{
: p5 k9 p0 ~: b8 ^1 p) U
1 ?7 y, r5 ~6 c; @- a0 `( l( E" n' P
string machine_ID; / / 机床型号
7 O, v. G/ a/ b; s- T
8 N* ?( [/ ^2 u# m. T8 d
string machine_name; / / 机床名称
3 E0 q3 g6 L( K9 S& B" O
6 m) M. N' z( Q, Q9 a9 a" x2 K
string machine_cutter_ID; / / 加工刀具编号
- Y1 E% q) x; X4 P# q
……
- J3 u0 ]: Z" b1 O
}
1 ], b+ t7 }- Q8 n
通过建立以上类的对象及定义结构体,便可着手按如下步骤编制软件: 5 X5 D* o ] u. m9 h" E
    $ I" O; i! ?! H4 B+ a% c# e& H
  1. 定义对象。
  2. $ N( q/ @1 Y% M/ g
  3. 定义计算函数: 2 D, K3 v: J1 K( p( Q6 q z
    void GunDaoDlg::OnCalculation()
    ; }& ?4 D7 _1 ]+ S" D6 X( d1 J o+ w
    [UpdateData(TRUE);
    # L9 a# ^" ~" {( r7 C( ?, ^8 {
    , L' Z9 {. ]5 e8 f! H
    dlg.m_fgdpmodule = m_fgearmodule;
    & h# Z; l" S q9 s4 y
    5 L3 d5 p- t8 z, k' c8 @0 n* e; ]
    dlg.m_fgdpyalijiao = m_fgearyalijiao;
    . V* c3 m( \# d. ^- a& c @5 X' N2 t
    1 l/ W- Y( x: q ?2 R O+ T& |
    dlg.m dgdpluojiao =(180*FengYuanLouJiao Ca(l)/ PI);
    ( K5 b) p/ ]$ s0 {. w" a
    S5 S4 W8 Z! u0 m' [
    ……
    9 h/ \1 x4 `# I
    1 @* ~! \# y8 w0 h/ k# \- U
    dlg.m_fgdpzhouchixingjiao = m_fgearyalijiao;
    , D! J7 f F8 Y% t, j* ~
    9 w* |8 X& n M$ ~
    dlg.m_dgdpzhouchiju = ZhouXiangChiJu Ca(l);
    0 [" H: u9 ?1 H
    ) K' c6 C( E- _5 K& V
    dlg.m_dgdpzhouchihou = ZhouXiangChiHou Ca(l);
    0 O# A b4 b3 n& X5 _" I
    g& K. ~$ m+ U
    int ret = dlg.DoModa(l);
    . T* z, z! G: X r) J
    }
  4. ' O1 q) A' y! p- F O
  5. 消息链接。
  6. . [ \4 l6 ]1 z% I' E$ x: y6 G
  7. 在Object ARX环境中调用Object ARX全局函数编写绘图函数。
) h/ F, m8 @( T

5 结语

3 ^6 Z# I! f( G3 g1 ?
小模数齿轮滚刀AutoCAD系统采用全参数化设计,实现了参数优化及齿背曲线自动校核,可显著提高设计的科学性和可靠性;同时对表面粗糙度、形位公差等可直接进行插入标注,大大减少了工作量,提高了设计效率。  
/ n0 e3 h& ^8 v& y, e! J3 Z
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

磨削论坛 微社区

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2025-7-10 22:16 , Processed in 0.137342 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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