西门子 S7:获取 TIA 项目名称@runtime

Siemens S7: get TIA project name @runtime

问题

是否可以在运行时从 PLC 程序内部获取 TIA Portal project nameproject version 或至少任何 metadata 关于项目的 String ?在编译时将信息作为常量获取也会有所帮助。

背景

该项目包含大量(大约 20 个)具有相同源代码的西门子 S7 CPU。所有 CPU 都连接到 OPC UA 服务器。我想通过提供 OPC UA item.

版本来管理不同的源代码版本

环境

TIA 博途:v14 SP1 更新 1 PLC: CPU 1510SP F-1 PN

此问题的部分解决方案是使用函数 GetChecksum。它将当前在 PLC 上的程序的校验和读出为 byte array(8 字节)。然后可以将校验和与 TIA 项目中 PLC 属性中的校验和进行比较。

KasparJohannes 解决方案的替代方法是添加一个数据块,将项目数据存储为字符串。对于每个项目版本,您都需要更新此数据。

由于数据存储在数据块中,因此可以从 OPC UA 轻松访问它。