第二章 数控车床仿真系统总体方案设计
2.1数控车床简介
数控车床是用计算机数字控制的车床。和普通车床相比,数控车床是将编制好的加工程序输入到数控系统中,由数控系统通过车床X、Z坐标轴的伺服电动机去控制车床进给运动部件的动作顺序、移动量和进给速度,再配以主轴的转速和转向,便能加工出各种形状不同的轴类和盘类回转体零件191。目前,数控车床是使用最为广泛的一种数控机床。 2.1.1数控车床的组成
数控车床一般由以下几个部分组成。
(l)主机它是数控车床的机械部件,包括床身、主轴箱、刀架尾座、进给机构等。
(2)数控装臵它是数控车床的控制核心,其主体是有数控系统运行的一台计算机(包括CPU、存储器、CRT等)。
(3)伺服驱动系统它是数控车床切削工作的动力部分,主要实现主运动和进给运动,由伺服驱动电路和伺服驱动装臵组成。伺服驱动装臵主要有主轴电动机和进给伺服驱动装臵(步进电机或交、直流伺服电动机等。
(4)辅助装臵辅助装臵是指数控车床的一些配套部件,包括液压、 气压装臵及冷却系统、润滑系统和排屑装臵等。 2.1.2数控车床的工作原理
数控车床的工作原理:根据工件图样的工艺要求,将车床各运动部
9
件的移动量、速度,动作先后顺序,主轴转速、转向及冷却等要求,以
规定的数控代码形式编制程序单,并输入到机床专用计算机中。然后数
控系统根据输入的指令,机床专用计算机进行编译、运算和逻辑处理后,
输出各种信号和指令,控制车床各个部分进行规定的位移和动作。 2.2仿真系统结构的总体方案设计 2.2.1系统总体方案设计的原则
为了缩短零件从设计到加工的开发周期,提高加工质量,减少制造费用,目前国内外都在采用图形仿真作为支撑工具。但是鉴于我国目前的实际水平,我们在设计仿真软件时要遵循的原则是:
(1)实用性 是仿真软件拥有一定实用前景。
(2)先进性即设计的系统在主要技术上应具有一定的先进性。 (3)可靠性即系统能够准确地模拟数控加工过程,仿真结果可靠。本系统能够根据输入的标准数控代码,计算出刀位轨迹,利用二维图形可靠地反映出实际加工过程。
(4)可移植性为了使研究成果进一步推广应用,便于和其它软件集成,仿真软件采用标准的编程语言和图形软件进行编程实现,尽量减少对硬件的依赖性。
(5)集成性使本系统能够作为一个模块与其它类似软件相结合,形成内容更加丰富的数控仿真软件。
10
2.2.2系统的结构设计
对于系统软件的设计,通常分为结构设计和过程设计两个阶段。结构设计的一条基本原理就是程序应该模块化,因此结构设计的主要任务是确定系统程序由哪些模块构成,以及这些模块之间的关系。而过程设计是确定每个模块的处理过程。结构设计是总体设计阶段的任务,过程,设计是详细设计的任务。这里我们只讨论系统的结构设计,过程设计将在以后的章节中做详细的讨论。根据系统的总体设计原则,对本数控仿真系统进行了结构设计。其总体结构如图2.1所示。
系统总控制模块 文件管理 加工环境 加工过程 加工检验 系统帮助 机床模块工件模块刀具模块夹具模块代码编辑代码翻译 代码检查由图可知,该系统主要由加工环境和加工过程这两大模块组成。下面就各模块的功能进行介绍。
(1)文件管理模块: 对系统中的文件进行管理,如数控代码文件、几何模型文件、刀位文件等。
(2)加工环境模块: 由机床、工件、刀具、夹具构成,通过人机交互
11
动画仿真 图2.1 系统总体结构图 得到加工条件和切削参数等信息,并生成和显示虚拟加工环境。 (3)加工过程模块: 是整个系统的核心模块,对输入的代码进行编译、检查,并生成刀具的位臵数据,以此来驱动加工过程的进行。 (4)动画仿真模块: 是通过对加工环境和加工过程两个模块的综合,得到实际加工过程的动画显示。
(5)加工检验模块: 通过动画的仿真显示,以检验仿真结果的正确性。 6)帮助模块: 对系统的使用、常用术语、编写NC 代码的规则提供详细的解释。
2.2.3 仿真系统人机界面的结构设计
本仿真系统的界面由数控车床操作仿真界面、程序控制加工仿真界面和帮助界面组成。如图2.2所示。
数控车床操作仿真界面 数控车床仿真环境 程序控制加工仿真界面 帮助界面 图2.2 系统界面结构 这三个界面的功能实现,并非单纯的调用某一个模块,它们依据任务请求将与上述几个模块产生联系。如数控车床操作仿真界面既要以数控车床、工件、刀具等作为仿真实体,又要加工仿真模块实现动画,还需要越程检查模块进行检测。而在程序加工仿真中,除了同样要调用这几个功能模块之外,还需要数控程序处理模块实现数控代码的数据处理。帮助界面主要针对初次接触本系统的人员,方便他们查阅和学习本系统相关资料。
12
2.3仿真系统实现的关键技术 2.3.1面向对象的技术简介
所谓对象是指具有一定结构、属性和功能的实体,采用对象和对象类,以及对象之间的相互通信的消息,描述客观世界中的各种事物及其相互关系,建立面向对象和消息的具有层次结构的世界模型。面向对象的程序设计是通过为数据和代码建立分块的内存区域来提供对程序进行模块化的一种程序设计方法,这些模块可以被用作模板在需要时建立其拷贝。根据这个定义,对象是计算机内存中的一块区域。通过将内存分块,每个模块即对象在功能上相互之间保持独立。另外,定义也表明,这些内存块状中不但存储数据,而且也存储代码,这对保证对象是受保护的这一点很重要,只有局部对象中的代码才可以访问存储在这个对象中的数据。这清楚地限定了对象类具有的功能(即一个对象在一个软件系统中所起的作用),并使对象保护它自己不受未知的外部对它的文件的影响,而使其它的数据和功能遭到破坏。定义还表明,这些内存块中的结构可被用作样板产生对象的更多拷贝。在面向对象的程序中,对象之间只能通过函数调用相互通信。一个对象可以调用另一个对象中的函数,这样,对象之间的相互作用方式是消息控制的,外部对一个对象的代码就没有机会通过直接修改对象的内存区域妨碍对象功能。当对象的一个函数被调用时,对象执行其内部的代码来响应这个调用,这使对象出现一定的行为。行为及其结果就是该对象的功能。对象的这一特点导致了模拟世界的一种新型方法:面向对象就是将世界看成是一组彼此相关并能相互间通信的实体即对象组成的。程序中
13