文档介绍:CSP轧机二级程序间的CORBA通讯
王博
(安徽省马钢第一钢轧总厂)
The munication among CSP level2 programs
Wangbo
(The No1 Steel Plant of Maanshan iron in Anhui province)
摘要:本文简要介绍了轧机二级程序的逻辑结构,以及程序之间使用基于CORBA服务的通讯过程。使用基于CORBA对象服务的通讯程序比一般的套接字网络程序性能更可靠,软件重用性较强,开发起来也较简单。
关键词:CORBA,对象服务,司服,通讯
ABSTRACT: The programs in the puter for the finishing mill and the cooling section are based on CORBA. Using CORBA the L2 processes can execute steadily and easy to migrate to other systems. Compared to the traditional Socket programs, CORBA based programs are simple to write.
Key Word: CORBA, object-oriented service, servant, communication
1 概述
由于面向对象的设计模式和框架能够帮助减轻昂贵的分布式软件概念和抽象核心的重新生成,被人们所看好。基于对象服务的CORBA专属中间件已经被越来越多地用于程序的通讯当中。mon Object Request Broker Architecture),即公共对象请求代理结构,是由OMG小组编写和维护的开放式中间件,为C/S结构程序的通讯提供中间支持。CORBA提供一种规范的描述接口的语言——IDL,并且通过IDL编译器分别生成客户端和服务器端的抽象类代码,进而派生实现成对象。当客户端向服务器端请求数据时,由POA(Portable Object Adapter)激活对象,实例化对象成为伺服,再将请求分发给伺服。被请求的伺服处理来自客户端的请求,最后将结果发送给客户端。
轧机二级程序利用了CORBA中间件进行数据的传输,这样在开发程序时无须考虑网络传输协议以及报文的结构,而是通过IDL语言描述通讯接口,让CORBA对象服务来完成数据的传输和处理。基于CORBA的二级程序可以方便地在不同的系统之间移植,也可以方便地实现不同的操作系统平台之间的通讯过程。
2 轧机二级的逻辑结构
与外部的通讯
轧机二级程序分布运行在四台服务器上,包含非控制程序,控制程序和数据库。这些程序的主要功能是从三级接收计划,预计算设定点,接收板坯数据,下发一级请求的终轧区、冷却区设定点,接收一级生产实绩,以及传送生产数据等。三级下发的计划通过数据库接收,即三级的数据库和轧机二级的数据库之间通过数据库链进行通讯。二级的程序从一级请求生产实绩,并保存在数据库中,一级和二级的通讯直接通过网络传输,使用TCP/IP协议。二级程序之间也有通讯,它们之间是通过CORBA中间件传输数据的。逻辑结构如图1所示:
非控程序
控制程序
数据库
人机界面
一级自动化
C