从WinCC V7.5 SP2开始,SIEMENS为WinCC添加了Rest接口,所有支持Rest风格的API规范的软件都可以从WinCC读取和写入数据。
为WinCC配置Rest配置方法请参考WinCC帮助。 详情请看这里。 但是,有应该注意的事情。 选择证书。 请参照下图。
图1选择证书并完成Rest设置后,在WinCC中添加一些变量。 这里添加了PAR1-PAR100等内部测试变量。
图2创建变量C#应用程序
创建winform APP应用程序。 目标框架必须至少为. Net Framework 4.5.2。
图3创建项目打开“NuGet包管理器”,然后找到" RestSharp "。 请参照下图。
图RestSharp RestSharp是一个轻量级、与第三方组件无关的Http类库。 RestSharp具有以下特性,支持net4.0、HTTP的GET、POST、PUT、HEAD、OPTIONS、DELETE等操作,并支持oAuth 1、oAuth 2、Basic、ntlmandparamete
安装RestSharp后,将按钮拖动到窗体并将它重命名为" btnReadTags "。 在该单击事件中输入以下代码:
图5在请求代码上的图的代码中,红色框中有请求url。 url是Web上特定资源的地址,uniformresourcelocator 3358 www.Sina.com/URL是该资源的地址。 理论上,所有有效的url都指向一个唯一的资源。 这些资源包括HTML页面、CSS文档和图像。
红框下行的代码用于向WinCC传递用户信息,manager和666666分别是用户名和密码。 这里的用户名和密码必须与WinCC中的完全一致才能通过。
返回到请求url时,该url由两部分组成。 第一部分是主机名和端口号,这部分可以在WinCC上看到。
图6主机名和端口的第二部分是变量名,例如为图5的“PRA1”。 为了便于演示,使用对话框显示返回的消息。 下图是单击按钮后WinCC返回的消息。
图7返回数据上的图中的红色箭头所指的是变量PRA1的值。 在实际的APP应用程序中,您只需将接收到的JSON字符串转换为实体类,因此需要进一步提取数据。 由此可见,Rest的使用其实很简单,只需几行代码就可以获取WinCC数据,并可以通过网络进行远程访问。
本节介绍如何在C#中读取各个变量的执行值。 之后,还将说明其他功能,敬请期待。
(Uniform Resource Locator)
HwLib(慧兰博)技术团队专注于高端自动化技术,如果您对我们的技术教程感兴趣的话,可以X宝上搜索店铺“hwlib”或者“慧兰博”
关于HwLib(慧兰博)技术团队的更多信息:www.hwlib.com.cn
HwLib(慧兰博)技术团队技术资料:
https://www.jianguoyun.com/p/DR20ZAEQq_K3CBivk5kD
或者
https://pan.baidu.com/s/1cInKRSJIRcKQHylV3gafmw