搜档网
当前位置:搜档网 › ATV71变频器与西门子s7-200进行modbus通讯(PLC读写变频器)

ATV71变频器与西门子s7-200进行modbus通讯(PLC读写变频器)

ATV71变频器与西门子s7-200进行modbus通讯(PLC读写变频器)
ATV71变频器与西门子s7-200进行modbus通讯(PLC读写变频器)

ATV71变频器与西门子S7-200通讯

强烈推荐!!!

一、接线【参考1:Concept_Quantum与ATV71的Modbus串行通信(Modbus通信控制

启停、模拟量输出给定速度)_快速操作指南.doc

参考2:Twido与ATV71的Modbus串行通信(Modbus通信给定速度、数字量输出控

制启停)_完全通信指导.doc】

1.ATV71变频器接口定义如下,4脚5脚为RS485。我们这里使用RS485转RS232将计

算机与变频器连接起来。

二、变频器参数设置【参考1:Concept_Quantum与ATV71的Modbus串行通信(Modbus

通信控制启停、模拟量输出给定速度)_快速操作指南.doc

参考2:Twido与ATV71的Modbus串行通信(Modbus通信给定速度、数字量输出

控制启停)_完全通信指导.doc】

三、上位机软件调试(读写变频器内部值)

(1)如下图所示,按照相关文档填写发送命令,打开串口,通讯正常即可接受到变频器返回的相应数据

(2)读写协议(参考:ATV71集成式Modbus用户手册(2005.02).pdf)

(3)变频器内部地址及含义如下:【参考:ATV71 COMMUNICATION MANUAL 12-2 CN.pdf】

四、PLC与变频器通讯

1.变频器参数设置(此时变变频器参数设置可能与之前不一样)

2.PLC程序(编写与变频器的通讯程序,实现相关数据的读写)

五、 1

六、 1

西门子S7200与VLT2800 Modbus RTU通讯调试说明

Modbus Modbus , Modbus Modbus Modbus 1 Modbus Modbus RS-232C Modem Modbus Modbus 2 Modbus 3 1 03 2 ASCII RTU Modbus Modbus ASCII : 1 ... n LRC LRC RTU

1 ... n CRC CRC ASCII RTU Modbus MAP Modbus Plus Modbus 1 ASCII Modbus ASCII 8Bit ASCII 1 ASCII 0...9 A...F ASCII 1 7 1 1 2 Bit LRC( ) 2 RTU Modbus RTU 8Bit 4Bit ASCII 8 0...9 A...F 8 1 8 1 1 2 Bit CRC( ) Modbus ASCII RTU Modbus RTU 3.5 0...9,A...F 3.5

1.5 3.5 CRC CRC T1-T2-T3-T4 8Bit 8Bit n 8Bit 16Bit T1-T2-T3-T4 1 ASCII 8Bit RTU 0...247 ( ) 1 (247) 0 Modbus 2 ASCII 8Bits RTU 1 (255) ( ) 1 0 0 0 0 0 0 1 1 03H 1 0 0 0 0 0 1 1 83H 3 00...FF ASCII RTU 03 10 0 0B 4 Modbus ASCII ASCII ASCII LRC LRC RTU

RTU 16Bits ( 8 ) CRC CRC Modbus LRC CRC RTU CRC CRC CRC 16 CRC CRC CRC 1 16 8 8Bit CRC CRC 8 OR 0 LSB LSB 1 LSB 0 8 8 8 CRC CRC 1.2004 6 15 VLT6000 2.6X VLT2800 2.8X Modbus RTU 175Z3362 Modbus RTU VLT6000 VLT2800 Modbus RTU RS485 +/- 68/69 LCP 5XX 9600Baud, 19200Baud. 2.DANFOSS ANFOSS ANFOSS SIMATIC S7-200 PLC S7-200 PLC FreeportMode DANFOSS DANFOSS VLT2800 MODBUS RTU .S7

Modbus RTU通讯协议

要实现Modbus RTU通信, 一、需要STEP 7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装STEP 7-Micro/WIN32 V3.2 Instruction Library(指令库)。Modbus RTU功能是通过指令库中预先编好的程序功能块实现的。 Modbus RTU从站指令库只支持CPU上的通信0口(Port0) 基本步骤: 1. 检查Micro/WIN的软件版本,应当是STEP 7-Micro/WIN V3.2以上版本。 2. 检查Micro/WIN的指令树中是否存在Modbus RTU从站指令库(图1),库中应当 包括MBUS_INIT和MBUS_SLAVE两个子程序。 如果没有,须安装Micro/WIN32 V3.2的Instruction Library(指令库)软件包; 1. 西门子编程时使用SM0.1调用子程序MBUS_INIT进行初始化,使用SM0.0调用 MBUS_SLAVE,并指定相应参数。 关于参数的详细说明,可在子程序的局部变量表中找到; 调用Modbus RTU通信指令库图中参数意义如下: a. 模式选择:启动/停止Modbus,1=启动;0=停止 b. 从站地址:Modbus从站地址,取值1~247 c. 波特率:可选1200,2400,4800,9600,19200,38400,57600,115200 d. 奇偶校验:0=无校验;1=奇校验;2=偶校验 e. 延时:附加字符间延时,缺省值为0 f. 最大I/Q位:参与通信的最大I/O点数,S7-200的I/O映像区为128/128, 缺省值为128 g. 最大AI字数:参与通信的最大AI通道数,可为16或32 h. 最大保持寄存器区:参与通信的V存储区字(VW) i. 保持寄存器区起始地址:以&VBx指定(间接寻址方式) j. 初始化完成标志:成功初始化后置1

用西门子CP341实现Modbus RTU通讯

用西门子CP341实现Modbus RTU通讯 1 概述 CP341模块是西门子S7—3001400系列PLC中的串行通讯模块。该模块具有1个串行通讯口(RS232C或 TTY或RS485/422),RS422/485的通讯最大距离位1200m。支持以下协议ASCII,ModbusRTU远程终端,Data Highway(DF1协议),电气接口为15针D型孔接 4 CP341驱动配置 在您的计算机上首先安装STEP7 5.x软件和CP34x模板所带的软件驱动程序.模板驱动程序包括了对CP341进行参数化的窗口(在STEP7的硬件 组态界面下可以打开)、用于串行通讯的FB程序块。当系统上电,CP34x模板初始化完成后,CP34x上的sF灯点亮: 在硬件组态窗口中双击CP341模板,打开CP341模板的属性窗口,选择通讯协议modbus,网络工作方式设置为半双工,请记录下模板的硬件地址 以便在编程序时用到。双击CP341模板属性窗口中的protocol 协议图标进行协议参数设置,这里我们使用默认值:96oo bit,s, 8 data bits, 1 stop bit,even parity。对的硬件组态存盘编译,下载硬件组态.如果此时sF灯亮.请将通讯电缆与另一个通讯伙伴进行连接后.SF灯熄灭,说明硬件组态正确。 5 程序编写 (1)CP341发送模块的设计而发送程序主要是通过调用功能块FB8来实现,FB8 是基于上升沿触发工作的.来一个上升沿FB8工作一次向总线上发 送一个请求数据包,所以在程序中一定要设计一个触发代码段,来不断的使REQ:=M50.0循环往复的置“1”置“0”,这样FB8就可以正常运行了。 在设计程序时一定要注意FB8的参数SF:=‘S’及R_TYP:=‘X’的值都是大写否则程序调试不成功。FB8需要一个背景数据块.这一背景数据块一般由系统自动生成.以上程序中为DB3;对于通过CP34 1的Modbus Master驱动通讯的发送模块需要设计发送数据块DB块.用来对主站发送参数进行设置和初始化。 Modbus能够实现的功能代码共有10个.分别针对不同的寄存器读写功能设置.功能代码Initial value:B#16#4的功能是读从站的输出数据寄存器 整数型、状态字或浮点型数据:寄存器的起始地址Initial value:W#16#0是功能代码规定的寄存器的起始地址;读取寄存器的数目Initial value:4的意义是从起始地址开始总共读取4个寄存器。 (2)CP341接收程序的设计 接收程序是调用FB7来实现的,由于CP341可以处理接收程序的细节部分.因此对于设计者来说只需要进行简单的设计就可以实现数据的接收。接 收程序同样也需要设计背景数据块本例中为Db44块和接收数据块本例中为DB5块。 (3)装载设计好的发送接收程序FC 1与FC2。 6 参数化远程从站RTU . 以上介绍的是Modbus主站的应用与程序设计,没有对远程终端RTU从站进行介绍.其实在进行程序调试时必须对从站进行一些参数设置使其参 数与主站要求的一致,包括协议类型、从站地址、寄偶校验、传输超时等,否则

西门子S7200与变频器MODBUS通讯实例详解

西门子S7200与变频器MODBUS通讯实例详解 西门子S7200PLC简介 西门子S7-200PLC在实时模式下具有速度快,具有通讯功能和较高的生产力的特点。一致的模块化设计促进了低性能定制产品的创造和可扩展性的解决方案。来自西门子的S7 - 200微型PLC可以被当作独立的微型PLC解决方案或与其他控制器相结合使用。 Modbus通讯协议简介 Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。 ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。其系统结构既包括硬件、亦包括软件。它可应用于各种数据采集和过程监控。 ModBus网络只有一个主机,所有通信都由他发出。网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。 1 MODBUS RTU协议在S7-200中的应用原理 1.1 MODBUS RTU协议与S7-200相互关系简介 S7-200 CPU上的通讯口Port0可以支持MODBUS RTU协议,成为MODBUS RTU从站。此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。 想在S7-200 CPU与其他支持MODBUS RTU的设备使用MODBUS RTU协议通讯,需要由有S7-200 CPU做MODBUS主站。S7-200 CPU做主站必须由用户自己用自由口模式,按相关协议编程。 2 从站指令的用法: S7-200控制系统应用中,MODBUS RTU从站指令库只支持CPU上的通讯0口(Port0)。要

S7-200的MODBUS RTU主站协议库使用方法

S7-200 MODBUS-RTU VLT . MODBUS MODBUS CTROL MODBUS MGS CRC Micro/WIN V4.0 SP5 Modbus RTU

1. Micro/WIN V4.0 SP5 1. Modbus RTU Port 0 Port 1 2. Modbus RTU 3. Modbus RTU CPU CPU 2.00 2.01 6ES721* ***23-0BA* 1.22 1.22 S7-200 CPU Modbus RTU Modbus RTU I/O Modbus RTU 1. 2. Modubs RTU .Modbus RTU 1. Modbus RTU SM0.0 MBUS_CTRL 2. SM0.0 Modbus RTU : a. EN SM0.0 b. Mode 1 Modbus 0 PPI

c. Baud 1200 2400 4800 9600 19200 38400 57600 115200 d. Parity 1 2 e. Timeout 1000 1 1 - 32767 f. Done 1 MBUS_MSG g. Error Done 1 1 2 3 2. Modbus RTU MBUS_MSG Modbus 3. Modbus RTU : a. EN MBUS_MSG MBUS_MSG MBUS_MSG Done b. First c. Slave 1 - 247 d. RW 0 1 1. 2. e. Addr 00001 0xxxx - 10001 1xxxx -

西门子CP441-2实现Modbus RTU通讯

西门子CP441-2实现Modbus RTU通讯 1 概述 CP441模块是西门子S7—300,400系列PLC中的串行通讯模块。该模块具有1个串行通讯口(RS232C或 TTY或RS485/422),RS422/485的通讯最大距离位1200m。支持以下协议ASCII,ModbusRTU远程终端,Data Highway(DF1协议),电气接口为15针D型孔接头。可以使用这种通讯模块实现S7300/400与其它串行通讯设备的数据交换。例如打印机、扫描仪、仪表、Modbus主从站、Data Highway站、变频器。USS站等。CP441模块可以同时与多台串行通讯设备进行通讯。如同时连接多个变频器、连接多个智能仪表等。如果采用RS422/485 modbus RTU通讯方式,需要在发送的数据包中包括站号、数据区、读写指令等信息。供CP441模块所连接的从站设备鉴别数据包是发给哪个站的。以及该数据包是对那个数据区进行的读或写的功能。 Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准,有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程。如回应来自其它设备的请求,以及怎样侦测错误并记录等。它制定了消息域格式和内容的公共格式。MODBUS为单主站网络协议,所以系统中只能够有一个Modbus主站,所有通信都由它发出并且只能够实现主站和从站的数据交换,从站之间不能进行数据交换,Modbus可支持247个之多的远程从属控制器。但实际所支持的从机数要由所用通信设备决定。采用这个系统。各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。CP441插人MODBUS主站Dongle(狗)或插入从站Dongle,就可以作为MODBUS主站。或者作为MODBUS 从站。在ModBus系统中有两种传输模式编码可选择,一种模式是ASCII(美国信息交换码),另一种模式是RTU(远程终端设备),由这两种模式定义这两种传输模式与从机PC通信的能力是同等的。选择时应视所用ModBus主机而定。每个ModBus系统只能使用一种模式。不允许两种模式混用。字串9 2 RTU帧结构 使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。在相同的网络波特率下采用多个的字符时间,这是最容易实现的。传输的第一个域是设备地址,可以使用的传输字符是十六进制的0...9,A...F。网络设备不断侦测网络总线,包括停顿间隔时间内。当第一个域(地址域)接收到后,每个设备都进行解码以判断是否发往自己的,在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束.一个新的消息可在此停顿后开始。整个消息帧必须作为一连续的流转输,如果在帧完成之前有超过1.5个字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设

利用MODBUS实现西门子PLC与ABB变频器的通信控制

利用MODBUS实现西门子PLC与ABB变频器的通信控制 变频器广泛应用于各行各业,但因其显示面板简单,且在对数据的处理、计算、保存等方 面存在弱点,在一定程度上影响了变频器在复杂控制系统中的应用。尤其在许多台变频统一控 制应用中,控制线缆的敷设也加大了成本和故障率;不过,通信技术与变频器相结合可以弥补这些缺点,可以利用PLC与变频器之间的通信功能实现远程控制,同时增强了变频器对数据处理、故障报警等方面的功能。 在自动化控制领域,随着分布式控制系统的发展,在工业上的分布式控制系统中,采用串行通信来达到远程信息交换的目的更简便。发展起来的RS485是平衡传送的电气标准,在电气 指标上有了大幅度的提高。由于其性能优异,结构简单,组网容易,组网成本低廉,RS485 总线标准得到了越来越广泛的应用,同时,在RS485总线中采用的 MODBUS协议是公开的 通信协议,而且被很多的工控产品生产厂家支持,该协议已广泛应用于水利、水文、电力等行 业设备及系统的国际标准中。本文以西门子PLC同ABB变频器的通信为例来阐述采用MODB US协议实现此方式通信控制的方法。 系统配界方案及通信协议 1、系统配置方案 在此系统方案中,我们考虑系统的应用成本和实用性,PLC采用西门子公司的SIMATIC S 7-226系列,S7-200系列属于小型可编程序控制器,可用于代替继电器的简单控制场合,也 可以用于复杂的自动化控制系统。S7-226系列PLC的CPU内部集成了2个通信口,该通信 口为标准的RS485口,可在三种方式下工作,即PPI方式、MPI方式相自由通信口方式。PP I(Point-to-Point)是西门子专为57-200系列开发的一个通信协议,为主/从协议,我们可以 将第一个口设为PPI方式,用于连接PC机,用来作人机信息交换,而第二个口设为自由通信 口方式,自由口通信方式是S7-200的一个很有特色的功能。它是一种通信协议完全开放的工 作方式,在该方式下的通信口的协议由外设决定,PLC通过程序来适应外设,从而使得S7-20 0系列PLC可以与任何具有通信能力的并且协议公开的设备相通信,即S7-200可以由用户自己定义通信协议。采用ABB的ACS800系列变频器时,需配置NNMBA-01适配模块。相关 系统构成框图如附图所示。在该系统中,PLC的Port2和变频器构成MODBUS总线,通过S 7-226PLC控制多台变频器完成系统控制需要,实现对变频器的速度设定、运行状态监控及参 数交换等。

西门子PLC Modbus通讯

1.Modbus RTU主站 1.1 Modbus RTU 主站指令库 1.2 Modbus RTU 主站功能编程 1.3 关于 Modbus RTU 主站协议及地址 1.4 Modbus RTU 主站常问问题 1.5 Modbus RTU主站例程 2.Modbus RTU从站 2.1 CPU 上的通信口(Port0)支持 Modbus RTU 从站通信协议 2.2 编程基本步骤: 2.3 Modbus RTU 从站地址与S7-200的地址对应 2.4 Modbus RTU 从站指令库支持的功能码 2.6Modbus RTU从站例程 2.7 Modbus RTU 从站常见问题 3.STEP 7-Micro/WIN 的标准指令库 3.1 分配库指令数据区 1.Modbus RTU主站 1.1 Modbus RTU 主站指令库 西门子在 Micro/WIN V4.0 SP5 中正式推出 Modbus RTU 主站协议库(西门子标准库指令)。

图 1. 西门子标准指令库(Micro/WIN V4.0 SP5) Modbus指令库 注意 ● 1. Modbus RTU 主站指令库的功能是通过在用户程序中调用预先编好的程序功能块实现的,该库对 Port 0 和 Port 1 有效。该指令库将设置通信口工作在自由口模式下。 ● 2. Modbus RTU 主站指令库使用了一些用户中断功能,编其他程序时不能在用户程序中禁止中断。 ● 3. Modbus RTU 主站库对CPU的版本有要求。CPU 的版本必须为 2.00 或者 2.01(即订货号为 6ES721*-***23-0BA*),1.22版本之前(包括1.22版本)的 S7-200 CPU 不支持。 使用 Modbus RTU 主站指令库,可以读写 Modbus RTU 从站的数字量、模拟量 I/O 以及保持寄存器。要使用 Modbus RTU 主站指令库,须遵循下列步骤: ● 1.安装西门子标准指令库 ● 2.按照要求编写用户程序调用 Modubs RTU 主站指令库 1.2 Modbus RTU 主站功能编程 1. 调用 Modbus RTU 主站初始化和控制子程序 使用 SM0.0 调用 MBUS_CTRL 完成主站的初始化,并启动其功能控制: 图 2. 用 SM0.0 调用 Modbus RTU 主站初始化与控制子程序 各参数意义如下: a. EN 使能:必须保证每一扫描周期都被使能(使用 SM0.0)

S7-200 Modbus RTU 通信

S7-200 Modbus RTU 通信 关键字 库文件RS485网络主站:编程地址错误例程从站:编程地址错误例程 S7-200 Modbus RTU 通信简介 Modbus 是公开通信协议,具有两种串行传输模式,ASCII 和RTU。详细的协议和规,请访问Modbus 组织的:https://www.sodocs.net/doc/3713615770.html,/ S7-200 通过以下方式支持Modbus RTU 通信协议: ?S7-200 CPU 上的通信口0(Port 0)通过指令库支持Modbus RTU 从站模式 ?S7-200 CPU 上的通讯口0 和1 (Port 0 和Port 1)通过指令库支持Modbus RTU 主站模式在S7-200 CPU 通信口上实现的是RS485 半双工通信,使用的是S7-200 的自由口功能。 通过S7-200 CPU 通信口的自由口模式实现Modbus 通信协议,可以通过无线数据电台等慢速通信设备传输。这为组成S7-200 之间的简单无线通信网络提供了便利。 详细情况请参考《S7-200系统手册》(2002 年10 月或以后版本)的相应章节。 常问问题 S7-200 是否支持Modbus ASCII 通信模式? 西门子不提供支持上述模式的的现成指令库,需要用户自己用自由口模式编程。 目录 1 Modbus RTU主站 1.1 主站指令库 1.2 主站功能编程 1.3 主站协议及地址 1.4 主站例程 1.5 主站常问问题 2 Modbus RTU从站 2.1 CPU 上的通信口(Port0)支持Modbus RTU 从站通信协议 2.2 从站编程基本步骤 2.3 从站地址与S7-200的地址对应 2.4 从站指令库支持的功能码 2.5 从站例程 2.6 从站常见问题 3 STEP 7-Micro/WIN 的标准指令库 3.1 分配库指令数据区 3.2 添加指令库 3.3 删除库指令 4 RS-485网络 4.1 S7-200系统中的RS-485通信 5 RS-485网络的硬件组成 5.1 连接网络连接器 5.2 网络连接器 5.3 线型网络结构 5.4 终端电阻和偏置电阻

ModBusRTU通讯协议

ModBusRTU通讯协议 Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneid er Automation)部门的一部分,现在Modbus已经是工业领域全球最流行的协议。此协议支持传统的RS-232、RS-422、RS-485和以太网设备。许多工业设备,包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。 当在网络上通信时,Modbus协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成应答并使用Modbus 协议发送给询问方。 Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。此协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。标准的Modicon控制器使用RS232C实现串行的Modbus。Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和就答的方式,数据通讯采用Maser/Slave方式,Master端发出数据请求消息,Slave 端接收到正确消息后就可以发送数据到Master端以响应请求;Master端也可以直接发消息修改Slave端的数据,实现双向读写。 Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC 校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。另外,Modbus采用主从方式定时收发数据,在实际使用中如果某Slave站点断开后(如故障或关机),Master端可以诊断出来,而当故障修复后,网络又可自动接通。因此,Modbus协议的可靠性较好。 对于Modbus的ASCII、RTU和TCP协议来说,其中TCP和RTU协议非常类似,我们只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可。 (一)、通讯传送方式: 通讯传送分为独立的信息头,和发送的编码数据。以下的通讯传送方式定义也与

S7-200与安科瑞仪表modbus通讯实例

2 接线 将端口0或者端口1的引脚3接安科瑞仪表的通讯端子的A+,引脚8接安科瑞仪表的通讯端子的B-。 3 说明 S7-200 CPU上的通信口在电气上是标准的RS-485半双工串行通信口,此串行字符通信的格式:1个起始位;7/8位数据位;1位奇/偶/无校验;1停止位。通信波特率可以设置为1200、2400、4800、9600、19200、38400、57600或112500,符合这些格式的串行通讯设备可以和S7-200进行自由口通讯,Modbus RTU指令库就是使用自由口编程实现的。 4 Modbus RTU主站库 使用Modbus 主站指令库时需要注意的几点: 需要S7-200的编程软件是 Micro/WIN SP5及以上版本; Modbus RTU 主站库对CPU的版本有要求,CPU 的版本必须为或者(即订货号为6ES721*-***23-0BA*); Modbus主站可读/写的最大数据量为120个字(指每一个 MBUS_MSG 指令); Modbus 主站库支持Port0和Port1(从站库只支持Port0口),本例中用Port0; 使用Modbus 库时必须对库存储区进行分配,见下图设置,而且分配的空间不能和程序中其它空间冲突,否则编译调用会报错。 图4 库存储区设置 Modbus主站库支持的功能码和地址对应关系: Modbus地址读/写Modbus从站须支持的功能 00001~09999读功能1:读输出点 数字量输出 写功能5:写单个输出点功能15:写多个输出点 10001~19999 读功能2:读输入点数字量输入 30001~39999 读功能4:读输入寄存器输入寄存器 40001~49999读功能3:读保持寄存器 保持寄存器 写功能6:写单个寄存器功能16:写多个寄存器

西门子PLC modbus RTU-通讯案例

西门子S7-200 Modbus例程 参考本文介绍可以很快掌握MODBUS通讯的应用问题, 使用下面的例程你可以在S7-200CPU之间设置一个简单的Modbus通讯。 这个例子是关于Modbus功能码6的(写从站保持寄存器),也可以作为其他所支持的功能码:1, 2, 3, 4, 5, 15 和16 的基本参数设置步骤。 要求: 要使用Modbus协议必须先在STEP 7 Micro/Win上安装指令库。 Modbus主站协议只支持STEP 7 Micro/Win V4.0 SP5及其以上版本.。 #61623 1. 硬件设置 #61623 2. 参数匹配 #61623 3. 指令库的存储地址 #61623 4. 保持寄存器值得传输 1. 硬件设置 例程中的Modbus通讯是在两个S7-200 CPU的0号通讯口间进行的(最好每个C PU都有两个通讯口)。在主站侧也可以选择相应库文件 "MBUS_CTRL_P1" 和 "M BUS_MSG_P1"通过1号通讯口通信。通讯口1与Micro/WIN建立PG或PC连接,两个CPU的通讯口0通过PPI电缆进行连接(电缆的针脚连接为2,3,7,8)。 ( 26 KB ) 图. 01 2. 参数匹配 对于MODBUS通讯, 主站侧需要程序库 "MBUS_CTRL" 和 "MBUS_MSG", 从站侧需要程序库 "MBUS_INIT" and "MBUS_SLAVE"。 在 Micro/WIN 中您需要为主站和从站新建一个项目,程序与参数设置见图.02。必须要保证主站与从站的“Baud”和"Parity"的参数设置要一致,并且程序块" MBUS_MSG"中的"Slave"地址要与程序块"MBUS_INIT"中的"Addr"所设置的一致

西门子modbusrtu通信

关键字 库文件RS485网络主站:编程地址错误例程从站:编程地址错误例程 S7-200 Modbus RTU 通信简介 Modbus 是公开通信协议,具有两种串行传输模式,ASCII 和 RTU。详细的协议和规范,请访问 Modbus 组织的网站:通过以下方式支持 Modbus RTU 通信协议: S7-200 CPU 上的通信口 0(Port 0)通过指令库支持 Modbus RTU 从 站模式 S7-200 CPU 上的通讯口 0 和 1 (Port 0 和 Port 1)通过指令库 支持 Modbus RTU 主站模式 在 S7-200 CPU 通信口上实现的是 RS485 半双工通信,使用的是 S7-200 的自由口功能。 通过 S7-200 CPU 通信口的自由口模式实现 Modbus 通信协议,可以通过无线数据电台等慢速通信设备传输。这为组成 S7-200 之间的简单无线通信网络提供了便利。 详细情况请参考《S7-200系统手册》(2002 年 10 月或以后版本)的相应章节。 常问问题 S7-200 是否支持 Modbus ASCII 通信模式? 西门子不提供支持上述模式的的现成指令库,需要用户自己用自由口模式编程。目录 1 Modbus RTU主站 主站指令库 主站功能编程 主站协议及地址 主站例程 主站常问问题 2 Modbus RTU从站 CPU 上的通信口(Port0)支持 Modbus RTU 从站通信协议 从站编程基本步骤

从站地址与S7-200的地址对应 从站指令库支持的功能码 从站例程 从站常见问题 3 STEP 7-Micro/WIN 的标准指令库 分配库指令数据区 添加指令库 删除库指令 4 RS-485网络 S7-200系统中的RS-485通信 5 RS-485网络的硬件组成 连接网络连接器 网络连接器 线型网络结构 终端电阻和偏置电阻 6 扩展阅读 扩展阅读 Modbus RTU主站 Modbus RTU 主站指令库 西门子在 Micro/WIN SP5 中正式推出 Modbus RTU 主站协议库(西门子标准库指令)。 图 1. 西门子标准指令库(Micro/WIN SP5) 注意 1. Modbus RTU 主站指令库的功能是通过在用户程序中调用预先编好的程 序功能块实现的,该库对 Port 0 和 Port 1 有效。该指令库将设置通信口工作在自由口模式下。 2. Modbus RTU 主站指令库使用了一些用户中断功能,编其他程序时不能 在用户程序中禁止中断。

MODBUS_RTU地址与S7-200的地址对应关系

2 Modbus RTU协议在S7-200中的应用原理 2.1 Modbus RTU协议与S7-200相互关系简介 S7-200 CPU上的通讯口Port0可以支持Modbus RTU协议,成为Modbus RTU从站。此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。 如果想在S7-200 CPU与其他支持Modbus RTU的设备使用Modbus RTU协议通讯,需要由有S7-200 CPU做Modbus主站。S7-200 CPU做主站必须由用户自己用自由口模式,按相关协议编程。 在S7-200控制系统应用中,Modbus RTU从站指令库只支持CPU上的通讯0口(Port0)。要实现Modbus RTU通讯,需要Step7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装S tep7-Micro/WIN32 V3.2 Instruction Library(指令库)。Modbus RTU功能是通过指令库中预先编好的程序功能块实现的。 2.2 Modbus RTU协议在S7-200中应用的基本过程 (1) 首先检查S7-200控制系统中所用Micro/WIN的软件版本,应当是Step7-Micro/WI N V3.2以上版本。 (2) 检查Micro/WIN的指令树中是否存在Modbus RTU从站指令库(图1),库中应当包括MBUS_INIT和MBUS_SLAVE两个子程序。如果没有,须安装Micro/WIN32 V3.2 Instruction Library(指令库)软件包,如图1所示。

图1 指令树中的库指令 (3) 编程时使用SM0.1—调用子程序MBUS_INIT进行初始化,使用SM0.0—调用研究MB US_SLAVE,并指定相应参数。关于参数的详细说明,可在子程序的局部变量表中找到。 示例参见图2: 点击看原图 图2 调用MODBUS通讯指令库图2中参数意义如下: ● 模式选择:启动/停止MODBUS,1=启动;0=停止; ● 从站地址:MODBUS从站地址,取值1~247; ● 波特率:可选1200,2400,4800,9600,19200,38400,57600; ● 奇偶校验:0=无校验;1=奇校验;2=偶校验; ● 延时:附加字符间延时,缺省值为0; ● 最大I/Q位:参与通讯的最大I/O点数,S7-200的I/O映像区为128/128,缺省值为128; ● 最大AI字数:参与通讯的最大AI通道数,可为16或32; ● 最大保持寄存器区:参与通讯的V存储区字(VW); ● 保持寄存器区起始地址:以&VBx指定(间接寻址方式); ● 初始化完成标志:成功初始化后置1; ● 初始化错误代码; ● MODBUS执行:通讯中时置1; ● 错误代码:0=无错误。

用西门子CP341实现Modbus RTU通讯

冶金动力METALLURGICALPOWER2006年第1期总第113期 1概述 CP341模块是西门子S7-300/400系列PLC中的串行通讯模块,该模块具有1个串行通讯口(RS232C或TTY或RS485/422),RS422/485的通讯最大距离位1200m。支持以下协议ASCII,ModbusRTU远程终端,DataHighway(DF1协议),电气接口为15针D型孔接头。可以使用这种通讯模块实现S7300/400与其它串行通讯设备的数据交换,例如打印机、扫描仪、仪表、Modbus主从站、DataHighway站、变频器,USS站等。CP341模块可以同时与多台串行通讯设备进行通讯,如同时连接多个变频器、连接多个智能仪表等,如果采用RS422/485modbusRTU通讯方式,需要在发送的数据包中包括站号、数据区、读写指令等信息,供CP341模块所连接的从站设备鉴别数据包是发给哪个站的,以及该数据包是对那个数据区进行的读或写的功能。 Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准,有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如回应来自其它设备的请求,以及怎样侦测错误并记录等。它制定了消息域格式和内容的公共格式。MODBUS为单主站网络协议,所以系统中只能够有一个Modbus主站,所有通信都由它发出并且只能够实现主站和从站的数据交换,从站之间不能进行数据交换,Modbus可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。CP341插入MODBUS主站Dongle(狗)或插入从站Dongle,就可以作为MODBUS主站,或者作为MODBUS从站。在ModBus系统中有两种传输模式编码可选择,一种模式是ASCII(美国信息交换码),另一种模式是RTU(远程终端设备),由这两种模式定义这两种传输模式与从机PC通信的能力是同等的。选择时应视所用ModBus主机而定,每个ModBus系统只能使用一种模式,不允许两种模式混用。 2RTU帧结构 使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。在相同的网络波特率下采用多个的字符时间,这是最容易实现的。传输的第一个域是设备地址,可以使用的传输字符是十六进制的 用西门子CP341实现ModbusRTU通讯 刘立新,张西中,王利民 (安阳钢铁公司安钢动力厂,河南安阳455004) 【摘要】简要介绍了西门子CP341通讯模块的构造和ModbusRTU串行通讯原理和编程方法,通过程序例子详细说明了在CP341上实现ModbusRTU通讯的过程。 【关键词】通讯;ModbusRTU;程序 【中图分类号】TP27【文献标识码】B【文章编号】1006-6764(2006)01-0060-03 UsingSIEMENSCP341toRealizeModbusRTUCommunication LIULi-xin,ZHANGXi-zhong,WANGLi-min (PowerPlant,AnyangIron&SteelCo.,Anyang,Henan455004,China) 【Abstract】ThestructureofSIEMENSCP341communicationmoduleandtheserialcom-municationprincipleandprogrammingmethodofModbusRTUarepresentedbriefly.Takingaprogramforexample,itexplainsindetailtherealizationprocedureofModbusRTUcom-municationontheCP341. 【Keywords】communication;ModbusRTU;program 60

MODBUS RTU地址与S7-200的地址对应关系

Modbus RTU协议在S7-200中的应用 发表时间:2007-7-3 16:22:43 1 引言 工业控制已从单机控制走向集中监控、集散控制,如今已进入网络集约制造时代。工业控制器连网也为网络管理提供了方便。Modbus就是工业控制器的网络协议中的一种。Modbus 协议是应用于电子控制器上的一种通讯约规。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为主流的工业标准之一。他为符合Modbus 协议的不同厂商生产的控制设备可以连成工业网络,进行集中监控。 2 Modbus RTU协议在S7-200中的应用原理 2.1 Modbus RTU协议与S7-200相互关系简介 S7-200 CPU上的通讯口Port0可以支持Modbus RTU协议,成为Modbus RTU从站。此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。 如果想在S7-200 CPU与其他支持Modbus RTU的设备使用Modbus RTU协议通讯,需要由有S7-200 CPU做Modbus主站。S7-200 CPU做主站必须由用户自己用自由口模式,按相关协议编程。 在S7-200控制系统应用中,Modbus RTU从站指令库只支持CPU上的通讯0口(Port0)。要实现Modbus RTU通讯,需要Step7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装S tep7-Micro/WIN32 V3.2 Instruction Library(指令库)。Modbus RTU功能是通过指令库中预先编好的程序功能块实现的。 2.2 Modbus RTU协议在S7-200中应用的基本过程 (1) 首先检查S7-200控制系统中所用Micro/WIN的软件版本,应当是Step7-Micro/WI N V3.2以上版本。 (2) 检查Micro/WIN的指令树中是否存在Modbus RTU从站指令库(图1),库中应当包括MBUS_INIT和MBUS_SLAVE两个子程序。如果没有,须安装Micro/WIN32 V3.2 Instruction Library(指令库)软件包,如图1所示。

CPU 上的通信口(Port0)支持 Modbus RTU 从站通信协议

CPU 上的通信口(Port0)支持Modbus RTU 从站通信协议 S7-200 CPU上的通信口Port0可以支持Modbus RTU协议,成为Modbus RTU从站。此功能是通过S7-200的自由口通信模式实现,因此可以通过无线数据电台等慢速通信设备传输。 详情请参考《S7-200系统手册》之相关章节。 要实现Modbus RTU通信,需要STEP 7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装STEP 7-Micro/WIN32 V3.2 Instruction Library (指令库)。Modbus RTU功能是通过指令库中预先编好的程序功能块实现的。 Modbus RTU从站指令库只支持CPU上的通信0口(Port0)。 参考:Modbus RTU 主站指令库 基本步骤: 1. 检查Micro/WIN的软件版本,应当是STEP 7-Micro/WIN V3.2以 上版本。 2. 检查Micro/WIN的指令树中是否存在Modbus RTU从站指令库 (图1),库中应当包括MBUS_INIT和MBUS_SLAVE两个子程序。如果没有,须安装Micro/WIN32 V3.2的Instruction Library (指令库)软件包;

图1. 指令树中的库指令 3. 编程时使用SM0.1调用子程序MBUS_INIT进行初始化,使用 SM0.0调用MBUS_SLAVE,并指定相应参数。关于参数的详细说明,可在子程序的局部变量表中找到;

图2. 调用Modbus RTU通信指令库 图中参数意义如下: a. 模式选择:启动/停止Modbus,1=启动;0=停止 b. 从站地址:Modbus从站地址,取值1~247 c. 波特率:可选1200,2400,4800,9600,19200,38400, 57600,115200 d. 奇偶校验:0=无校验;1=奇校验;2=偶校验 e. 延时:附加字符间延时,缺省值为0

相关主题