文档:设备4=制丸1、设备5=上料清洗(EB 设备列表实测),修正 net-apply 结论与 201 判据

- 地址表 5.8/5.9:设备 4/5 归属互换,补实测 IP 192.168.189.22 / 192.168.189.2,协议 S7CommPlus 符号寻址
- 宏指令 net-apply:确认代码正确、仅注释写反(上料 IP→设备5、制丸 IP→设备4)
- 开发主文件 9.x/10.1:设备引用同步互换;新增「符号名 + 设备绑定」判据;删除不适用的「取消优化块访问」
- 新增 tools/scan-plc.ps1:在不受沙箱限制的 PowerShell 里扫 102 端口并做 COTP 握手
This commit is contained in:
2026-10-27 11:56:23 +08:00
parent 200027fd02
commit 7bfe8945ef
4 changed files with 191 additions and 48 deletions
+17 -10
View File
@@ -143,7 +143,7 @@ XD 画板:`A_start`、`B_PID`、`C_运行1~3`、`D_点动1/2`、`E_配方1~3`
- HMI IP / 掩码 / 网关 → `RW-20`~`31`(备屏/换屏用;HMI 固定 IP 必填);
- 上料 PLC IP → `RW-40`~`43`;制丸A PLC IP → `RW-44`~`47`;制丸B PLC IP → `RW-48`~`51`;
- 「应用」→ `net-apply`;窗口开启时执行 `net-read`(进窗自动带出当前值,不需要单独做「读取当前」按钮)。
- 上料屏在 13 号窗设置区放「A/B 切换」按钮 → `line-ab-switch`(只切 `设备5` 的 IP 并重连;**仅本机角色=1 生效**,A/B 屏误点无效);旁边放当前线别显示(读 `RW-61`)。
- 上料屏在 13 号窗设置区放「A/B 切换」按钮 → `line-ab-switch`(只切 `设备4` 的 IP 并重连;**仅本机角色=1 生效**,A/B 屏误点无效);旁边放当前线别显示(读 `RW-61`)。
- **现场无需 EB**:换屏/换 PLC 只填这一页,点「应用」即可。
### 7.6 修改时间(12 号窗)
@@ -362,16 +362,16 @@ XD 画板:`A_start`、`B_PID`、`C_运行1~3`、`D_点动1/2`、`E_配方1~3`
| 屏幕 | 角色 `RW-60` | 连哪两台 PLC | 能看到 |
| --- | --- | --- | --- |
| 上料屏 | 1 | 上料(设备4)+ 制丸 A 或 B(设备5,可切) | 上料段 + 当前选的制丸线 |
| 制丸A屏 | 2 | 上料(设备4)+ 制丸A(设备5) | 上料段 + A 线 |
| 制丸B屏 | 3 | 上料(设备4)+ 制丸B(设备5) | 上料段 + B 线 |
| 上料屏 | 1 | 上料(**设备5**)+ 制丸 A 或 B(**设备4**,可切) | 上料段 + 当前选的制丸线 |
| 制丸A屏 | 2 | 上料(**设备5**)+ 制丸A(**设备4**) | 上料段 + A 线 |
| 制丸B屏 | 3 | 上料(**设备5**)+ 制丸B(**设备4**) | 上料段 + B 线 |
- 用户组:C → X1/X2(绑设备4);D → X3/X4(绑设备5);`admin` 全开;
- 用户组:C → X1/X2(绑**设备5** 上料);D → X3/X4(绑**设备4** 制丸);`admin` 全开;
- 制丸A/B 互不可见:各屏只连自己那条线 + 上料;唯一例外是上料屏(D 登录可切 A/B)。
### 9.2 EB Pro 一次性改造
1. **设备列表**:确认以太网 PLC 占设备4/设备5;X1/X2 与 C 组数据绑设备4,X3/X4 与 D 组数据绑设备5。
1. **设备列表**(10-27 实测):`设备4 = 制丸1(192.168.189.22)`、`设备5 = 上料清洗(192.168.189.2)`;X1/X2 与 C 组数据绑**设备5**,X3/X4 与 D 组数据绑**设备4**。
2. **13 号窗设置区**(`RW` 全部掉电保持):
- 本机角色 `RW-60`(1 上料 / 2 制丸A / 3 制丸B)、线别 `RW-61`(1=A / 2=B);
- HMI IP/掩码/网关 `RW-20~31`(备屏/换屏用;HMI 固定 IP 必填);
@@ -457,15 +457,21 @@ XD 画板:`A_start`、`B_PID`、`C_运行1~3`、`D_点动1/2`、`E_配方1~3`
**S7-1500 三查**
1. CPU 属性 → 防护与安全 → 连接机制 → 勾选 **「允许来自远程伙伴的 PUT/GET 通信访问」**;
2. 用到的 DB 取消 **「优化的块访问」**;
2. 本工程是 **S7CommPlus + 符号寻址**,所以**不需要**取消「优化的块访问」;要查的是**符号名(DB 名 / 变量名)与 PLC 里是否一致**、以及**元件绑对了设备没有**;
3. PC 与 PLC 同网段,Windows 防火墙放行 EasyBuilder。
> **红色地址注释不是"地址写错"的证据**:编辑区里元件上压着的那行红色小字(物件名 + 完整地址 + 删除线)是 EB Pro 的地址注释。本次 201 这批元件的地址能正常编译、下载(校验和正常),所以不要只凭红字判断地址无效——按上面的 LB 替换法分叉判断。
>
> 现场真屏断通讯时这些元件同样不显示,属正常行为——先查通讯,不要改画面。但**必须补一条显式提示**(见下),否则操作员看到整片空白会误以为程序坏了或按钮丢了。
**新增线索(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` 段。
**已确认(10-27,EB 设备列表)**:`设备4 = 制丸1(192.168.189.22)`、`设备5 = 上料清洗(192.168.189.2)`,两台都是 **S7CommPlus + Symbolic Addressing(符号寻址)**。
所以 `net-apply` 里「上料 IP → `LW-9605`/`LB-10071`(设备5)、制丸 IP → `LW-9600`/`LB-10070`(设备4)」**是对的**;写反的只是**脚本注释**(详见 `宏指令.md` 的 `net-apply` 段,只改注释、别改数字)。
**对 201 的意义(重点)**:既然用符号寻址,元件绑的是「DB 名.变量名」而不是绝对地址。
- **201 =「上料-输送2」,其元件必须绑 `设备5`(上料清洗)**;若误绑成 `设备4`(制丸1),就会去制丸 PLC 上找上料的符号 → **找不到 → 该元件整片不画**,而其它上料页正常 —— 与现象完全吻合;
- 同理,**块名 / 变量名与 PLC 不一致**(改名、加前缀、DB 号变化)也会得到同样结果;
- 所以「符号名 + 设备绑定」这两项,比查网络更值得先看。
**通讯中断时的界面提示(待做)**
@@ -523,4 +529,5 @@ XD 画板:`A_start`、`B_PID`、`C_运行1~3`、`D_点动1/2`、`E_配方1~3`
| 10-27 | **10.1 修正**:现场实测在线模拟、离线模拟、真屏**三处都不显示**,原「离线模拟正常」不成立;改为「A 地址/通讯 vs B 元件属性」两分支 + LB 替换一步判定法;明确红色地址注释不能当作地址错误的判据;新增「通讯中断界面提示」待办 |
| 10-27 | `.gitignore` 改为通配:`unitouch*.cxob` / `unitouch*.debug` / `unitouch*.cmtp.bak*` |
| 10-27 | **窗口表按工程实际重建**(3.1/3.2):系统窗实为 3~9;`30~32` = x2y2-focus-area1~3,确认 `LW-50`=`30/31/32`(旧记 141~144 作废);新增 **130~282 约 90 个窗口**(清洗参数/制丸/IO/上料/清洗/各类弹窗);**201=上料-输送2** |
| 10-27 | 宏清单按工程实际核对(见 `宏指令.md` 6.0):50 条、缺 ID 031;区域宏实名 `x2y2-focus-area*`;48 号 `屏蔽通讯异常提示` 是**周期执行**并屏蔽 `LB-11960~11967` 八台设备;新增 7 条未入档宏 |
| 10-27 | 宏清单按工程实际核对(见 `宏指令.md` 6.0):50 条、缺 ID 031;区域宏实名 `x2y2-focus-area*`;48 号 `屏蔽通讯异常提示` 是**周期执行**并屏蔽 `LB-11960~11967` 八台设备;新增 7 条未入档宏 |
| 10-27 | **设备 4/5 定性**:EB 设备列表实测 `设备4=制丸1(192.168.189.22)`、`设备5=上料清洗(192.168.189.2)`,均为 S7CommPlus 符号寻址;`net-apply` 代码正确、仅注释写反(见 `宏指令.md`);10.1 增补「符号名 + 设备绑定」判据,删掉不适用的「取消优化块访问」 |