摘要:在综述DCS和现场总线技术的基础上,提出了多台智能仪表控制系统的概念,利用控制PC机通过串行通信接口卡、RS-485总线与智能仪表相连,构建多智能仪表DCS系统,分析了系统的结构,提出了系统的通信协议,其控制对象既可以是实际的工业过程对象,也可以是被控对象模型系统。监控软件提供了明确的控制接口,可以方便地实现各种控制算法的控制实验。 关键词:智能仪表,集散控制系统(DCS),现场总线,通信协议,串行通信 现代化生产需求使过程控制向着多输入多输出的要求发展,以及现代工业的控制分散性和管理的集中性不断提高,集散型控制系统(DCS)应运而生。在目前国外现场总线设备和DCS都很昂贵的情况下,国企的集散系统改造只能走具有自己特色的道路。本文针对以上问题和应用要求,以智能仪表作为现场
控制设备,研究组成DCS及其应用中的有关技术,并提出了一种多智能仪表控制系统的设计方案,构建了多智能仪表DCS实验系统,考虑到实验的实际需要,设计了被控对象模型和计算机
监控系统软件。该实验系统由PC机、智能仪表、串行通信接口卡、RS-485总线以及被控对象模型系统构成。
1、多智能仪表控制系统的体系结构 1.1 一般DCS的体系结构 20世纪70年代中期以来过程计算机控制系统的发展进入以采用4C技术(计算机、通信、控制、CRT显示技术)为特征的集散型控制系统(DCS)的发展时期。从系统结构分析DCS可分为三大基本部分:分散过程控制装置部分、集中操作和管理系统部分以及通信系统部分。三部分的关系如图1所示。 功能分层是DCS的体系特征,它充分反映了集散控制系统的分散控制与集中管理的特点。按照功能分层的方法,多智能仪表控制系统可以分为现场控制站、过程控制站、控制级、生产管理站。 1.2 多智能仪表控制系统的体系结构
图1 DCS结构框图 (1)总体结构 如前所述,多智能仪表控制系统面向国内中小企业技术改造的需求,因此在将一般的DCS的各层功能综合后,我们提出了多智能仪表控制系统的网络结构,如图2所示。 现场级部件主要由智能仪表组成,控制PC机可由工控机组成,也可由普通PC机组成。智能仪表与控制PC机之间采用现场总线连接,现场总线协议应根据控制的要求和智能仪表的特点设计。管理级部件主要为商用PC机或其他计算机组成,其本身构成管理信息系统MIS(Management Information System)。管理PC机与控制PC机之间采用通用计算机网络联接,其具体种类可依据MIS系统组成的要求确定。
图2 多智能仪表控制系统的网络结构图 (2)智能仪表 内置微处理器的出现使智能仪表较传统仪表在设计方法、电路结构以及功能操作都发生了根本性的变化。在智能仪表中,除调节功能几乎完全由微处理器实现,微处理器是核心,在仪表软件的控制下有序地工作。在多智能仪表控制系统中,智能仪表和控制PC机之间交换的信息可分为:测量值;设定值;控制量;状态参数(一是反映智能仪表工作情况或生产情况的数值或0/1逻辑值,二是对智能仪表工作状态和参数的设置,最典型的是PID参数设置)。 (3)控制PC机 控制PC机主要用来实现集中操作和高级控制,是分散控制和管理PC机的集中管理之间的桥梁,一般完成显示与打印、控制管理与操作,系统配置组态的功能。 (4)管理级 要实现上述的控制目标,还必须进行更高层次的控制和管理。现代企业采用MIS系统来实现。 (5)现场总线 智能仪表和现场总线技术是密不可分、相辅相成的,目前国内智能仪表一般用的是通用型单片机如MCS-51系列。因此从技术实现、经济及生产实际上考虑,在采用诸多现场总线标准对于国企技术改造时,采用RS—485总线是较好的选择,多智能仪表控制系统即以RS-485总线作为通信协议的物理传输介质。
2、多智能仪表控制系统的通信协议 智能仪表通信功能是智能仪表DCS系统实现的基础,在参考一些已有的协议的基础上,我们合理设计了通信功能的硬件和软件,提出了多智能仪表控制系统协议,其总体通信策略采用预约协议,即时间被分成时间片,每个智能仪表利用预先留用的时间片与主机通信。现场总线的网络层次模型借鉴OSI七层协议,并进行了部分扩展,侧重于工业应用,构成工业现场的通信网络。本设计中具体的网络规范采用了OSI协议中的应用层、网络层、数据链路层、物理层。在物理层,该系统现场总线的传输介质采用RS-485双绞线。在数据链路层,其主要功能是:信息帧的装配和分解,差错控制和处理。波特率采用标准的1200、2400、4800、9600,可根据系统设计要求进行选取;传输帧采用标准的UART格式。 在多智能仪表控制系统现场总线上,传输帧可分为地址帧和数据帧,其区别在于地址帧中第9数据位为“1”。数据帧中第9数据位为“0”,差错校验采用CRC校验。在网络层,现场总线是多节点共线的一种网络,其网络层的管理由控制PC机完成。地址帧由控制PC机发出,用于唤醒总线上的某台智能仪表以求与之建立通信,智能仪表只有接收到包含特定数据位(通常为其仪表地址编号)的地址帧后才开始通信过程。智能仪表的通信过程以向控制PC机回送包含特定数据位(仪表地址)的数据帧开始;控制PC机接收到该数据帧即确认与该智能仪表建立通信。控制PC机与智能仪表之间的通信即为相互交换信息复帧的过程。 在应用层,对于多智能仪表控制系统而言,应用层协议即为对控制PC机与智能仪表之间相互传送的信息复帧的定义。应用层协议如表1所示:表1 应用层协议
PC机接口和智能仪表DCS实验系统的现场总线之间接口转换电路使用研华公司生产的PCL-743/745串行通信接口卡。每个接口卡具有两个RS-485串行通信口,每个端口有一个具有16字节的先进先出(FIFO)缓冲器的通用异步收发器(UART)。它在将数据放置到总线之前先将数据缓冲入16字节的信息包内,这样就极大地减轻了CPU的负载并且当系统忙或者不能及时处理中断时可以避免数据丢失,这对于Windows操作系统下的高速串行I/O口尤其重要。在接口卡安装之前,通过卡上的一些跳线来设置I/O基地址和中断请求。PCL-743/745串行通信接口卡的通信功能是通过对其内部的寄存器进行读写操作实现的。
3、控制PC机通信功能的编程实现以及监控软件设计 控制PC机的通信功能用Visual C++6.0编制一个一个通信线程ThreadProcForComm (LPVOID param) 实现,这个通信线程只完成数据收发处理,包括flag、data_tra、data_rec、address等变量,flag为通信成功与否标志,data_tra为发送数据缓冲数组,data_rec为接收数据缓冲数组,address为智能仪表地址数组。 监控软件编制应完成以下功能:监视与操作,打印功能和存储功能。在整个软件中,所有的控制功能的实现都由控制子函数来完成。对于设定值和控制量的修改以及控制方式的改变,软件提供了一个Visual C++的类,它有三个成员函数SettingvalueModify ( int h, WORD new ), 参数h表示仪表号,new表示新设置的值;对于控制算法接口,软件同样提供了一个Visual C++的类,这个类有两个成员函数Data_in (measureIn[ ], setpoint[ ])和Data_out (controlOut[ ]),前者把测量值和设定值传入,后者将控制值送出。measureIn[ ]、setpoint[ ] 和controlOut[ ]分别表示测量值、设定值 和控制值数组,它们均是全局静态变量。用户可以在这个类中自由编写具体的控制算法。至于软件的存储与打印功能的设计,这里不再介绍。
4、实例 本设计是在SEU-211智能温控仪基础上改进设计了USTS-100智能仪表。SEU-211智能温控仪也是面向DCS应用的智能控制仪表,其控制对象是电加热炉,采用热电偶作为温度传感器;仪表的输入是热电偶信号,输出的晶闸管触发信号;通信功能方面,通信协议以RS-485为基础,采用地址呼叫/应答后互传数据帧的结构。USTS-100智能仪表在设计时,硬件方面主要做了以下改进:(1)使其测量输入/输出信号还可配接标准电压电流信号,并将多种信号的输入输出电路整合,形成一个能够兼顾不同电路结构和电路参数的输入输出电路,增强其通用性,还设计了被控对象模型系统,这样可以通过软件实现不同的工业过程控制对象的特性,增强DCS系统的应用能力。(2)为实现复杂的控制算法,仪表微机预留了可扩展至32KB的掉电保护内存,可实现程序空间和数据空间的任意配置。(3)通信部分电平转换的核心器件改用性能更好的MAX485。所以硬件电路的改进主要是增强仪表的适应性,通信功能的改进主要集中在软件方面。 为了能够兼顾仪表内部测算控主体严格的顺序性和通信功能的随机性,该仪表软件设计时借鉴了多任务操作系统模块,并且设置任务列表、任务触发/启动机制,这样就保证了各模块之间严格的顺序性要求;同时,通信功能也被分解成小的模块,并且设置收发数据缓存区,根据各通信功能模块与各测算控功能模块之间的相互关系,确定其任务触发机制和任务启动机制。有关这部分的设计细节较为琐碎,在此不再赘述。
5、结语 本文针对国企的工业生产自动化技术改造,根据智能仪表组网的特点,提出了利用控制PC机通过RS-485总线与智能仪表相连组成多智能仪表控制系统。在参考具有代表性的现场总线协议的基础上,提出了多智能仪表控制系统的通信协议,编制了应用软件,并设计了具有此通信功能的智能仪表USTS-100温控仪,从而组成多智能仪表控制系统的实用系统,完成了一个有针对性的实验。实验证明该实验系统运行良好,能够完成各种较为复杂的控制实验。该研究将有助于提高国内智能仪表的研究和应用水平、拓展其应用领域,并适应国内中小型企业的技术改造需求,因而具有理论意义和实用价值。