基于PowerMill的工艺知识库自动生成系统*
2021-06-07吴居豪张玉婷宋永浩陶建华
吴居豪,张玉婷,宋永浩,谢 堂,陶建华
(广州大学机械与电气工程学院,广东广州 510006)
1 引言
随着经济的发展,我国已成为世界制造业的重要基地。我国的装备制造业能始终能保持技术先进、成本低廉的优势,这与模具的使用功不可没,因此,模具专业人员的劳动力价值也愈发被关注。我国的模具制造与装备制造依赖于大量专业化人才的智慧与努力,模具设计、制造、装配维护等方面的技能人才更是供不应求。然而,随着模具行业人才流动性的提高,从事该行业的人员越来越少,模具人才更是严重短缺。另外,由于经济发展制造业对模具需求急剧膨胀、模具工艺知识传承的复杂性和极长的周期性以及模具技师的老龄化,模具人才远远跟不上行业的发展需求,从而也对模具经验和技术的积累造成不利的影响。因此,如何缩短模具人才培养周期,传承模具技术,积累学习工艺知识已成为中国制造业发展的当务之急。
本文通过研究数控加工技术与工艺知识数据库生成技术,开发一款基于PowerMILL的数控工艺知识库自动生成系统。该系统能从已有的编程项目文件中获取加工对象的准确信息,并生成相对应的工艺知识清单,方便人员针对不同模型特征,学习工艺策略,在模具人才培养上具有适应性和实用价值。
2 开发思路
本系统运行的支撑环境为PowerMILL。PowerMILL软件为用户提供了二次开发控件,如PowerSolutionDOTNetOLE.dll控件。若系统安装了PowerMILL软件,该控件便生成在系统目录下。同时,该控件包含CopyCAD、PowerMILL、clsPowerMILLOLE、PowerShape等二次开发接口。这种开发方式是预先定义某些函数使开发人员可通过直接访问这些接口调用函数来实现特定功能的技术,有利于提高用户的开发效率。
本系统使用Visual Basic.NET Framework框架作为二次开发框架。Visual Basic.NET Framework框架是用于WINDOWS新托管的代码编程模式,它能够把强大的功能与技术引入进来,使得用户能够运用VB语言设计出友好的用户界面,并可实现跨技术边界的无缝通信。
本系统选用的数据库为MySQL数据库,MySQL数据库性能卓越、服务稳定,而且其开放源代码而且无版权制约,自主性及使用成本相对较低,安装方便,易于维护。此外,MySQL支持多种操作系统,提供多种API接口,有利于系统开发过程中与Visual Basic.NET框架的连接。
以上是相关开发原理的介绍,系统的整体开发思路如下:
开发人员首先在Visual Studio中添加PowerSolutionDOTNetOLE.dll控件,通过调用clsPowerMILLOLE类的connect函数与PowerMILL软件建立连接,再根据功能的需求调用其它类的相关接口函数,结合VB语言进行界面的创建和程序的编写。此外,为了将相关工艺策略及其参数值创建与保存至数据库,开发人员在Visual Studio平台上调用数据库控件,实现与MySQL数据库的连接,再结合VB语言与SQL语言进行程序的编写和界面的创建,从而代替繁琐的SQL语句命令操作。最后调用Microsoft Office Excel等相关软件库生成知识清单以及使用电脑系统自带的记事本作为NC程序后处理模块的数据存储。如图1、图2、图3所示。
图1 系统总体技术路线
图2 软件开发技术路线
图3 系统总体结构图
3 关键模块介绍
3.1 工艺参数提取模块
该模块属于数据提取模块。工艺参数分3部分提取,包括大小尺寸、元素列表、元素信息。其中大小尺寸包含模型尺寸与毛胚尺寸;元素列表包含该工程项目下的刀具路径、刀具、边界等相关信息;元素信息包含某刀具路径下对应的刀具直径、刀尖半径、刀柄长度、主轴转速、切削进给、下切进给等相关信息。这样分类的目的是简化操作界面,方便用户阅读,从而快速识别出工艺参数类型。
在大小尺寸的提取部分中,开发人员调用GetEntitySize函数进行模型尺寸和大小尺寸的提取,该函数的功能是返回指定元素的最小值和最大值;在元素列表和元素信息的提取部分中,开发人员调用GetEntitySize函数和GetEntityParameterInfo函数进行相关信息的提取,GetEntitySize函数的功能是返回指定元素的信息列表,GetEntityParameterInfo函数的功能是计算出指定元素的变量,并返回到指定的数组中。
以下将以元素信息提取为例介绍相关的算法实现过程,其余两部分的实现过程大致雷同,但调用函数有所区别。图4所示为元素信息提取的算法实现流程图,图5所示为元素信息提取界面。
图4 元素信息提取的算法实现流程图
图5 元素信息提取界面
3.2 数据库保存与操作模块
该系统的数据库设计遵循MySQL数据库的结构设计规范。数据库结构设计分为逻辑设计和物理设计,逻辑设计是根据数据实体之间的逻辑关系对表进行设计;而物理设计则是根据所用的数据库特点进行表结构的设计。由于存放数据的类型不同,需要对数据的类型进行分析,分析其需要用什么数据类型进行存放,这样的类型分析划分可以有效的减少内存。根据数据间的关系,设计的数据库ER图如图6所示,其中长方体代表实体,椭圆形代表属性,菱形代表关系。带下划线的属性是主键属性。
在数据库保存模块中,针对操作流程的规范性,开发人员设计3种类型的数据表对工艺参数信息进行存放。其中包括毛坯模型大小信息表(见表1)、工艺策略参数信息表(见表2)以及NC代码信息表(见表3)。毛胚模型大小信息表用于存放毛坯和模型的大小尺寸数据,设立6个坐标值字段,包括X_Min、X_Max、Y_Min、Y_Max、Z_Min、Z_Max;工艺策略参数信息表用于存放工艺参数信息,包括刀具路径名称、刀具号、刀具类型、刀具直径、刀具刀尖半径、刀柄长度大小,设立的字段包 括Tool_path、Tool_type、Tool_diameter、Tip_radius、Lengthe_of_hilt;NC代码信息表设定NC字段名,采用varchar类型,长度为30位,用于存放字符串数据。开发人员最后再结合VB语言与SQL语言编写相关程序便可实现工艺参数信息的存放。
图6 数据库设计ER图
表1 毛坯模型大小信息表
表2 工艺策略参数信息表
表3 NC代码信息表
数据库操作模块主要分为连接数据库、库操作、表操作3大部分。用户只需在操作界面上点击相关按钮,便可对数据库进行相关的操作,从而有效地代替MySQL数据库中繁琐的语句命令操作。
4 系统程序的运行流程
系统程序流程图如图7所示。
图7 系统程序流程图
5 系统部分功能演示
图8为PowerMILL工程项目文件下的模型图,通过该系统,用户可以迅速地获取该工程项目对应的工艺策略及其参数信息,如图9、图10、图11所示。
图8 系统功能演示的模型图
图9 模型大小的信息提取界面图
图10 元素列表的信息提取界面图
图11 元素信息的信息提取界面图
6 结束语
本文详细概述了PowerMILL的二次开发过程,通过调用其强大的API接口功能,选用交互界面设计更加友好的Visual Stdio平台,采用Visual Basic.NET框架进行功能设计,开发一款基于PowerMILL的数控工艺知识库自动生成系统。实现对PowerMILL工程项目的工艺策略及其参数值自动获取与分析,并将获取的工艺策略创建数据库,生成相应的知识清单,有利于缺乏经验的编程人员积累和学习工艺知识,在模具人才培养上具有广泛适应性和实用价值;同时,也有效地减少产品设计过程中由于人为错误造成的经济损失,为同类产品的设计提供技术支持。