切换深色模式
S2 压力 · 协议与平台解析
本机适用范围
本机类型为 06,上位机可能显示“水压传感器”或旧压力产品别名。核对机身量程、单位和类型;名称相似不代表探头接口、供电或固件可以互换。本机压力使用大端 float32,不套用旧整数压力模板;字段与单位按本机协议核对。
不套用旧压力解析模板
本机压力业务值及启动参数中的压力阈值均为大端 float32,单位 MPa。修正后的 AWTools 已按此规则解析;旧安装版的整数压力模板仍可能显示错误数值。平台使用下方本机解析器,并用已知压力和真实原始报文核对。
本章供平台接入使用。FPort 使用十进制,报文字节使用十六进制;偏移从 0 开始,所有多字节字段高字节在前。以下为构造教学数据,不是现场抓包。
1. 先按端口和长度区分
业务载荷为 7 字节,不含 CE DE 配置帧头尾。FPort 1、2 使用相同业务结构。启动 FPort 215 是 23 字节,不能按业务载荷解析;参数回复 FPort 127 / 128 另行处理。
| 偏移 | 长度 | 字段 | 编码 |
|---|---|---|---|
| 0 | 1 | 类型 | 固定 06 |
| 1 | 1 | 报警标志 | 0 正常,1 报警 |
| 2 | 4 | 压力 | IEEE 754 float32,大端;按本机铭牌和上位机单位核对,不除以 100 |
| 6 | 1 | 电量等级 | 0~4 |
业务示例
text
06 00 3E 99 99 9A 04正常,压力 float32 约 0.30,等级 4。3E 99 99 9A 不按整数或百分之一单位解码。
2. 电量字段
电量是 0~4 等级。保留原始等级或显示格数,不统一换算成电压或精确剩余百分比,也不据此保证续航。本机按电源采样分档,不能套用带屏版的电池电压边界。
3. 启动参数包 · FPort 215
共 23 字节,无 CE DE 头尾。
| 偏移 | 长度 | 内容 |
|---|---|---|
| 0 | 1 | 本机类型 06 |
| 1 | 1 | 配置协议版本,以实收为准 |
| 2 / 3 | 各 1 | 固件主版本 / 次版本,分别解释 |
| 4 | 3 | 发送周期,uint24 秒 |
| 7 | 3 | 采集周期,uint24 秒 |
| 10 / 14 / 18 | 每项 4 | 压力上限 / 下限 / 变化阈值,float32 大端 |
| 22 | 1 | 电量等级 |
主动启动包使用 FPort 215。读取命令 02 08 00 返回相同布局的裸参数载荷,但走 FPort 127,不带 CE DE 头尾;收到这种读取结果不能认定设备刚刚重启。版本、周期应与本机读取结果一致;升级后不根据旧示例硬编码版本号。FPort 214 的单字节复位信息另存,不从这一字节推断测量或报警。
4. 本地及无线配置帧
text
CE DE | 命令及参数 | XOR | EC EDXOR 为命令及参数各字节异或,不含头尾,不是 Modbus CRC16。读取使用 02 命令号 参数,写入使用 命令号 参数内容;float32 为 IEEE 754 大端,不与短业务包的整数混用。
| 命令(HEX) | 参数布局 | 用途与边界 |
|---|---|---|
| 08 | 通过读取入口访问,无参数设置 | 返回本机启动参数布局,裸载荷走读取回复端口 |
| 50 | 类型 06 + 发送 uint24 + 采集 uint24,共 7 字节 | 单位秒,采集不大于发送 |
| 51 | 类型 06 + 上限 float32 + 下限 float32,共 9 字节 | 配置值用浮点数,不照抄无线整数编码 |
| 52 | 类型 06 + K float32 + B float32,共 9 字节 | 原始值 × K + B |
| 53 | 类型 06 + 变化阈值 float32,共 5 字节 | 相邻采集绝对差 |
| 54 | 测量读取入口 | 返回 float32;不当作参数写入命令 |
| 操作 | 完整帧示例 |
|---|---|
| 本地协议唤醒 | CE DE 02 00 00 02 EC ED |
| 读取周期 | CE DE 02 50 06 54 EC ED |
| 读取启动参数 | CE DE 02 08 00 0A EC ED |
| 读取测量值 | CE DE 02 54 06 50 EC ED |
本地串口/蓝牙写入前需协议唤醒,读取无需先唤醒;AWTools 连接读取流程会处理配置会话。无线设置允许从当前接收窗口处理,成功后按配置会话规则运行;参数设置帧成功处理后会自动保存到设备,不另设一条“保存”指令。不能仅凭发出命令判断成功,需核对回复,必要时重启后回读。批量设置中后续命令失败,前面已成功的字段可能仍会保存,不是全有或全无。日常通过表单 保存修改完成操作,再按提示处理重启。
测量读取 54 的回复使用 FF + 长度 06,后接 一组 54 + 类型 06 + float32 大端值,再加 CE DE、XOR、EC ED。本机压力使用 float32 物理量,不按整数缩放。此读取回复不含电量;采集忙碌时可能先返回最近记录值,稍后再读确认。
配置读取/状态推送可能带 FF 长度 批量回复或 56 长度 外层,先拆配置封装。无线业务载荷没有这些头尾。远程下行需项目约定的平台端口和完整帧,避免与业务数据解析混用。
5. 平台解析示例
AWTools 配套的型号脚本见本机解析脚本,打开即可查看完整代码并复制。它与下方专用接入示例的字段和错误处理不同,选择一份接入,不要将两套脚本拼在一起。
下载本机 JavaScript 解析示例,按平台的 decodeUplink({fPort, bytes}) 接口调用。示例按端口、类型和精确长度检查,返回业务状态、主动启动参数、08 读取的参数快照或复位码;常规配置回复返回保留的原始字节,便于另行接入。
- 将平台 Base64 数据先转换为字节数组;不要把 Base64 字符串当 HEX 输入。
- 使用与本机 EUI、固件和数据布局一致的解析器。
- 用本章构造例子检查字段,再用真实平台报文验证。
- 触发、恢复、报警原因及时间含义仍按本机上报规则处理,不仅按 FPort 名称映射报警。
示例用于接入起点,不代替项目平台验证;未知端口、类型、长度、状态值或互相冲突的端口/状态组合返回错误,不补成正常读数。分片的配置回复需先按接入流程收齐,不能逐片当成完整回复。