主题
1.1 云交互数据点
「云交互」把 PLC 的寄存器一条条绑成云端数据点。绑好之后设备自动把值同步到服务器,数据在服务器的实时数据库里成为一个数据点,可以去画曲线、存历史、做报警、在云组态画面上绑定显示。
这是不用写云脚本就能上云的最简便做法,也是多数项目的首选。
怎么配
路径:上位机 → 设备详情页 → DTU 功能 → 云交互 子标签 → 打开「启用云交互」→「增加云交互数据」。
每行四个字段:
| 字段 | 填什么 |
|---|---|
| 数据名 | 云端实时数据库里的点名,云组态就是用这个名字绑定。建议 用途 + 序列号 + 寄存器,如 Temp_9349248_D8 |
| 寄存器 | PLC 软元件地址,如 D100、M0、Y0 |
| 数据类型 | 位 / 16 位整数 / 32 位整数 / 浮点,要和寄存器里实际存的格式一致 |
| 同步方向 | 仅上传 / 仅下发 / 双向(上位机里也叫「同步模式」) |

配完要点 💾 写入配置 → 🔄 重启生效。
同步方向怎么选
这是配错最多的一处,选错了不报错,只表现为「云上永远没变化」或「远程改不动」。
| 方向 | 行为 | 用在哪 |
|---|---|---|
| 仅上传 | 只把 PLC 的值送到云端,云端改了不会下来 | 采集类:温度、压力、电量、状态反馈 |
| 仅下发 | 只接收云端下发写进 PLC,PLC 侧改动不上报 | 设定类:远程给定值、启停命令 |
| 双向 | 两边都同步 | 既要在画面上改、也要反映现场手动改的参数 |
「仅上传」的点在云端改不动
设备会拒收下发,这是防止采集量被误写的保护,不是故障。远程要能控制,必须配成「仅下发」或「双向」。
支持的寄存器与数据类型
支持 X / Y / M / S / T / C / D / R 八类软元件。数据类型会跟着寄存器类型自动收敛:
| 寄存器 | 可选数据类型 | 地址范围要点 |
|---|---|---|
| X、Y | 只能选「位」 | 编号按八进制,Y10 是八进制编号,等于十进制 8,即 Y0 起的第 9 个点,不是第 10 点 |
| M、S | 只能选「位」 | M0-M7679;M8000 以上是特殊继电器区 |
| D、R | 16 位 / 32 位 / 浮点 | D0-D7999;D8000 以上是特殊寄存器区 |
| T、C | 位 / 16 位 / 32 位 / 浮点 都可以 | 位=触点状态,字=当前值;C200 以上是 32 位计数器 |
X / Y 是八进制
这是最容易配错的一处。绑定表里写 Y10,它是八进制编号(= 十进制 8),即从 Y0 起的第 9 个输出点。而 Lua 脚本里的 plc.y(10) 是十进制第 10 点,两者规则不同。
32 位和浮点各占 2 个连续的 D,例如 D100 配成浮点时实际占用 D100 和 D101,配下一个点要从 D102 开始。两个点地址重叠会导致数值乱跳。
上报机制:变化上报,不是定时全量
设备周期扫描绑定表,把寄存器当前值和上次的值比较,只有变了才发。所以:
- 数据不动时几乎不占流量,适合 4G 按流量计费的场景
- 不能按「每 5 秒必有一条」预期 —— 值没变就不会有新报文,云端时间戳也不会刷新
- 发布带重发机制,弱网下丢包会自动补发
需要固定周期的整点快照(比如每分钟必须留一条记录),靠存盘方式实现:在实时数据库里把该点设为「瞬时型每分钟存盘」,服务器按周期归档。详见 WEB 云组态 · 配置历史数据源。
上电初值以服务器为准
「仅下发」和「双向」的点,设备在还没从服务器订阅到初值之前不会上报 —— 避免用 PLC 的开机默认值把云端设定值冲掉。
好处是远程设定值断电重启后不会丢失:重连后由服务器把上次的设定值同步回 PLC。
数据从哪来
绑定的是 PLC 寄存器,第三方仪表的数据要先进到寄存器里,靠 串口设备 页采集:
现场 Modbus 仪表 → 串口采集 → 写进 PLC 的 D / M → 云交互绑定 → 变化上报 → 服务器采集怎么配见 1.2 串口设备采集。
排查
| 现象 | 先查什么 |
|---|---|
| 云端查不到这个点 | 「云平台」页是否启用、账号密码对不对、server/online/PLC/<设备ID> 是否为 1 |
| 点有了但值一直不变 | 是不是配成了「仅下发」;寄存器地址是否写错(尤其 X/Y 八进制) |
| 云端改了值 PLC 没动 | 该点配成了「仅上传」,改成「仅下发」或「双向」 |
| 浮点数值乱跳 | 两个点的地址重叠(浮点占 2 个 D) |
| 改完没生效 | 没点「重启生效」 |
相关文档
- 数据在云上怎么用:服务器数据对接 · DTU 云交互数据点
- 要做曲线和报警:WEB 云组态