第五章:Modbus通信最新发展
1 OPC Server 及Client系统
1.1何谓OPC
OPC为OLE for Process Control的缩写。是工业界最先进的资料交换标准。回顾自动控制系统的发展,无论是DCS、PLC、监控套装或控制器等系统,都会面临系统整合的瓶颈。各系统无法有效共享资料,对于相同的控制设备,每个厂牌的监控系统都要设计一套自有的通信Driver。当MIS 系统需要现场实时信息时,也需要一连串复杂的信息接口才能达到所要的功能。面对以上种种状况,由一工业自动化领导厂商,诸如
Fisher-Rosemount、Rockwell Software、Opto32、Intellution、Intuitive Technology 及Microsoft等,于1996年共同成OPC Foundation,希望建立一个业界标准接口规格。由目前信息使用的发展方向来看,大多数的client端使用的系统为MS Windows,故使用OLE的架构有利与大多数的使用者整合,且利用现有的COM、DCOM、ActiveX等技术,可快速将系统建立完成,现有系统所要变动的项目最少等优点。故当OPC架构提出后,不到数年间已成为业界的标准,且成为自控系统都必须具备的通信功能。
1.2OPC基本架构
对于工厂自动化信息架构可分为三个主要层面:
z Plant Floor:仪表信号、现场控制器、各种资料收集设备等。此层次有各种的现场运转信息,设定系数、各种command等信息,需要与上层
系统作资料交换。
z Process Floor:此为DCS、SCADA等统合控制及操作系统,此控制结果要下传至现场设备,也要将执行结果上传至MIS系统。
z Business Floor:全公司或全厂的管理系统,需要现场实时信息做回馈,也要将生产排程计划等资料下载至下层系统。系统会使用Database、
Spreadsheet、MES套装等工具或系统。
OPC就是一套介于以上三层系统间的通信标准接口规格。只要依据此接口规格所开发的软件系统,就可以做到系统间或设备间的资料交换,而不会受到不同系统或设备的限制。
应用系统架构图:
图(5-1):OPC接口基本架构图
z OPC Server可依需求设计而提供此方面的服务,例如连接不同的自控设备,或特殊的数据处理及计算功能。
z OPC Client可同时连接数个OPC Server以存取所要的资料。应用系统可为具有OPC Client的套装监控系统,或自行开发的报表系统。
z符合MS COM、DCOM架构,可以取入网络内任一个OPC Server的服务。
z由OPC Client的角度来看,可达到下列的利益:
¾Client的开发者不需考虑Driver的设计,此由OPC Server厂商提供此服务。
¾不需重复投入Driver的开发,只须向市场上购买该Driver的OPC Server即可。
¾即使不同操作系统或自控设备也可通信,只要符合OPC接口规格。
¾当自控设备硬件改变时,只要更新OPC Server即可。符合使用者的最大弹性需求。
¾以往两个监控系统,不可能同时对同一个控制设备做通信,如今透过同一窗口OPC Server即可做到。
¾目前有太多的应用软件开发者,使用VB、Delphi、Power Builder等等,以往对于存取现场实时信息束手无策,如今藉由OPC Server
的联机达到完美的地步。
z OPC如同一条无形的线连接自控硬设备与应用软件系统,也可将OPC Server视同对象,买来即可使用,非常便利。
OPC接口架构图:
系统资料的交换可分为两大部分,一为与自控设备的连接,此依不同设备有不同的通信协议,需要设计不同的OPC Server与其相对应。另一为与Server与Client间的通信,此部份既为OPC的COM接口规格。如同大部分COM的设计方式,OPC也是client/server架构。
其中Client要顾及大部分应用系统的开发者,简单易用、快速上线等原则,多数开发工具都具备OPC Client功能。另外Server方面需要应付多数个Client的资料要求,且要面对不同自控硬件而有不同的通信协议,故要以C++开发工具才可掌控所有的系统设计功能,都以专业公司设计各种OPC Server,以提供使用者选择。
1.3OPC主要功能
OPC主要功能是工业界一种资料交换的通信接口标准。对于第一阶段的功能为三大类:Online Data Access、Alarm and Event Handling、Historical Data Access等。其它功能如:Security、batch、Historical alarm and event data access等属于下一次版本。
OPC架构为COM的接口,希望能达到原则为:简单易用、适合多数厂商所需、提供高级语言的功能、有效率的资料交换等。所以OPC规格包含:一组custom COM Interface以及OLE Automation Interface以供VB、Excel等使用。并且利用DCOM技术以作为Remote Client的接口。
z Online Data Access:此为最基本的功能,也是绝大多数应用程序的需求。此包含Device、Group、Item等三种层次的对象,以对应一个现场的信号点。Device定义针对某一个特定的自控设备,具有该系统的通信协议。Group为某一特定组合的资料,例如:Group代表一个特定的操作画面或报表的数据。最后Item就对应某一个信号点,此信号点依据控制设备的规格可以读取或写入,又信号种类可有不
同的资料型式,例如:DI/O以Boolean表示、AI/O以整数或实数表示。OPC Client 可设定通信间隔的Polling Rate以因应资料的更新速率。每一个OPC Item具有Value、Quality及Time Stamp等三种数值。Value为VARIANT 资料型态,表示信号真正数值可为实数、整数、Boolean或字符串等型式。Quality表示该信号的品质,例如:通信断线时,品质为Bad。
Time Stamp纪录该信号取入的时间。
z Alarm and Event Handling:此方面的Interface是定义,当有特定的Alarm 或Event发生时,会被通知的OPC Client。同时也允许OPC Client对Server做设定,以决定何种状态需要被通知。发生不正常的状况称为Alarm,例如:某一点AI发生超上限或超下限,或者某一个马达油位不足跳脱的DI Alarm等。Event是发生一件被定义的事件,需要OPC client被告知,例如:操作员激活主马达,控制系数被修改,系统发生不正常状况等。IOPCEventServer Interface提供下列OPC Client使用方
法:
¾定义OPC Event Server所要提供的Alarm及Event的型式。
¾将定义的Alarm及Event登录于Server上,并具有过滤(Filter)功能以取入特定的Event等。
¾Server如何处理所定义的Alarm及Event。
¾Server提供查询Alarm及Event的相关画面。
z Historical Data Access:目前大多数的历史趋势资料,都以自订的规格提供资料,各系统间并无兼容性。故需要再定义共同的规范,以做到随插随用的环境。为了适合各方面使用者的不同需求需要考虑到下列资料型式:
¾Simple Trend data servers:只提供单纯的原始资料,也就是由Online Data Access server传过来的资料,包含Time Value and Quality。
¾Complex data compression and analysis servers:除了原始资料的储存外,更提供资料加工,例如:各种统计分析功能、资料比较等,也
提供资料批注的功能,更为便利使用。
1.4Modbus OPC Server Demo System
本书提供Modbus 及Modbus/TCP等两种OPC Server试用版(Trial Version),符合OPC Data Access V1.0 and V2.0规范,可以执行2小时的联机,当Demo时间到时,就不做联机功能。以下说明OPC Server的操作方法,并且将利用此OPC Server进一步说明,如何以VB程序设计一个OPC Client功能。
c程序设计pdf下载
图(5-3):OPC Server Device Properties Dialog画面
首先选择Menu [Add][New Device],显示出Device Properties Dialog Box
如上图所示,以建立一个新的Device。
Dialog Box的各字段说明如下:
z Name:Device Name必须是唯一的
z Device Type:联机的Modicon PLC Type或Modbus Device
z Comm Port:所连接的Comm Port总共有8个Port
z Address:Modbus Address也就是每个Modbus Device的ID No.
z Timeout:通信逾时时间,超过此时间表示通信断线
z Simulation:选择此项目后,OPC Server不会实际通信,提供仿真数据,此可以用来当未接实际Modbus设备时,显示仿真信号值提供给其它
OPC Client程序联机测试用。
z Word Swap:当所接到的Modbus资料,其16 bit integer依据Protocol 规定为High Byte在前,Low Byte在后的顺序,但是某些Modbus设备
所传送的资料格式相反,此利用此选项修正之。
图(5-4):OPC Server Group Define Dialog画面
然后选择Menu [Add][New Group],显示出Group Dialog Box如上图,输入Group Name。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。