0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

聊聊上位机与组态软件之间的那些事儿

冬至子 来源:dotNet工控上位机 作者:新阁教育付工 2023-06-02 17:46 次阅读

应用

首先我认为,C#上位机并不是为了取代组态软件,而是对组态软件的补充,C#上位机与组态软件有各自应用的场合。

如果你懂组态,不会C#编程,愿意购买组态授权,项目没有特殊的需求,比如自定义协议、复杂业务、对接第三方系统等,组态软件从功能和界面上能够满足需求,那么,组态软件无疑是适合的。

如果你可以独立开发上位机,不愿意购买组态软件,那么你肯定会选择自主开发上位机。

技术本质上没有好坏之分,技术是为了服务于项目,结合自身情况,结合不同场合选择合理的技术方案,才是技术人的意义所在。

那么,有没有一种场合,可以将C#上位机与组态软件联合起来使用呢?下面就以西门子的WinCC为例,谈谈上位机如何联合组态软件实现通信

我打算从两个方面来说明,一种是上位机通过WinCC来获取数据,另一种是上位机如何弥补WinCC的一些功能不足。

上位机读取WinCC

我们首先看下上位机如何通过WinCC来获取到数据,有这么几种方案,可以参考一下:

前提是WinCC项目已经开发好,并且处于运行状态,运行WinCC画面,这里连接了一个S7-1500的PLC,如下图所示:

图片

第一种方案:通过WinCC的运行时库

WinCC安装目录中有两个dll,分别是CCHMIRuntime.dll和CCHMITags.dll,位置默认处于C:\\Program Files (x86)\\Common Files\\Siemens\\Bin,将这两个dll复制到debug根目录下并手动添加引用,然后创建通信对象。

CCHMIRUNTIME.HMIRuntime hmi = new CCHMIRUNTIME.HMIRuntime();

通过调用读取方法即可实现读取。

hmi.Tags["data1"].Read()

图片

第二种方案:通过WinCC的OPC服务器

WinCC从V7.2版本开始支持OPC服务器,可以支持OPCDA和OPCUA,我们直接通过一个OPC客户端来连接测试一下:

图片

第三种方案:通过WinCC的数据库

WinCC的数据库使用的是SQLServer,WinCC变量归档数据是以压缩的形式存储在数据库中的,第三方开发的应用程序可以通过WinCC提供的OLE-DB接口解压并访问这些数据。

上位机嵌入WinCC

我们再看看上位机如何弥补WinCC的一些功能不足,比如自定义协议或WinCC不支持的一些协议,WinCC从7.0版本开始支持.NET自定义控件,所以我们可以将一些业务和通信封装在自定义控件中,然后嵌入到WinCC中来实现一些WinCC实现不了的功能。

这里以ModbusRTU协议为例,其他自定义协议类似,我们都知道,WinCC是不能直接支持ModbusRTU通信的。

这里我做了一个测试,开发了一个自定义控件,里面集成了串口连接及ModbusRTU通信协议读取温湿度,仅为测试使用,因此功能做的很简单:

图片

我将这个控件集成到WinCC中,和一个单片机连接,成功读取到了温湿度数据。

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PLC控制
    +关注

    关注

    9

    文章

    251

    浏览量

    27318
  • OPC
    OPC
    +关注

    关注

    7

    文章

    349

    浏览量

    46243
  • 上位机
    +关注

    关注

    27

    文章

    944

    浏览量

    54897
  • WinCC
    +关注

    关注

    6

    文章

    204

    浏览量

    48036
  • SQL数据库
    +关注

    关注

    0

    文章

    25

    浏览量

    6937
收藏 人收藏

    评论

    相关推荐

    LV和组态上位软件在同一电脑通过网线读写同一个PLC失败

    问题:LV和组态上位软件在同一电脑通过同一个网卡、同一根网线和IP读写同一个PLC失败 PLC型号:西门子S7-200 smart 现状:非标设备自带
    发表于 10-18 08:26

    组态软件上位开发对比

    上位
    学习电子知识
    发布于 :2023年07月26日 21:56:41

    组态型工控(嵌入式工业电脑)、上位组态软件

    `组态型工控(嵌入式工业电脑)、上位组态软件——“高性价比”、“高清”、“高品质”、“高速”、“超低功耗”、 “大分辨率”
    发表于 02-26 01:02

    上位组态软件Intouch10入门手册

    上位组态软件Intouch10入门手册
    发表于 02-19 14:38 19次下载

    电源选型的那些事儿

    电路教程相关知识的资料,关于电源选型的那些事儿
    发表于 10-10 14:34 0次下载

    Linux的那些事儿之我是Block层

    Linux的那些事儿之我是Block层
    发表于 10-29 09:43 9次下载
    Linux的<b class='flag-5'>那些</b><b class='flag-5'>事儿</b>之我是Block层

    组态软件的变量类型

    组态软件上位软件的一种。组态软件《=
    的头像 发表于 04-09 15:36 1.1w次阅读

    Windows环境与PLC相连的上位监控操作软件应该使用组态

    这类的上位监控软件很多。基本都大同小异。每种组态软件因行业原因,使用率也不一样。不过都是个人爱好,行业习惯而已。
    的头像 发表于 02-07 13:49 6214次阅读

    PLC和上位组态软件通讯方式

    PLC和上位组态软件不在同一个地方,那PLC如何远程和上位通讯呢。现在物联网技术快速发展,PLC通过互联网就能实现和
    的头像 发表于 06-27 08:05 1.2w次阅读
    PLC和<b class='flag-5'>上位</b>机<b class='flag-5'>组态</b><b class='flag-5'>软件</b>通讯方式

    纳米软件分享:上位软件是什么?快速上手上位开发软件分享

    上位软件在测试测量行业应用十分广泛,但对于很多新人来说上位软件是什么,他们可能不甚了解。今天
    的头像 发表于 11-28 17:03 4348次阅读
    纳米<b class='flag-5'>软件</b>分享:<b class='flag-5'>上位</b><b class='flag-5'>机</b><b class='flag-5'>软件</b>是什么?快速上手<b class='flag-5'>上位</b><b class='flag-5'>机</b>开发<b class='flag-5'>软件</b>分享

    C#上位是为了取代组态软件

    首先我认为,C#上位并不是为了取代组态软件,而是对组态软件的补充,C#
    的头像 发表于 02-22 15:47 2672次阅读
    C#<b class='flag-5'>上位</b><b class='flag-5'>机</b>是为了取代<b class='flag-5'>组态</b><b class='flag-5'>软件</b>?

    上位那些事儿

    从广义上来说,上位和下位是一个相对的概念,比如SCADA对于PLC来说,SCADA是上位,PLC是下位
    发表于 05-08 10:58 0次下载
    <b class='flag-5'>上位</b><b class='flag-5'>机</b><b class='flag-5'>那些</b><b class='flag-5'>事儿</b>

    聊聊Netty那些事儿之从内核角度看IO模型

    从今天开始我们来聊聊Netty的那些事儿,我们都知道Netty是一个高性能异步事件驱动的网络框架。
    的头像 发表于 05-23 10:27 1438次阅读
    <b class='flag-5'>聊聊</b>Netty<b class='flag-5'>那些</b><b class='flag-5'>事儿</b>之从内核角度看IO模型

    RFID和NFC之间那些事儿,你真的了解吗?

    RFID和NFC之间那些事儿,你真的了解吗?
    的头像 发表于 12-15 09:38 1389次阅读
    RFID和NFC<b class='flag-5'>之间</b>的<b class='flag-5'>那些</b><b class='flag-5'>事儿</b>,你真的了解吗?

    上位组态软件有哪些类型

    上位组态软件(也称为SCADA系统,即监控控制与数据采集系统)是一种用于实时监控和控制工业过程的计算机系统。这类软件广泛应用于石油、化工、电力、水处理、交通等领域。
    的头像 发表于 06-06 10:12 1304次阅读