当前位置: 首页 > article >正文

【ModbusTCP协议】

ModbusTCP协议

    • 一、搭建一个ModbusTCP环境
    • 二、ModbusTCP通信协议报文格式
      • ModbusTCP的特点

一、搭建一个ModbusTCP环境

  • 搭建一个ModbusTCP环境
    1、使用ModbusSlave
    2、可以用西门子PLC来做

使用西门子搭建ModbusTCP环境,就需要先搭建一个西门子PLC仿真环境

  • 下载软件PLCSIM Advanced
    在这里插入图片描述
    在这里插入图片描述
  • 第一次创建,需要下载程序写进去。使用PORTAL,这个牵扯仿真的设计。不做示例(一时学不会)。
  • 问题总结:
    1、我们首先要Ping一下PLC的IP地址,保证物理网络是正常的,一定要记住Ping通只能证明网络没问题,并不能代表一定可以通信
    2、西门子S7协议是基于TCP的,所以我们可以使用网络调试助手去连接PLC,IP地址填写PLC的IP地址,端口号填写102。
    3、用通信测试平台测试变量,记住这里最好先测试M存储区,如MD100。
    4、如果通信测试平台可以,说明PLC端设置基本上都没问题了,但是如果这时候配置软件仍然有问题,可以先删除所有的组,只创建一个通信组,并且把存储区选择M存储区。
    5、如果上面的单个M存储区可以,一般就是你通信组配置的问题了,可以将所有的通信组Active激活都取消,然后逐个开启,定位是哪个或者哪几个通信组的问题,然后再找原因。

输入线圈 I区
输出线圈 Q区
输入寄存器 PIW
保持型寄存器

二、ModbusTCP通信协议报文格式

在这里插入图片描述
报文格式:MBAP + 功能码 + 数据

MBAP包含四部分:
1、事务处理标识符:占两个字节
2、协议标识符:占两个字节
3、长度:2个字节(他后面还有多少字节)
4、单元标识符:一个字节

功能码:做什么
数据:变化

读取保持寄存器:
在这里插入图片描述

ModbusTCP的特点

面向连接:Modbus TCP协议使用TCP连接来确保可靠的数据传输。在通信之前,需要建立TCP连接,并在通信结束后关闭连接;

点对点通信:Modbus TCP协议支持点对点通信,即一对一的通信方式。每个Modbus TCP设备都有一个唯一的IP地址,利用这个IP地址可以直接与特定设备进行通信。

数据类型和数据结构:Modbus TCP支持多种数据类型,包括整数、浮点数、布尔值等。同时,它也支持多种数据结构,如单个寄存器、多个寄存器和位寄存器等。

灵活性和扩展性:Modbus TCP协议使用以太网作为物理层,可以通过以太网将多个设备连接成一个网络。这使得它具有较高的灵活性和扩展性,可以方便地添加或删除设备。简单易用:Modbus TCP协议采用简单的帧格式,易于实现和使用。它在工业领域得到广泛应用,设备之间的通信非常方便。

Modbus TCP协议被广泛应用于工业自动化、楼宇自控、能源管理等领域,它是一种可靠、高效的通信协议,可以实现设备之间的数据交换和控制。


http://www.kler.cn/a/106607.html

相关文章:

  • 微信小程序进行md5加密 ,base64 转码
  • 借助Excel实现Word表格快速排序
  • Flink Source 详解
  • Go语言的零值可用性:优势与限制
  • 【postman】怎么通过curl看请求报什么错
  • sql在按照当前表查询返回
  • Spring Authorization Server 1.1 扩展实现 OAuth2 密码模式与 Spring Cloud 的整合实战
  • C++数据结构X篇_21_插入排序(稳定的排序)
  • FPGA与人工智能泛谈-01
  • 第五天:前端页面展示不出来
  • 分布式消息队列:Rabbitmq(2)
  • Ant Design Pro【面包屑导航】二级路由和三级路由都有component的情况,三级不显示component的页面,怎么解决?
  • matlab simulink 四旋翼跟拍无人机仿真
  • Non-constant range: argument must be an integer literal
  • vue3中刷新当前页面的三种方法
  • 简述一下伪共享的概念以及如何避免
  • 记录:获取windows当前登录的用户信息
  • R语言的物种气候生态位动态量化与分布特征模拟实践技术
  • P1868 饥饿的奶牛
  • 2023深耕kotlin,谈谈前景
  • webgl速记之如何根据用户硬件进行性能模式OR质量模式的切换的设计思路
  • Jetpack:019-Jetpack的导航二(传递数据)
  • 基于大数据的时间序列股价预测分析与可视化 - lstm 计算机竞赛
  • 如何做好建筑翻译呢
  • C++——C++入门(二)
  • 读书笔记:c++对话系列,模板方法模式(Template Method Pattern)