DL/T 645-1997 电表 TCP 网关接入与受控写入
本文依据已有操作手册整理为线上操作参考。原文标为预期或未执行的操作,仍须按实际环境验证。
从复制产品开始,完成一块FMQX演示电表的十点采集、受控写入、独立读回、历史查询与安全停止。
**开始前准备:**已有可复制的1997版TCP网关产品;本篇复用其模型后逐项核对;已取得当前平台、FMQ网关、FMQX网页版访问条件及本次独立设备资料;具备产品、设备、模型、协议草稿、发布、历史查询和演示写入权限;写入仅针对FMQX演示可写首点;真实设备须另有明确厂家规范与现场授权。
开始前先了解这条接入流程
本篇用一块FMQX演示电表完成1997版TCP网关接入:复制产品、核对模型、添加设备、配置协议、发布、注册、采集、受控写入、查询历史和安全停止。
请先准备可复用的同协议产品、厂家点表和当前环境提供的连接地址。截图中的名称和参数是本次演示实际值;设备编号、地址、分组及授权字段按自己的现场资料填写。
本篇展示本地单节点与FMQX演示电表的实际旅程,尚未完成真人新手阅读与具体版本验收。
配置、采集与写入的关系
这是功能关系示意,用于理解各组件的职责,不是平台运行截图。
复制模板前先替换这些参数
本篇代码使用普通模板名;截图保留实际历史资源。请先完成以下核对,再保存为UTF-8文件或发送报文。
- YAML中的device是本流程会话别名;demo-session-id须通过会话绑定替换为本篇目标会话的真实ID,动作节点的session仍保持device。
- 先完整粘贴定义,验证并保存版本;保存只证明配置已保存,运行和设备结果另按步骤核对。
- demo-device是设备编号模板。将clientId中的设备编号、每个收发主题中的设备编号和TCP上报的clientId一起替换为平台该设备编号;MQTT身份中的产品号、租户号也须替换为当前设备连接参数。
- 连接文件中的host、port及监听方向须改为当前环境实际地址;127.0.0.1表示运行FMQX的本机。涉及MQTT时同步核对产品号、用户名、订阅主题和responseRoute,密码仅在连接页面安全填写。
- 分组、会话及订阅id是导入文件内部引用;如需改名,groupId必须与对应分组id一致。先核对再导入,不要在保留会话上重复创建同名连接。
- 代码块是按既有无密码资产或原代码改写的客户模板,尚未证明本版模板已成功导入。历史截图、发送时间和业务通过范围仍以各步骤记录为准;不要将模板名当作旧证据中的实际资源名。
复制产品并准备独立草稿
本篇从复制已保留产品开始。先预览已有协议和功能定义,再保存独立产品;不把本篇写成从空白逐字段新建。
1. 选择复制产品
**操作位置:*设备管理→*设备接入 操作步骤:在设备接入页选择复制产品。

复制产品卡片已选中。
2. 指定源产品和新名称
**操作位置:*设备管理→*设备接入 操作步骤:选择源产品,填写本次新产品名称。

源产品和新名称均已填写。
3. 核对源产品
**操作位置:*设备管理→*设备接入 操作步骤:打开预览产品,核对产品名称。

预览的是本次选择的源产品。
4. 核对源产品协议
操作位置:设备管理→设备接入 操作步骤:查看源产品的协议和设备类型。

为1997版、TCP网关和网关设备。
5. 查看已有采集属性
**操作位置:*设备管理→*设备接入 **操作步骤:**在功能定义上半部核对已有属性。

可见本篇需要复用的电量属性。
6. 核对其余采集属性
**操作位置:*设备管理→*设备接入 **操作步骤:**滚动预览,核对电量4至10。

十个采集属性均能找到。
7. 选定1997版与TCP网关
操作位置:设备管理→设备接入 操作步骤:返回向导,核对协议与传输方式。

协议为1997版,传输方式为TCP网关。
8. 先准备产品
**操作位置:*设备管理→*设备接入 操作步骤:选中仅准备产品,暂不创建设备。
本轮只准备产品草稿。
9. 核对产品选填资料
操作位置:设备管理→设备接入 操作步骤:展开高级配置,按图核对分类和设备类型。

本篇为网关设备,固件不填写。
10. 核对向导摘要
**操作位置:*设备管理→*设备接入 操作步骤:进入确认页,查看配置预检。

配置预检通过,暂不添加设备。
11. 保存产品草稿
**操作位置:*设备管理→*设备接入 操作步骤:点击保存产品草稿。

提交本篇独立产品草稿。
12. 确认产品已保存
**操作位置:*设备管理→*设备接入 **操作步骤:**查看保存后的准备结果。
页面显示产品草稿已保存。
13. 进入新产品
**操作位置:*设备管理→*设备接入 **操作步骤:**打开刚保存的新产品,核对名称。

新产品未发布,接入配置待生效。
设备管理 → 设备接入
| 字段 / 控件 | 填写说明 |
|---|---|
| 接入来源 | 选定本次接入的起点。 选填 · 填写: 复制产品复制产品:选定本次接入的起点;本篇复制已保留的旧表产品。 |
| 复制产品 | 选择提供功能定义的源产品。 必填 · 填写: 按当前环境填写从产品管理中选取同协议的已有产品。当前批次资源:选择提供功能定义的源产品;先预览协议、网关类型和十个采集属性。 |
| 产品名称 | 为本次复制的独立产品命名。 必填 · 填写: 按当前环境填写由本次接入人员按用途命名。 |
| 预览产品 | 查看源产品身份和功能定义。 |
| 协议 | 规定电表帧格式和数据标识长度。 必填 · 填写: DLT645_1997来自电表铭牌和厂家协议资料。DLT645_1997:规定电表帧格式和数据标识长度;1997版全程保持一致,不能与2007版混用。 |
| 传输方式 | 通过网关主动建立的连接访问电表。 必填 · 填写: TCP_GATEWAY来自实际网关接入方式。TCP_GATEWAY:通过网关主动建立的连接访问电表;本篇选择TCP网关,网关设备类型需一致。 |
| 仅准备产品,暂不创建设备 | 先保存产品草稿,稍后单独添加设备。 选填 · 填写: 选中开启:启用此项;先保存产品草稿,稍后单独添加设备。关闭:停用此项;不启用此项行为。 |
| 下一步 | 进入下一阶段并核对摘要。 |
| 上一步 | 回到前一步修正未提交配置。 |
| 配置预检 | 显示产品草稿是否满足提交条件。 |
| 保存产品草稿 | 创建本篇独立产品草稿。 |
| 产品草稿已保存 | 显示产品准备结果。 |
高级参数(4 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 高级配置 | 展开产品分类、类型和固件等资料。 |
| 产品分类 | 对产品作业务归类。 必填 · 填写: 未分类来自当前平台的分类字典。未分类:对产品作业务归类;本篇保持未分类,其他项目按管理习惯选择。 |
| 设备类型 | 决定产品下设备的角色。 必填 · 填写: 网关设备来自实际网关角色。网关设备:决定产品下设备的角色;本篇以同一设备代表透传网关。 |
| 固件版本 | 记录设备固件资料。 必填 · 填写: 留空来自厂家固件说明。 |
核对十个采集属性
模型标识是后续点位映射的固定键。首点用于FMQX演示写入,取消只读会联动关闭图表和实时监测;十个字段均保留历史存储。
14. 核对首点名称和标识
操作位置:产品详情→功能定义 操作步骤:在功能定义中打开电量1,核对名称、翻译和模型标识。

首点与本篇演示点表对应。
15. 准备演示可写首点
操作位置:产品详情→功能定义 操作步骤:取消首点只读,核对图表和实时监测一并关闭,保留历史存储。

首点可进入受控写入,仍保存历史。
16. 核对首点数值范围
操作位置:产品详情→功能定义 操作步骤:核对小数类型、范围、步长和单位。

小数、范围0至99999999、步长1、单位为空。
17. 保存首点属性
**操作位置:*产品详情→*功能定义 操作步骤:点击修改。

提交当前首点属性修改。
18. 回到首点属性列表
**操作位置:*产品详情→*功能定义 **操作步骤:**查看保存后返回的电量1属性行。

当前仍是本篇产品中的电量1。
19. 核对第二点属性
**操作位置:*产品详情→*功能定义 **操作步骤:**打开电量2,核对名称、翻译和标识。

电量2与第二个数据标识对应。
20. 保持其余点只读
**操作位置:*产品详情→*功能定义 操作步骤:核对第二点保留只读、图表、实时监测和历史存储。

该点按只读采集方式使用。
21. 核对电量3属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量3,核对本篇名称、翻译和模型标识。

电量3与数据标识9012对应。
22. 核对电量4属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量4,核对本篇名称、翻译和模型标识。

电量4与数据标识9013对应。
23. 核对电量5属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量5,核对本篇名称、翻译和模型标识。

电量5与数据标识9014对应。
24. 核对电量6属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量6,核对本篇名称、翻译和模型标识。

电量6与数据标识9015对应。
25. 核对电量7属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量7,核对本篇名称、翻译和模型标识。

电量7与数据标识9016对应。
26. 核对电量8属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量8,核对本篇名称、翻译和模型标识。

电量8与数据标识9017对应。
27. 核对电量9属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量9,核对本篇名称、翻译和模型标识。

电量9与数据标识9018对应。
28. 核对电量10属性
**操作位置:*产品详情→*功能定义 操作步骤:打开电量10,核对本篇名称、翻译和模型标识。

电量10与数据标识9019对应。
产品详情 → 功能定义
| 字段 / 控件 | 填写说明 |
|---|---|
| 功能定义 | 查看和调整复制的模型。 |
| 模型名称 | 为每个采集值提供可读名称。 必填 · 填写: 按当前环境填写来自厂家点表和本次演示命名。 修改后须发布。 |
| 模型标识 | 作为点位映射和数据展示的固定键。 必填 · 填写: 按当前环境填写来自当前产品功能定义。 修改后须发布。 |
| 模型类别 | 区分属性、功能和事件。 选填 · 填写: 属性修改后须发布。属性:区分属性、功能和事件;本篇十点均为属性。 |
| 图表展示 | 控制图表展示;开启会要求只读。 选填 · 填写: 首点关闭,其余九点开启修改后须发布。开启:启用此项;控制图表展示;开启会要求只读。关闭:停用此项;不启用此项行为。 |
| 实时监测 | 控制只读监测展示,与只读联动。 选填 · 填写: 首点关闭,其余九点开启修改后须发布。开启:启用此项;控制只读监测展示,与只读联动。关闭:停用此项;不启用此项行为。 |
| 只读数据 | 限制属性能否由设备控制入口写入。 选填 · 填写: 首点关闭,其余九点开启来自真实设备允许的操作范围。 修改后须发布。开启:启用此项;限制属性能否由设备控制入口写入。关闭:停用此项;不启用此项行为。 |
| 历史存储 | 允许该属性保存历史记录。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许该属性保存历史记录。关闭:停用此项;不启用此项行为。 |
| 数据类型 | 决定模型按何种数值类型接收数据。 必填 · 填写: 小数来自厂家点表及解码结果。 修改后须发布。小数:决定模型按何种数值类型接收数据;本篇使用小数,需与映射格式相容。 |
| 最小值 | 约束模型可用数值下限。 必填 · 填写: 0来自厂家字段范围。 修改后须发布。 |
| 最大值 | 约束模型可用数值上限。 必填 · 填写: 99999999来自厂家字段位数和范围。 修改后须发布。 |
| 步长 | 规定控件每次调节的增量。 必填 · 填写: 1修改后须发布。 |
| 单位 | 给属性补充量纲。 必填 · 填写: 留空来自厂家点表。 修改后须发布。 |
| 修改 | 保存当前属性的修改。 修改后须发布。 |
| 取消 | 放弃当前未提交修改。 |
| 属性列表 | 显示当前产品已保存的模型。 来自当前产品查询结果。 |
高级参数(3 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 模型翻译 | 保存当前模型的翻译配置。 必填 · 填写: meter_9010至meter_9019沿用本篇已复制模型的实际配置。 修改后须发布。 |
| 分享权限 | 控制分享相关标记,不决定采集链路。 选填 · 填写: 表单中曾选中来自平台的分享权限要求。 修改后须发布。开启:启用此项;控制分享相关标记,不决定采集链路。关闭:停用此项;不启用此项行为。 |
| 计算公式 | 用于模型层的计算转换。 必填 · 填写: 截图仅显示标签来自业务计算需求及当前模型配置。 修改后须发布。 |
添加本篇网关设备
设备编号用于连接注册,表号用于识别连接中的电表。选择产品后重新核对设备编号,再保存设备。
29. 手动添加本篇设备
**操作位置:*设备管理→接入设备→*手动添加 操作步骤:在接入设备菜单点击手动添加。

打开新增设备表单。
30. 选择本篇新产品
*操作位置:设备管理→接入设备→手动添加 **操作步骤:在所属产品***选择页选中刚保存的新产品。

本篇新产品处于选中状态。
31. 确认所属产品
**操作位置:*设备管理→接入设备→*手动添加 操作步骤:点击确认所选产品。

返回设备表单并带入本篇产品。
32. 补齐设备名称与编号
操作位置:设备管理→接入设备→手动添加 操作步骤:填写本篇设备名称和设备编号,核对所属产品。

名称、产品和编号三项完整。
33. 保存新设备
**操作位置:*设备管理→接入设备→*手动添加 操作步骤:点击确定。
提交本篇新设备。
34. 确认设备已创建
**操作位置:*设备管理→接入设备→*手动添加 操作步骤:查看设备卡片,核对名称、协议和所属产品。

本篇设备已存在,尚未激活。
设备管理 → 接入设备 → 手动添加
| 字段 / 控件 | 填写说明 |
|---|---|
| 手动添加 | 打开新增设备表单。 |
| 设备名称 | 用简短名称区分本次设备。 必填 · 填写: 按当前环境填写由接入人员按用途命名。 |
| 所属产品 | 将设备关联到本篇新产品。 必填 · 填写: 按当前环境填写来自平台产品列表。当前批次资源:将设备关联到本篇新产品;选择刚复制的新产品,再重新核对设备编号。 |
| 选择 | 打开产品选择页。 |
| 确认所选产品 | 把选中的产品带回设备表单。 |
| 设备编号 | 平台使用此编号识别网关连接。 必填 · 填写: 从本篇设备资料复制来自平台设备详情中的设备编号。 |
| 确定 | 保存本篇新设备。 |
| 关闭 | 退出未提交的设备表单。 |
| 设备状态 | 显示当前设备登记与连接状态。 来自设备查询结果。 |
高级参数(6 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 生成 | 生成新的设备编号。 由平台生成。 |
| 固件版本 | 记录设备固件版本。 必填 · 填写: 实际值未完整核对,请按当前设备资料填写来自厂家设备资料。 |
| 定位方式 | 控制设备位置来源。 必填 · 填写: 实际值未完整核对,请按当前设备资料填写来自设备安装方式。实际候选待核对:源码可见此选择控件,当前实际候选没有完整观察;应按当前租户与设备资料选择;本篇不提供可照抄的环境值。 |
| 设备组织 | 确定设备业务归属。 必填 · 填写: 实际值未完整核对,请按当前设备资料填写来自本租户组织配置。实际候选待核对:源码可见此选择控件,当前实际候选没有完整观察;应按当前租户与设备资料选择;本篇不提供可照抄的环境值。 |
| 设备空间 | 关联设备所在空间。 必填 · 填写: 实际值未完整核对,请按当前设备资料填写来自本租户空间配置。实际候选待核对:源码可见此选择控件,当前实际候选没有完整观察;应按当前租户与设备资料选择;本篇不提供可照抄的环境值。 |
| 设备影子 | 控制离线时的影子行为。 选填 · 填写: 实际值未完整核对,请按当前设备资料填写开启:启用此项;控制离线时的影子行为。关闭:停用此项;不启用此项行为。 |
绑定设备、网关与表号
本篇以同一个平台网关设备承载这块演示电表。真实项目按实际拓扑选择网关,避免把表地址当设备编号。
35. 进入电表协议配置
**操作位置:*产品详情→协议配置→*设备绑定 **操作步骤:**在本篇产品打开协议配置。

设备绑定、轮询、映射和策略入口可见。
36. 填写网关与表号绑定
操作位置:产品详情→协议配置→设备绑定 操作步骤:选择本篇设备和真实网关,填写表号,核对协议并启用。

设备、网关和表号与本篇电表一致。
37. 保存绑定草稿
**操作位置:*产品详情→协议配置→*设备绑定 操作步骤:点击保存草稿。

提交当前绑定。
38. 核对绑定列表
**操作位置:*产品详情→协议配置→*设备绑定 **操作步骤:**核对保存后的设备、网关、表号和启用状态。

列表中是本篇设备的正确绑定。
产品详情 → 协议配置 → 设备绑定
| 字段 / 控件 | 填写说明 |
|---|---|
| 设备绑定 | 选择设备绑定清单。 |
| 新增配置 | 打开绑定草稿表单。 修改后须发布。 |
| 平台设备 | 确定数据归属的平台设备。 必填 · 填写: 按当前环境填写从当前产品的设备列表选择。 修改后须发布。当前批次资源:确定数据归属的平台设备;选择刚创建的本篇设备。 |
| 设备标识 | 从所选设备自动带入标识。 由平台设备记录自动填充。 |
| 真实网关 | 指定承载此电表连接的网关。 必填 · 填写: 按当前环境填写来自平台网关设备列表。 修改后须发布。当前批次资源:指定承载此电表连接的网关;本篇使用同一网关设备,不选择其他测试连接。 |
| 表号(12位数字) | 确定网关连接中要访问的电表。 必填 · 填写: 123456780998来自电表地址设置或厂家资料。 修改后须发布。 |
| 协议版本 | 继承当前产品的电表协议。 来自当前产品协议。 |
| 启用 | 允许发布时包含此绑定。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许发布时包含此绑定。关闭:停用此项;不启用此项行为。 |
| 保存草稿 | 保存当前绑定,尚未发布。 修改后须发布。 |
| 绑定列表 | 显示绑定保存结果。 来自当前产品绑定查询。 |
配置十个轮询项目
每个数据标识分别保存一个轮询项目。本篇显式设置10秒间隔、3秒超时和零重试;平台新增表单的默认值不同。
39. 填写首点轮询
**操作位置:*产品详情→协议配置→*轮询项目 **操作步骤:**新增轮询,按图填写首点参数。

首点每10秒读取,超时3秒、重试0次。
40. 保存首点轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:点击保存草稿。

首点轮询写入当前产品。
41. 核对首点轮询记录
**操作位置:*产品详情→协议配置→*轮询项目 **操作步骤:**在列表核对首点数据标识和采集参数。

列表显示本篇实际轮询记录。
42. 保存电量2轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量2对应9011,其余采集参数与首点一致。
43. 保存电量3轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量3对应9012,其余采集参数与首点一致。
44. 保存电量4轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量4对应9013,其余采集参数与首点一致。
45. 保存电量5轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量5对应9014,其余采集参数与首点一致。
46. 保存电量6轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量6对应9015,其余采集参数与首点一致。
47. 保存电量7轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量7对应9016,其余采集参数与首点一致。
48. 保存电量8轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量8对应9017,其余采集参数与首点一致。
49. 保存电量9轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量9对应9018,其余采集参数与首点一致。
50. 保存电量10轮询
**操作位置:*产品详情→协议配置→*轮询项目 操作步骤:核对图中当前字段参数后,点击保存草稿。

电量10对应9019,其余采集参数与首点一致。
产品详情 → 协议配置 → 轮询项目
| 字段 / 控件 | 填写说明 |
|---|---|
| 轮询项目 | 查看本产品的读取计划。 |
| 新增配置 | 打开新的轮询草稿。 修改后须发布。 |
| 轮询名称 | 便于后续在映射中选择正式轮询。 必填 · 填写: 按当前环境填写由接入人员按采集点命名。 修改后须发布。 |
| 数据标识DI(十六进制) | 选择电表内需要读取的数据。 必填 · 填写: 9010至9019来自该型号厂家点表;本篇为演示点表。 修改后须发布。 |
| 协议版本 | 继承当前产品协议。 由产品配置自动带入。 |
| 轮询间隔(毫秒) | 决定同一字段重复读取的周期。 必填 · 填写: 10000修改后须发布。 |
| 超时(毫秒) | 限制一次读取等待应答的时间。 必填 · 填写: 3000修改后须发布。 |
| 重试次数 | 决定超时后的重复尝试次数。 必填 · 填写: 0修改后须发布。 |
| 启用 | 允许发布时包含此轮询。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许发布时包含此轮询。关闭:停用此项;不启用此项行为。 |
| 保存草稿 | 保存轮询并返回正式记录。 修改后须发布。 |
| 轮询列表 | 显示已保存轮询与实际主键。 来自产品轮询查询。 |
高级参数(1 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 优先级 | 保存轮询任务的调度优先级。 必填 · 填写: 100修改后须发布。 |
把正式轮询映射到属性
映射必须从平台正式候选选择对应轮询与模型。倍率、偏移、单位和编码应来自同一份厂家点表;本篇使用演示点表。
51. 映射电量1
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量1与9010对应;仅此演示首点允许写入。
52. 映射电量2
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量2与9011对应;此点保持只读。
53. 映射电量3
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量3与9012对应;此点保持只读。
54. 映射电量4
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量4与9013对应;此点保持只读。
55. 映射电量5
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量5与9014对应;此点保持只读。
56. 映射电量6
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量6与9015对应;此点保持只读。
57. 映射电量7
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量7与9016对应;此点保持只读。
58. 映射电量8
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量8与9017对应;此点保持只读。
59. 映射电量9
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量9与9018对应;此点保持只读。
60. 映射电量10
**操作位置:*产品详情→协议配置→*点位映射 操作步骤:从候选选择对应的正式轮询和同序号电量属性,核对图中参数后保存草稿。

电量10与9019对应;此点保持只读。
产品详情 → 协议配置 → 点位映射
| 字段 / 控件 | 填写说明 |
|---|---|
| 点位映射 | 把正式轮询结果关联到模型属性。 |
| 新增配置 | 打开映射草稿。 修改后须发布。 |
| 正式轮询项目 | 指定已保存轮询记录。 必填 · 填写: 按当前环境填写从平台查询返回的轮询候选选择。 修改后须发布。选择本字段对应的当前批次资源:指定已保存轮询记录;核对名称和数据标识,不手填或猜测主键。 |
| 物模型字段 | 确定解析值保存到哪个属性。 必填 · 填写: 按当前环境填写来自当前产品功能定义。 修改后须发布。选择同序号的当前批次资源:确定解析值保存到哪个属性;电量1对应首点,其他九点逐一对应。 |
| 数据标识DI(十六进制) | 与所选正式轮询的数据标识一致。 必填 · 填写: 9010至9019由正式轮询选择带入并核对。 修改后须发布。 |
| 协议版本 | 继承产品协议版本。 来自产品配置。 |
| 数据格式 | 规定原始值的解码方式。 必填 · 填写: BCD来自厂家点表和数据编码说明。 修改后须发布。BCD:规定原始值的解码方式;本篇选择BCD,不能把其他编码直接按BCD解释。 |
| 倍率 | 对解码结果乘以倍率。 必填 · 填写: 1来自厂家小数位和量纲说明。 修改后须发布。 |
| 偏移 | 对倍率处理后的结果增加偏移。 必填 · 填写: 0来自厂家或业务计算说明。 修改后须发布。 |
| 单位 | 与模型属性的单位保持一致。 必填 · 填写: 留空来自同一模型属性及厂家资料。 修改后须发布。 |
| 允许写入 | 允许该映射接受受控写入。 选填 · 填写: 仅首点开启来自厂家明确允许的写入范围。 修改后须发布。开启:启用此项;允许该映射接受受控写入。关闭:停用此项;不启用此项行为。 |
| 启用 | 允许发布此映射。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许发布此映射。关闭:停用此项;不启用此项行为。 |
| 保存草稿 | 保存并校验当前映射。 修改后须发布。 |
高级参数(2 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 值索引 | 指定响应数据中的值位置。 必填 · 填写: 0来自厂家响应数据结构。 修改后须发布。 |
| 写入设备规范或官方场景依据 | 记录允许写入的具体依据。 必填 · 填写: FMQX演示首点允许BCD写入真实设备来自厂家正式资料;本篇来自FMQX演示能力。 修改后须发布。 |
设置读取与演示写入策略
读取和写入分别保存策略。9010是FMQX演示可写字段,不代表真实计量表允许修改电量;真实设备必须有明确厂家依据和现场授权。
61. 保存首点读取策略
**操作位置:*产品详情→协议配置→*命令策略 操作步骤:按图核对首点读取策略并保存草稿。

读取、低风险、3秒超时、0重试,密码要求关闭。
62. 保存首点写入策略
**操作位置:*产品详情→协议配置→*命令策略 操作步骤:按图核对首点写策略并保存草稿。

写入、高风险、要求密码,3秒超时和0重试。
产品详情 → 协议配置 → 命令策略
| 字段 / 控件 | 填写说明 |
|---|---|
| 命令策略 | 设置允许的读取与受控写入。 |
| 操作类型 | 分别定义读取和写入策略。 必填 · 填写: READ_DATA,WRITE_DATA来自当前设备允许的操作。 修改后须发布。READ_DATA:分别定义读取和写入策略;读取选READ_DATA,写入选WRITE_DATA。WRITE_DATA:分别定义读取和写入策略;读取选READ_DATA,写入选WRITE_DATA。 |
| 数据标识DI(十六进制) | 把策略限定到演示首点。 必填 · 填写: 9010来自已启用点位映射。 修改后须发布。 |
| 协议版本 | 继承产品电表协议。 来自当前产品。 |
| 风险等级 | 标明策略操作风险。 必填 · 填写: LOW,HIGH修改后须发布。LOW:标明策略操作风险;读取为LOW,写入为HIGH。HIGH:标明策略操作风险;读取为LOW,写入为HIGH。 |
| 允许手动指令 | 允许从手动操作入口发起该策略。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许从手动操作入口发起该策略。关闭:停用此项;不启用此项行为。 |
| 允许统一下行 | 允许平台统一下行入口使用此策略。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许平台统一下行入口使用此策略。关闭:停用此项;不启用此项行为。 |
| 要求密码引用 | 要求写入时提供必要授权字段。 选填 · 填写: 按当前环境填写来自厂家写入规范与本次授权。 修改后须发布。开启:启用此项;要求写入时提供必要授权字段。关闭:停用此项;不启用此项行为。 |
| 超时(毫秒) | 限制单次策略调用等待时间。 必填 · 填写: 3000修改后须发布。 |
| 重试次数 | 控制策略超时后重复尝试。 必填 · 填写: 0修改后须发布。 |
| 启用 | 允许发布此策略。 选填 · 填写: 开启修改后须发布。开启:启用此项;允许发布此策略。关闭:停用此项;不启用此项行为。 |
| 保存草稿 | 保存策略草稿,等待统一发布。 修改后须发布。 |
准备FMQX电表连接
导入本篇配套完整点表,在FMQX网页版编辑连接。网关地址由本环境提供,客户端编号从平台设备编号复制。临时口令不保存在连接配置中。
**完整连接与点位JSON模板(不含密码)**json
{
"schemaVersion": 3,
"groups": [
{
"id": "DLT97_TCPGW_Tutorial_02_group",
"name": "旧表接入"
}
],
"sessions": [
{
"id": "DLT97_TCPGW_Tutorial_02_session",
"groupId": "DLT97_TCPGW_Tutorial_02_group",
"name": "接入旧表",
"protocol": "DLT645_1997",
"transport": "TCP",
"host": "127.0.0.1",
"port": 8888,
"clientId": "demo-device",
"autoReconnect": false,
"dlt645MeterAddress": "123456780998",
"dlt645IncludePreamble": false,
"dlt645MaxFrameBytes": 1024,
"dlt645Points": [
{
"dataIdentifier": "9010",
"valueHex": "21000000",
"writable": true
},
{
"dataIdentifier": "9011",
"valueHex": "22000000",
"writable": false
},
{
"dataIdentifier": "9012",
"valueHex": "23000000",
"writable": false
},
{
"dataIdentifier": "9013",
"valueHex": "24000000",
"writable": false
},
{
"dataIdentifier": "9014",
"valueHex": "25000000",
"writable": false
},
{
"dataIdentifier": "9015",
"valueHex": "26000000",
"writable": false
},
{
"dataIdentifier": "9016",
"valueHex": "27000000",
"writable": false
},
{
"dataIdentifier": "9017",
"valueHex": "28000000",
"writable": false
},
{
"dataIdentifier": "9018",
"valueHex": "29000000",
"writable": false
},
{
"dataIdentifier": "9019",
"valueHex": "30000000",
"writable": false
}
]
}
]
}按替换清单核对后保存为连接配置.json,在FMQX网页版选择导入配置;本次正文改写不代表此模板已实际导入。 此处使用可替换的客户模板名;导入或发送前按本节替换清单核对。
63. 导入本篇电表配置
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**将本节完整JSON按替换清单核对后保存为UTF-8文件连接配置.json,在FMQX网页版 更多操作 中选择 导入配置。原步骤截图保留原批次操作。

本篇单电表和完整点表被导入。
64. 选中导入的电表
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**点击本篇电表卡片,核对名称和1997版标记。

当前是本篇已断开的电表会话。
65. 核对电表协议
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**打开本篇连接编辑,核对1997版协议卡片。

DL/T 645-1997已选中。
66. 核对连接名称和分组
操作位置:FMQX网页版→本篇电表→编辑连接 操作步骤:核对本篇连接名称、分组及保存到本机。

连接保存在本篇分组中。
67. 填写网关地址和客户端编号
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**填写本次FMQ网关地址、端口,并从平台复制设备编号作为客户端编号。

地址可访问,客户端编号与平台设备编号一致。
68. 保存一次首点初始值
操作位置:FMQX网页版→本篇电表→编辑连接 操作步骤:核对表地址和首点,暂填20的编码后保存修改。

首点采用20的初始编码,保留完整十点。
69. 重新打开核对保存值
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**重新打开本篇连接编辑,查看首点初始值。

初始值仍为刚保存的20编码。
70. 恢复正式采样起点
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**把首点初始值改回21的编码。

首点初始值为21000000。
71. 保存连接准备结果
**操作位置:*FMQX网页版→本篇电表→*编辑连接 操作步骤:点击保存修改。

本篇连接定义保存完成,等待发布后注册。
FMQX网页版 → 本篇电表 → 编辑连接
| 字段 / 控件 | 填写说明 |
|---|---|
| 导入配置 | 导入本篇单电表连接和完整点表。 来自本篇配套连接配置。 |
| 本篇电表会话 | 选择当前电表连接。 来自刚导入的连接。 |
| 选择协议 | 决定FMQX演示电表的协议版本。 必填 · 填写: DL/T 645-1997来自平台产品和厂家资料。 修改后须重连。DL/T 645-1997:决定FMQX演示电表的协议版本;本篇编辑已导入的1997电表,不使用取消的新建预览。 |
| 连接名称 | 在FMQX中区分连接。 必填 · 填写: 按当前环境填写由本次接入人员按用途命名。 |
| 所属分组 | 把连接归入本篇分组。 必填 · 填写: 按当前环境填写来自当前FMQX分组。当前批次资源:把连接归入本篇分组;只操作本篇分组中的这一台电表。 |
| 保存方式 | 决定连接配置的保留方式。 选填 · 填写: 保存到本机保存到本机:决定连接配置的保留方式;本篇保存到本机,口令仍只保存在当前会话内存。 |
| FMQ网关Host | 指定FMQX要连接的FMQ网关地址。 必填 · 填写: 127.0.0.1由当前测试环境或运维人员提供。 修改后须重连。 |
| FMQ网关Port | 指定对应网关监听端口。 必填 · 填写: 8888来自当前FMQ网关配置。 修改后须重连。 |
| TCP网关客户端编号 | 注册时让平台识别当前网关设备。 必填 · 填写: 从平台设备编号复制来自本篇平台设备的设备编号。 修改后须重连。 |
| 表地址 | 确定FMQX模拟的电表。 必填 · 填写: 123456780998来自本篇平台绑定的表地址。 修改后须重连。 |
| 数据标识 | 编辑完整点表中的首个点。 必填 · 填写: 9010来自本篇演示点表。 |
| 初始值Hex | 设置连接定义中首点的原始BCD数据。 必填 · 填写: 21000000来自本篇演示值21的编码。 |
| 写入权限 | 允许首点在临时授权后接受平台写入。 必填 · 填写: 允许平台写入(还需本次授权)来自演示电表能力与当前授权。允许平台写入(还需本次授权):允许首点在临时授权后接受平台写入;只为FMQX首点开启,其他九点只读。 |
| 保存修改 | 保存连接定义并保留完整点表。 |
| 保存并连接 | 保存后立即尝试连接。 |
| 取消 | 放弃未提交的连接编辑。 |
| 电表数据点 | 查看当前完整点表中的指定点。 必填 · 填写: 9010至9019来自已导入的十点配置。9010至9019:查看当前完整点表中的指定点;首点可写,其他九点只读。 |
| 当前值Hex | 显示当前设备内的原始值。 来自当前FMQX演示电表状态。 |
| 刷新真实点表 | 重新读取设备当前点表状态。 |
高级参数(1 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 最大帧长度 | 限制可处理帧的长度。 必填 · 填写: 1024 |
校验、发布并核对运行采用
草稿校验、平台接受发布、运行节点采用是三个不同结果。最后核对当前节点回执为APPLIED且没有失败原因。
72. 校验本篇协议草稿
**操作位置:*产品详情→*发布与同步详情 操作步骤:点击校验发布配置。

草稿校验通过,提示从产品顶部发布。
73. 核对采样起始点
**操作位置:*FMQX网页版→本篇电表→*编辑连接 操作步骤:查看电表数据点中的首点初始值和当前值。

两处均为21的编码,写入仍需本次授权。
74. 发布本篇产品
**操作位置:*产品详情→*发布与同步详情 操作步骤:点击本篇产品顶部的发布产品。

打开产品发布确认框。
75. 确认产品发布
**操作位置:*产品详情→*发布与同步详情 操作步骤:核对当前发布对象后点击确定。

本次产品发布被提交。
76. 查看发布反馈
**操作位置:*产品详情→*发布与同步详情 操作步骤:查看并关闭操作成功提示。

平台已接受本次发布动作。
77. 核对产品已生效
**操作位置:*产品详情→*发布与同步详情 操作步骤:查看本篇产品顶部发布和接入配置状态。

产品已发布,接入配置已生效。
78. 核对运行节点回执
**操作位置:*产品详情→*发布与同步详情 操作步骤:打开同步详情,查看节点结果和失败原因。

本次节点结果为APPLIED,失败原因为空。
产品详情 → 发布与同步详情
| 字段 / 控件 | 填写说明 |
|---|---|
| 校验发布配置 | 检查当前协议草稿是否可发布。 |
| 草稿校验通过 | 表示本篇草稿符合发布校验。 |
| 发布产品 | 向运行面发布当前产品配置。 |
| 确定 | 确认当前发布动作。 |
| 操作成功 | 表示平台已接受发布动作。 |
| 接入配置 | 显示产品最近的运行同步状态。 |
| 同步详情 | 查看运行节点对本次发布的反馈。 |
| 运行节点结果 | 表示运行节点已采用本次配置。 来自本次发布的节点回执。 |
连接并注册这块电表
先核对连接、默认注册和等待节点,再运行接入注册流程。注册成功后等待平台正常轮询。
准备本篇注册流程:打开FMQX顶栏“自动化测试”→“YAML”,完整粘贴下方定义,点击“验证”后“保存版本”。再在会话绑定中将device指向本篇刚导入并核对的会话;核对运行节点及当前状态后,按后续步骤点击运行。此处不使用导入流程文件按钮。
1997电表接入注册完整YAML模板yaml
schemaVersion: 2
id: DLT97GW_Tutorial_Registration_02
name: 接入注册
description: 仅连接本篇旧版电表TCP网关,先发送平台默认身份注册包,再等待真实轮询。保留会话供手动读写。
tags: []
variables: {}
requiredEnvironment: []
sessions:
device:
sessionId: demo-session-id
isolation: existing
steps:
- id: connect
kind: action
enabled: true
action: session.connect
session: device
timeoutMs: 10000
retries: 0
continueOnFailure: false
repeat: 1
format: Text
qos: 0
retain: false
durationMs: 0
maxConcurrency: 1
parameters: {}
assertions: []
steps: []
else: []
parallel: []
- id: registration
kind: action
enabled: true
action: registration.default.send
session: device
timeoutMs: 10000
retries: 0
continueOnFailure: false
repeat: 1
format: Text
qos: 0
retain: false
durationMs: 0
maxConcurrency: 1
parameters: {}
assertions: []
steps: []
else: []
parallel: []
- id: wait_poll
kind: action
enabled: true
action: delay
session: device
timeoutMs: 3000
retries: 0
continueOnFailure: false
repeat: 1
format: Text
qos: 0
retain: false
durationMs: 1500
maxConcurrency: 1
parameters: {}
assertions: []
steps: []
else: []
parallel: []
finally: []使用YAML页面粘贴、验证和保存版本;device绑定本篇电表。 此处使用可替换的客户模板名;导入或发送前按本节替换清单核对。
79. 核对接入注册流程
**操作位置:*FMQX网页版→测试→*接入注册流程 操作步骤:在自动化测试→YAML完整粘贴上方接入注册定义,验证并保存版本;在流程页核对连接、默认注册、等待节点,以及device会话绑定。

三个节点顺序正确。
80. 核对注册节点
**操作位置:*FMQX网页版→测试→*接入注册流程 操作步骤:选择注册节点,核对动作、会话别名和超时。

默认注册动作绑定本篇设备会话。
81. 运行接入注册
**操作位置:*FMQX网页版→测试→*接入注册流程 操作步骤:点击运行。

开始本篇连接、注册和等待过程。
82. 确认接入流程通过
**操作位置:*FMQX网页版→测试→*接入注册流程 操作步骤:查看运行控制台的三个节点。

连接、注册和等待均通过。
FMQX网页版 → 测试 → 接入注册流程
| 字段 / 控件 | 填写说明 |
|---|---|
| 流程 | 查看接入注册的可视化节点。 |
| 节点属性 | 显示当前选中流程节点的配置。 来自本篇注册流程。 |
| 动作 | 发送默认注册身份报文。 必填 · 填写: Common / Send FMQ default registration bytes来自本篇协议测试动作。Common / Send FMQ default registration bytes:发送默认注册身份报文;使用默认注册动作,避免把注册身份写错。 |
| 会话别名 | 把流程动作绑定到本篇电表会话。 必填 · 填写: device来自本篇测试流程的会话设置。 |
| 超时(ms) | 限制注册流程动作等待时间。 必填 · 填写: 10000 |
| 运行 | 执行本篇注册流程。 |
| 运行控制台 | 分别显示连接、注册和等待结果。 来自本次真实运行。 |
观察十点连续采集
首点从21逐步变化到30,其余九点保持22至30。轮询错开时,历史表会把不同字段放在不同时间行;合并时间行数不等于字段记录数。
83. 查看平台首点21
**操作位置:*FMQX网页版→*测试与连接状态 **操作步骤:**回到本篇设备详情,查看电量1。

平台当前值为21。
准备本篇连续采样流程:打开FMQX顶栏“自动化测试”→“YAML”,完整粘贴下方定义,点击“验证”后“保存版本”。再在会话绑定中将device指向本篇刚导入并核对的会话;核对运行节点及当前状态后,按后续步骤点击运行。此处不使用导入流程文件按钮。
1997电表连续采样完整YAML模板yaml
schemaVersion: 2
id: DLT97GW_ContinuousSamples_v1_02
name: 连续旧表采集
description: 本篇1997演示电表按已发布10秒轮询周期采集首点21至30,保留其余九点及写权限。
tags: []
variables: {}
requiredEnvironment: []
sessions:
device:
sessionId: demo-session-id
isolation: existing
steps:
- id: set_22
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 22 00 00 00
assertions: []
- id: await_poll_22
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_23
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 23 00 00 00
assertions: []
- id: await_poll_23
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_24
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 24 00 00 00
assertions: []
- id: await_poll_24
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_25
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 25 00 00 00
assertions: []
- id: await_poll_25
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_26
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 26 00 00 00
assertions: []
- id: await_poll_26
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_27
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 27 00 00 00
assertions: []
- id: await_poll_27
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_28
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 28 00 00 00
assertions: []
- id: await_poll_28
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_29
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 29 00 00 00
assertions: []
- id: await_poll_29
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
- id: set_30
kind: action
enabled: true
action: dlt645.data.set
session: device
timeoutMs: 12000
retries: 0
repeat: 1
continueOnFailure: false
parameters:
dataIdentifier: 90 10
valueHex: 30 00 00 00
assertions: []
- id: await_poll_30
kind: action
enabled: true
action: delay
session: device
timeoutMs: 15000
retries: 0
repeat: 1
continueOnFailure: false
durationMs: 11000
parameters: {}
assertions: []
finally: []使用YAML页面粘贴、验证和保存版本;device绑定本篇电表。 本流程从22到30;先确认上一节已采到首点21,十样本由21及本流程后续九值组成。 此处使用可替换的客户模板名;导入或发送前按本节替换清单核对。
84. 运行连续采样
**操作位置:*FMQX网页版→*测试与连接状态 **操作步骤:**在自动化测试→YAML完整粘贴上方连续采样定义,验证并保存版本,device绑定本篇电表;确认首点21已采到后,点击 运行,继续产生22至30。

首点开始按流程逐步改变。
85. 观察采样进行中
**操作位置:*FMQX网页版→*测试与连接状态 **操作步骤:**查看当前流程运行进度。

设置值和等待节点继续执行。
86. 核对连续采样完成
**操作位置:*FMQX网页版→*测试与连接状态 **操作步骤:**查看流程完成后的控制台。

完整运行记录显示本篇流程已完成。
87. 核对平台已到30
**操作位置:*FMQX网页版→*测试与连接状态 **操作步骤:**查看本篇设备电量1当前值。

首点当前值为30。
FMQX网页版 → 测试与连接状态
| 字段 / 控件 | 填写说明 |
|---|---|
| 运行 | 执行本篇连续采集流程。 |
| 运行控制台 | 显示真实流程进度。 来自本次运行结果。 |
| 停止 | 停止当前运行中的流程。 |
| 平台当前值 | 显示后续正常轮询得到的值。 来自平台本设备的当前值。 |
| 断开 | 停止本篇电表连接。 |
| 连接状态 | 显示当前会话连接状态。 来自当前页面与实际会话状态的对照。 |
| 接入注册流程 | 重新连接后恢复注册与轮询。 |
受控写入、断开恢复与独立读回
先配置当前会话临时授权,再依次演示61、恢复后62和63。每次只提交一次,分别核对设备实际执行、平台真实应答和新的正常读取结果。平台应答提示本身不能替代设备执行证明。
88. 打开演示首点写入
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 操作步骤:在本篇电量1控制卡片打开电表写入。

写入框显示本篇目标设备和必要字段。
89. 配置本次会话授权
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 操作步骤:在FMQX本篇会话中通过授权渠道填写口令和操作员码,点击配置本次授权。

显示已配置,提交后的输入清空。
90. 确认演示写入61
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 **操作步骤:**填写61的原生编码、当前授权字段和原因,确认写入一次。

等待本次真实协议应答,不连续点击。
91. 核对设备实际写入61
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 **操作步骤:**在FMQX查看本次写执行记录。

实际执行计数为1,写后值为61。
92. 核对平台应答与61读回
操作位置:设备详情→设备控制;FMQX网页版→当前会话写授权 操作步骤:查看平台真实协议应答提示和后续当前值。

平台收到应答,新的正常读取显示61。
93. 断开本篇电表
**操作位置:*FMQX网页版→*测试与连接状态 操作步骤:在本篇FMQX会话点击断开。

实际会话断开。
94. 刷新后核对断开状态
**操作位置:*FMQX网页版→*测试与连接状态 **操作步骤:**刷新同一Chrome页面并重新查看本篇会话。

页面与真实会话均为已断开。
95. 重新运行接入注册
**操作位置:*FMQX网页版→*测试与连接状态 操作步骤:运行本篇已核对的接入注册流程。

连接、注册和等待均通过。
96. 核对设备保留61
**操作位置:*FMQX网页版→本篇电表→*编辑连接 **操作步骤:**刷新真实点表,核对首点当前值。

连接初始值仍为21,当前设备值为61。
97. 确认演示写入62
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 **操作步骤:**填写62的原生编码、当前授权字段和原因,确认写入一次。

等待本次真实协议应答,不连续点击。
98. 核对设备实际写入62
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 **操作步骤:**在FMQX查看本次写执行记录。

实际执行计数为2,写后值为62。
99. 核对平台应答与62读回
操作位置:设备详情→设备控制;FMQX网页版→当前会话写授权 操作步骤:查看平台真实协议应答提示和后续当前值。

平台收到应答,新的正常读取显示62。
100. 确认演示写入63
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 **操作步骤:**填写63的原生编码、当前授权字段和原因,确认写入一次。

等待本次真实协议应答,不连续点击。
101. 核对设备实际写入63
**操作位置:*设备详情→设备控制;FMQX网页版→*当前会话写授权 **操作步骤:**在FMQX查看本次写执行记录。

实际执行计数为3,写后值为63。
102. 核对平台应答与63读回
操作位置:设备详情→设备控制;FMQX网页版→当前会话写授权 操作步骤:查看平台真实协议应答提示和后续当前值。

平台收到应答,新的正常读取显示63。
设备详情 → 设备控制;FMQX网页版 → 当前会话写授权
| 字段 / 控件 | 填写说明 |
|---|---|
| 电表写入 | 打开当前可写首点的受控写入框。 |
| 设备序列号 | 确认这次写入的目标设备。 来自当前平台设备详情。 |
| 写入数据(十六进制) | 按演示电表允许的BCD编码提供写入内容。 必填 · 填写: 61000000、62000000、63000000来自本篇演示字段编码规范。 |
| 电表密码(8位十六进制) | 为本次写入提供电表口令。 必填 · 填写: 按当前环境填写由设备责任人通过受控渠道提供。 |
| 操作员码(8位十六进制) | 为本次写入提供操作员身份码。 必填 · 填写: 通过授权渠道获取,不在文档记录由设备责任人通过受控渠道提供。 |
| 写入原因 | 记录本次写入目的。 必填 · 填写: FMQX演示电表受控写入与独立读回由当前操作人按实际用途填写。 |
| 确认写入 | 提交一次受控写入。 |
| 配置本次授权 | 仅在当前FMQX会话内配置临时写授权。 来自已取得的本次授权。 |
| 当前会话写授权 | 显示当前会话的授权配置状态。 来自FMQX脱敏状态。 |
| 当前会话写执行记录 | 显示设备执行次数及写前写后值。 来自FMQX设备侧实际执行记录。 |
| 真实协议应答 | 表示设备协议应答已由平台处理。 来自本次命令回复。 |
| 当前值 | 显示后续正常读取带来的当前值。 来自本设备的新读取数据。 |
查询采样与写入历史
选择本篇设备、变量和准确时间窗后查询。首点12条真实采样包含重复的22与30;这是实际采集结果。整批十点有123条字段记录,在页面按时间合并为67行。
103. 进入历史数据
**操作位置:*数据中心→历史数据→*设备 操作步骤:打开数据中心的历史数据,选择设备页。

设备历史筛选入口可见。
104. 搜索本篇设备
**操作位置:*数据中心→历史数据→*设备 操作步骤:在设备下拉中输入本篇设备名称。

出现本篇设备候选。
105. 选定设备并展开筛选
**操作位置:*数据中心→历史数据→*设备 操作步骤:选中本篇设备,展开高级筛选。

当前查询对象是本篇设备。
106. 打开变量列表
**操作位置:*数据中心→历史数据→*设备 操作步骤:展开变量名称候选。

可选择本篇电量属性。
107. 选择十个采集字段
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**选中本篇电量1至10。

十个采集字段已选中。
108. 设置采样时间窗
**操作位置:*数据中心→历史数据→*设备 操作步骤:选择本篇采样的开始和结束时间并确认。

查询窗口为2026年10月15日10:44:25至10:46:30。
109. 查看十点采集明细
**操作位置:*数据中心→历史数据→*设备 操作步骤:点击查询,核对十个字段与对应时间。

十点均有数据,不同轮询时刻分布在不同时间行。
110. 核对查询范围与行数
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**查看历史趋势标题中的设备、变量和计数。

本篇设备、十个变量及67个合并时间行可见。
111. 查看十点趋势
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**查看十个字段的时间趋势。

首点从21逐步到30,其他九点保持各自演示值。
112. 只查询首点
**操作位置:*数据中心→历史数据→*设备 操作步骤:把变量改为仅选电量1后查询。

历史只显示本篇首点。
113. 展开完整首点记录
操作位置:数据中心→历史数据→设备 操作步骤:在每页条数中选择20条每页。

一页足以查看本篇首点12条记录。
114. 核对完整首点变化
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**查看当前首点全部历史行。

首点21至30完整可见,其中22与30各出现两次。
115. 设置第一次写入窗口
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**选择第一次写入前后的时间并确认。

范围覆盖写入前30和写入后61。
116. 核对30变为61
**操作位置:*数据中心→历史数据→*设备 操作步骤:****查询首点在第一次写入窗口的历史。

写前30,后续正常采集为61。
117. 设置恢复后写入窗口
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**选择恢复后第二次写入前后的时间并确认。

范围覆盖61到62。
118. 核对61变为62
**操作位置:*数据中心→历史数据→*设备 操作步骤:****查询恢复后第二次写入的首点历史。

写前61,后续正常采集为62。
119. 设置第三次写入窗口
**操作位置:*数据中心→历史数据→*设备 **操作步骤:**选择第三次写入前后的时间并确认。

范围覆盖62到63。
120. 核对62变为63
**操作位置:*数据中心→历史数据→*设备 操作步骤:****查询第三次写入的首点历史。

写前62,后续正常采集为63。
121. 刷新历史页面
**操作位置:*数据中心→历史数据→*设备 操作步骤:****刷新当前Chrome页面。

历史页面重新加载,设备和变量筛选重置。
122. 刷新后重新查询
**操作位置:*数据中心→历史数据→*设备 操作步骤:重新选择本篇设备和电量1,设置11:08:20至11:09:00后查询。

刷新后仍能查询62到63的原历史。
数据中心 → 历史数据 → 设备
| 字段 / 控件 | 填写说明 |
|---|---|
| 设备 | 进入设备历史查询。 |
| 设备名称 | 限定要查询的设备。 必填 · 填写: 按当前环境填写从当前租户设备列表选择。当前批次资源:限定要查询的设备;搜索并选择本篇设备,不只在搜索框输入名称。 |
| 高级筛选 | 展开变量选择条件。 |
| 变量名称 | 限定查询哪些已存储属性。 选填 · 填写: 按当前环境填写来自所选设备已启用历史存储的模型。当前批次资源:限定查询哪些已存储属性;十点总览选择十项;首点变化单选电量1。 |
| 开始和结束时间 | 限定历史数据范围。 必填 · 填写: 使用本篇采样与写入的实际时间窗来自实际采样和写入记录的时间。 |
| 查询 | 使用当前设备、变量和时间重新查询。 |
| 重置 | 清除当前筛选条件。 |
| 刷新 | 按当前条件重新读取历史。 |
| 历史趋势 | 显示所选字段在时间轴上的变化。 来自历史查询结果。 |
| 历史明细 | 显示历史值及对应更新时间。 来自历史查询结果。 |
| 每页条数 | 决定一页显示多少条历史明细。 必填 · 填写: 20条/页10条/页:每页最多显示10条明细;只改变分页展示,不改变历史数据。20条/页:每页最多显示20条明细;只改变分页展示,不改变历史数据。30条/页:每页最多显示30条明细;只改变分页展示,不改变历史数据。50条/页:每页最多显示50条明细;只改变分页展示,不改变历史数据。 |
高级参数(1 项)
| 字段 / 控件 | 填写说明 |
|---|---|
| 导出 | 导出当前查询结果。 |
停止本篇收发并保留历史
清除本篇会话授权、断开连接并核对自动入口关闭,再取消本篇产品发布。刷新同步详情核对运行撤回回执;最后重新查询原历史,保留产品和设备供后续复核。
123. 打开清除会话授权入口
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:进入本篇电表的写授权区,点击清除授权。

只清除本篇会话的临时授权。
124. 确认临时授权已清除
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 **操作步骤:**核对当前会话写授权和两个敏感输入。

显示未配置,口令和操作员码输入均为空。
125. 断开本篇电表连接
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:核对当前会话名称后点击断开。

本篇连接停止。
126. 核对会话确已断开
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 **操作步骤:**查看本篇会话标题和连接操作。

本篇会话显示已断开,并出现连接按钮。
127. 核对定时发送关闭
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:切换到定时发送页签,核对开关和状态。

定时发送未启用,下次发送和最近执行均为空。
128. 核对自动回复关闭
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:切换到自动回复页签,核对总开关与规则。

总开关关闭,当前没有自动回复规则。
129. 核对自动重连关闭
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:在当前会话连接配置中查看自动重连。

自动重连关闭。
130. 取消本篇产品发布
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:回到本篇产品详情,点击取消发布。

打开本篇产品取消发布确认框。
131. 核对撤回范围并确认
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:阅读当前确认框提示,确认只撤回本篇演示产品后点击确定。

本次取消发布被提交。
132. 查看撤回反馈
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 操作步骤:查看并关闭操作成功提示。

平台已接受本次取消发布。
133. 刷新核对运行撤回回执
**操作位置:*FMQX网页版→本篇会话;产品详情→*取消发布 **操作步骤:**刷新同一产品页,再打开同步详情。

产品未发布,运行节点对本次撤回返回APPLIED。
134. 停止后再次核对历史保留
操作位置:数据中心→历史数据→设备 操作步骤:****刷新历史页后重新选本篇设备、电量1和原写入窗口,点击查询。

原先62到63的四条历史仍可查询,分页和记录数可见。
FMQX网页版 → 本篇会话;产品详情 → 取消发布
| 字段 / 控件 | 填写说明 |
|---|---|
| 定时发送 | 结束后停止本篇定时收发。 选填 · 填写: 关闭开启:启用此项;结束后停止本篇定时收发。关闭:停用此项;不启用此项行为。 |
| 自动重连 | 结束后不再自动恢复本篇连接。 选填 · 填写: 关闭开启:启用此项;结束后不再自动恢复本篇连接。关闭:停用此项;不启用此项行为。 |
| 自动回复 | 结束后停止本篇自定义回复任务。 选填 · 填写: 关闭开启:启用此项;结束后停止本篇自定义回复任务。关闭:停用此项;不启用此项行为。 |
| 清除授权 | 移除当前会话的临时写授权。 |
| 断开 | 停止本篇电表连接。 |
| 取消发布 | 撤回本篇产品的运行配置。 |
| 确定 | 确认当前取消发布动作。 |
| 操作成功 | 表示平台接受本次取消发布。 |
| 产品与连接状态 | 显示产品发布及当前会话状态。 来自停止后的实际页面。 |
| 运行撤回回执 | 表示目标运行节点采用本次撤回配置。 来自当前产品同步详情。 |
| 历史保留 | 停止后仍可使用原窗口查询历史。 来自停止后实际查询。 |
结果不一致时逐项检查
| 看到什么现象 | 可能原因 | 先检查哪里 | 如何恢复 |
|---|---|---|---|
| 设备创建时编号为空。 | 切换所属产品可能清空先前编号。 | 回到最终设备表单,核对名称、所属产品和设备编号。 | 补齐本篇编号后再保存,并同步核对FMQX客户端编号。 |
| 映射找不到轮询或提示不一致。 | 尚未保存正式轮询,或选择了其他点的轮询和模型。 | 先核对轮询列表,再从真实候选选相同数据标识的记录。 | 修正映射后保存、校验并重新发布。 |
| 发布或取消发布后仍显示待生效。 | 页面反馈与运行节点采用是不同时间点。 | 刷新当前产品页并查看同步详情中的节点结果和失败原因。 | 根据实际失败原因修正,收到当前操作APPLIED后再继续。 |
| 电表实际断开,页面仍显示连接。 | 本次观察到页面显示滞后。 | 刷新同一Chrome页面并对照本篇真实会话状态。 | 本篇刷新后显示一致;源码修复未验证,继续前重新核对连接身份。 |
| 平台显示收到应答,仍无法确认写后值。 | 协议应答并不等于已证明设备执行及独立读回。 | 分别核对设备执行计数、写前写后值及新的正常READ。 | 等待后续正常读取与历史,不重复点击写入。 |
| 十点历史中有空白格或行数少于采集次数。 | 不同轮询时刻按时间合并显示,统计口径不同。 | 核对设备、十个变量和采样窗口,再单选首点查看完整12条。 | 以各字段对应时间和值核对,不把合并时间行当消息数。 |
| 刷新后历史条件或结果不见了。 | 浏览器刷新可能重置设备、变量或时间条件。 | 重新选择同一设备、电量1和原写入窗口后点击查询。 | 确认停止后原历史仍在;本篇停止不删除产品、设备或历史。 |

