跳到主要内容

PLC 剖析 — 测试套件(“건조로 #2”)

PLC 剖析(PLC 프로파일링) 是这样一项功能:边缘以只读方式扫描没有 IO 地址表的 PLC,找出实际使用的地址,并让您为其命名、注册为标签。本页的测试套件让您无需真实设备即可从头到尾试用这一流程 —— 包括模拟虚构的“건조로 #2”(干燥炉 #2)的 Modbus TCP 模拟器,以及与其数值相匹配的 HMI 画面照片和 PLC 注释文件。

尚未发布的功能

PLC 剖析尚未正式发布,因此仅在包含该功能的测试版本中显示。通过画面标题栏中的芯片图标打开,并且仅在已配置 AI 时才会显示。功能介绍请参阅 边缘提案 中“⑥ 没有地址表也能接入”一页。

下载套件​

文件内容下载
HMI 画面照片虚构 HMI“건조로 #2 운전 화면”(干燥炉 #2 运行画面,1280×800)。设定值、生产数量、指示灯与模拟器数值一致hmi-dryer2.png
PLC 注释PLC 注释导出示例。Modicon 地址(4xxxx · 3xxxx · 0xxxx · 1xxxx,从 1 开始计数),UTF-8,23 行dryer2-comments.csv
模拟器与上述两个文件数值一致的 Modbus TCP 模拟器。仅使用 Python 3 标准库,只读dryer2_sim.py

照片和注释是可选附件。即使没有,也会仅凭扫描结果生成默认名称 —— 附上后,AI 会以其为依据建议标签名、说明和单位。

虚构 HMI“건조로 #2 운전 화면” —— 与模拟器数值相匹配的照片

运行模拟器​

python3 dryer2_sim.py 5020
  • 省略端口时为 5020。启动后会输出 dryer2 simulator listening on :5020。
  • 若与边缘在同一主机上运行,边缘中要填写的 IP 为 127.0.0.1(边缘容器使用 host 网络)。若在另一台 PC 上运行,则填写该 PC 的 IP。
  • 若是另一台 PC,可能需要在该 PC 的防火墙中开放 5020/tcp。
  • Unit ID 填写任何值都会被接受。

模拟器提供的数值​

地址同时列出了 Modbus 协议地址(从 0 开始)和 Modicon 表示法(从 1 开始)。注释 CSV 使用 Modicon 表示法。

区域 · 地址Modicon含义值
holding 040001干燥炉当前温度(×0.1 ℃)在 99.0~102.0 之间变化
holding 140002排气风门当前开度(×0.1 %)变化
holding 240003批次号35(固定)
holding 340004生产计数器每 3 秒 +1
holding 440005累计运行时间(h)111(固定)
holding 540006配方号640(固定)
holding 1040011干燥炉设定温度(×0.1 ℃)1008 → 100.8 ℃
holding 1140012排气风门设定(×0.1 %)1009 → 100.9 %
holding 1240013供给压力设定(×0.01 bar)1015 → 10.15 bar
holding 1340014输送机速度设定(×0.01 m/min)1016 → 10.16 m/min
holding 1440015上限报警设定(×0.1 ℃)1020 → 102.0 ℃
holding 20–2140021–40022供给压力当前值,FLOAT32 高位字在前在 10.0~10.3 bar 之间变化
input 030001生产数量显示(EA)999
input 130002运行时间显示(h)111
coil 0~300001~00004运行 · 停止 · 自动 · 异常指示灯1 · 0 · 1 · 0
discrete 010001门已关闭1
discrete 110002急停已按下0
discrete 210003燃烧器火焰检测每 5 秒闪烁
  • 四个区域都提供地址 0~1999,上表中没有的地址为 0。
  • 2000 及以上地址以“不存在的地址”(Modbus 异常 02)应答 —— 扫描的边界探测在此找到终点。
  • 写请求(功能码 5 · 6 · 15 · 16)以异常 01 拒绝。

测试步骤​

  1. 打开边缘画面标题栏中的 PLC 剖析(PLC 프로파일링)。
  2. 选择 输入新 PLC 信息(새 PLC 정보 입력),填写名称“건조로 #2”、说明(必填)、协议 Modbus、上面确定的 IP 以及端口 5020。
  3. 将扫描时间设为 5 分钟。
  4. 附上套件中的 HMI 照片和注释 CSV(可选)。
  5. 点击 开始(시작)。
  6. 扫描结束后,点击 用 AI 生成名称(AI 로 이름 만들기)。
  7. 在 ④ 确认 · 注册(④ 확인 · 등록) 画面查看准确度和依据,勾选正确的项后注册。

预期结果​

  • 照片中的设定值 100.8 · 100.9 · 10.15 · 10.16 · 102.0 与 40011~40015 配对。
  • 照片中的 35 · 640 · 111 · 999 也分别与相应地址配对。
  • 照片中的指示灯(运行 · 停止 · 自动 · 异常)与线圈 00001~00004 配对。
  • 注释 CSV 中的 49001 位于扫描区域之外,因此会被丢弃 —— 这是正常的。
  • 如果照片没有拍摄时间(EXIF),则与上传时刻的值进行比较。因此温度、开度、压力等变化的值可能对不上 —— 配对以固定值和设定值为准。
仅供测试

本套件用于测试,并非实际运行中的 PLC。模拟器拒绝写入(只读),并在所有网络地址上接受连接,因此请仅在测试网络中运行,测试结束后将其关闭。

各协议的预先设置与限制​

扫描真实 PLC 之前,请确认以下内容。在开始画面选择协议后,边缘画面也会在目标区域上方显示相同的内容。

通用

  • 对于限制并发连接数的 PLC,如果现有采集正在占用连接,扫描连接可能会被拒绝。此时扫描会以 «第二个连接被拒绝(두 번째 연결 거절)» 为原因停止。
  • 防火墙中必须开放 PLC 端口。

Siemens S7 (1200/1500)

  • 必须在 CPU 属性 › 防护与安全 › 连接机制 › «允许来自远程对象的 PUT/GET 通信访问» 中启用,M · I · Q 才能被读取。保护级别为 «不能访问(完全保护)» 时同样无法读取。
  • 在 TIA Portal 中以 «优化的块访问» 创建的 DB 无法按地址读取,会被排除在扫描之外(现场的 1200/1500 中很常见)。关闭该 DB 的 «优化的块访问» 并重新下载后即可读取。

Mitsubishi

  • PLC 以太网设置中必须开放 MC 协议(SLMP)端口,且通信数据代码必须为 «二进制码通信»。
  • FX3 需要以太网适配器(FX3U-ENET 等)的 MC 协议设置,A 系列需要以太网模块的 1E 帧通信。
  • ZR(扩展文件寄存器)不包含在默认扫描区域中。

LS

  • 必须启用 FEnet 模块的 «XGT 专用协议»(默认端口 2004),并且允许连接的 IP 中必须包含边缘。
  • 在 XGI / XEC 中,没有直接地址(%MW · %MX 等)而只有名称的变量无法按地址读取,会被排除在扫描之外。

Modbus

  • 哪个地址上有什么因设备而异。Unit ID 错误时将读取不到任何内容。
  • 经由 RTU-TCP 网关时速度非常慢,因此请将扫描时间设为 30 分钟以上。

相关文档​