APP下载

基于OPC、Modbus 以及Modbus Tcp/Ip 的iFIX 与PLC 的通信

2013-12-21齐向东

电子器件 2013年2期
关键词:组态以太网通讯

朱 晶,齐向东

(太原科技大学电子信息工程学院,太原030024)

在工业控制领域,一般可以把控制系统分为上位机和下位机两部分。上位机控制系统常通过组态软件来实现,iFIX 是由美国Intellution 公司开发研制的工业自动化组态软件;用于各种场合中的检测、监测及控制的自动化。PLC 和iFIX 广泛应用于工业控制的各个领域,在运行过程中可对运行情况实时监控,提供较高的安全保障。对于控制系统的实时性、可靠性及稳定性等而言,上位机与下位机之间的通信是十分重要的。OPC (OLE for Process Control)、Modbus、以及ModbusTcp/Ip 技术在上位机与下位机之间提供了一系列标准的方法和接口,提高了整个系统的可扩展性。工业以太网与普通以太网兼容,通过工业以太网可以提高控制系统的自动化与信息化水平。

1 ABB AC500 PLC 及iFIX 简介

系统采用ABB 公司的AC500 系列PLC,AC500系列可以在没有模块的情况下预先接线,一种I/O底板可以适用不同的模拟量和开关量模块[1]。同一种CPU 底板和通讯模块可以适用低、中、高3 种不同的CPU。属于组合式PLC,又可以在软件上设置输入输出类型的通道,使用很灵活和方便。AC500 可支持以下通讯接口:CS31,MODBUS,FBP,Profibus,ARCENT,Ethernet[2]。本实验CPU 选用的是PM581。扩展模块使用的是数字量模块DC532和模拟量模块AO523。iFIX 作为当今世界工业控制领域最为流行的上位机监控软件之一,集控制技术、人机界面技术、数据库技术、网络技术于一体,可以实现数据采集、实时过程监控、报警管理、报表查询打印、趋势分析等功能,具有较强的通用性和开放性[3]。采用iFIX 作为工控系统的监控上位机的控制核心,可以充分利用其稳定可靠的系统架构,高效灵活的实时数据库,以及开放的数据存取接口,会取得很好的应用效果。

iFIX 和ABB AC500 PLC 有多种通讯驱动方式,本文主要研究使用Modbus、OPC(OLE for Process Control)、以及ModbusTcp/Ip 通讯技术,采用MB1、OPC、MBE 这3 种驱动方式,iFIX 和PLC 的硬件连接方法;iFIX 4.5 和PLC 软件CoDeSys V2.3 通讯设置。

2 MODBUS 通讯

2.1 MODBUS 协议简介

Modbus 协议定义了一个控制器能够认识的消息结构,描述了控制器请求访问其它设备的过程,定制了消息域格局和内容的公共格式。在Modbus 网络上通信,每个控制器要知道它们的设备地址,识别按设备地址发来的消息,并根据功能码决定产生何种动作,或回应反馈消息[4]。

Modbus 通信为主从通信网络,采用主机查询从机回应方式进行主从设备间通讯[5]。

图1 主—从查询—回应周期表

2.2 使用Modbus 通信的硬件连接

图2 Modbus 通讯硬件连线图

图2 为使用Modbus 通讯的硬件连线图,此实验所选用的PLC 模块有3 个,如图2 左半部分所示,第1 个模块是CPU 模块,其型号为PM581,后面两个模块分别是DC 和AO 模块。由于Modbus 通讯技术的特殊制约性,决定了要使用串口线通讯,配合ABB PLC 的硬件特性,本身PLC 上有1 个485 通信端口,为了和计算机方便连接,使用485 转232 接口,这样就可以与计算机上的USB 接口方便连接。至此完成了iFIX 与PLC 之间的硬件连接,可以看到图中iFIX 接口处使用了MB1 驱动,这属于软件设置的部分,下面会详细叙述。

2.3 使用Modbus 通信的软件设置

2.3.1 MODBUS 通讯在CoDeSys 上的初始设置

CPU PM581 底板串口COM1/COM2 的默认工作方式均为编程方式(Online Access),具体有以下几种不同的工作模式:

-Online Access:编程方式

-ASCⅡ:自由协议,使用功能块COM_SEND 和COM_REC 编程

- MODBUS:MODBUS RTU 主站或作者:Administrator 从站

-CS31-Bus:COM1 为CS31 总线的主站,COM2不能设定为此模式

-SysLibCom:支持库文件SysLibCom.lib 中的功能块

-Multi:可为串口设定两种通讯方式(Online Access、ASC Ⅱ、MODBUS、SysLiCom)、使用功能块COM_SET_PORT 进行切换

首先在ABB AC500 CoDeSys 用户界面的Object Organizer 对象管理器里单击Resource 资源标签,双击PLC Configuration,在弹出的窗口里对COM1 口进行设置。右键系统树Interfaces 接口选项里的COM1,选择Replace Element 里的COM1-MODBUS.这样就将PLC 控制器上的COM1 口设置为MODBUS 通讯口。

然后设置MODBUS 通讯的相关参数:在窗口右方的列表中设置波特率、数据位、校验位、流控制、停止位参数。再来是MODBUS 的类型,这里PLC 作为服务器被访问,所以AC500 此时作为从站,选择Slave;接着设置AC500M 的站号,可以选用的站号为1 ~255 如图3 所示。

完成上述设置以后,AC500M 使用Modbus 协议通讯的设置就完成了。

2.3.2 MODBUS 通讯在iFIX 中的设置

iFIX 软件必须安装固定的通信驱动工具,来实现特定方式的通信。第1 步是安装Modbus 驱动MB1 PowerTool,之后在iFIX 系统配置栏中,选择配置里的SCADA 项,添加I/O 驱动器MB1,在iFIX 系统树中选择运行MB1 Power Tool。

MB1 服务器由3 类对象组成:

(1)通道对象(Channel);在Channel 中设置通讯的参数要特别注意与CoDeSys 中的参数设置一致。

(2)设备对象(Device);在Device 中设置Modbus 的地址位数,及选择主设备的站号。

(3)数据块(Data Block);iFIX 组态软件允许建立多个数据块,可以是模拟量的也可以是数字量的。建立了iFIX 数据库,其中添加变量的的访问顺序是:首先访问设备地址,接着细化到字节地址,最后是位地址。内存中的地址%M 与Modbus 地址的对应关系如表1 所示。

图3 CoDeSys Modbus 通信接口配置图

表1 字或双字的Modbus 地址分配

配置结果如图4 所示。

图4 iFIX Modbus 通信系统

3 OPC 通讯

3.1 OPC 简介

OPC 全称是OLE for Process Control,它的出现为基于Windows 的应用程序和现场过程控制应用建立了桥梁[6]。OPC 技术将各个硬件设备驱动程序和通信程序封装成独立的OPC 服务器,组态软件iFIX(作为OPC 客户端)可以不关心硬件的性能特点,而通过标准的OPC 接口访问OPC 服务器,从而使不同商家的控制系统与应用程序之间接口标准化[7]。OPC 采用客户/服务器模式,与Modbus 类似以OPC 服务器的形式,完成系统通信。下面主要介绍使用OPC 通讯的软、硬件配置方法。

3.2 使用OPC 通信的硬件连接

与Modbus 通信硬件连接所不同的是,OPC 通信技术通过以太网通信,所以用一根网线,一端连接PLC CPU 的网口,另一端连接计算机的网口。这样就完成了通讯硬件的连接。由于使用CPU 网口通信,软件设置方法与Modbus 的不同。

硬件连线图如图5 所示。

图5 OPC 通讯硬件连线图

3.3 使用OPC 通讯的软件设置

使用OPC 通讯的具体的实施流程如图6 所示。

图6 OPC 通信原理图

3.3.1 CodeSys OPC 配置方法

首先把编写好的工程控制程序文件(梯形图或语句表),保存并编译后,选择菜单“Project -(Option”,在种类列表中选择设置Symbol Configuration。

从windows 开始菜单中进入“CodeSys OPC Configurator”,首先向Server 中添加PLC,右键,选择Append PLC,下面进行通讯连接配置,直到检测到所添加的PLC 的IP 地址选择OK 确定,这时,CodeSys 作为OPC Server 的配置完成。

3.3.2 iFIX 端的OPC 设置

图7 iFIX OPC 通信系统

第1 步安装OPC 驱动OPC PowerTool,在系统配置中,选择配置里的SCADA,添加I/O 驱动器OPC[8]。这与Modbus 是相同的,所不同的是完成系统配置后在iFIX 系统树中选择,运行OPC Power Tool,由于在PLC 编程软件中以配置了OPC Server,所以直接添加OPC Server,并选择CoDeSys.OPC.02。变量添加也不需要像Modbus 要寻址,直接浏览PLC OPC 的服务器,选择Group 和Item 以及需要添加的PLC 中变量,就实现了通信。

4 Modbus TCP 通讯

4.1 Modbus TCP 简介

Modbus 是开放协议,IANA(Internet Assigned Numbers Authority,给Modbus 协议赋予TCP 端口502。而同时Modbus 又是标准协议。

(1)Modbus TCP/IP 通常使用TCP/IP 以太网的5 层:

第1 层:物理层,提供设备的物理接口,与市售的介质/网络适配器相兼容;

第2 层:数据链路层,格式化信号到源/目的硬件地址的数据帧;

第3 层:网络层,实现带有32 bit IP 地址的IP报文包;

第4 层:传输层,实现可靠性连接、传输、查错、重发、端口服务、传输调度;

第5 层:应用层,Modbus 协议报文。

(2)Modbus TCP 数据帧

在TCP/IP 以太网上传输,支持Ethernet Ⅱ和802.3 两种帧格式。图8 所示,Modbus TCP 数据帧包含报文头、功能代码和数据3 部分。

图8 Modbus TCP 数据帧格式

4.2 使用Modbus Tcp/Ip 通信的硬件连接

使用Modbus Tcp/Ip 通信与OPC 通信都是通过以太网通信,所以硬件连接相同。然而它又与Modbus 有类似之处,就是在计算机端安装MBE 驱动,如图9 所示。

图9 Modbus Tcp/Ip 通讯硬件连线图

4.3 使用Modbus Tcp/Ip 通讯的软件设置

4.3.1 CodeSys Modbus Tcp/Ip 配置方法

PLC 的Modbus Tcp/Ip 通讯通道配置路径与Modbus 的基本相同,所不同的是不用对从站号重新选择,双击Modbus on Tcp/Ip[fx]这一项,系统默认从站号为1。

4.3.2 iFIX Modbus Tcp/Ip 配置方法

在iFIX 中MBE 的配置与MB1 的配置方法思路基本相同,不同的是主设备中不再选择Modbus主从站号,而是直接写入PLC 的IP 地址。

图10 iFIX Modbus Tcp/Ip 通信系统

5 总结

本次研究依次实现了Modbus、OPC 以及Modbus Tcp/Ip 这3 种通信协议下的ABB AC500 PLC 与组态软件iFIX 的通信。详细介绍了这3 种方式的软硬件配置方法。这3 种通信方式中,Modbus 使用的是串口线,其它两种是通过以太网连接,以太网具有其明显的优势:易于与各种系统互连,可方便的应用于及现场设备通信和实时监控;而且网络实施价格低廉,可全部使用通用网络部件。Modbus 和Modbus Tcp/Ip 在PLC 和iFIX 端的配置类似,但是也有细微的不同。OPC 是通过配置OPC Powertool 来实现通讯。经过详细介绍与分析比较,3 种通信方式各有优缺点,3 种方式中OPC较慢,Modbus Tcp/Ip 居中,Modbus 最快,但各有其自身所适合的应用场合,这为今后类似的组态软件与PLC之间的通信提供了一定的参考价值。

[1] 管娟娟,薛士龙. AC500 及CS31 总线在船舶机舱监控系统中的应用[J].电子测量与仪器学报,2008(5):157-160.

[2] ABB CHINA LTD.AC500 可编程控制硬件操作手册[M].2008.

[3] 和秋鹏,喻寿益,刘摇摇. iFIX 组态软件在循环流化床锅炉控制系统中的应用[J].电子器件,2007,30:989-991.

[4] 温建明,鲁五一,袁庆国. 基于MODBUS 协议的触摸屏与单片机通信的实现[J].起重运输机械,2008(7):58-60.

[5] AGE Schneider Automation Inc. Modicon Modbus Plus Network MB85 Bridge Multiplexer User’s Guide[M].Augustinianum,1995.

[6] 张伟.基于OPC 技术的iFIX 与S7-300 的通信[J]. 煤,2010(5):20-23.

[7] 张竹梅,任庆莲.iFIX 与OPC 技术[J].电气时代,2003(5):94-96.

[8] 宋珂.基iFIX4.5 的矿井提升机监控系统[J].可编程控制器与工厂自动化,2011(1):77-79.

猜你喜欢

组态以太网通讯
《茶叶通讯》简介
《茶叶通讯》简介
通讯报道
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
基于PLC及组态技术的恒温控制系统开发探讨
基于PLC和组态的智能电动拧紧系统
谈实时以太网EtherCAT技术在变电站自动化中的应用
通讯简史
PLC组态控制在水箱控制系统的应用
铸造行业三维组态软件的应用