当前位置: 首页 > wzjs >正文

广州建网站加备案方象科技服务案例

广州建网站加备案,方象科技服务案例,哪个网站做衣服的,怎么样给一个网站做横向导航栏在智能工厂架构中,WinCC作为SCADA一级,负责着与上级MES和下级PLC及其他现场组件的联系。与下层通信,WinCC支持S7、MC、Modbus TCP、OPC等多种接口和协议。对上层通信,WinCC从7.5 SP2开始支持REST Api这种Web接口方式。 今天跟大家…

在智能工厂架构中,WinCC作为SCADA一级,负责着与上级MES和下级PLC及其他现场组件的联系。与下层通信,WinCC支持S7、MC、Modbus TCP、OPC等多种接口和协议。对上层通信,WinCC从7.5 SP2开始支持REST Api这种Web接口方式。

图片

今天跟大家分享一下C#通过Rest Api访问WinCC。

一、组件安装

使用REST需要用到WinCC的两个数据包,在安装WinCC时选择数据包安装,勾选ConnectivityPack下的两个数据包,点击下一步。找到ConnectivityPack,将下面各个组件打勾,然后安装。

图片

安装之后,和WinCC一样需要进行单独授权,这里使用运行Sim_EKB_Install进行授权,如下图所示:

图片

最后检查服务是否开启,按win+R键,运行services.msc,启动服务。找到SIMATIC WinCC CCRestService并将其启动。如无法启动,需要先运行WinCC。

图片

二、创建项目

创建一个WinCC项目,添加一个西门子S7-1500驱动:

图片

然后在此驱动下添加4个变量:

图片

最后创建一个界面,绑定变量,运行结果如下:

图片

三、创建证书

启用REST需要证书,需要先签发一个证书。在系统搜索界面输入IIS,打开Internet Information Services (IIS)管理器,如果没有IIS,可以通过控制面板安装一下:

图片

双击服务器证书,找到创建自签名证书,创建一个证书,名称自定义即可,这个证书,后面会使用到:

图片

四、REST配置

首先打开计算机属性,找到启动,勾选 REST服务:

图片

选择REST设置,勾选 通过REST发送变量值,点击端口证书,选择我们刚刚创建的证书,后面的URL我们等下会使用到。

图片

五、REST权限

回到WinCC主界面,双击打开用户管理器。点击左上角用户管理器字样,在中间一栏最底端点击权限等级,添加一个新的权限——REST权限,这个名称可以自定义。

图片

在左侧用户管理器中右键单击Administrator-Group,添加一个新用户,我这里为admin,也可以取其他名称,然后在右侧设置一个密码,并在权限列表中勾选刚才新添加的权限。

图片

打开变量管理,在变量的右侧属性中找到读授权和写授权,将读写权限设置为刚才新建的Rest权限就可以了。

图片

以上设置完成后意味着我们的admin用户具备Rest权限,可以对相应变量进行读写操作,后面将使用该用户和密码进行数据访问。

六、API测试

接下来我们使用Apifox进行测试,我们首先进行权限设置,点击Auth,类型选择Basic Auth,UserName和Password输入我们前面设置的用户名和密码。

图片

1、单个变量读取,使用Get方法,URL格式如下:

https://{Host}:{Port}/WinCCRestService/tagManagement/Value/{VariableName}

我们读取TempOut变量,按照格式修改Url如下所示:

图片

我们可以看到,成功读取TempOut变量值为28.36946。

2、多个变量读取,使用Post方法,URL格式如下:

https://{Host}:{Port}/WinCCRestService/tagManagement/Values
在Body处以JSON格式输入要读取的变量名,格式如下:
{"variableNames" : ["Tag1", "Tag2"]}

图片

我们可以看到,成功读取TempIn和TempOut变量值。

当然,我们也可以通过REST进行变量写入和访问WinCC的归档,具体方法可以参考官方文档的说明,这里就不做过多阐述了。

七、代码实现

我们来通过C#编写代码实现,这里使用RestSharp库来实现。

1、我们先创建一个简单的窗体:

图片

2、这里编写一个读取多个变量的异步方法:

private string url = "https://DESKTOP-D1CLS40:34568/WinCCRestService/tagManagement/Values";
/// <summary>
/// 读取多个变量,返回字典
/// </summary>
/// <param name="varNames"></param>
/// <returns></returns>
private async Task<Dictionary<string, string>> ReadValueRestAsync(List<string> varNames)
{var client = new RestClient(url);client.Timeout = -1;var request = new RestRequest(Method.POST);client.Authenticator = new HttpBasicAuthenticator("admin", "123456");JObject body = new JObject();body.Add("variableNames", new JArray(varNames));request.AddParameter("application/json", body, ParameterType.RequestBody);var response = await client.ExecuteAsync(request);Dictionary<string, string> result = new Dictionary<string, string>();if (response.IsSuccessful){JArray array = JArray.Parse(response.Content);foreach (var item in array){result.Add(item["variableName"].ToString(), item["value"].ToString());}}return result;
}

    3、然后定时读取数据,更新仪表:

    private async void readTimer_Tick(object sender, EventArgs e)
    {var result = await ReadValueRestAsync(new List<string>() { "PressureIn", "PressureOut", "TempIn","TempOut" });if (result.Count > 0){this.meter_PressureIn.Value = Convert.ToDouble(result["PressureIn"]);this.meter_PressureOut.Value = Convert.ToDouble(result["PressureOut"]);this.meter_TempIn.Value = Convert.ToDouble(result["TempIn"]);this.meter_TempOut.Value = Convert.ToDouble(result["TempOut"]);}
    }

      4、运行程序,结果如下所示:

      图片

      5、可以对比WinCC画面,数据一致,即实现访问WinCC:

      图片

      http://www.dtcms.com/wzjs/416770.html

      相关文章:

    • 移动网站开发百度seo官方网站
    • 网站外链可以在哪些平台上做外链网站设计说明
    • 常见的网络营销推广方法有哪些英文外链seo兼职在哪里找
    • 无锡便宜做网站做seo需要哪些知识
    • 外汇返佣网站开发百度网盘客服电话
    • 网站的功能测试怎么做搜索引擎有哪些种类
    • 江门网站推广软件重庆百度关键词优化软件
    • 北京网站设计制作关键词优化微信小程序开发推广网站测试
    • 重庆网站开发公司大地seo视频
    • 成品影视app开发月光宝盒怎么样seo基础篇
    • 南京网站模板免费网站收录网站推广
    • 网站建设的方案模板专门培训seo的网站
    • 提交图片的网站要怎么做nba西部排名
    • wordpress 非插件七牛cdn全站加速5000元网站seo推广
    • wordpress的文章中可以添加图片吗武汉seo招聘信息
    • 国外有什么好的网站百度问答优化
    • 政务系统网站建设性价比高seo的排名优化
    • 零售店铺管理系统太原seo网站优化
    • 网站建设全包公司推荐跨境电商哪个平台比较好
    • 关键词优化公司网站百度信息流账户搭建
    • 搜索排名怎么做泰州seo
    • 做php网站开发能赚钱吗整合营销传播最基础的形式是
    • 做网站好幽默广告软文案例
    • 阿凡达网站建设东莞市网站seo内容优化
    • 如何发布自己做的网站域名查询ip地址
    • 生成论坛网站百度资讯
    • 石家庄做网站wsjz苏州seo免费咨询
    • 手机网站和电脑网站开发seo点击器
    • 十堰学网站建设培训班青岛网站建设与设计制作
    • 泉州seo 泉州网站建设百度推广代理商加盟