基于CORBA的DNC系统软件的实现平台建立在车间层控制系统平台的基础上。我们将DNC
系统体系结构划分为三层的客户/服务器结构,以将表示逻辑、业务逻辑和
数据处理逻辑明确划分开来。为此,
表示层用来表示信息和收集数据,此处为由VB实现的可移植的DNC人机接口;业务层响应用户(或其它的业务服务)发来的请求,执行某种业务任务,此处为由VC++来实现DNC应有程序及NC数据管理应用程序;数据层包括数据的定义、维修、访问和更新以及管理,并响应业务服务的数据请求,此处为经IDL功能接口定义封装的NC局部数据库(Access)服务器。这些层并不一定与网络上的具体物理位置相对应,它们只是概念上的层,借助这些概念可以开发出健壮的、基于组件的应用程序。
使用模型,可以把应用程序的需求分解成明确定义的服务。在定义了服务之后,需要进一步创建具体的物理组件来实现它们。根据性能和维护的需求、工作量、
网络带宽以及其它因素,可以在网络上灵活地部署这些组件。
DNC系统软件的数据模型
DNC系统软件中涉及到数据实体包含四类:①与制造设备硬件相关的数据实体(如机床等);②与人机通讯相关的数据实体(如通讯协议实体和
串口通讯实体); ③
数控数据实体(如NC程序号、刀具号、工序号);④输入操作指令或派工单实体。采用面向对象方法将上述实体抽象成为类,可分为能力单元类、NC机床类、 NC控制器类、通讯协议类、
终端服务器类、串口通讯类、NC程序类等。
DNC系统组成
尽管DNC有多种多样的分类方式,但各种分类方式都有构成DNC系统必不可少的基本组成部分。其中主要有:
(2)通讯介质(双绞线,同轴电缆等);
(4)NC或CNC数控设备;
由于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();
};
DNC系统的物理配置基本结构
基于CORBA的车间层
控制系统需要两种层次的互连。第一层是利用计算机局域网技术和协议软件把由异构
计算机组成的车间层控制器、
设备控制器等互连起来,第二层是在这一互连的基础上,实现各节点、各被控的异构制造设备(如加工中心、机器人、PLC等)之间的信息交互,这种交互通过制造信息规范(MMS)实现。作为车间层
控制系统的一个重要组成部分,本文DNC系统的物理配置基本结构如下图所示,主计算机通过
网络介质(具有独立IP地址的
终端服务器)分别连接多台CNC系统实现NC程序的装卸、刀具数据的传递、操作命令的下达和状态信息的反馈。这是一种通过局域网连接起来的通信结构,它具有包括
物理层、
数据链路层、
传输层及
应用层等的四层结构,其中数据链路层采用LSV2通讯协议,传输层采用DNC协议(如SINUMERIK或PHILIPS协议)。