2 用VB、AutoCAD开发切削加工模拟系统的关键技术
2.1 VB 与AutoCAD的接口
为使应用程序具有通用性,将与AutoCAD连接的程序放在一个通用模板中,命名为MautoCAD,其程序代码如下:
’定义autocad 变量
Public acadApp As Object’应用程序
Public acadDoc As Object’当前应用程序
Public moSpace As Object’模型空间
Public Sub LoadAutocadR14()’调用AutocadR14
On Error Resume Next
Set acadApp = GetObjec(t “,AutoCAD.Application”)
If Err Then ’如果没有一个autocad 副本在运行
Err. Clear
Set acadAp = CreateObjec(t“AutoCAD.Application”)
If Err Then
MsgBox Err.Description ’如果失败给个提示
Exit Sub
End If
End If
Set acadDoc = acadApp.ActiveDocument
Set moSpace = acadDoc.ModelSpace
End Sub
2.2 参数化零件库的建立
为使软件系统具有较好适用性,在参数化零件库中,各类零件以带入口参数的公用子函数的形式存在。同时,为了便于准确控制零件,必须给定零件的初始位置。由于该加工模拟系统的对象零件均为回转体,因此可根据零件上一点坐标和零件轴线方向来确定零件的空间位置。为符合实际加工情况,对于砂轮,这一点可取大圆中心点;对于零件,则可取位于零件轴线上的柄部末端端点。以所选点作为坐标原点(0,0,0),以零件轴线为Z 轴,通过移动这些点的位置和零件轴线方向即可控制模拟加工过程。
根据造型方式的不同,可将零件库中的零件分为两类:第一类是标准实体(如圆柱、球、圆锥、立方体等),可通过VB直接调用AutoCAD提供的函数生成;第二类是复杂实体,可根据实体特征通过标准实体布尔运算、平面切除或面域拉深、旋转等操作而得到。对于五轴联动数控工具磨床,砂轮可分别通过平面切圆锥、面域旋转、直接调用等方法生成;零件可根据实际情况生成。最后将砂轮和零件均放入同一单独的零件库模板中,在软件中作为一个数据库存在。
现以单角锥面砂轮为例说明其生成过程。造型入口参数包括锥角、大圆直径和厚度。首先根据入口锥角及大圆直径直接调用AutoCAD命令生成圆锥体,然后用距离等于入口厚度且平行于大圆的平面切去该平面以上的圆锥部分,即可得到所要求的单角砂轮。
2.3 加工过程的模拟
以加工等螺旋角等法向前角球头旋转锉(直径Ø12mm,螺旋角20°)为例说明加工模拟过程。单角锥面砂轮大圆直径为50mm,锥角为60°,厚度为5mm,所需刀具轨迹数据可通过本系统程序生成,也可直接导入格式为ASCII 的数据文件(包括x、y、z三个方向的直线运动数据和绕A、C 两个轴的旋转运动数据)。在模拟过程中,工件在水平面内绕Z轴旋转(C 轴),同时又绕自身轴线以角度A 回转;砂轮中心点(x,y,z)的位置坐标在加工过程中不断变化,而砂轮轴线方向不变,且与Y 轴平行,如图2所示。
模拟过程中的每一加工位置点均可利用砂轮与工件进行相减布尔运算而得到,最终即可实现对磨削加工的模拟。图3 所示为加工模拟结果示意图。
图3 加工模拟结果示意图
3 结语
本文针对五轴联动数控工具磨床的加工特点,以VB6为编程环境,利用ActiveX Automation技术开发了基于AutoCAD 操作平台的加工模拟软件系统。通过一段时间的试验研究及实例验证,证明该方法行之有效。该方法不但为加工模拟软件的开发提供了新的途径,而且由于AutoCAD应用广泛,因此该类软件具有良好的推广应用前景,有助于实现加工过程的自动化及网络化,有利于提高加工效率和降低生产成本。