0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MODBUS TCP通信功能的使用概述

机器人及PLC自动化应用 ? 来源:机器人及PLC自动化应用 ? 作者:机器人及PLC自动化 ? 2022-08-03 11:16 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

S7-1200集成PN接口MODBUS TCP通信概述

Modbus TCP是标准的网络通信协议,通过CPU上PN接口进行TCP/IP通信,不需要额外的通信硬件模块,Modbus TCP使用开放式用户通信连接作为Modbus通信路径,所支持的混合客户机和服务器连接数最大为CPU所允许的最大开放式用户通信连接数8个。

软件 STEP7 V11 SP1版本开始,S7-1200CPU 从Firmware V1.0.2开始,不再需要安装Modbus TCP的库文件,可以直接调用Modbus TCP的库指令“MB_CLIENT”和“MB_SERVER”使用实现Modbus TCP通信功能,如图1所示。

a861845e-0e70-11ed-ba43-dac502259ad0.jpg

图1. Modbus TCP的库指令

S7-1200 做 Modbus Tcp Server (服务器)

“MB_SERVER”指令将处理Modbus TCP客户机的连接请求、接收Modbus功能的请求并发送响应。

1.调用MB_SERVER通信指令,进入 “Program blocks” 》 “OB1” 主程序中调用,设置连接ID、IP端口等参数,如下图2所示。

a87b0528-0e70-11ed-ba43-dac502259ad0.jpg

图2.调用MB_SERVER通信指令

功能块参数意义如下表5.

poYBAGLp6KmAbBApAAB6P74lPik198.png

表1. 功能块“MB_SERVER”参数

2.MB_DATA_PTR数据块的新建

通过“Program blocks”》“Add new block”,选择“Data block”创建 DB 块,选择“标准与S7- 300/400兼容” ,点击“OK”键,定义数据区为100个字的数组,如图3所示。

a88fd5ca-0e70-11ed-ba43-dac502259ad0.jpg

a8b5659c-0e70-11ed-ba43-dac502259ad0.jpg

图3.新建MB_DATA_PTR数据块

3.Modbus地址的对应关系

“MB_SERVER”指令允许到达的Modbus功能(FC01、FC02、FC04、FC05、FC15)直接读取和写入访问S7-1200CPU的过程映像输入/输出区(数据类型:BOOL和WORD),通过Modbus功能代码(FC03、FC06和FC16)将到达的Modbus消息写入Modbus保持寄存器或从寄存器中读取(可通过MB_SERVER指令的参数“MB_HOLD_REG”指定保持寄存器),保持寄存器的大小(MB_HOLD_REG参数)必须大于1个字节,详细参考表2.。

poYBAGLp6LyAEMbMAABCs5wjOXo175.png

表2.Modbus地址的对应关系

4.客户机端 Modscan32 软件设置

a8c8ce84-0e70-11ed-ba43-dac502259ad0.jpg注意:客户机采用Modscan32软件测试,Modscan32 做 Modbus TCP Client 测试软件,是第三方软件,可以从 internet 网络上下载。

将测试电脑的IP地址设置成192.168.0.210,打开Modscan32 软件,在Modscan32的“Setup-》Data Definition”中设置功能码、起始地址、长度等,如图4所示。

a8d983b4-0e70-11ed-ba43-dac502259ad0.jpg

图4.设置“Data Definition”参数

在“Connection-》connect.。.”中打开连接属性对话框,选择“Remote modbus TCP Server”,设置服务器的IP地址,端口号,如图5所示。

a8fb797e-0e70-11ed-ba43-dac502259ad0.jpg

a914235c-0e70-11ed-ba43-dac502259ad0.jpg

图5.设置连接属性

a8c8ce84-0e70-11ed-ba43-dac502259ad0.jpg注意:用Modsscan32做客户机不需要考虑Device ID和服务器一致的情况,服务器自动响应客户机的Device ID。

5.通讯测试

S7-1200作服务器,客户机Modscan32用FC03功能码读取服务器的两个字,设置客户机和服务器的功能、起始地址、端口等参数相对应,具体设置如图5~6所示,

a93732ac-0e70-11ed-ba43-dac502259ad0.jpg

图6.S7-1200作服务器

通讯结果如下图7所示,Modscan32从服务器读到数据10,20到客户机的DB4.DBW0和DB4.DBW2区域。

a9513120-0e70-11ed-ba43-dac502259ad0.jpg

图7.FC03通讯结果

用功能FC15向服务器的Q0.0~Q0.7写8位数据,设置连接参数,Modscan32设置结果如下图8所示。

a95fc1ea-0e70-11ed-ba43-dac502259ad0.jpg

图8.使用FC15通讯,设置Modscan32

测试结果,服务器侧直接对应过程映像输出区,00001~00008对应Q0.0~Q0.7,如下图9所示。

a982908a-0e70-11ed-ba43-dac502259ad0.jpg

图9. 使用FC15通讯测试结果

6.HR_Start_Offset背景参数

HR_Start_Offset是类型为字,用于指定Modbus保持寄存器的起始地址,存储在MB_SERVER背景数据块中,默认值是0,可以通过编程将值写入HR_Start_Offset。以上面FC03功能读2个字为例,将HR_Start_Offset的偏移量设置成2,其他参数不修改,HR_Start_Offset偏移前后地址对应关系如下表7,编程调用和结果如图10~11所示。

pYYBAGLp6NKACjNOAAAcerFnlhY545.png

表3. HR_Start_Offset偏移前后地址对应关系

编程调用如下图10所示

a9a1c586-0e70-11ed-ba43-dac502259ad0.jpg

a9ba11ea-0e70-11ed-ba43-dac502259ad0.jpg

图10.HR_Start_Offset的偏移量设置

通讯结果如下图11所示

a9d17664-0e70-11ed-ba43-dac502259ad0.jpg

图11. 通讯结果

7.MB_SERVER参数STATUS的查询参考下面列表4.

pYYBAGLp6OiAaolVAACB6x1YDn4577.png

表4.MB_SERVER参数STATUS

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口
    +关注

    关注

    33

    文章

    9033

    浏览量

    154024
  • 服务器
    +关注

    关注

    13

    文章

    9829

    浏览量

    88245
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1406

    浏览量

    81314

原文标题:S7-1200集成PN接口MODBUS TCP通信概述

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Modbus TCPModbus RTU电脑端 TCP 与西门子 V20 变频器的通信案例

    在工业自动化控制系统中,经常需要实现不同设备之间的通信与数据交互。本案例旨在展示如何通过 Modbus 协议,将电脑作为主站(Modbus TCP)与多台西门子变频器 V20(
    的头像 发表于 07-27 17:19 ?147次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b> 转 <b class='flag-5'>Modbus</b> RTU电脑端 <b class='flag-5'>TCP</b> 与西门子 V20 变频器的<b class='flag-5'>通信</b>案例

    什么是Modbus TCP协议

    Modbus TCP是一种基于TCP/IP协议的Modbus通信协议,用于在客户机和服务器之间进行数据
    的头像 发表于 07-23 17:18 ?409次阅读
    什么是<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>协议

    CC\\-Link IE转Modbus TCP:风电设备通信的“双语模式”

    ,数据包丢失率高达5%,且偶尔出现通信中断。 解决步骤: 1. 网关配置优化:将Modbus TCP侧的更新周期从1秒调整为500ms,并启用网关的“心跳检测”功能; 2. 地址冲突排
    发表于 07-07 14:45

    CCLinkIE与Modbus TCP的“跨界恋爱”:中央空调系统通信新姿势!

    如何破冰?答案就是——耐达讯通信技术CCLinkIE转Modbus TCP网关,让设备们开启“甜蜜互动”! 协议壁垒?一键破防! 耐达讯通信技术CCLinkIE与
    发表于 07-07 14:42

    通信小能手,Modbus TCP转Profibus DP网关硬控变送器与PLC通讯方案

    通信小能手,Modbus TCP转Profibus DP网关硬控变送器与PLC通讯方案
    的头像 发表于 07-02 14:36 ?161次阅读
    <b class='flag-5'>通信</b>小能手,<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>转Profibus DP网关硬控变送器与PLC通讯方案

    Modbus TCP通信的那些坑!你遇到过几个?

    Modbus TCP通信,需要建立连接,对于S7-200 Smart CPU作为Modbus TCP客户端时,可以通过mbus_client
    的头像 发表于 04-16 17:17 ?613次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b><b class='flag-5'>通信</b>的那些坑!你遇到过几个?

    Modbus TCP 到 RTU:轻松转换指南!

    在现代工业自动化领域,Modbus TCPModbus RTU两种通信协议因其高效、稳定的特点被广泛应用。然而,随着技术的发展和设备升级的需求,经常会遇到需要将这两种协议进行互相转换
    的头像 发表于 03-14 15:21 ?652次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b> 到 RTU:轻松转换指南!

    三格电子Modbus TCP转CANOpen网关相关问答

    型号:SG-TCP-COE-210 Q1: Modbus TCP转CANOpen网关 的主要功能是什么? A1: 该网关的核心功能是实现
    的头像 发表于 03-13 10:22 ?430次阅读
    三格电子<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>转CANOpen网关相关问答

    Modbus网关如何实现Modbus RTU与Modbus TCP协议的数据采集?

    着重要作用。 Modbus网关 作为数据通信的桥梁,能够实现Modbus RTU与Modbus TCP协议之间的数据采集与转换,进而为监控系
    的头像 发表于 10-22 15:57 ?1057次阅读

    MODBUS TCP 转 CANOpen

    产品概述 SG-TCP-COE-210 网关可以实现将 CANOpen 接口设备连接到 MODBUS TCP 网络中。用户不需要了解具体的 CANOpen 和
    的头像 发表于 09-24 13:59 ?547次阅读
    <b class='flag-5'>MODBUS</b> <b class='flag-5'>TCP</b> 转 CANOpen

    EtherCAT转Modbus TCP协议网关(JM-ECT-TCP

    JM-ECT-TCP网关实现EtherCAT网络与Modbus TCP网络之间的数据通讯,即将Modbus TCP设备转换为EtherCAT
    的头像 发表于 09-07 17:05 ?674次阅读
    EtherCAT转<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>协议网关(JM-ECT-<b class='flag-5'>TCP</b>)

    Modbus TCP转CC-Link协议网关(Modbus TCP转CC-Link)

    远创智控YC-CCLK-TCP型网关是自主研发的一款CC-Link从站功能的通讯网关。该产品主要功能是将各种Modbus TCP设备接入到C
    的头像 发表于 09-07 15:07 ?862次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>转CC-Link协议网关(<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>转CC-Link)

    Modbus-TCP转Profinet协议转换网关(JM-TCP-PN)

    一,产品主要功能 1、捷米特JM-TCP-PN该网关的核心功能是将Profinet协议转换为Modbus TCP协议,使得Profinet设
    的头像 发表于 08-28 14:46 ?535次阅读
    <b class='flag-5'>Modbus-TCP</b>转Profinet协议转换网关(JM-<b class='flag-5'>TCP</b>-PN)

    Modbus(TCP)转Profinet从站协议网关(JM-TCP-PN)

    一,产品主要功能 1、 捷米特JM-TCP-PN 该网关的核心功能是将Profinet协议转换为Modbus TCP协议,使得Profine
    的头像 发表于 08-20 11:41 ?814次阅读
    <b class='flag-5'>Modbus</b>(<b class='flag-5'>TCP</b>)转Profinet从站协议网关(JM-<b class='flag-5'>TCP</b>-PN)

    Modbus(TCP)转Profinet从总线协议转换网关(JM-TCP-PN)

    大家详尽阐述该设备的功能、参数以及具体的配置方式。 一,产品主要功能 1、捷米特JM-TCP-PN该网关的核心功能是将Profinet协议转换为Mo
    的头像 发表于 08-16 10:14 ?700次阅读
    <b class='flag-5'>Modbus</b>(<b class='flag-5'>TCP</b>)转Profinet从总线协议转换网关(JM-<b class='flag-5'>TCP</b>-PN)