找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 821|回复: 0

小模数齿轮滚刀CAD系统

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

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

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

×

1 引言

y% V$ {3 y* b5 ^7 L
由于小模数-齿轮滚刀的模数小(m≤1mm)、滚刀尺寸相对较小且精度要求高,因而其设计有别于普通齿轮滚刀的设计,其结构具有以下特点:①小模数剃前齿轮滚刀由于凸角很小难以加工,因此需采用小压力角,以非均匀留剃形式减少磨损;②滚刀采用整体式结构,而不是镶齿或装配式结构;③无需键槽;④容屑槽采用直槽型式。
5 i* I$ o) F7 l" m
采用传统方法设计小模数齿轮滚刀时计算量和绘图量大,其中还有许多繁琐的重复性工作。而将以ObjectARX的应用工具为载体、用VC++编写对话框以及使用数据库管理技术开发的 AutoCAD 系统用于小模数齿轮滚刀的设计,可大大简化小模数齿轮滚刀的设计计算,并可自动校核铲背曲线。 . m2 z( g+ S/ }9 H$ B

2 参数化设计的特点

x. s5 D4 P8 f. a/ D0 b% F0 o
AutoCAD 是一种开放体系结构的应用程序,用户可以利用它进行定制和编程,是参数化设计常用的开发平台,其主要的开发系统有AutoLISP、ADS及 ObjectARX等。AutoLISP是CAD早期版本的编程语言,是一种解释性编程语言,不必编译,通俗易懂,但缺点是运行速度慢;由C 语言和提供给开发者用来创建应用程序的C程序库组成的ADS(AutoCAD Development System)随着AutoCAD R11被我们所认知,现已以ADSRX 的形式被集成到ARX中。ObjectARX应用程序是一个动态链接库(DLL),其运行速度快,能共享AutoCAD的地址空间并可直接调用 AutoCAD的函数,同时能提供一个面向对象的C++应用程序设计接口,是AutoCAD推出的新一代二次开发工具。因此,本系统程序采用ARX应用程序进行参数化设计,其程序结构具有以下特点: ' \# }& Z- ~) z0 ~8 Q
    , n. ~/ h% B$ v) I
  1. 利用ARX 开发-工具,可方便地使用MFC 开发ObjectARX 应用程序;提供了AutoCAD内部实体和其他对象的数据结构,使应用程序和AutoCAD完全结合在一起。
  2. ( N' Y( Q4 E8 H8 B% q) G2 }- S9 K
  3. ObjectARX环境提供了一组类,使开发者能够创建基于MFC的用户界面,其外观和内建与AutoCAD的用户界面完全相同,因此具有良好的人机对话功能。
7 o4 i/ T2 q+ p/ L

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

: c) U0 o$ ]% G2 [" H; W3 ?; o
    ' [; U- [$ e! @$ c
  1. 滚刀外径参数优化 5 Q4 Y0 o2 `( J6 y
    通常,滚刀外径可按式(1)计算。 : G* x$ i2 l$ p2 Q+ J' v9 y: ]/ B' m/ L9 {4 P3 a4 F- ?; u' e7 q: i1 X) v; L4 N3 u9 @* J$ B- z. e! c, k/ ]( E) C# \" q4 @" D
    Ded=S02 sinafn/(4?cos2bf (1)
    式中:?——被切齿轮齿面波度(?m)
    - w, h% [" B$ X0 u g3 E
    S0——工件每转一转时滚刀沿工件轴向的进给量(mm/n)
    * N, `3 n0 J' |1 y% v# l# Y1 `
    afn——滚刀分度圆法向齿形角
    3 N8 a, a; x& [/ f" n ^: T
    bf——被切齿轮分度圆上的螺旋角
    # i9 I$ t4 x/ ?4 U2 c9 o' F. P$ r% Y: \! X: d' R0 i; b" ?7 e1 ~* X& D" f V4 v4 x) ]/ q! F& W
    1 z# [6 i# W4 Q9 P$ c


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

    4 `" n- |% ]. Y% Z# p
    由式(1)可得被切齿轮齿面波度与滚刀外径的关系曲线(见图1)。
    2 M5 V1 Z3 {: k0 l' L3 D* M
    由图1可知,随着滚刀外径的增大,被切齿轮沿齿向表面的波度将逐渐减小。故对精度要求高的齿轮,应选外径较大的滚刀。但外径的增大应有度,不宜过大:一方面,在加工小模数齿轮时,轴向进给量一般不大于0.5mm/r,过分增大滚刀外径对减少齿面波度无显著效果;另一方面,当滚刀外径大于50mm时,外径对波度的影响已经很小。因而外径取值宜控制在25~63mmm 之间。
    5 l7 q" N/ H0 Q( o
    外径初始化程序如下:
    4 q5 b0 Q/ I/ i
    void InitGunDao { ……
    2 R7 \5 i& P! D. c
    (if m fmodule > 0 && m fmodule <= 0.15)m_uouterdia = 25;
    / ~) D. w; A" A" c, Z* B9 G9 f
    else (if m fmodule > 0.15 && m fmodule <= 0.4)m_uouterdia = 32;
    ! X! Q1 |: c/ N: L) t1 z
    else (if m fmodule > 0.4 && m fmodule <= 0.6)m_uouterdia= 40;
    4 h6 E; j* \2 k4 l% [
    else (if m fmodule > 0.6 && m fmodule <= 0.8)m_uouterdia= 50;
    8 W/ M8 V5 D g0 U' h4 S" w3 H6 r# L
    else(m fmodule > 0.8 && m fmodule <= 1.0)m_uouterdia= 63;
    , k1 ~4 r% v+ Y! L# q6 l6 i. z ]2 M
    ……}
    + E& U5 i& k( ? " D7 ~: _+ h/ }0 O& F% `+ r6 ~, y) e% i( {. w% Z' S- M2 _6 }' a
    1 E8 L- C& u3 d. W( ^2 _


    图2 铲磨校核流程

  2. - }0 f5 z. `% u% I3 e, r; Z
  3. 铲磨可能性校核 . F" V2 m/ R" R6 N/ c
    用传统方法设计滚刀时,通常采用人工作图法对于滚刀铲磨可能性进行判别,其准确性无法保证,常导致铲磨滚刀轮齿齿背时,砂轮和下一个齿发生干涉。因此在小模数齿轮滚刀CAD 系统中需要编制自动校核铲磨可能性的程序,其流程如图2 所示。使用时,通过对话框交互修改参数,完成铲磨校核,具体程序如下:
    # K% P- E# [7 z7 P0 M K
    void Check { ……
    ' t3 ~; I$ w+ O% k
    BOOL flag = TRUE;
    5 o" o) [8 Z5 ]! T% c- f! ~
    while(flag) { flag = FALSE;
    : V: F. q8 t8 @* k; ?" |% E% B
    for(len = 4/7*len1;len<= 6/7*len1;len + = 1/14*len1) / / 确定铲背曲线与砂轮的交点
    % D0 H6 ^; X) ^4 w
    {
    . i6 J5 e7 q; G4 B
    …… . / / 作图以准备校核
    $ ~, y5 [4 M6 V' X$ y
    (if dist1>dist2)break;} / / 有干涉吗?若无干涉,跳出循环
    + u3 j E2 _8 z% \$ E2 f" \: {
    (if dist1 <= dist2){
    : ?1 S# w% }" w
    & g+ \) J- d- S! {) i
    CanShuDlg. Domode(l); / / 对话框交互修改铲背量K、外径Ded
    6 N* q$ @+ K# b# u# U
    flag = TRUE;}} ……}

' q( m2 n) w& H, v3 T+ d v0 p/ H& W8 E; {& v- Z" b7 W/ f1 K3 O0 `. g. h- P' {/ I1 l- M0 X9 i$ q7 R
' B8 |6 K8 @, ?


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

6 Z' t/ |& U' o% N# K

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

' i: ]# n/ W# R+ \
滚刀CAD系统由刀具图纸标题栏参数输入、刀具选择、被切齿轮参数输入、刀具参数输入等模块组成。通过面向对象的分析方法对滚刀CAD系统进行分析,建立如图3 所示的信息模型。在此基础上,再采用面向对象的程序设计语言对对象和对象间的关系进行分析。
8 k0 }; z7 Y8 w# c8 T/ R b0 ^& F
为便于拓展齿轮刀具设计的通用性,通过归纳,将齿轮刀具的共性作为基类。此基类依附于各具体齿轮刀具,不必有具体实体,故可设为抽象类。其部分属性如下所示:
/ Z* d: h" s u1 R" q' E
class Cutter{
/ I& |, q; L, z+ J/ m( b
 
. K. B8 D- \3 |: O2 g4 `
# z& @4 o6 v0 R8 @; F4 ?6 ` ~% u
string Cutter_ID; / / 刀具编号
+ U$ z" X/ v- k" S8 {
% k c3 k: t3 v) L$ r0 r- T# l
string CutterName; / / 刀具名称
8 S1 G$ E0 d6 i8 s" F# y
& X$ y: E( a2 @ x* y
string Material; / / 刀具材质
2 l- w' G! g1 `1 Y& g
8 y; A- V8 q, O/ I! q, G, W& Z' K& |
string Product_ID; / / 对应产品编号
) Y; X7 q G/ r8 D2 u
; R& Z; d* F: `* m% F
string Designer; / / 设计者
- K8 I( x* s: Y1 Y+ @1 X0 O
# [ x( l' x' G0 G* c! G; r
string DesignDate / / 设计日期
5 ~& S* E0 S' `" B
……
% L0 ~0 V) D/ V: S5 I9 q
};
# N/ X6 N0 s0 F P/ @ N7 |
滚刀类为刀具类的派生类,自动继承了刀具的一切属性,同时又具有模数、齿数、头数、前角、后角等独有属性,其部分属性如下:
" q. ?, R; m( n" s
class GunDao :public Cutter{
: w- U. e+ A! Q& @
 
% ?; Z! |, m( F ^$ J
+ u5 n7 H! M$ K4 R! c8 i4 d+ r' V0 F
float GD_Module; / / 滚刀模数
. u7 O+ b X6 G% h! n7 {1 _
$ i: a) v3 c, [; _
UINT GD_Number; / / 滚刀齿数
3 D: R: |, H6 @& g" m/ F7 }6 h* h
: M$ h; h; F2 n; f3 k' `! ?
UINT GD_TouShu; / / 滚刀头数
0 U8 \0 O( s, }7 E1 u
1 `, \7 b0 F1 t
……
. W3 l* @* W, t# W
public:
" m# N4 t Y% R( s
$ O4 p4 f# g# p V1 ~9 ~' k# U
void OnCalculation();
& ]' P9 @2 z3 w" B' l y9 M6 G
/ Q! [% `+ p; i& E; x* t
void OnDraw();
; n9 A" y6 L5 e, T
};
4 C9 D6 v, p7 S
加工机床和工具含有若干具有内在联系的数据项,将其归纳为一种结构体,说明滚刀加工的一些基本属性,以便在滚刀类中定义:
9 X* C3 A- ~' _8 i9 V0 L2 U* l, |
struct MACHINE{
5 Z5 C4 R& J* Z7 C* X2 K
$ V6 z7 }$ o* C) e0 \. Z
string machine_ID; / / 机床型号
* C# Y3 N9 F f0 U$ S
1 \2 j: ~( W2 d$ V$ _9 b" ~
string machine_name; / / 机床名称
( M& P3 w. S% X4 |9 [7 o
/ I- a& g; H: k: Y$ \
string machine_cutter_ID; / / 加工刀具编号
7 u. z0 x2 |; c4 q6 Z. \3 w0 a( h
……
* ^* C4 s; y; _6 w# Z5 K! k9 m+ {
}
6 n5 Q& k' K( d- ~5 f7 z
通过建立以上类的对象及定义结构体,便可着手按如下步骤编制软件: 3 b% a7 G# Y! K% u4 \
    2 T& [/ Q+ z0 r# c3 |1 G( w
  1. 定义对象。
  2. 3 e# a( w0 @/ o( X" y1 }
  3. 定义计算函数: 1 v0 U& u" m; _! C! X0 A3 g
    void GunDaoDlg::OnCalculation()
    1 h2 ^6 J. U- b3 c: |
    [UpdateData(TRUE);
    + a) b& a& p" e, u+ K4 ?
    j. v: B. B6 _3 R
    dlg.m_fgdpmodule = m_fgearmodule;
    - W$ g* {* a7 v+ `: U
    7 E1 d! P* \5 x, I( K
    dlg.m_fgdpyalijiao = m_fgearyalijiao;
    " Z! d: B& O3 a8 u) q$ E
    2 J8 z( e3 ]6 I p+ n, R1 S
    dlg.m dgdpluojiao =(180*FengYuanLouJiao Ca(l)/ PI);
    5 d$ @! Y6 k. E: b
    ) W& @: E) T& R( R
    ……
    7 H! c5 h2 p& A4 q( P9 G
    2 l( a2 q3 c/ F, |% i/ d
    dlg.m_fgdpzhouchixingjiao = m_fgearyalijiao;
    : I( Q; {! K& K5 I& y$ n, G
    g$ ~% J; r4 }5 Y
    dlg.m_dgdpzhouchiju = ZhouXiangChiJu Ca(l);
    2 [4 d$ {6 g0 s: s
    $ u$ F5 U. @+ W& A
    dlg.m_dgdpzhouchihou = ZhouXiangChiHou Ca(l);
    . q' F2 N9 @+ d% u. B! [# m8 F9 r
    L1 w( c- J3 X1 l( ]8 w. t' I
    int ret = dlg.DoModa(l);
    ?+ k; f: k) [! y1 B; ~
    }
  4. 9 j/ o1 ~1 r7 ~" B/ r2 F
  5. 消息链接。
  6. / D6 F5 n' |9 s" o
  7. 在Object ARX环境中调用Object ARX全局函数编写绘图函数。
: Y! G" M" ?' o* r5 a: O+ L

5 结语

M! c# @9 z. Y
小模数齿轮滚刀AutoCAD系统采用全参数化设计,实现了参数优化及齿背曲线自动校核,可显著提高设计的科学性和可靠性;同时对表面粗糙度、形位公差等可直接进行插入标注,大大减少了工作量,提高了设计效率。  
W" S5 ~' r0 d' l+ @) \3 p F: ~! s4 F1 L
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

中国磨削网

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

GMT+8, 2026-3-9 13:39 , Processed in 0.119004 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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