6ES7355-1VH10-0AE0使用手册

报价
请来电询价
品牌
西门子
产品规格
模块式
产地
德国
关键词
西门子代理商,西门子模块代理商,西门子一级代理商,西门子PLC代理,西门子中国代理商
更新时间
2026-05-30 07:13

注意:由子程序参数HoldStart和MaxHold的保持寄存器区,是在S7-200 CPU的V数据存储区中分配,此数据区不能和库指令数据区有任何重叠,否则在运行时会产生错误,不能正常通信。注意Modbus 中的保持寄存器区按"字"寻址,即MaxHold规定的是VW而不是VB的个数。

 

在图2的例子中,规定了 Modbus 保持寄存器区从 VB0 开始(HoldStart = VB0),并且保持寄存器为1000个字(MaxHold=1000),因保持寄存器以字(两个字节)为单位,实际上这个通信缓冲区占用了VB0~VB1999共2000个字节。因此分配库指令保留数据区时至少要从VB2000开始。当然保持区不一定要从VB0开始。

 

注意:你选用的CPU的V存储区大小!CPU型号不同V数据存储区大小不同。应根据需要选择Modbus保持寄存器区域的大小。

 

包含 Modbus RTU 从站指令库的项目编译、下载到CPU中后,在编程计算机(PG/PC)上运行一些 Modbus 测试软件可以检验S7-200的Modbus RTU通信是否正常,这对查找故障点很有用。测试软件通过计算机串口(RS-232)和PC/PPI电缆连接CPU。如果必要,须将PC/PPI电缆设置在自由口通信方式。

 

可到一些软件下载网站寻找类似软件,如 ModScan32 等。

2.3 Modbus RTU 从站地址与S7-200的地址对应

Modbus地址总是以00001、30004之类的形式出现。S7-200内部的数据存储区与Modbus的0、1、3、4共4类地址的对应关系如下:

表2. Modbus地址对应表

Modbus地址S7-200数据区00001 ~ 00128Q0.0 ~ ~ I32AIW0 ~ AIW6240001 ~ 4xxxxT ~ T + 2 * (xxxx -1)

其中T为S7-200中的缓冲区起始地址,即 HoldStart。

如果已知S7-200中的V存储区地址,推算Modbus地址的公式如下:

Modbus地址 = 40000 + (T/2+1) ; T为偶数

2.4 Modbus RTU 从站指令库支持的功能码

Modbus RTU 从站指令库支持特定的 Modbus 功能。访问使用此指令库的主站必须遵循这个指令库的要求。

表 3. Modbus RTU 从站功能码

功能码主站使用相应功能码作用于此从站的效用1读取单个/多个线圈(离散量输出点)状态。 功能 1 返回任意个数输出点(Q)的 ON/OFF 状态。2读取单个/多个触点(离散量输入点)状态。 功能 2 返回任意个数输入点(I)的 ON/OFF 状态。3读取单个/多个保持寄存器。功能 3 返回 V 存储区的内容。在 Modbus 协议下保持寄存器都是"字"值,在一次请求中可以读取多 120 个字的数据。4读取单个/多个输入寄存器。功能 4 返回 S7-200 的模拟量数据值。5写单个线圈(离散量输出点)。功能 5 用于将离散量输出点设置为的值。这个点不是被强制的,用户程序可以覆盖 Modbus 通信请求写入的值。6写单个保持寄存器。功能 6 写一个值到 S7-200 的 V 存储区的保持寄存器中。15写多个线圈(离散量输出点)。功能 15 把多个离散量输出点的值写到 S7-200 的输出映像寄存器(Q 区)。输出点的地址必须以字节边界起始(如 Q0.0 或 Q2.0),并且输出点的数目必须是 8 的整数倍。这是此 Modbus RTU 从站指令库的限制。些点不是被强制的,用户程序可以覆盖 Modbus 通信请求写入的值。16些多个保持寄存器。功能 16 写多个值到 S7-200 的 V 存储区的保持寄存器中。在一次请求中可以写多 120 个字的数据。

2.5 Modbus RTU 从站例程

Modbus RTU 从站例程

需要 STEP 7-Micro/WIN V4.0 SP3 以上版打开

2.6 Modbus RTU 从站常见问题

Modbus 从站的网络地址与 S7-200 的 CPU 网络地址有什么关系?

 

没有关系。支持网络通信的通信协议必须有其自己的网络寻址规定。 Modbus 从站的地址只是它在 Modbus 网络上的地址,而通常所说的 S7-200 CPU 地址是 CPU 在西门子的 PPI 网络上的站地址。S7-200 CPU 的大部分通信功能都通过 PPI 网络完成,例如编程、网络读写通信等。

 

 如何理解 Modbus 地址与功能码的区别?

 

Modbus 地址与 Modbus 的功能码是两个层次的概念。

 

根据 Modbus 通信协议,Modbus 数据的地址使用 00xxx、10xxx、30xxx 和 40xxx 的形式,分别表示数字量输出、数字量输入、模拟量输入等数据地址。在使用 S7-200 的指令库时,Modbus 数据地址与 S7-200 的 I/O 和数据存储区地址间有特定的对应关系。

 

有些设备表明它支持 Modbus RTU 通信协议,但也详细提供了读写数据的详细通信帧格式,其中包括如何 Modbus 站的地址,需要读写数据类型、长度等等。数据帧有特定字节指出此指令读写的数据类型和地址,此字节的数据内容即所谓"功能码",如功能 1 读取单个/多个数字量输出点的值。

 

支持 Modbus 协议的设备或软件,使用时用户直接设置或看到的应当是 Modbus 数据地址。Modbus 地址所访问的数据,是通过各种"功能"读写而来。功能码是 Modbus 地址的底层。如果 Modbus 通信的一方提供的所谓 Modbus 协议只有功能码,则需要注意了解此功能号与 Modbus 地址间的对应关系。

Modbus 指令库启动后,如何通过同一个通信端口进行 CPU 监控?

 

Modbus 指令库使用的是 CPU 的自由口通信功能,工作在自由口模式下的通讯口不能使用 Micro/WIN 的 PPI 编程通信监控。如果通信口都已经被占用,可以考虑:

 

  • 加一个通信模块(如 EM 277、CP 243-1、EM 241 等)扩展出一个编程通信口

  • 中止自由口模式,可以将 CPU 上的模式开关从 RUN 拨到 STOP;或者保持处于 RUN 状态,用程序停止指令库的 Modbus 模式(参见指令库应用)

  • 为何有些 HMI 软件使用 Modbus RTU 读取S7-200中的实数会出现错误?

     

    有些HMI软件使用Modbus RTU通信协议时,处理存储在数据保持寄存器中的实数(浮点数)的方式与西门子的实数保存格式不同。西门子的PLC遵循"高字节低地址、低字节高地址"的规律。

     

    Modbus RTU的保持寄存器总是以"字(双字节)"为单位,而一个实数需要4个字节(双字)表示。HMI软件在处理时可能会把保持寄存器的两个"字"互换位置,造成不能识别以西门子格式表示的实数。如果HMI软件一方无法处理这种实数,则可在S7-200 CPU中编程将存入数据缓冲区(保持寄存器区)的实数的高字和低字互换。


    西门子代理商,西门子模块代理商,西门子一级代理商,西门子PLC代理,西门子中国代理商
    浔之漫智控技术-西门子PLC代理商已认证
    统一社会信用代码
    91310117MA1J3R698D
    成立日期
    2019年09月10日
    法定代表人
    袁宜男
    注册资本
    500

    主营产品

    西门子PLC模块,变频器,触摸屏,交换机

    经营范围

    从事智能科技、自动化科技、机电领域内的技术开发、技术转让、技术咨询、技术服务,工业自动化设备安装,工业自动化控制设备、电气设备、机申设备、电子产品、五金产品、金属材料、仪器仪表、橡塑制品销售,商务信息咨询,软件开发,建筑装修装饰建设工程专业施工,建筑安装工程(除特种设备),机械设备租赁(不得从事金融租赁),物业管理。工业自动化设备加工、销售。

    公司简介

    本公司销售的一律为原装正品,假一罚十,可签正规的产品购销合同,可开增值税发票,税点另外算,24小时销售热线:15221406036 本公司销售的一律为原装正品假一罚十可签正规的产品购销合同可开增值税发票税点另外算24小时销售热线15221406036 西门子触摸屏代理商,西门子一级代理商,西门子中国授权总代理 ----浔之漫智控技术(上海)有限公司   本公司专业经销合信/CO-TRUST科思创西门子PLC;S7-200S7-300 S...

    查看公司详情
    电话/手机
    15221406036
    微信号
    15221406036
    QQ
    3064686604
    邮箱
    3064686604@qq.com
    经理
    聂航
    地址
    上海市松江区广富林路4855弄星月大业领地88号3楼
    我们其他产品
    我们的新闻
    微信咨询
    拨打电话