0 引言
数控编程一直是我国数控机床应用的瓶颈:一般进口数控机床中附带的辅助编程,功能过于单一,很难满足用户的高层次要求;进口的CAD/CAM软件则价格昂贵,硬件环境要求高(一般均要求在工作站以上),需要进行充分地二次开发,且这类软件对员工素质要求高,在我国很难普遍推广应用。本文面向一般数控机床用户,针对机械零件中占90%以上的普通零件,以铣削加工为背景,在Windows98环境下设计了一个自动编程软件,以提高NC编程的效率与质量,改善NC加工环境。
1 需求分析与设计目标
本软件主要是为了减少制造过程中人的参与,进一步提高自动化程度。软件须具有良好的用户界面,操作简单、方便,需要编程员输入的参数应尽可能少,降低数控编程对编程员需要有较高机加工专业知识与经验和计算机编程能力的要求,简化数控编程;另一方面,它需要有强大的计算能力,以满足高精度加工要求;而且,应易实现功能扩充,能对加工过程(NC程序的执行)进行直观模拟,以便调试。
2 总体设计
我们设计的此自动编程软件主要由以下5部分组成(如图1、2所示):用于加工策略确定的机加工专家系统,以实现根据编程员输入的有关参数与指标,确定各工步及加工参数,即决定工步及M、F、S、T及某些G指令的参数;图形编辑和坐标计算部分实现由编程员输入刀具轨迹,软件系统自动计算全部节点坐标,以形成G00、G01、G02、G03、G8X等指令参数;仿真模拟部分实现对给定NC程序执行过程的模拟,为了简化软件系统的设计,不考虑零件无关细节,由编程员给出与相应NC程序相关的零件外形与尺寸,以单步/自动方式仿真模拟加工过程;NC程序编辑部分,实质是一个普通文本编辑器,允许编程员对NC程序直接进行必要的调整、打印输出等操作;通讯部分则允许通过RS-232接口,把程序直接传送给数控机床,而不必通过磁盘转存或人工输入机床。
3 具体设计中的若干主要问题
3.1 编程语言的选择
由于面向对象方法集抽象性、封装性、继承性、多态性于一体,具有显著的可复用、易修改、易扩充等特性,很容易实现软件功能的修改与扩充,而面向对象的语言中,C++功能强而且发展较成熟,同时考虑到Microsoft公司的Windows系统为应用系统提供了统一的用户界面,很受大家欢迎,本软件采用Microsoft的Visual C++编程语言。但是,它不能合适而有效地表示知识和进行推理,对于本软件的智能部分(机加工专家系统)宜选择面向任务和知识、以知识表示和逻辑推理为目标的人工智能和智能控制用编程语言。由于Prolog语言通过合一、置换、消解、回朔、匹配机制来求解问题,本身就是一个演绎推理机,从而可以极大地简化智能软件的设计,本软件的智能部分选用Prolog语言实现。
3.2 加工策略确定部分的设计
刀具管理功能同时管理刀具数据库和刀库数据库,刀具数据库存该机床所配全部刀具各种参数,刀库数据库存刀库中刀具的信息。专家系统根据编程员输入的材料加工精度要求等,以及刀库数据库刀具信息,在专家知识水平级上确定出合理的加工参数,如选择合适的刀具、适当的进给率、切削速度、主轴转速、及合理的工步流程,需要时,提出调整刀库。由于Prolog语言本身就是一个推理机,这里的主要工作就是建立专家知识库,知识库的组织如图3所示。
3.3 刀具轨迹输入与坐标计算
本软件设计中一改传统的由点、线、圆等基本图元输入,必要时递归计算坐标的方法,而以在实践中总结出的大量常用图形模式,成组输入图元,尤其针对一些计算较复杂的情况。如下图5所示,常规输入时,需人工确定圆1、圆2计算出P1、P2、P3、P4坐标,逐个输入图元;而在本软件中,仅需选定相应图形模式,只给出两个圆心即可,P1、P2、P3、P4坐标计算由软件自动完成,不需人工参与。同时,由于是选定模式输入,此时坐标计算可直接调用既定公式,这样,就极大地简化了输入且提高了计算效率及精度。#p#分页标题#e#
3.4 加工过程模拟
本软件在这一部分的设计中,主要采取模糊零件细节,仅考虑与NC程序相关部分几何尺寸的措施,比如,在铣削加工中,零件外形可归结为柱、方体、球、方台、圆台、球台、圆筒、方筒、球壳等几种,编程员可象选菜单一样从中选定一种,并给出零件范围,就形成了被加工零件。这样,一方面简化了软件系统设计复杂度,另一方面编程员可以在仅需输入极少数据的条件下更清晰地关心其当前NC程序的活动。另外,编程员可以选择模拟时程序执行方式:单步/自动方式;可选择合适的视图、合适的视角,二维/三维显示;可以调整比例(提供图形放大/编小按钮);编程员可以设定观察窗口,用以专注考虑零件某一小部分的加工状态;可以在加工模拟的同时,屏幕的一边显示相应程序段;可以即刻显示程序执行完后的零件形状,也可以调用延时程序,模拟过程正比例反映实际加工时间,且两种情况下均可给出全部NC加工所需机床时间(不包括辅助时间),这可以帮助生产管理人员确定工时定额,完善生产管理制度。
3.5 NC程序编辑
这与普通的全屏幕文本编辑器相似,需以下功能选项即可:
File: New/Load/Save/Save as/Print/Exit
Edit: Insert/Delete/Copy/Paste/Move
3.6 通讯
这是一个普通的串行通讯程序,经串行口把NC程序直接送至数控机床(如图6所示)。
4 结论
本文利用人工智能技术,设计了一个机械加工专家系统,可以在专家级解决加工策略确定问题,降低了对编程员机加工专业知识过多的要求,同时提高了程序质量。并且,采取若干措施,简化软件操作,提供良好的用户界面。使得只需基本机加工知识与计算机操作技能就可以编写出高质量的NC程序。
本软件已初具雏形,颇受编程人员青睐,我们正致力于对其作进一步的改进。
数控编程一直是我国数控机床应用的瓶颈:一般进口数控机床中附带的辅助编程,功能过于单一,很难满足用户的高层次要求;进口的CAD/CAM软件则价格昂贵,硬件环境要求高(一般均要求在工作站以上),需要进行充分地二次开发,且这类软件对员工素质要求高,在我国很难普遍推广应用。本文面向一般数控机床用户,针对机械零件中占90%以上的普通零件,以铣削加工为背景,在Windows98环境下设计了一个自动编程软件,以提高NC编程的效率与质量,改善NC加工环境。
1 需求分析与设计目标
本软件主要是为了减少制造过程中人的参与,进一步提高自动化程度。软件须具有良好的用户界面,操作简单、方便,需要编程员输入的参数应尽可能少,降低数控编程对编程员需要有较高机加工专业知识与经验和计算机编程能力的要求,简化数控编程;另一方面,它需要有强大的计算能力,以满足高精度加工要求;而且,应易实现功能扩充,能对加工过程(NC程序的执行)进行直观模拟,以便调试。
2 总体设计
我们设计的此自动编程软件主要由以下5部分组成(如图1、2所示):用于加工策略确定的机加工专家系统,以实现根据编程员输入的有关参数与指标,确定各工步及加工参数,即决定工步及M、F、S、T及某些G指令的参数;图形编辑和坐标计算部分实现由编程员输入刀具轨迹,软件系统自动计算全部节点坐标,以形成G00、G01、G02、G03、G8X等指令参数;仿真模拟部分实现对给定NC程序执行过程的模拟,为了简化软件系统的设计,不考虑零件无关细节,由编程员给出与相应NC程序相关的零件外形与尺寸,以单步/自动方式仿真模拟加工过程;NC程序编辑部分,实质是一个普通文本编辑器,允许编程员对NC程序直接进行必要的调整、打印输出等操作;通讯部分则允许通过RS-232接口,把程序直接传送给数控机床,而不必通过磁盘转存或人工输入机床。
3 具体设计中的若干主要问题
3.1 编程语言的选择
由于面向对象方法集抽象性、封装性、继承性、多态性于一体,具有显著的可复用、易修改、易扩充等特性,很容易实现软件功能的修改与扩充,而面向对象的语言中,C++功能强而且发展较成熟,同时考虑到Microsoft公司的Windows系统为应用系统提供了统一的用户界面,很受大家欢迎,本软件采用Microsoft的Visual C++编程语言。但是,它不能合适而有效地表示知识和进行推理,对于本软件的智能部分(机加工专家系统)宜选择面向任务和知识、以知识表示和逻辑推理为目标的人工智能和智能控制用编程语言。由于Prolog语言通过合一、置换、消解、回朔、匹配机制来求解问题,本身就是一个演绎推理机,从而可以极大地简化智能软件的设计,本软件的智能部分选用Prolog语言实现。
3.2 加工策略确定部分的设计
刀具管理功能同时管理刀具数据库和刀库数据库,刀具数据库存该机床所配全部刀具各种参数,刀库数据库存刀库中刀具的信息。专家系统根据编程员输入的材料加工精度要求等,以及刀库数据库刀具信息,在专家知识水平级上确定出合理的加工参数,如选择合适的刀具、适当的进给率、切削速度、主轴转速、及合理的工步流程,需要时,提出调整刀库。由于Prolog语言本身就是一个推理机,这里的主要工作就是建立专家知识库,知识库的组织如图3所示。
3.3 刀具轨迹输入与坐标计算
本软件设计中一改传统的由点、线、圆等基本图元输入,必要时递归计算坐标的方法,而以在实践中总结出的大量常用图形模式,成组输入图元,尤其针对一些计算较复杂的情况。如下图5所示,常规输入时,需人工确定圆1、圆2计算出P1、P2、P3、P4坐标,逐个输入图元;而在本软件中,仅需选定相应图形模式,只给出两个圆心即可,P1、P2、P3、P4坐标计算由软件自动完成,不需人工参与。同时,由于是选定模式输入,此时坐标计算可直接调用既定公式,这样,就极大地简化了输入且提高了计算效率及精度。#p#分页标题#e#
3.4 加工过程模拟
本软件在这一部分的设计中,主要采取模糊零件细节,仅考虑与NC程序相关部分几何尺寸的措施,比如,在铣削加工中,零件外形可归结为柱、方体、球、方台、圆台、球台、圆筒、方筒、球壳等几种,编程员可象选菜单一样从中选定一种,并给出零件范围,就形成了被加工零件。这样,一方面简化了软件系统设计复杂度,另一方面编程员可以在仅需输入极少数据的条件下更清晰地关心其当前NC程序的活动。另外,编程员可以选择模拟时程序执行方式:单步/自动方式;可选择合适的视图、合适的视角,二维/三维显示;可以调整比例(提供图形放大/编小按钮);编程员可以设定观察窗口,用以专注考虑零件某一小部分的加工状态;可以在加工模拟的同时,屏幕的一边显示相应程序段;可以即刻显示程序执行完后的零件形状,也可以调用延时程序,模拟过程正比例反映实际加工时间,且两种情况下均可给出全部NC加工所需机床时间(不包括辅助时间),这可以帮助生产管理人员确定工时定额,完善生产管理制度。
3.5 NC程序编辑
这与普通的全屏幕文本编辑器相似,需以下功能选项即可:
File: New/Load/Save/Save as/Print/Exit
Edit: Insert/Delete/Copy/Paste/Move
3.6 通讯
这是一个普通的串行通讯程序,经串行口把NC程序直接送至数控机床(如图6所示)。
4 结论
本文利用人工智能技术,设计了一个机械加工专家系统,可以在专家级解决加工策略确定问题,降低了对编程员机加工专业知识过多的要求,同时提高了程序质量。并且,采取若干措施,简化软件操作,提供良好的用户界面。使得只需基本机加工知识与计算机操作技能就可以编写出高质量的NC程序。
本软件已初具雏形,颇受编程人员青睐,我们正致力于对其作进一步的改进。
相关文章
- 2021-09-08BIM技术丛书Revit软件应用系列Autodesk Revit族详解 [
- 2021-09-08全国专业技术人员计算机应用能力考试用书 AutoCAD2004
- 2021-09-08EXCEL在工作中的应用 制表、数据处理及宏应用PDF下载
- 2021-08-30从零开始AutoCAD 2014中文版机械制图基础培训教程 [李
- 2021-08-30从零开始AutoCAD 2014中文版建筑制图基础培训教程 [朱
- 2021-08-30电气CAD实例教程AutoCAD 2010中文版 [左昉 等编著] 20
- 2021-08-30电影风暴2:Maya影像实拍与三维合成攻略PDF下载
- 2021-08-30高等院校艺术设计案例教程中文版AutoCAD 建筑设计案例
- 2021-08-29环境艺术制图AutoCAD [徐幼光 编著] 2013年PDF下载
- 2021-08-29机械AutoCAD 项目教程 第3版 [缪希伟 主编] 2012年PDF