C# 如何在西门子PLC设备中设置I/O值?
我正在为.net framework(C#)中的本地网络创建一个Web API。在这种情况下,用户可以从excel导入/导出IO标记,或将其设置为静态字符串数组。我已经添加了(Siemens.Engineering.Hmi.dll),但仍然显示了一个未找到的编译时错误 我们还连接了TIAPortal,它运行良好。唯一的障碍是I/O标签导入/导出或设置静态值和HMI软件C# 如何在西门子PLC设备中设置I/O值?,c#,plc,siemens,human-computer-interface,tia-portal,C#,Plc,Siemens,Human Computer Interface,Tia Portal,我正在为.net framework(C#)中的本地网络创建一个Web API。在这种情况下,用户可以从excel导入/导出IO标记,或将其设置为静态字符串数组。我已经添加了(Siemens.Engineering.Hmi.dll),但仍然显示了一个未找到的编译时错误 我们还连接了TIAPortal,它运行良好。唯一的障碍是I/O标签导入/导出或设置静态值和HMI软件 项目:Web API(.Net Framework 4.6.1) Tia门户:v16.0 许可证类型:试用版 如果有人
- 项目:Web API(.Net Framework 4.6.1)
- Tia门户:v16.0
- 许可证类型:试用版
如果有人有任何想法或建议,请回复我。非常感谢。您遇到的问题是(很可能)您没有将引用的Siemens.Engineering.Hmi.dll的
copy local
属性设置为false。因此,无法找到引用的Siemens.Engineering.Hmi.dll的依赖项。备注:添加Siemens.Engineering.dll作为参考除了Siemens.Engineering.Hmi.dll
拥有非本地程序集则需要AssemblyResolving
。最简单的方法是使用App.config文件
有关此主题,请参见西门子的本页:
我看到的第二个问题是标签的访问。如您所知,有HMI标签和PLC标签。可以通过相应的设备项
访问它们。这些设备项
公开不同的服务
。您可以通过.GetService()
方法访问服务。在这种情况下,您将需要软件容器
服务
要熟悉TIA开放性的数据模型,请查看
此外,为了加深您对TIA开放性工作的理解,请参阅