西门子 S7:获取 TIA 项目名称@runtime
Siemens S7: get TIA project name @runtime
问题
是否可以在运行时从 PLC 程序内部获取 TIA Portal project name
或 project 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 轻松访问它。
问题
是否可以在运行时从 PLC 程序内部获取 TIA Portal project name
或 project 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 轻松访问它。