技术中心
 
 

基于Inventor API的渐开线直齿圆柱齿轮参数化造型

   日期:2008-11-06     来源:中国测控网     作者:管理员    

  在具体的CAD设计中,常常会遇到一些零部件的设计需要参数化模型进行描述,对于一些特殊零部件需要用户对CAD进行二次开发才能完成。Invantor作为Autodesk公司产品系列中的一员,不但具有出色的平面草图绘制功能和强大三维造型功能,还秉承了其开放性传统,。提供了强大的用户定制和二次开发功能。用户可以利用Inventor API的开发接口,在Inventor系统平台上进行二次开发,方便快捷实现特殊零部件的三维设计任务。

  渐开线齿轮由于能保证特定传动比传动,受力方向不便等优点,应用非常广泛。渐开线齿廓和相关实体造型在数控加工,用户演示等方面还是必要的,Inventor没有在草图直接提供创建渐开线的功能,但应用Inventor二次开发功能仍可实现渐开线齿轮参数造型。

  1 Inventor API二次开发技术

  1.1 Inventor API开发特点

  Inventor AFI(Application Programming Interface)的技术基础是微软的自动化(Automation)技术。这种自动化接口在Windows平台下应用程序中是相同的,用户通过Inventor API,可用支持Automation ( OLE Automation)技术的高级语言了访问Inventor的各种对象以及相关属性和方法,进行二次开发。

  与其它三维造型软件二次开发技术比较,Inventor API技术的显著优点是:几乎可以用任何当前流行的编程语言编写程序,如VBA, VB, VC++ ,Delphi, Perl和Java等。同时,因为是以面向对象的方式暴露应用程序的功能,所以一旦理解和掌握了面向对象程序设计的一般概念(例如,一个面向对象API工作方式),这种API比面向过程API更容易学会和使用。

  Inventor API的对象层次结构模型如图1所示。该模型暴露了Inventor的各种功能以及对象之间的关联和继承关系,根据这些关系可以查找访问任何一个对象。

  1.2 开发方式比较

  Inventor API提供了三种开发方式:插件(Add-in)方式、独立的EXE(Standalone EXE)方式、学徒服务器(Apprentice Server)方式。

  插件可以自动加载,对于程序来说是一个非常有用的功能,因此大多数与Inventor 无缝集成的应用程序都需要做成插件形式。插件在生成时可以选择生成DLL,这样运行在Inventor相同的处理空间内,运行效率高;也可以选择生成EXE类型的插件,主要的好处是调试方便。


  独立的EXE运行在Inventor以外的处理空间,可以拥有自己的程序界面并且无需用户在Inventor进行交互操作。

  学徒服务器本质上是Inventor的子集,没有自己的用户界面,主要给其他应用程序提供Inventor文档信息的访问。1.3开发关键技术

  Inventor VBA是由微软提供并集成到Inventor中的一个特定开发工具。一方面它是与VBA通用的,同时还可以被定制,以满足特定程序的要求。通过定制,可以把程序嵌入到Inventor文件中,从而使程序与数据绑定在一起;也可以把程序存储为独立的.IVB文件,使其他用户可以共享该文件。

  Inventor API是以面向对象的方式暴露Inventor内部对象的,因此开发主要涉及两个过程:对象的声明和对象实例的赋值。对象声明的格式为:Dim对象变量名As对象名;对象实例赋值的格式为:Set对象实例=……。如:

  *声明Inventor草图圆弧对象变量:Dim oArc As SketchArc

  *在草图环境中画一段圆弧。圆弧圆心为(0,0),起点为(10, 0),终点为((0,10),绘制方向为逆时针方向(如按顺时针,最后一个参数应改为False):


  2 渐开线标准齿轮参数化造型程序实现

  虽然渐开线齿廓和相关的实体造型在设计过程中不是必需的,但对于机构演示、要求较低的数控加工还是必要的。在这种需求下,齿轮设计参数也可以进行适当简化。本文中对于高度变位系数、角度变位系数、齿厚渐薄量等齿形修正参数暂未考虑。

  2.1 齿廓基本参数与表达

  按照标准齿轮设计规则,有如图2所示齿沟轮廓计算参考图。


  计算过程中用到如下一些基本参数:

  ·Pi(圆周率):Inventor中没有直接提供,比较精确的值可取为Pi=4*Atn(1);
  ·压力角Gylj:0.34906585弧度(20度弧度值);
  ·齿数Gz;给定(整数);
  ·模数Gm=O.1Gm(Inventor API以厘米作为长度单位,而创建草图一般使用毫米,此处直接将涉及长度的模数进行预处理);
  ·分度圆半径Gfr=0.5*Gz*Gm;
  ·基圆半径Gjr=Gfr*Cos(Gylj);2.2齿廓渐开线部分的创建  

  在Inventor中未提供根据方程建立曲线的功能,因此对于渐开线部分的创建过程是:先根据前面公式计算渐开线上的控制点,然后存入数组,最后通过创建样条曲线逼近渐开线曲线。

  根据图2所示,渐开线上某一点的坐标计算:


  2.3 渐开线创建的一些细节处理

  因为要创建两条渐开线对象,并在后期引用,所以,全部数据结构都是两套,每套按照10个控制点就可以充分稳定住渐开线的形状并满足精度要求。所有控制点根据从渐开线起点半径到终点半径之间等分算出的各个半径计算得到。

  另外,在不同的参数下,渐开线的起点有两种可能:当(基圆一齿根圆弧)结果大于齿根圆,渐开线起点在基圆上;当(基圆一齿根圆弧)结果小于齿根圆,渐开线起点在齿根圆上。而渐开线的末端总是结束于齿顶圆上。

  2.4 齿根部分的图线处理

  在图2齿沟轮廓计算参考图中,P1-P3是渐开线部分,P3-P4是一条直线,是渐开线与齿根结构的过渡。P3-P4部分有两种情况:

  (1)当基圆大于齿根圆时,过渡圆弧为一单圆弧,是与渐开线极限啮合点以下的部分及与齿根圆切线相切的圆弧,半径Cr大小由表1确定;

  (2)当基圆+过渡弧半径仍然没有达到齿根圆时,要增加直线过渡部分P2-P3,与过渡圆弧及齿根圆相切,斜线角度Ga由表1确定。


  事实上,齿沟系数Gk决定了齿根圆角的半径Gr和直线斜角Ga,根据各个齿轮基本参数相互之间的关系,Gk由变位系数f〔这里恒为0)和齿数Gz计算得出:Gk = f + 0.03Gz,也就是Gz=0.03Gz.

  2.5 造型结果验证

  根据上述原理,应用VBA编程环境,通过调用Inventor API函数,实现了在Inventor环境下渐开线直齿圆柱齿轮三维参数化造型程序设计。图3是应用该方法造型得到齿数啮合关系图,可以看出,齿廓部分虽然进行了简化,但精确度还是较高。


  3 结论

  应用上述原理实现了渐开线齿轮三维参数化造型,可以轻松实现不同齿数z、模数m的标准渐开线齿轮的参数化设计,免去大量重复劳动,实现了Inventor API的二次开发。应用该方法进行齿轮造型不仅能满足演示要求,如加以必要的优化,在要求不高的情况下也可为对后续齿轮机构的动态仿真、干涉检验、有限元分析和NC加工等服务。


 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作
 
推荐图文
推荐技术
可能喜欢