西门子S7200与VLT2800 Modbus RTU通讯调试说明
西门子S7-200SMART与变频器MODBUS-RTU通信例程
西门子S7-200SMART与变频器MODBUS-RTU通信例程S7-200 SMART CPU 自带一个 RS485 端口(端口0),标准型CPU 额外支持 SB CM01 信号板(端口1),信号板可通过 STEP 7-Micro/WIN SMART 软件组态为 RS232 通信端口或 RS485 通信端口。
本例程是以CPU自带的端口0为MODBUS主站,变频器为从站的通信。
1,接线方式CPU自带的端口定义:我们只用3脚和8脚注意,西门子的A,B与变频器的定义是反的,所以西门子8脚A 要与变频器B-对应,西门子3脚 B与变频器A+对应。
接线图如下:2,在与变频器通讯前,最好是先用MODBUS调试助手先测试PLC与调试助手之间的通信。
通过测试我们可能发现,调试助手中一个寄存器的长度与一个VW对应。
变频器MODBUS寄存器地址是16进制的表达方式。
所以我们PLC程序中的地址也最好用16进制表表达,这样方便直观。
变频器如下:但我们的调试助手助手的寄存器地址是十进制的。
所以要转换一下。
以上面的40100为例,转换成16进制为9CA4.所以我们如果要用调试助手与变频器通信调试,要注意将变频器16进制地址转换成10进制的地址在调试助手中监控。
查看变频器参数地址表变频器中部分参数(只读)读取变频器输出频率:7203H。
PLC程序中也按16进制的表达方式,读取从站1中16#7023地二的值。
先用调试助手模拟测试7203H,测试如下我们监控发现报警,代码为4:请求参数错误(slave address,Modbus address,count,RW)。
报这个错误的原因是,寄存器地址超出SMART200的MODBUS寄存器地址范围。
SMART200的寄存器地址范围为40001到49999和 400001 至 465535。
注意这里指的是10进制地址。
对于上面变频器7203H也就是10进制的29187 地址29187超出PLC中40001到49999和 400001 至 465535允许范围了,怎么处理呢?对于没超出范围地地址,可以直接用,对于超出范围的地址,我们就要加上400000,所以以上寄存器地址在PLC中就要用429187 3,PLC与变频器连接通信特别注意:PLC与变频器通信时,超出范围的寄存器地址,要加400001才会对应正确4,具体参考程序:(本例程中除了变频器外,还有多个从站的轮询)。
S7-200通讯设置
S7-200通讯设置如何设置S7-200的通讯 - 通讯方式选择您可以多种方式配置S7-200 CPU,支持网络通讯."按钮,根据您选择的参数组(见图7),可进入几个可能的对话框之一。
下面的部分详细介绍各对话框。
总之,欲选择界面参数组,按下列步骤进行:1、在设定PG/PC界面对话框内(见图4),选择存取路径标签内应用存取点列举栏内的"Micro/WIN"。
2、确认已经安装硬件。
3、决定要使用的协议,全部CPU应使用PPI协议。
4、从设定PG/PC界面对话框内的界面参数列举栏内选择正确的设定。
5、单击设定PG/PC界面对话框内的"属性..."按钮。
随后然后根据选定的参数组作选择。
设定PC/PPI线(PPI)参数本部分讲解如何为Windows 95,Windows 98,或Windows NT 操作系统以及PC/PPI线设定PPI参数。
从设定PG/PC界面对话框,如果您正在使用PC/PPI线并单击"属性..."按钮,PC/PPI线(PPI)的属性单出现。
见图7。
进行通讯时,STEP 7-Micro/WIN 32默认设定为多主PPI协议。
此协议允许STEP 7-Micro/WIN 32与其它主设备(TD 200s及操作员板)在网络内共存。
选择PG/PC界面内PC/PPI线属性对话上的"多主网络"即可启动此模式。
Windows NT 不支持多主选项。
STEP 7-Micro/WIN 32也支持单主PPI协议。
使用单主协议时,STEP 7-Micro/WIN 32假定它使网络内的唯一主设备,不与其它主设备合作共享网络。
通过调制解调器进行传输或在非常嘈杂的网络上传输数据时,应使用单主协议。
在PG/PC界面内的PC/PPI线属性对话栏上清除"多主网络"选择,即可选择单主模式。
按照下列步骤设定PPI参数:1、PPI标签站参数区域内,在地址栏内选择一个号码。
西门子S7200与变频器MODBUS通讯实例详解
西门子S7200与变频器MODBUS通讯实例详解西门子S7200PLC简介西门子S7-200PLC在实时模式下具有速度快,具有通讯功能和较高的生产力的特点。
一致的模块化设计促进了低性能定制产品的创造和可扩展性的解决方案。
来自西门子的S7- 200微型PLC可以被当作独立的微型PLC解决方案或与其他控制器相结合使用。
Modbus通讯协议简介Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。
ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。
其系统结构既包括硬件、亦包括软件。
它可应用于各种数据采集和过程监控。
ModBus网络只有一个主机,所有通信都由他发出。
网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。
采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。
1MODBUSRTU协议在S7-200中的应用原理1.1MODBUSRTU协议与S7-200相互关系简介S7-200CPU上的通讯口Port0可以支持MODBUSRTU协议,成为MODBUSRTU从站。
此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。
想在S7-200CPU与其他支持MODBUSRTU的设备使用MODBUSRTU协议通讯,需要由有S7-200CPU做MODBUS主站。
S7-200CPU做主站必须由用户自己用自由口模式,按相关协议编程。
2从站指令的用法:S7-200控制系统应用中,MODBUSRTU从站指令库只支持CPU上的通讯0口(Port0)。
要实现MODBUSRTU通讯,需要Step7-Micro/WIN32V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32V3.2InstructionLibrary(指令库)。
西门子S7-200系列PLC的MODBUS通信功能(一)
西门⼦S7-200系列PLC的MODBUS通信功能(⼀)这段时间经常有学员问有关于S7-200系列PLC的MODBUS通信的问题,所以今天就写⼀遍⽂章,来跟⼤家聊聊S7-200系列PLC的MODBUS的通信功能如何使⽤。
MODBUS通信协议概述:MODBUS协议是⼀个通⽤的协议,在很多智能设备上都⽀持这个通信协议,如变频器,智能温控仪表等都⽀持MODBUS通信协议。
MODBUS通信协议有具有串⾏链路上的MODBUS ASCAII通信和MODBUS RTU通信,也有基于TCP/IP上的 MODBUS TCP通信。
这⾥我们主要介绍基于串⾏链路上的MODBUS RTU的通信。
MODBUS RTU的信息帧格式:Start:起始码,表⽰的是⼀个信息帧的开头,MODBUS RTU通信,使⽤时间来作为信息帧的开头,主要是检测传输线上的空闲的时间,长度为3.5个字符时长,⼀个字符的长度跟数据位,停⽌位、起始位、奇偶校验位,波特率有关。
Address:地址码(⼀个字节),表⽰的是从站的站号,从站站号有从站设备给定或是设置,如变频器,可以在变频器参数中设置变频器的站号。
Function:功能码(⼀个字节),描述对从站的读写操作,是对从站读取数据,还是写⼊数据到从站,常见功能码如下图所⽰:Data:数据区(N个字节),数据区主要有两部分构成,⼀部分称为数据区的地址,⼀部分称为数据区的内容,如需要控制变频器的运⾏,则变频器的运⾏代码称为数据区内容,运⾏代码需要写⼊的地⽅称为数据区地址。
CRC:校验码(2字节),对从站号到数据区的数据进⾏CRC校验,可以参考前⾯⼀篇对于CRC校验程序设计的内容介绍。
End:结束码,与起始码⼀样,也是通过时间进⾏判断。
接下来,我们以西门⼦S7-200SMART系列的PLC与深圳的海普蒙特的变频器为例,来说明使⽤MODBUS的通信⽅式来控制变频器的运⾏,频率的修改,及读取⼀些参数的程序⾸先,我们需要熟悉变频器说明书上所描述的通信的内容,从说明书上显⽰⽀持的功能码为03,06,和16这三种功能码(注意0X10表⽰的是16进制数10):提供的信息帧格式为:例如:运⾏命令控制,地址位⼗六进制数的3200,往地址3200中写⼊不同的代码表⽰不同的控制命令,如下图所⽰根据以上内容,我们可以写出控制变频器运⾏的信息帧的格式,假设变频器的站号设置为1,则可以得出如下图所⽰的信息帧的格式其他的命令的信息帧格式,参考变频器说明书,以相同的⽅式可以写出。
S7-200PLC之间进行Modbus通讯实验
1、硬件组态:S7-200PLC CPU 224XP、S7-200PLC CPU 226、维控触屏LEVI 777T、S7-200PLC之间通讯用RS485通讯电缆、S7-200PLC与维控触屏通讯用RS485通讯电缆、编程用USB/PPI电缆。
主从站设定:CPU 224XP主站,CPU 226为从站。
2、通讯端口及设定:主站CPU 224XP PORT0用于Modbus通讯、PORT1用于连接编程电缆。
从站CPU 226 PORT0用于Modbus通讯、PORT1用于连接维控触摸屏COM1(PPI 协议)。
各端子对应接线如下图。
3、实验内容:①主站读从站输入点信号、V存贮区变量;②主站控制从站输出点、写入从站整数变量及浮点数变量并在触摸屏(与从站相连)上显示;③从站读取主站发送数据并处理。
4、CPU226从站通讯初始化编程如下所示。
从站地址规定为6,端口PORT0通讯波特率9600,无校验、无延迟,允许存取所有的I、Q(MaxIQ=128)、和AI(MaxAI=32)数值,保持寄存器的存贮空间为VB3000开始的1000个字。
5、为从站程序块指定库存贮区,注意:程序中不可使用库存储区占用的地址。
6、在维控触屏中下载用于监控Modbus通讯结果的画面程序,如下图。
其中包括从站本机输入点I0.0~I0.7的状态、输出点Q0.0~Q0.7(受主上控制),以及从站Modbus通讯保持寄存器VB3000~VB3013内容、整数VW3000、浮点数VD3000和VD3008内容等。
7、准备好主站通讯程序。
为主站程序块指定库存贮区,注意:程序中不可使用库存储区占用的地址。
程序如下所示(上电初始化程序实际应用时要放在网络1),其中主站输入点I1.0用于触发数据传送,VB3000用于存贮读从站输入点数据,VB5000用于存贮要写入从站控制输出点的数据,VB6000用于存贮要写入从站V存贮区的数据,VB7000用于存贮由从站读取的V存贮区数据(用于验证写从站结果)。
西门子S7-200--MODBUS通信协议和支持MODBUS-RTU协议的电磁流量计、超声波流量计的通信实例
西门子S7_200 MODBUS通信协议和支持MODBUS RTU协议的电磁流量计、超声波流量计的通信实例S7_200系列PLC有一个通信口的也有两个通信口的,这两个口都支持MODBUS通信协议,不过要添加MODBUS库文件(SP6版本的step7 micro/win 软件自带有MODBUS库文件)。
下面根据具体的项目来说明MODBUS的使用:在项目中要采集进水流量的瞬时流量、日累计、月累计、年累计量,流量计本身有4~20mA信号输出和脉冲信号输出,这些输出信号都是瞬时量,只能转换为瞬时流量,而累积量就要通过编写程序来累加,而且信号的传输衰减和计算过程产生的误差就会造成和实际的流量相差很多,现在很多的流量计(包括其他的测量设备)都设计有通讯口,尤其是支持MODBUS协议,所以首选通信方式采集数据,这样可以直接读取我们想要的数据,只需做稍微的数据转换就可以的,同时也减小了工作量提高准确性(实际是按照流量收取费用的)。
实际的硬件连接:10套s7-200组成PPI网络(其中一个200站做主站),有一个从站要采集两个不同厂家的流量计的相关信息。
PPI网络层已经用去了一个端口0,还剩下一个端口1,那么就用这个端口并设置为自由口协议,在程序中调用MODBUS程序块并填写好必要的信息就可以了(其实调用MODBUS程序块时,程序块内就已经设置好端口为自由口协议了)。
图1.MODBUS库文件图2.控制指令图3.控制指令这里MBUS_CTRL_P1指令要一直调用,有一点要指明:图2中的程序是读取其中一台流量计的,图3是读取另一台流量计的,这两个流量计是不一样的。
这里最重要的是MBUS_MSG_P1指令中地址“Addr”的填写,其实这里要填写Modbus从站的寄存器地址(该地址内有我们需要的信息),那么这个地址要怎么填写呢,填写多少呢?这就要查看从站设备(这里是流量计)的“通信手册”了,因为每个厂家的设备都不一样,所以相同信息的寄存器地址也不一样。
西门子S7200与变频器MODBUS通讯实例详解
西门子S7200与变频器MODBUS通讯实例详解西门子S7200PLC简介西门子S7-200PLC在实时模式下具有速度快,具有通讯功能和较高的生产力的特点。
一致的模块化设计促进了低性能定制产品的创造和可扩展性的解决方案。
来自西门子的S7- 200微型PLC可以被当作独立的微型PLC解决方案或与其他控制器相结合使用。
Modbus通讯协议简介Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。
ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。
其系统结构既包括硬件、亦包括软件。
它可应用于各种数据采集和过程监控。
ModBus网络只有一个主机,所有通信都由他发出。
网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。
采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。
1MODBUSRTU协议在S7-200中的应用原理1.1MODBUSRTU协议与S7-200相互关系简介S7-200CPU上的通讯口Port0可以支持MODBUSRTU协议,成为MODBUSRTU从站。
此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。
想在S7-200CPU与其他支持MODBUSRTU的设备使用MODBUSRTU协议通讯,需要由有S7-200CPU做MODBUS主站。
S7-200CPU做主站必须由用户自己用自由口模式,按相关协议编程。
2从站指令的用法:S7-200控制系统应用中,MODBUSRTU从站指令库只支持CPU上的通讯0口(Port0)。
要实现MODBUSRTU通讯,需要Step7-Micro/WIN32V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32V3.2InstructionLibrary(指令库)。
西门子S7200与变频器MODBUS通讯实例详解
西门子S7200与变频器MODBUS通讯实例详解西门子S7200PLC简介西门子S7-200PLC在实时模式下具有速度快,具有通讯功能和较高的生产力的特点。
一致的模块化设计促进了低性能定制产品的创造和可扩展性的解决方案。
来自西门子的S7- 200微型PLC可以被当作独立的微型PLC解决方案或与其他控制器相结合使用。
Modbus通讯协议简介Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。
ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。
其系统结构既包括硬件、亦包括软件。
它可应用于各种数据采集和过程监控。
ModBus网络只有一个主机,所有通信都由他发出。
网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。
采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。
1MODBUSRTU协议在S7-200中的应用原理1.1MODBUSRTU协议与S7-200相互关系简介S7-200CPU上的通讯口Port0可以支持MODBUSRTU协议,成为MODBUSRTU从站。
此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。
想在S7-200CPU与其他支持MODBUSRTU的设备使用MODBUSRTU协议通讯,需要由有S7-200CPU做MODBUS主站。
S7-200CPU做主站必须由用户自己用自由口模式,按相关协议编程。
2从站指令的用法:S7-200控制系统应用中,MODBUSRTU从站指令库只支持CPU上的通讯0口(Port0)。
要实现MODBUSRTU通讯,需要Step7-Micro/WIN32V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32V3.2InstructionLibrary(指令库)。
S7-200 MODBUS RTU通讯教程
•
10001 - 19999:数字量输入(触点)
•
30001 - 39999:输入数据寄存器(通常为模拟量输入)
•
40001 - 49999:数据保持寄存器
Modbus Master 协议库支持的功能
为了支持上述 Modbus 地址的读写,Modbus Master 协议库需要从站支持下列功能:
表 1. 需要从站支持的功能
成位来激活,以保证所有读写指令循环进行(见
每一个新的读写请求必须使用脉冲触发
位:
从站地
c. Slave
可选择的范围 1 - 247
址:
d. RW
从站地 0 = 读, 1 = 写
址:
注意: 1. 开关量输出和保持寄存器支持读和写功能 2. 开关量输入和模拟量输入只支持读功能
围为 1 - 32767。
注意: 这个值必须设置足够大以保证从站有时间响应。 f. Done 完成位:初始化完成,此位会自动置 1。可以用该位启动 MBUS_MSG 读写操作(见例程)
g. Error
初始化错误代码(只有在 Done 位为 1 时有效):
0= 无错误
1= 校验选择非法
读写从站
e. Addr
选择读写的数据类型
的
数据地 00001 至 0xxxx - 开关量输出
址:
10001 至 1xxxx - 开关量输入 30001 至 3xxxx - 模拟量输入 40001 至 4xxxx - 保持寄存器 f. Count 数据个数 通讯的数据个数(位或字的个数)
Modbus 指令库启动后,如何通过同一个通信端口进行 CPU 监控? Modbus 指令库使用的是 CPU 的自由口通信功能,工作在自由口模式下的通讯口不能使用 Micro/WIN 的 PPI 编程
西门子S7-200--MODBUS通信协议和支持MODBUS-RTU协议的电磁流量计、超声波流量计的通信实例
西门子S7_200 MODBUS通信协议和支持MODBUS RTU协议的电磁流量计、超声波流量计的通信实例S7_200系列PLC有一个通信口的也有两个通信口的,这两个口都支持MODBUS通信协议,不过要添加MODBUS库文件(SP6版本的step7 micro/win 软件自带有MODBUS库文件)。
下面根据具体的项目来说明MODBUS的使用:在项目中要采集进水流量的瞬时流量、日累计、月累计、年累计量,流量计本身有4~20mA信号输出和脉冲信号输出,这些输出信号都是瞬时量,只能转换为瞬时流量,而累积量就要通过编写程序来累加,而且信号的传输衰减和计算过程产生的误差就会造成和实际的流量相差很多,现在很多的流量计(包括其他的测量设备)都设计有通讯口,尤其是支持MODBUS协议,所以首选通信方式采集数据,这样可以直接读取我们想要的数据,只需做稍微的数据转换就可以的,同时也减小了工作量提高准确性(实际是按照流量收取费用的)。
实际的硬件连接:10套s7-200组成PPI网络(其中一个200站做主站),有一个从站要采集两个不同厂家的流量计的相关信息。
PPI网络层已经用去了一个端口0,还剩下一个端口1,那么就用这个端口并设置为自由口协议,在程序中调用MODBUS程序块并填写好必要的信息就可以了(其实调用MODBUS程序块时,程序块内就已经设置好端口为自由口协议了)。
图1.MODBUS库文件图2.控制指令图3.控制指令这里MBUS_CTRL_P1指令要一直调用,有一点要指明:图2中的程序是读取其中一台流量计的,图3是读取另一台流量计的,这两个流量计是不一样的。
这里最重要的是MBUS_MSG_P1指令中地址“Addr”的填写,其实这里要填写Modbus从站的寄存器地址(该地址内有我们需要的信息),那么这个地址要怎么填写呢,填写多少呢?这就要查看从站设备(这里是流量计)的“通信手册”了,因为每个厂家的设备都不一样,所以相同信息的寄存器地址也不一样。
modbusrtu怎么调试?
modbusrtu怎么调试?
首先你需要 ️相关的测试软件和硬件,常用的测试软件有modscan32用于采集数据,modsim32用于仿真从站,如果使用电脑没有串口需要有usb转串口得设备,一般我们都是用rs485接口
如上图,可以使用这样的串口线
安装相应的驱动后在电脑上就可以看到端口com1等显示,如果是读取从站设备的数据,打开modscan32软件
点击connection后,弹出如上图,选择对应的电脑端口号,设置通讯参数,必须与从小设备保持一致,一般波特律9600,数据长度8.无检验,一个停止位
然后设置需要读取的寄存器的类型,比如要读取保持寄存器,需要选择03 holding register,寄存器起始地址选择根据从站确定比如从1开始,然后选择h读取的长度比如10,最重要的一点就是要这对从站地址device id,然后就可以看到连接成功,读取到了从站的数据。
第十二部分 S7-200的modbus rtu通讯
MODBUS 协议库的使用
1. EN:指令使能位。 2. First:“首次”参数。“首次”参数应该在有新请求 要发送时才打开以进行一次扫描。 “ 首 次” 输入应 当通过一个边沿检测元素(例如上升沿)打开,这将导 致请求被传送一次。 3. Slave:“从站”参数。“从站”参数是 Modbus 从站 的地址。 允许的范围是 0 到 247。地址 0 是广播地址, 只能用于写请求。不存在对地址 0 的广播请求的应答。 并非所有的从站会支持广播地 址, S7-200 Modbus 从 其中离散输出(线 圈)和保持寄存器 站协议库不支持广播地址。 支持读取和写入 请求, 而离散输 4. RW:“读写”参数。“读写”参数指定是否要读取 或写入该消息。 “ 读写” 参数允许使用下 列两个值: 入(触点)和输入寄 存器仅 支持读取 0——读, 1——写。 请求。 “ 地址” 5. Addr:“地址”参数。“地址”参数是起始的Modbus 的具体值应与 地址。 允许使用下列取值范围:00001 至 09999 是离 Modbus 从站支持 散输出(线圈);10001 至 19999 是离散输入(触点);30001 的地址一致 至 39999 是输入寄存器;40001 至 49999 是保持寄存器
MODBUS 协议库的使用
利用指令库编程前首先应为其分配存储 区,否则软件编译时会报错。具体方法 如下: 1. 执行 Step7-Micro/Win 菜单命令“文 件” >“ 库存储区”,打开“库存储 区分配”对话框。 2. 在“库存储区分配”对话框中输入 库存储区( V 存储区) 的起始地址, 注意避免该地址和 程序中已经采用 或准备采用的其它地址重合。
MODBUS 协议库的使用
1. EN:指令使能位。 2. Mode:“模式”参数。“模式”输入数值选择 通讯协议。 输入值 1 将 CPU 端口分配给 Modbus 协议并启用该协议。 输入值 0 将 CPU 端口分配给 PPI 系统协议, 并禁用 Modbus 协议。 3. Baud:“波特率”参数。 MBUS_CTRL 指令支持 的波特率为 1200、 2400、 4800、 9600、 19200、 38400、 57600 或 115200bit/s。 4. Parity:“奇偶校验”参数。“奇偶校验”参数被 设为与 Modbus 从站奇偶校验相匹配。所有 设置 使用一个起始位和一个停止位。可接受的数值为: 0 无奇偶校验、 1 奇校验、 2 偶校验。 5. Timeout:“超时”参数。“超时”参数设为等待 来自从站应答的毫秒时间数。 “ 超时” 数值可 以设置的范围为 1 毫秒到 32767 毫秒。典型值是 1000 毫秒(1 秒)。 “ 超时” 参数应该设置的足 够大,以便从站有时间对所选的波率做出应答。
(完整word版)西门子S7-200 SMART之Modbus RTU 通信常见问题及错误代码含义
常见问题1。
S7-200 SMART 是否支持 Modbus ASCII 通信模式?STEP 7—Micro/WIN SMART 软件未提供Modbus ASCII 通信模式指令库。
S7-200 SMART CPU若用于Modbus ASCII 通信时,则需要用户使用自由口通信模式进行编程。
2. S7-200 SMART CPU 集成的RS485 端口(端口 0 )以及SB CM01 信号板(端口 1 )两个通信端口能否同时作为 Modbus RTU 主站或者同时作为 Modbus RTU从站?S7-200 SMART V2。
2版本支持两个通信端口同时做MODBUS RTU主站,不支持同时做MODBUS RTU从站。
3。
S7-200 SMART CPU作为 Modbus RTU 主站如何访问 Modbus 地址范围大于49999 的保持寄存器?通常 Modbus 协议的保持寄存器范围在 40001 到 49999 之间,这个范围对于多数应用来说已经足够了,但有些 Modbus 从站保持寄存器区的地址会超出该范围。
Modbus RTU 主站协议库支持保持寄存器地址范围为(40001 到 49999)或者(400001 到 465536).如果 Modbus 从站地址范围为 400001 – 465536,只需在调用 MBUS_MSG 子程序时给 Addr 参数赋相应的值即可,如 416768。
4.S7-200 SMART CPU作为 Modbus RTU 主站,多次调用 MBUS_MSG 指令时,为什么该指令会出现 6# 错误代码?同一时间只能有一条 MBUS_MSG 指令处于激活状态,如果激活多条 MBUS_MSG 指令,将执行第一条 MBUS_MSG 指令,所有后续 MBUS_MSG 指令将中止执行并出现 6#错误代码.多条 MBUS_MSG 指令的执行需要采用轮询方式。
5.S7—200 SMART CPU作为 Modbus RTU 主站,从站故障或者通信线路断开时,主站会尝试发送多次请求报文,从而导致通信时间过长.如何减少主站的重发次数,以提高通信效率?MBUS_MSG 指令被激活时将发送 Modbus 请求报文帧,如果在Timeout 参数定义的时间间隔内主站未接收到从站应答,Modbus RTU 主站协议库默认的情况下还会再发送 2 次 Modbus 请求报文帧;在最后一次请求报文帧发送后,经过 Timeout 参数定义的时间间隔后还未收到应答时, MBUS_MSG 指令的 Done 完成位才被设置为 1 .将mModbusRetries 变量的数值由 2 改为0 ,即可取消Modbus 请求报文帧的重试次数.mModbusRetries 变量的绝对地址可通过查询Modbus RTU 主站协议库的符号表获取,如图 1。
西门子S7-200 PLC Modbus从站设置
西门子S7-200 PLC Modbus从站设置2013-01-27 11:43:43| 分类:PLC|举报|字号订阅西门子S7200做Modbus从站需要使用MBUS_INIT、MBUS_SLAVE即可。
MBUS_INIT指令被用于启用和初始化或禁止Modbus通讯。
在使用MBUS_SLAVE指令之前,必须正确执行MBUS_INIT指令。
指令完成后立即设定"完成"位,才能继续执行下一条指令。
在每次扫描且EN输入打开时执行该指令。
应当在每次通讯状态改变时执行MBUS_INIT指令。
因此,EN输入应当通过一个边缘检测元素用脉冲打开,或者仅在首次扫描时执行。
"模式"输入数值选择通讯协议:输入数值1将端口0指定给Modbus协议并启用协议;将输入数值0指定给PPI,并禁用Modbus协议。
"波特"参数将波特率设为1200、2400、4800、9600、19200、38400、57600或115200。
"地址"参数将地址设为1和247之间(包括1和247)的数值。
"校验"参数被设为与Modbus主设备校验相匹配。
可接受的数值为:*0-无校验*1-奇数校验*2-偶数校验"时延"参数通过将指定的毫秒数增加至标准Modbus信息超时的方法延长标准Modbus信息结束超时条件。
该参数的典型数值在有线网络上应为0。
如果您在使用带有纠错功能的调制解调器,将时延设为50至100毫秒的数值。
如果您在使用扩展频谱无线电,将时延设为10至100毫秒的数值。
"时延"数值可以是0至32767毫秒。
MaxIQ参数将供Modbus地址00xxxx和01xxxx使用的I和Q点数设为0至128之间的数值。
数值0禁止所有向输入和输出的读取。
建议使用的MaxIQ数值是128,该数值可在S7-200中存取所有的I和Q点。
s7 200 与v20变频器 modbus通信详细教程
首先恢复出厂设置然后设置电机参数恢复出厂设置方法恢复之后就开始写入电机参数P0100[0] = 0P0304[0] = 400P0305[0] = 1.88P0307[0] = 0.75KWP0308[0] = 0.8P0310[0] = 50P0311[0] = 1395P1900[0] = 2此时出现一个感叹号目前变频器有报警信息然后按M键进入电机快速调试的下一步选择cn011出现P1080然后继续执行P1080[0] = 0.00P1082[0] = 50P1120[0] = 10sP1121[0]= 10S然后长按M键但是还是需要电机数据识别按下启动键后变频器开始数据识别等待一会后在显示菜单下长按m键绿灯开始闪烁在显示菜单下按m键进入参数列表键P0010[0]改成1接下来开始modbus设置P2014设置为0如设置100会造成F72报错所以报F72错误设置P2014 的值为0即可这是连接方式红色连P+绿色连接N-然后L1 L2 L3接三相电输入UVW 接电机之后编写程序这是控制字确定后即可下载验证Done 完成位:读写功能完成位。
Error 错误代码:只有在Done 位为1时,错误代码才有效。
常用的控制字:047E :运行准备047F :正转启动0C7F :反转启动04FE :故障确认将这个值写入40100vb10中即可VW10 控制字地址速度给定vw20读取状态vb30Vw32实际值写入上坡时间vw50Modbus错误代码:Done 完成位:读写功能完成位Error 错误代码:只有在Done 位为1时,错误代码才有效代码描述0 无错误1 响应校验错误2 未用3 接收超时(从站无响应)4 请求参数错误(slave address, modbus address, count ,R/W)5 Modbus /自由口未使能6 Modbus 正在忙于其他请求7 响应错误(响应不是请求的操作)8 响应CRC校验和错误101 从站不支持请求的功能102 从站不支持数据地址103 从站不支持此种数据类型104 从站设备故障105 从站接收了信息,但是响应被延迟106 从站忙,拒绝了该信息107 从站拒绝了信息108 从站存储区奇偶错误然后写入启动准备控制字速度给定斜坡上升时间。
S7-200MODBUS_RTU通讯注意事项
Modbus RTU协议在S7-200中的应用及注意事项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两个子程序。