水刀切割专用数控系统CAD/CAM一体化上位机软件开发
CAD/CAM 一体化上位机软件主要包括 CAD、CAM、CNC 等模块。下面分别对CAD、CAM 及 CNC 模块的主要功能进行设计: (1)CAD 模块
在该模块中要设计一个友好的用户界面,提供菜单栏,工具栏,命令框等。该模块要能够完成读取二维图形文件如.dxf 文件,二维图形的绘制、编辑修改等功能。该模块的主要内容有:
1)菜单栏。它主要提供不同功能模块的菜单,如文件(File)、修改(Modify)、数控通信(HNCWindow)等,每一模块完成不同的功能,并且每一模块里还有子模块(即子菜单),细化各个部分的功能。 2)基本二维图形绘制。包括:点,直线,圆弧,圆,椭圆,多义线(polyline),多边形(polygon),样条曲线(spline)、文本(text)等。 3)二维图形编辑修改。该功能模块主要是完成对所绘制的图形或是从二维图形文件中读取的图形进行编辑修改等,其内容包括:选中,移动,复制,偏置,旋转,缩放,镜像等。 4)数据存储。它主要是对绘制的图形数据信息进行序列化存储,以文本格式或是二进制格式输出到文件中。 5)文件管理。它主要是完成对文件的管理,如:新建、保存、另存、打开读取文件等。 6)图层和块。图层主要是考虑到有时使某些图形处在不同的图层中,然后对某些图形进行隐藏,或是输出保存某个图层的图形信息。块主要是对部分图形进行打包成块,然后整体进行编辑修改或是复制、删除,简便操作。 7)窗口。对打开所有窗口进行一个管理,包括窗口之间的切换、窗口模式及对具体单个窗口进行各项操作等。 8)帮助。主要是用户手册,联网线上查询资料,及有关此软件操作的说明。 (2)CAM 模块CAM 模块主要是实现将由 CAD 模块得到的二维图形轮廓生成可以直接驱动机床轴运动的五轴数控 G 代码。CAM 模块从宏观上来看主要由图形实体属性排序换向、五轴水刀加工工艺参数的设置及数据序列化存储,后置处理及能够直接用于数控加工的五轴数控代码的自动生成,数控加工仿真三大部分组成。图形实体属性排序换向的设置(图形实体顺序重排和图形实体换向)、五轴水刀加工工艺参数的设置等这些都是为确定加工轨迹而生成初步 G 代码做准备的,然后计算出机床各轴位移增量,最后对工件加工的过程进行仿真。该模块具体内容如下: 1)图形实体属性排序换向、五轴水刀加工工艺参数的设置及序列化存储图形实体属性排序换向的设置包括图形实体排序和图形实体换向。CAD 功能模块在创建图形实体时或是从二维图形文件(如.dxf 文件)中读取图形实体时,实体与实体之间不存在任何约束关系(即先加工哪一段实体顺序不定),即使实体本身也存在着方向的不确定性,如可以是绘图起点指向绘图终点方向,也可以是绘图终点指向绘图起点方向。所以为了确定走刀路径及加工次序,需要对实体进行重排(手动或是自动),及换向的操作。根据五轴水刀加工工艺要求,还需要设定五轴水刀加工工艺参数,如偏转方向、偏置方向、偏转角度、偏置半径、进给速度等,及实现这些参数的序列化存储。序列化(Serialization)是将类对象的状态信息转换为可以存储或传输的形式的过程[40]。序列化的主要目的是:以某种存储形式如二进制文件的格式将自定义对象永久保存;将对象从一个地方传递保存到另一个地方;使程序更具维护性。通俗的说就是为了便于操作者在上一次操作未完成时就关闭程序或是关机等,下次再打开文件接着上一次未编辑完的操作继续进行编辑修改。 2)后置处理及五轴数控代码的自动生成后置处理主要是通过坐标变换将给定的点的绘图坐标及实体偏转角度和偏置半径(相对于坐标系中的 Z 轴而言)转换成机床各个加工轴的位移增量(即五轴机床五个轴运动坐标),然后通过变换后的点的坐标及角度生成能够直接用于数控加工的五轴数控代码。 五轴数控加工代码编程的格式: G01 X_Y_Z_A_B_F_ 指令说明: X_Y_Z_指定刀具中心点的位置 A_B_指定旋转轴偏转角度 F_刀具中心点的进给速度 3)数控加工仿真 数控加工仿真是集 CAD、CAM、数学建模及仿真于一体,通过在计算机的虚拟环境中对加工图形走刀轨迹进行模拟仿真。能够真实的反应刀具走刀方式、切割零件的形状、刀具与切割工件间是否发生干涉(切削余量)等,从而检查数控加工程序是否正确及判断加工方案是否合理,以减少试切的次数,最终缩短产品开发周期、提高产品质量及生产效率等。 (3)CNC 模块在 Windows 操作平台下进行华中 8 型的二次开发,就需要开发者将华中 8 型相关的二次开发软件包加入自己开发的工程文件夹中,这个过程称之为 C++二次开发库的配置。完成这个配置后,就可以通过华中 8 型软件包提供的二次开发接口获取下位机数控系统的数据信息,从而对下位机数控系统进行控制,并且可以将上位机数据信息发送给下位机。这样,用户可以定制适合自己的专用的功能界面,并且获得数控系统底层的数据信息而不需要知道接口函数实现的细节,缩短了开发的周期且提高了开发的效率。 拟开发的 CAD/CAM 一体化上位机软件中调用 HNC-8 的一些库函数获得下位机数控系统信息,及将 CAD/CAM 一体化上位机的信息传到下位机数控系统,这个通信的过程主要是靠华中 8 型提供的以太网口通过网线连接来实现的。传递信息主要有对G 代码文件的操作包括向下位机发送 G 代码文件、获取下位机 G 代码文件、打开本地 G 代码文件、保存本地 G 代码文件,网络连接,G 代码编辑框,坐标系类型,X、Y、Z、A、B 实时坐标,工件指令,进给速度等。