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

MCGS COM口MODBUS转发

用昆仑通态KPC7031ki的com口的7(A),8(B)针脚(即com2),连接串口转usb,用电脑串口助手调试软件调试。读取触摸(从站)变量的值(本例触摸屏已和1200PLC用网口(TCP/IP)连接通信,用modbus转发功能读取已有任意变量)。

串口接线及参数设置:

随意建一个变量a,其默认值为0,条件一直满足。

脚本数据中转赋值:1200plc(设备0)和触摸屏的连接变量,赋值给modbus数据转发(设备1)里建立的变量

下面是modbus数据转发(设备1)里建立的变量截图和相关串口助手通信调试

1. 请求帧解析(主机→从机)
01 02 00 00 00 06 F8 08

从站地址‌:0x01(设备地址1)
功能码‌:0x02(读取离散输入)
起始地址‌:0x0000(对应逻辑地址10001)
请求数量‌:0x0006(读取6个离散输入状态)
CRC校验‌:0xF808(校验正确)
2. 响应帧解析(从机→主机)
01 02 01 0F E1 8C

从站地址‌:0x01(设备地址1响应)
功能码‌:0x02(成功响应)
字节计数‌:0x01(返回1字节数据)
数据内容‌:0x0F(二进制00001111)
表示地址10001-10008的状态(仅前6位有效):
10001: 1(最低位)
10002: 1
10003: 1
10004: 1
10005-10006: 0

                      ------------------------------------------------------

                      ===============================

9--16位有符号整数;10--32位有符号整数,11--32位浮点数;12--16位有符号整数

Modbus RTU通信解析(功能码03H - 读保持寄存器)
1. 请求帧解析(主机→从机)
01 03 00 00 00 08 44 0C

‌从站地址‌:0x01(设备地址1)
‌功能码‌:0x03(读取保持寄存器)
‌起始地址‌:0x0000(对应Modbus逻辑地址40001)
‌请求数量‌:0x0008(读取8个寄存器,即16字节数据)
‌CRC校验‌:0x440C(校验通过)
2. 响应帧解析(从机→主机)
01 03 10 02 91 00 00 BA C6 41 EB 68 25 00 00 00 00 00 00 16 50

‌从站地址‌:0x01(设备地址1响应)
‌功能码‌:0x03(成功响应)
‌字节计数‌:0x10(返回16字节数据)
‌寄存器数据‌(大端序):
40001: 0x0291 → 十进制657
40002: 0x0000 → 0
40003: 0xBAC6 → 47814(原始值)
40004: 0x41EB → 16875(浮点数寄存器高位)
40005: 0x6825 → 26661(浮点数寄存器低位)
40006-40008: 全0值
‌CRC校验‌:0x1650(校验通过)
3. 数据格式推测
‌浮点数解析‌(若40003-40004组合为IEEE754):
十六进制:0x41EEBAC6 → 约29.841

http://www.dtcms.com/a/395335.html

相关文章:

  • Elasticsearch面试精讲 Day 22:机器学习与异常检测
  • 仓颉语言中的 `Some` 类型解析
  • spring-boot--redis调整token过期时间
  • 树形表格示例
  • 【完整源码+数据集+部署教程】六角螺母分割系统: yolov8-seg-EfficientHead
  • 零基础搭建赛博朋克个人主页:蓝耘Claude Code完整实战教程
  • C语言第19讲
  • 【含文档+PPT+源码】基于springboot+ssm的智能人脸识别养老系统的设计与开发
  • Linux-> UDP 编程3
  • 分库分表后ID冲突怎么解决?分布式ID生成方案。保证ID全局唯一性。
  • 域名如何解析家庭ip
  • LeetCode 2460.对数组执行操作
  • Unity Time.time 详解
  • LeetCode 922.按奇偶排序数组 II
  • 请简要谈谈Android系统的架构组成?
  • LeetCode 面试经典 150_哈希表_两数之和(44_1_C++_简单)
  • Kafka是什么,架构是什么样的?Kafka概述
  • TCN时序卷积网络、CNN、RNN、LSTM、GRU神经网络工业设备运行监测、航空客运量时间数据集预测可视化|附代码数据
  • 【HarmonyOS】HMRouter关键原理-动态import
  • 【Python】面向对象(三)
  • 05-django项目的跨域处理
  • go语言并发
  • Qt QSS 美化完整教程文档
  • jwt与token+redis,哪种方案更好用?
  • 基于react的前端项目开发和实战总结(umi框架)
  • 【iOS】YYModel
  • 修改docker配置使其支持本机tcp连接
  • ReportFragment:Android 生命周期的桥梁与兼容性解决方案
  • 力扣Hot100--234.回文链表
  • 视觉语言大模型(VLM)的产业落地:从Qwen-VL技术解析到医疗、车险行业革新