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

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

3天内不再提示

如何仿真Modbus_TCP

汽车电子技术 来源:工控亿点点 作者:Alpend_Gu 2023-02-07 10:16 次阅读

上期说到仿真PID,这次来说说仿真Modbus_TCP。

使用方式请参见这一期文章

S7-PLCSIM Advanced使用入门

  1. 创建两个PLC,一个为Client,客户端。一个为Server,服务器。如图一。

    图片

    图一

    此处为了方便记忆,取1511的IP地址为192.168.0.11。取1513的IP地址为192.168.0.13

  2. 打开PLCSIM Advanced,创建两个PLC。如图二。

    图片

    图二

  3. Client端程序编写

    3.1_首先回到Client PLC中,在OB1中,拖入两个Modbus_TCP的块,并创建实例,分别用于读和写。如图三。

    图片

    图片

    图三
    3.2_创建一个DB块,分别用于读写指令的管脚处填写对应的参数,如图四。

    图片

    图四
    3.3_参数详细说明

    InterfaceId:硬件标识符,在系统常数中可以看到。

    ID:引用该连接的唯一ID。

    ConnectionType:连接类型,对于TCP,选择11,不可以使用其他类型

    ActiveEstablished:建立连接的方式所对应的 ID,对于主动连接建立,应选择 TRUE。

    RemoteAddress:连接伙伴(Modbus 服务器)的 IP 地址。

    RemotePort:远程连接伙伴的端口号。

    LocalPort:本地连接伙伴的端口号,可不填。

    详细可以参考F1帮助。

    3.4_引脚参数关联。将REQ等参数分配到引脚上,写好Modbus的读写寄存器的地址区。如图五。

    图片

    图五

    至此,Client已经完成,把程序下载到Client的PLC。

  4. Server端程序编写

    4.1_将Modbus_TCP的Server指令拖入程序段并创建实例,如图六。

    图片

    图六
    4.2_创建一个DB块,将Server指令所需的参数创建在DB块中。如图七。

    图片

    图七

    4.3_参数详细说明

    参见3.3,大部分都相同,唯一需要注意的就是ActiveEstablished为False,因为他是被动连接的、其次就是LocalPort,对于Client来说,他是远程端口,对于Server来说,他是本地端口,所以他的本地端口需要为333。如图七。

    其余参数详见F1帮助

    4.4_引脚参数关联,如图八。

    图片

    图八

    至此,Server已经完成,把程序下载到Server的PLC。

  5. 仿真测试_Client写数据到Server

    将Write的REQ置1,此时Client的数据发送到Server,如图九_1-3。

    图片

    图九_1

    图片

    图九_2

    图片

    图九_3

    可以看到已经将数据从Client端发送到Server端。

  6. 仿真测试_Client从Server读取数据

    将Read的REQ置1,将数据从Server读取到Client,,如图十_1-3。

    图片

    图十_1

    图片

    图十_2

    图片

    图十_3

    可以看到已经将数据从Server端读取到Client端

  7. 数据区域问题

    Client的MB_DATA_ADDR的数据,一个是40001,一个是40011,分别读取和写入5个数据,那么服务器对应的MB_HOLD_REG的第一个就为40001,第十一个就为40011,所以是分别往这两个地方去读取和写入的。

  8. 总结

    注意点1:客户端的“RemotePort”

    注意点2:服务器的“LocalPort”

    注意点3:MB_HOLD_REG地址

    注意点4:ActiveEstablished,客户端为1,因为客户端主动连接。服务器为0,因为服务器被动接受

  9. 也可以使用Modbus_POLL或者Modbus_Slave等软件测试。

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

    关注

    28

    文章

    1810

    浏览量

    77083
  • 仿真
    +关注

    关注

    50

    文章

    4097

    浏览量

    133711
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1370

    浏览量

    79133
收藏 人收藏

    评论

    相关推荐

    Modbus TCP通信报文解析

    Modbus TCP是在TCP/IP网络上运行的Modbus的实现,旨在允许Modbus ASCII/RTU协议在基于
    发表于 09-20 15:55 3w次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>通信报文解析

    Modbus TCPModbus RTU的实现

    使用ZLSN2040、NETCOM2040实现Modbus TCPModbus RTU的转化。1.Modbus TCP
    发表于 08-10 10:04

    有没有哪位道友在RTThread内核上移植modbus_tcp成功的啊

    有没有哪位道友,成功的使用过agile_modbus协议栈的modbus_tcp啊,我看官方给的DEMO都是基于posix接口写的,但是本人不太清除posix接口。有没有哪位道友在RTThread内核的基础之上移植成功的啊。请教一下
    发表于 11-09 14:27

    Modbus_TCP驱动组件设计与实现_史运涛

    Modbus_TCP驱动组件设计与实现_史运涛
    发表于 03-19 11:27 1次下载

    单片机Modbus_TCP协议在大功率整流设备中的应用_梁丁

    单片机Modbus_TCP协议在大功率整流设备中的应用_梁丁
    发表于 03-19 11:28 2次下载

    Modbus/TCP通讯配置

    MODBUSTCP 是简单的、中立厂商的用于管理和控制自动化设备的MODBUS 系列通讯协议的派生产品,它覆盖了使用TCP/IP 协议的Intranet和Internet环境中MODBUS 报文
    发表于 09-30 09:13 38次下载
    <b class='flag-5'>Modbus</b>/<b class='flag-5'>TCP</b>通讯配置

    Modbus TCP通讯协议概述

    Modbus TCP通讯概述 MODBUS/TCP是简单的、中立厂商的用于管理和控制自动化设备的MODBUS系列讯协议的派生产品,显而
    的头像 发表于 01-04 17:51 3w次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b>通讯协议概述

    Modbus RTU和Modbus TCP的区别

    Modbus RTU和Modbus TCP的区别: 1.概念不同:MODBUS是一种标准的工业控制数据交换协议,可以通过RTU和ASCII交换协议数据。RTU通过二进制数据直接传输数据
    发表于 08-03 17:00 5.4w次阅读

    Modbus TCP常见问题

    Modbus RTU和 Modbus TCP的区别?
    的头像 发表于 12-19 14:57 3370次阅读

    ModBus RTU 与 ModBus TCP

    一、两个密切相关的协议:RTU 与 TCP ModBus RTU和ModBus TCP作为ModBus协议的两个主要变体,传统上,
    的头像 发表于 02-07 10:05 3038次阅读

    Modbus TCP通讯概述

    MODBUS/TCP是简单的、中立厂商的用于管理和控制自动化设备的MODBUS系列讯协议的派生产品,显而易见,它覆盖了使用TCP/IP协议的“Intranet”和“Internet”环
    的头像 发表于 04-20 09:46 2826次阅读

    Modbus tcp转ETHERCAT网关modbus tcp和profinet区别

    远创智控YC-ECT-TCP网关能够连接到Modbus tcp总线和ETHERCAT总线中,实现两种不同协议设备之间的通讯。这个网关能够大大提高工业生产的效率和生产效益,让生产变得更加智能化。远创
    的头像 发表于 07-14 09:06 1007次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>tcp</b>转ETHERCAT网关<b class='flag-5'>modbus</b> <b class='flag-5'>tcp</b>和profinet区别

    Modbus tcp转ETHERCAT网关modbus tcp和modbusRTU的区别

    捷米JM-ECT-TCP网关能够连接到Modbus tcp总线和ETHERCAT总线中,实现两种不同协议设备之间的通讯。这个网关能够大大提高工业生产的效率和生产效益,让生产变得更加智能化。捷米
    的头像 发表于 07-30 09:17 1149次阅读
    <b class='flag-5'>Modbus</b> <b class='flag-5'>tcp</b>转ETHERCAT网关<b class='flag-5'>modbus</b> <b class='flag-5'>tcp</b>和modbusRTU的区别

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

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

    MODBUS TCP 转 CANOpen

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