dsh-plc-decode 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +115 -27
- package/README.md +112 -129
- package/assets/codesys-tools/dvp_decode.py +53 -4
- package/assets/codesys-tools/read_project.py +1 -1
- package/assets/decode-pack.mjs +2 -2
- package/assets/dvp-ladder.mjs +174 -0
- package/assets/ebpro-decode.mjs +305 -0
- package/assets/hmi-decode-workflow.md +7 -9
- package/assets/hmismart-decode.mjs +453 -452
- package/assets/hmismart-report.mjs +9 -14
- package/assets/lad-branches.mjs +147 -0
- package/assets/ladder-render.mjs +118 -0
- package/assets/ladder-workflow.md +80 -0
- package/assets/smart-ladder-auto.mjs +182 -0
- package/assets/stl-to-ladder.mjs +299 -0
- package/hmi.js +36 -183
- package/index.js +70 -5
- package/ladder.js +381 -0
- package/package.json +6 -5
- package/scripts/smoke.mjs +2 -2
- package/assets/FStudio/346/226/207/346/234/254/345/272/223/345/257/274/345/205/245/346/240/274/345/274/217.md +0 -45
- package/assets/fstudio-i18n-workflow.md +0 -165
- package/assets/nb-textlib-workflow.md +0 -93
- package/assets/wincc-text-i18n-workflow.md +0 -96
- package/assets/wincc_i18n.py +0 -504
- package/invariant.js +0 -10
|
@@ -7,9 +7,8 @@
|
|
|
7
7
|
| 文件 | 是什么 | 用哪个 |
|
|
8
8
|
|---|---|---|
|
|
9
9
|
| `.hmismart` | 西门子 WinCC flexible SMART 触摸屏工程(Smart Line 屏) | 工具 `hmi-decode`(解码)/`hmi-diff-project`(新旧对比) |
|
|
10
|
-
| `.fsprj` 或含 `HMI\Frame` 的目录 | 繁易 FStudio / Flexem 触摸屏工程 | 工具 `hmi-decode
|
|
11
|
-
|
|
|
12
|
-
| `Screens.xls` / `Others.xls` / `Messages.xls` | WinCC flexible「项目文本」导出成的 Excel 三件套 | 工具 `wincc-text-i18n`(分型/回写/自检),流程见技能 `wincc-text-i18n-workflow` |
|
|
10
|
+
| `.fsprj` 或含 `HMI\Frame` 的目录 | 繁易 FStudio / Flexem 触摸屏工程 | 工具 `hmi-decode`(画面 / 控件 / 地址表 + 元件文本扫描) |
|
|
11
|
+
| `<工程名>.srt`(同目录) | 项目文本侧的序列化存储 | 主文件被锁时的旁路,见第三节 |
|
|
13
12
|
|
|
14
13
|
**第一原则与 PLC 侧相同:先要"软件里能导出的东西"**。触摸屏这边对应的是:画面清单/变量表(软件里能导 CSV 或看变量表)——导出来对账,比在工程里挖快一个数量级。
|
|
15
14
|
|
|
@@ -30,9 +29,9 @@
|
|
|
30
29
|
`.hmismart` 被 WinCC 打开时是**独占锁**(连 `FileShare.ReadWrite` 都打不开)。这时不必关软件,同目录的 `{{GUID}}.data` 就是工程数据的旁路:
|
|
31
30
|
|
|
32
31
|
- 结构:`ES2RT` 头(前 10 字节)+ gzip 流(`1F 8B 08` 起),解出来是 .NET 序列化对象图(20MB 量级),**UTF-8,字符串可读**。
|
|
33
|
-
-
|
|
32
|
+
- 你能直接从中拿到:**变量表全部标签名**(含以地址命名的标签与中文命名标签)、**连接与驱动名**、画面/控件文本。
|
|
34
33
|
- 拿不到:**变量的 Modbus 地址号**(二进制存,工程里没有明文字样)——读不到就直说读不到,别编;判定靠现场按一下看对应位是否变,或让用户从变量表导一份出来。
|
|
35
|
-
-
|
|
34
|
+
- 用法:按具体串搜(具体地址串、驱动名、中文标签名),避开宽 pattern。
|
|
36
35
|
|
|
37
36
|
## 三、`.srt` 项目文本(主文件锁着时的另一条旁路)
|
|
38
37
|
|
|
@@ -41,13 +40,12 @@
|
|
|
41
40
|
- **陷阱**:① 中文不要用 GBK 解(UTF-16 才对齐);② 抽「中文→英文」对时跳过元素引用/变量地址/空串;③ 截图「项目文本」页可与 `.srt` 内容逐条吻合,能当真值校准。
|
|
42
41
|
- **旁系文件**:`*.transfer`(UTF-16 XML,含设备型号/页面清单)、`*.data`(见上)、`*.chk/.cnk/.rdf/.pwx`(校验/密码,跳过)。
|
|
43
42
|
|
|
44
|
-
## 四、繁易 FStudio
|
|
43
|
+
## 四、繁易 FStudio
|
|
45
44
|
|
|
46
|
-
- 工具:`hmi-decode
|
|
47
|
-
- 方法与踩坑见同插件技能 **`fstudio-i18n-workflow`**:列名逐字符一致、元件文字常写死不走文本库、原工程英文槽常是错填。
|
|
45
|
+
- 工具:`hmi-decode`(读工程 → 画面 / 控件 / 控件地址表,并扫元件文本)。
|
|
48
46
|
|
|
49
47
|
## 五、交付与边界
|
|
50
48
|
|
|
51
49
|
- 产物约定:`.hmismart` 写 `<工作区>\解码归档\<工程名>\HMI解码\`;FStudio 写 `<工程目录>\多语言产出\`。**不写系统临时目录、不污染工程目录**。
|
|
52
50
|
- 只读源工程;`解码归档` 里的报告是某个版本的快照,拿旧报告对账前先比源文件的**大小 + 修改时间**。
|
|
53
|
-
-
|
|
51
|
+
- 屏上地址不是西门子那种格式时(M 区名、Modbus 号、命名习惯):先解同机 PLC 工程(`plc-decode`),看 M 区 IO 映射与参数表,再回来看屏地址。
|