文档:记录 net-apply 工程实际版——设备4/5 的 IP 与重连位疑似写反
- 上料 IP 写入 LW-9605(设备5)+LB-10071,制丸 IP 写入 LW-9600(设备4)+LB-10070,与注释/5.8 规划相反 - 按 lwaddr.csv 列出系统定义,给出 A(代码写反)/B(设备分配写反) 两种可能与 30 秒判断法 - 指出缺 IP=0 保护、DELAY(1000) 卡 1 秒 - 10.1 补一条线索:设备连到对方 PLC 时读到不存在 DB 也会整片不显示
This commit is contained in:
+30
@@ -1081,6 +1081,36 @@ end macro_command // 宏结束
|
|||||||
|
|
||||||
> **IP 为 0 不覆盖(10-27 修订)**:`RW-40~51` 首段为 0(新屏未填、PC 模拟器空值)时跳过写入与重连。否则开机/在线模拟会把设备 IP 刷成 `0.0.0.0` 并主动重连 → 通讯必失败,绑 PLC 地址的元件整片不显示(详见 `开发主文件.md` 10.1)。
|
> **IP 为 0 不覆盖(10-27 修订)**:`RW-40~51` 首段为 0(新屏未填、PC 模拟器空值)时跳过写入与重连。否则开机/在线模拟会把设备 IP 刷成 `0.0.0.0` 并主动重连 → 通讯必失败,绑 PLC 地址的元件整片不显示(详见 `开发主文件.md` 10.1)。
|
||||||
|
|
||||||
|
#### ⚠ 工程实际版(10-27 摘录)与上文的差异 —— 设备 4/5 疑似写反
|
||||||
|
|
||||||
|
工程里 `net-apply` 的实际代码是:
|
||||||
|
|
||||||
|
```
|
||||||
|
GetData(v[0], RW, 40, 4) → SetData(v[0], LW, 9605, 4) + SetData(on, LB, 10071, 1) // 注释写「上料 PLC(设备4)」
|
||||||
|
GetData(v[0], RW, 44/48, 4)→ SetData(v[0], LW, 9600, 4) + SetData(on, LB, 10070, 1) // 注释写「制丸 PLC(设备5)」
|
||||||
|
```
|
||||||
|
|
||||||
|
按 `lwaddr.csv` 的系统定义:
|
||||||
|
|
||||||
|
| 系统寄存器 | 含义 |
|
||||||
|
| --- | --- |
|
||||||
|
| `LW-9600`~`9603` | **设备 4** 的 IP0~IP3 |
|
||||||
|
| `LW-9605`~`9608` | **设备 5** 的 IP0~IP3 |
|
||||||
|
| `LB-10070` | 在线改 IP 后**重连设备 4** |
|
||||||
|
| `LB-10071` | 在线改 IP 后**重连设备 5** |
|
||||||
|
| `LB-10100` / `LB-10400` | 与**设备 4** / **设备 5** 的通讯状态 |
|
||||||
|
|
||||||
|
即:**上料 IP 被写进了设备 5,制丸 IP 被写进了设备 4**,与注释和本文件 5.8 的规划正好相反。
|
||||||
|
|
||||||
|
两种可能,必须按现场确认(30 秒即可):
|
||||||
|
|
||||||
|
| 可能 | 判断方法 | 结论 |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| **A. 代码写反了** | EB「系统参数 → 设备列表」里设备 4 = 上料 PLC、设备 5 = 制丸 PLC(与文档一致) | 每次开机把两台 PLC 的 IP **互换**并重连;S7 能连上但读到的是**另一台 PLC 的 DB**,读到不存在的块就整片不显示 —— 与 201 的症状高度吻合 |
|
||||||
|
| **B. 设备分配写反了** | 设备列表里设备 4 实际是制丸、设备 5 是上料 | 宏是对的;要改的是 `地址表.md` 5.8、`开发主文件.md` 9.x 装机流程和 100 号窗 `LB-10100`/`LB-10400` 的标签 |
|
||||||
|
|
||||||
|
**另两处与上文不同**:① 没有 `v[0]==0` 的 IP 保护(新屏/模拟会把 IP 写成 `0.0.0.0`);② 末尾 `DELAY(1000)` 会让开机界面卡 1 秒。
|
||||||
|
|
||||||
**`line-ab-switch`**(13 号窗「A/B 切换」按钮;仅本机角色=1 生效)
|
**`line-ab-switch`**(13 号窗「A/B 切换」按钮;仅本机角色=1 生效)
|
||||||
```
|
```
|
||||||
macro_command main() // 宏入口:点 A/B 线切换按钮
|
macro_command main() // 宏入口:点 A/B 线切换按钮
|
||||||
|
|||||||
@@ -464,6 +464,9 @@ XD 画板:`A_start`、`B_PID`、`C_运行1~3`、`D_点动1/2`、`E_配方1~3`
|
|||||||
>
|
>
|
||||||
> 现场真屏断通讯时这些元件同样不显示,属正常行为——先查通讯,不要改画面。但**必须补一条显式提示**(见下),否则操作员看到整片空白会误以为程序坏了或按钮丢了。
|
> 现场真屏断通讯时这些元件同样不显示,属正常行为——先查通讯,不要改画面。但**必须补一条显式提示**(见下),否则操作员看到整片空白会误以为程序坏了或按钮丢了。
|
||||||
|
|
||||||
|
**新增线索(10-27)**:工程里 `net-apply` 的实际代码把**上料 IP 写进 `LW-9605`(设备5)**、**制丸 IP 写进 `LW-9600`(设备4)**,与注释和 5.8 的规划相反(系统定义见 `lwaddr.csv`:`LW-9600`=设备4、`LW-9605`=设备5、`LB-10070`/`LB-10071` 分别重连设备4/5)。
|
||||||
|
若设备列表里设备4确实是上料 PLC,则两台设备会**连到对方的 PLC**——S7 能连上,但读到对方不存在的 DB 时,元件同样**整片不显示**,与 201 的现象吻合。判断方法与两种修法见 `宏指令.md` 的 `net-apply` 段。
|
||||||
|
|
||||||
**通讯中断时的界面提示(待做)**
|
**通讯中断时的界面提示(待做)**
|
||||||
|
|
||||||
当前 `LB-11963`/`LB-11964` 把系统 "Device No Response" 弹窗关掉了,通讯一断就是"静默空白"。建议在 100 号公共窗加常驻状态:读 `LB-10100`/`LB-10400`(或 `LW-9403`/`LW-9404`),断线时在页面顶部显示红条「PLC 通讯中断,按钮不可用」,或把右上角网络图标改为红/灰。
|
当前 `LB-11963`/`LB-11964` 把系统 "Device No Response" 弹窗关掉了,通讯一断就是"静默空白"。建议在 100 号公共窗加常驻状态:读 `LB-10100`/`LB-10400`(或 `LW-9403`/`LW-9404`),断线时在页面顶部显示红条「PLC 通讯中断,按钮不可用」,或把右上角网络图标改为红/灰。
|
||||||
|
|||||||
Reference in New Issue
Block a user