APP下载

基于CATIA二次开发的直线共轭齿轮副参数化建模

2022-10-31夏娟崔建昆吕嗣孝李晓强

农业装备与车辆工程 2022年1期
关键词:二次开发齿轮代码

夏娟,崔建昆,吕嗣孝,李晓强

(1.200093 上海市 上海理工大学 机械工程学院2.201404 上海市 上海园菱机械实业有限公司)

0 引言

齿轮齿廓形状的设计是齿轮副的关键,常见啮合齿轮副的齿廓有渐开线、摆线、直线等。直线共轭内啮合齿轮副的主动齿轮轮廓是左右对称的直线,齿圈齿廓是与直线共轭的曲线[1]。该齿轮副除了拥有普通内啮合齿轮副有的优点外,还有噪音低、振动小、滑动系数小的优点[2]。正是因为这些优点,才使得直线共轭内啮合齿轮能应用于航空航天、船舶、车辆装载运输等场合。齿轮的建模过程比较复杂,在不同的应用场合所需齿轮参数不同,这就要求设计者针对不同的齿轮逐一建模[3]。因此,开发一个直线共轭齿轮参数化设计程序能够有效地缩短开发周期,提高工作效率。

1 CATIA 二次开发原理

CATIA 是法国达索系统公司开发的跨平台的商业三维CAD 设计软件,提供机械设计、产品设计、分析和模拟等功能。CATIA 源于航空工业,被用于开发虚拟的原型机,但目前已广泛应用于汽车、船舶制造、建筑工程等行业实际生产设计中[4]。国内外的CAD 软件建立在通用应用平台上,不能满足针对各种专业领域的产品快速设计的需求,因此必须使用二次开发技术来解决这一问题[5]。对 CATIA 进行二次开发的基本流程如图1 所示。通常,经过二次开发后的软件具有良好的人机界面,提高了设计人员的设计效率和产品质量。

图1 二次开发基本流程图Fig.1 Basic flow chart of secondary development

CATIA 的二次开发主要分为2 种:

(1)使用宏对CATIA 进行二次开发。大部分CAD/CAM 软件都支持宏操作,可以通过录制宏,对宏文件进行修改(添加判断、循环等功能),然后重新运行,从而达到客户需求。CATIA 可以以2 种语言方式来录制宏,分别为CATScript 和MS VBScript[4]。

(2)使用组件应用架构对CATIA 进行二次开发。CAA 方法可以进行从简单到复杂的二次开发工作,有强大的交互、集成功能[4]。

本次设计主要是采用的录制宏方法对CATIA进行二次开发,就需要了解CATIA Automation 的基本架构,掌握对象的属性及方法。图2 所示为CATIA V5 Automation 对象架构。

图2 CATIA V5 Automation 对象架构图Fig.2 CATIA V5 Automation object architecture

2 直线共轭内啮合泵设计系统

2.1 程序流程图

利用CATIA 二次开发的平台,结合直线共轭齿轮齿廓的设计,绘制出三维实体模型,具体绘制流程如图3 所示。

图3 三维建模基本流程图Fig.3 Basic flow chart of 3D modeling

2.2 程序界面设计

根据程序所要实现的功能以及设计齿轮齿廓所需要的参数,该界面主要由Label,TextBox,Button,GroupBox 等控件组成。程序界面设计如图4 所示。该界面主要分为2 个模块,一是设计参数的输入,二是输出参数的显示。根据计算出来的小齿轮与大齿轮的齿顶圆与齿根圆大小来绘制草图,根据中心距来实现装配时的偏移距离。输出参数的计算公式如表1 所示。

图4 用户界面图Fig.4 User interface diagram

表1 齿轮的参数计算表达式Tab.1 Calculation expression of gear parameters

2.3 算法设计

图5 是外齿轮直线齿廓,其中θ为单个齿在分度圆上所对应的角度。取齿数Z1、模数m、齿形半角β、齿顶高系数h*a1和齿根高系数h*f1为齿廓参数。在不考虑啮合间隙的情况下,外齿轮直线齿廓的部分坐标计算公式为

图5 外齿轮直线齿廓图Fig.5 Linear profile of external gear

图6 所示为外齿轮直线齿廓所共轭的内齿轮齿廓。查阅文献可知,直线共轭齿轮的内齿圈齿廓曲线有3 种设计方法[2],该实验中主要运用的是通过坐标变化建立参数方程,即

图6 内齿轮齿廓图Fig.6 Profile of internal gear

式中:Φ1,Φ2——外齿轮和内齿轮的转角;a——中心距。Φ1,Φ2的求解公式如下:

2.4 程序实现

可视化界面制作完成后需要在后台添加代码,代码的正确编写决定了软件功能的实现与否。该程序主要通过用户在界面输入参数,后台将参数带进算法进行运算,运算结果输出在界面并传递给CATIA,从而生成三维模型。以外齿轮模型为例,该按钮实现模型主要包含了以下几个步骤。

(1)获取CATIA 对象,新建Part 文档。关键代码如下:

(2)根据界面输入的参数进行公式计算,将计算结果显示在界面指定的文本框中。关键代码如下:

(3)根据指定的参数大小在空间的XY平面上画齿顶圆和齿根圆。关键代码如下:

(4)根据齿廓计算公式计算出直线齿廓坐标,利用这些坐标绘制直线。首先需要判断直线与两圆弧有无交点,有交点则将超过齿根圆齿顶圆的部分进行裁剪,没交点则进行外插延伸。关键代码如下:

(5)将得到的直线沿着ZX平面对称,得到另一半齿廓。关键代码如下:

(6)根据两边的齿廓对齿顶圆与齿根圆的圆弧进行裁剪。关键代码如下:

(7)将裁减后的圆弧与齿廓进行接合,这样就形成一个完整的平面上的齿。关键代码如下:

(8)将齿顶圆与单齿进行拉伸,然后根据外齿轮的齿数对单齿进行圆周阵列。关键代码如下:

(9)将空间中创建的点线等隐藏,更加直观地显示模型。关键代码如下:

(10)将获得的三维实体模型以指定名字指定类型进行保存。关键代码如下:

图7 所示为外齿轮三维效果图。

图7 外齿轮三维实体图Fig.7 Three-dimensional solid diagram of external gear

内齿轮的建模与外齿轮主要是齿廓设计不同,其余基本类似,就不一一说明。

该界面还有一个装配按钮,其功能实现主要分为以下几个步骤:

(1)新建Product 文档,将指定命名的两个零件导入进去。关键代码如下:

(2)对两个零件进行约束限制:相合约束、偏移约束。关键代码如下:

(3)将获得的装配体以指定名字保存。

图8 所示为装配效果图。

图8 装配实体图Fig.8 Assembly entity diagram

4 结语

本设计以C#.NET 为开发平台,采用C#与CATIA 的交互实现直线共轭齿轮的参数化建模,使用户通过在可视化界面输入参数,一键完成齿轮在CATIA 中的三维建模,有效地节省了时间,把复杂的齿廓设计过程变成了简单的参数输入,在提高效率的同时也降低了软件对用户的操作要求。

猜你喜欢

二次开发齿轮代码
AutoCAD 与PDMS 二次开发在三维复杂形体设计建模上的应用
关于齿轮的有趣问答
例谈对高中数学教材中习题的二次开发
你找到齿轮了吗?
异性齿轮大赏
浅谈CAD软件二次开发的方法及工具
骑车上班日
例谈课本习题的“二次开发”
神秘的代码
一周机构净增(减)仓股前20名