基于Modbus的施耐德PLC与ABB变频器之间的数据通讯

时间:2022-09-14 05:21:49

基于Modbus的施耐德PLC与ABB变频器之间的数据通讯

文章编号:1003-6199(2011)04-0081-04

摘 要:在自动化控制领域,随着分布式控制系统的发展,在工业上的分布式控

制系统中,采用串行通信来达到远程信息交换的目的更简便。发展起来的RS485是平衡传送的电气标准,在电气指标上有了大幅度的提高。由于其性能优异,结构简单,组网容易,组网成本低廉,RS485总线标准得到了越来越广泛的应用,同时,在RS485总线中采用的Modbus协议是公开的通信协议,而且被很多的工控产品生产厂家支持,该协议已广泛应用于水利、、电力、冶金等行业设备及系统的国际标准中。本文主要阐述采用Modbus协议实现施耐德PLC与ABB变频器的数据通信。

关键词:RS485; Modbus协议;PLC;变频器

中图分类号: TN919.6+ 文献标识码:A

Based on the Modbus Schneider PLC and ABB Converter Data Communication Between

JIA Haitao,ZHANG Kun,LI Liang

(Laiwu iron and Steel Group Department of automation、Shandong Province, Laiwu 271104,China)

Abstract:In the automation and control, along with the development of distributed control systems, distributed control in industry System, using serial communication to achieve the purpose of remote information exchange easier. Developed RS485 Is to balance the electricaltransmission standards in the electrical indicators have increased significantly. Because of its performance, Results Structure is simple, easy networking, network cost, RS485 bus standard has been more widely used, Meanwhile, the bus RS485 Modbus protocol is used in open communication protocol, and is a lot of work Control products manufacturer support, the agreement has been widely used in water conservancy, electric power, metallurgy and other industries equipment and systems System of international standards. This article focuses on Schneider PLC using Modbus protocol converter with ABB Data communication.

Key words:RS485; Modbus agreement; PLC; inverter

1 引 言

本文介绍施耐德昆腾系列PLC与ABB ACS-800系列变频器通过Modbus协议的数据通讯。主要讨论了系统配置及通讯协议、BM85网桥的应用、Unity Pro编程软件环境下的系统组态及通讯编程和变频器运行参数设置等关键技术环节。该技术于2009年11月应用于莱钢银山型钢三期烧结配套机械化料场汽车受料槽及混匀配料自动控制系统中。

2 Modbus 协议简介

Modbus协议详细定义了校验码、数据序列等,这些都是特定数据交换的必要内容。Modbus协议在一根通讯线上使用主从应答式连接(半双工),这意味着在一根单独的通讯线上信号沿着相反的两个方向传输。首先,主计算机的信号寻址到一台唯一的终端设备(从机),然后,终端设备发出的应答信号以相反的方向传输给主机。Modbus协议只允许在主机(PC,PLC 等)和终端设备之间通讯,而不允许独立的终端设备之间的数据交换,这样各终端设备不会在它们初始化时占据通讯线路,而仅限于响应到达本机的查询信号。如图1所示:

3 系统配置及通讯协议

3.1 系统配置

该系统以施耐德公司和ABB公司的相关产品来实现全数字交流调速系统在Modbus网中的通讯及控制原理。其中PLC为施耐德公司的昆腾系列PLC,变频器为ACS 800系列,编程软件为Unity Pro软件,用于对PLC编程和Modbus网进行通讯配置。上位机画面操作采用Vijeo Citect 7.10进行画面编程和操作,与PLC通讯采用以太网通讯方式。具体网络拓扑结构如图2所示:

由网络拓扑结构图可知,整个网络的关键在于网桥BM85,由该网桥将Modbus Plus转成Modbus协议。网桥的4个Port口可以定义为主、从、网络等工作方式,根据实际情况,在这里网桥设置为网络(Network)模式。网桥的设置利用超级终端进行设置。

3.2 BM85网桥的应用

BM85网桥是一种用于接收串行通信设备数据进入MB+网的网络转换设备。它可以作为MB+网的一个节点,根据型号不同,可以接收4个基于RS一232、RS一485或MODBUS串行通信没备的数据。

3.2.1 BM85网桥的设定

BM85网桥设定分为三步。用MODBUS专用联接线,将BM85网桥PORT1口与终端电脑联接起来;设定终端电脑中的超级终端通信工具,采用VTIO0通信协议,通信参数为9600,N,8,1(9600bps,没有校验,8位数据位,1位停止位),进行联接测试,如果联接成功将显示出当前BM85网桥中各接口的通信参数;根据各串口联接设备通信参数按照画面上的命令提示进行4个串行通信口的参数设置。

3.2.2 BM85网桥数据存储格式

BM85网桥数据存储格式为16位,开关量占1位数据位,模拟量占1个字(16位数据位),采集来的数据按接口地址分区存储,数据存储地址按上传数据顺序从寄存器40001开始。

3.3 通讯协议

在本系统中,昆腾PLC作为主站,变频器作为从站,主站向变频器传送运行指令,同时接受变频器反馈的运行状态及故障报警状态的信号。变频器与网桥BM85相连,接入Modbus网中作为从站,接受主站的控制。网桥BM85将主站PLC传送的信号寻址到一台唯一的变频器(终端设备),向变频器写入控制字、设置值或读出实际值、诊断信息等参量,然后,变频器发出的应答信号以相反的方向再传输给主机。Modbus通讯协议有两种传输方式 ,控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。

注意:ACS 800变频器只支持RTU模式,在这里只对RTU模式进行介绍

当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。

代码系统

•8位二进制,十六进制数0…9,A…F

•消息中的每个8位域都是一个两个十六进制字符组成

每个字节的位

•1个起始位

•8个数据位,最小的有效位先发送

•1个奇偶校验位,无校验则无

•1个停止位(有校验时),2个Bit(无校验时)

错误检测域

CRC(循环冗长检测)

4 Unity Pro编程软件环境下的系统组态

及通讯编程

4.1 系统组态

使用Unity Pro编程软件,在项目浏览器的通讯 网络里,新建一个Modbus Plus网络,然后打开硬件组态,双击CPU的Modbus Plus接口,把新建的Modbus Plus网络连接上,同时Peer Cop一定要打钩选上,这样网络的系统组态就建立起来了。

4.2 通讯编程

在Unity Pro编程软件里有专用于Modbus通讯协议的功能块“MBP_MSTR”(如图3所示),通过使用 MBP_MSTR 功能块,可选择14种可用的网络通讯操作之一。根据所用的通讯协议,最多可有 16 个 MBP_MSTR 功能块同时处于活动状态。

•Modbus Plus 同时支持最多 4 个功能块

•TCP/IP 以太网同时支持最多 16 个功能块

所有功能块都使用一条数据事务路径,并且需要经过多个循环才能完成一项操作。可以将 EN 和 ENO 配置为附加参数。

注意:

1)当对 MBP_MSTR 功能块编程时,必须熟悉网络的路由过程。Modbus Plus 网络计划和安装指南详细说明了 Modbus Plus 路由路径结构。如果实现TCP/IP 或 SY/MAX 以太网路由,则必须使用标准以太网 IP 路由器产品。Quantum with Unity Pro TCP/IP 配置用户指南中提供了对 TCP/IP 路由的完整描述。

2)在 FBD 和 LD 段中,该功能块只能在程序级别使用,且只能用于导出的功能块 (DFB)。使用 DFB 时,必须直接将参数 CONTROL 和 DATABUF 与 DFB 的 I/O 引脚连接。出于技术原因,MBP_MSTR 功能块不允许使用 ST 和 IL 编程语言。

3)只有当每个循环中仅执行一个读/写作业时,才有可能在 Quantum PLC 和 Momentum PLC 之间实现 TCP/IP 通讯。如果每个 PLC 循环都发送几个作业,通讯就会停止,并且不会在功能块的状态寄存器中生成错误消息。

示例:

您可以发送 MBP_MSTR.Enable:=(HSBY_NOEPLCMSTR_ON) AND (%SW61.1) AND NOT (%SW61.0)或您可以创建一个布尔变量 primary_state:=(%SW61.1) AND NOT (%SW61.0),然后插入该变量以便执行该段。

5 变频器运行参数设置

变频器与PLC连成通讯网络后,除在Unity Pro编程软件中进行编程外,在每个变频器上也要进行适当的参数设置。

5.1 基本参数设置

1)将98.02改为(Std Modbus)。

2)将98.07改为ABB Drivers 。

3)将52.01改为站号 。

4)将52.02改为波特率(默认为9600)。

5)将52.03改为数据长度和检验方式。

6)将10.01(外部1命令)改为COMM。(若需控制变频器的启停)

7)将11.02(外部控制选择)改为EXT1。(若需控制变频器的速度)

8)将11.03(给定值1选择)改为COMM。(若需控制变频器的速度)

9)将16.01(运行允许命令)改为YES。

5.2 过程参数的连接

过程参数互联完成RMBA双端口RAM连接器与变频器相应参数的定义和连接,包括主站(PLC)到变频器的连接和变频器到主站(PLC)的连接两部分。在变频器上设定下列连接参数。

1)从PLC发送到传动装置变频器的PZD值。

lPZDl――控制字,如变频器的启动使能、停止、急停等控制命令;

lPZD2――变频器的频率设定值;

2)从传动装置变频器发送到PLC的PZD值。

lPZDl――状态字,如报警、故障等变频器运行状态;

lPZD2――变频器的速度实际值、电流实际值等;

参考文献

[1] 陈铭.基于MODBUS协议的设备和PLC实现通信的研究[J].湖南科技学院学报,2009,30(04):16-19.

[2] 张明.施耐德电气PLC与变频器通信向导集锦[S].施耐德技术服务中心TSC,2008.

[3] 马运生.Unity Pro编程手册[S].施耐德技术服务中心TSC,2008.

[4] 马运生.Modicon的MB+网络的BM85网桥参考手册[S].施耐德技术服务中心TSC,2006.

[5] 王艳.ABB ACS800变频器固件手册[S].北京ABB电气传动系统有限公司,2004.省略);张 坤(1983―),男,山东莱芜人,助理工程师,研究方向:自动化控制。

上一篇:任意波形电源的设计 下一篇:采用改进受欢迎度的PageRank优化算法