DNC系统的DNC系统软件体系结构组成
基于CORBA的DNC系统软件的实现平台建立在车间层控制系统平台的基础上。我们将DNC系统体系结构划分为三层的客户/服务器结构,以将表示逻辑、业务逻辑和数据处理逻辑明确划分开来。为此,表示层用来表示信息和收集数据,此处为由VB实现的可移植的DNC人机接口;业务层响应用户(或其它的业务服务)发来的请求,执行某种业务任务,此处为由VC++来实现DNC应有程序及NC数据管理应用程序;数据层包括数据的定义、维修、访问和更新以及管理,并响应业务服务的数据请求,此处为经IDL功能接口定义封装的NC局部数据库(Access)服务器。这些层并不一定与网络上的具体物理位置相对应,它们只是概念上的层,借助这些概念可以开发出健壮的、基于组件的应用程序。
使用模型,可以把应用程序的需求分解成明确定义的服务。在定义了服务之后,需要进一步创建具体的物理组件来实现它们。根据性能和维护的需求、工作量、网络带宽以及其它因素,可以在网络上灵活地部署这些组件。 尽管DNC有多种多样的分类方式,但各种分类方式都有构成DNC系统必不可少的基本组成部分。其中主要有:
(1)DNC控制计算机,包括大容量存储器和1/0接口;
(2)通讯介质(双绞线,同轴电缆等);
(3)通讯接口;
(4)NC或CNC数控设备;
(5)软件系统(包括实时多任务操作系统、DNC通信软件、DNC管理和监控软件、NC程序编辑软件、还可能有数控系统软件)。
由于DNC系统的多种构成形式,系统的大小和复杂程度也各不相同。DNC系统可以小到只有一台DNC主机控制多台数控机床也可以大到包括单元层、车间层和工厂层。所以具体的DNC系统组成要根据其要求达到的目标和具体条件来决定。影响DNC系统配置的因素很多
DNC计算机的任务劳动力成本车间层管理计算机系统被处理信息的层次CNC的数量车间CNC的负载所需要的柔性
但首先应考虑工厂具体的需求,如需要的自动化程度、信息流以及工厂的计算机结构层次等重要因素。
DNC应用程序中的对象从这些类中继承下来,每个对象的方法即该对象的成员函数根据相应的功能需求来定义。下面以NC机床类的定义为例:
‖ncmach.h -NC Machine Class definations
‖NC Machines are part processors.For this class,a part is loaded,
‖a NC file is downloaded to the device,and the machine is started.
class MACHINE-TOOL{
char*CurrentNCFile; ‖currently loaded NC file
intFixtureStatus; ‖fixture status
public:
MACHINE-TOOL();
char* getCurrentNCFile();
void setCurrentNCFile(char?F);
Int getFixtureStatus();
void setFixtureStatus(int S);
virtual int processPart(char? PartName);
virtual int downloadNCFile(char?File);
virtual int stopMachine();
virtual in graspPart();
virtual int releasePart();
}; 基于CORBA的车间层控制系统需要两种层次的互连。第一层是利用计算机局域网技术和协议软件把由异构计算机组成的车间层控制器、设备控制器等互连起来,第二层是在这一互连的基础上,实现各节点、各被控的异构制造设备(如加工中心、机器人、PLC等)之间的信息交互,这种交互通过制造信息规范(MMS)实现。作为车间层控制系统的一个重要组成部分,本文DNC系统的物理配置基本结构如下图所示,主计算机通过网络介质(具有独立IP地址的终端服务器)分别连接多台CNC系统实现NC程序的装卸、刀具数据的传递、操作命令的下达和状态信息的反馈。这是一种通过局域网连接起来的通信结构,它具有包括物理层、数据链路层、传输层及应用层等的四层结构,其中数据链路层采用LSV2通讯协议,传输层采用DNC协议(如SINUMERIK或PHILIPS协议)。