五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C#上位機是為了取代組態(tài)軟件么?

2022-12-20 15:45 作者:新閣教育  | 我要投稿

前言

大家好!我是付工。

經(jīng)常有人會問我,C#上位機是不是就是為了取代組態(tài)軟件?組態(tài)軟件是不是就沒用了?

今天跟大家聊聊,上位機與組態(tài)軟件之間的那些事兒。

應用

首先我認為,C#上位機并不是為了取代組態(tài)軟件,而是對組態(tài)軟件的補充,C#上位機與組態(tài)軟件有各自應用的場合。

如果你懂組態(tài),不會C#編程,愿意購買組態(tài)授權,項目沒有特殊的需求,比如自定義協(xié)議、復雜業(yè)務、對接第三方系統(tǒng)等,組態(tài)軟件從功能和界面上能夠滿足需求,那么,組態(tài)軟件無疑是適合的。

如果你可以獨立開發(fā)上位機,不愿意購買組態(tài)軟件,那么你肯定會選擇自主開發(fā)上位機。

技術本質(zhì)上沒有好壞之分,技術是為了服務于項目,結(jié)合自身情況,結(jié)合不同場合選擇合理的技術方案,才是技術人的意義所在。


那么,有沒有一種場合,可以將C#上位機與組態(tài)軟件聯(lián)合起來使用呢?下面就以西門子的WinCC為例,談談上位機如何聯(lián)合組態(tài)軟件實現(xiàn)通信。

我打算從兩個方面來說明,一種是上位機通過WinCC來獲取數(shù)據(jù),另一種是上位機如何彌補WinCC的一些功能不足。(需要C#聯(lián)合WinCC通信資料,找安妮老師:thinger005)

上位機讀取WinCC

我們首先看下上位機如何通過WinCC來獲取到數(shù)據(jù),有這么幾種方案,可以參考一下:

前提是WinCC項目已經(jīng)開發(fā)好,并且處于運行狀態(tài),運行WinCC畫面,這里連接了一個S7-1500的PLC,如下圖所示:

圖片


第一種方案:通過WinCC的運行時庫

WinCC安裝目錄中有兩個dll,分別是CCHMIRuntime.dll和CCHMITags.dll,位置默認處于C:\Program Files (x86)\Common Files\Siemens\Bin,將這兩個dll復制到debug根目錄下并手動添加引用,然后創(chuàng)建通信對象。

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

通過調(diào)用讀取方法即可實現(xiàn)讀取。

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


第二種方案:通過WinCC的OPC服務器

WinCC從V7.2版本開始支持OPC服務器,可以支持OPCDA和OPCUA,我們直接通過一個OPC客戶端來連接測試一下:

圖片


第三種方案:通過WinCC的數(shù)據(jù)庫

WinCC的數(shù)據(jù)庫使用的是SQLServer,WinCC變量歸檔數(shù)據(jù)是以壓縮的形式存儲在數(shù)據(jù)庫中的,第三方開發(fā)的應用程序可以通過WinCC提供的OLE-DB接口解壓并訪問這些數(shù)據(jù)。

上位機嵌入WinCC

我們再看看上位機如何彌補WinCC的一些功能不足,比如自定義協(xié)議或WinCC不支持的一些協(xié)議,WinCC從7.0版本開始支持.NET自定義控件,所以我們可以將一些業(yè)務和通信封裝在自定義控件中,然后嵌入到WinCC中來實現(xiàn)一些WinCC實現(xiàn)不了的功能。

這里以ModbusRTU協(xié)議為例,其他自定義協(xié)議類似,我們都知道,WinCC是不能直接支持ModbusRTU通信的。

這里我做了一個測試,開發(fā)了一個自定義控件,里面集成了串口連接及ModbusRTU通信協(xié)議讀取溫濕度,僅為測試使用,因此功能做的很簡單:

圖片

我將這個控件集成到WinCC中,和一個單片機連接,成功讀取到了溫濕度數(shù)據(jù)。

圖片


C#上位機是為了取代組態(tài)軟件么?的評論 (共 條)

分享到微博請遵守國家法律
隆林| 临沧市| 灌云县| 博湖县| 枣强县| 察雅县| 广河县| 富川| 澳门| 道真| 夏河县| 冀州市| 铁力市| 阿城市| 宿州市| 溧阳市| 安岳县| 鄂尔多斯市| 吴江市| 报价| 密山市| 深水埗区| 额济纳旗| 云龙县| 随州市| 定安县| 博野县| 大埔区| 尼木县| 土默特右旗| 铅山县| 姜堰市| 饶阳县| 云龙县| 上高县| 阜南县| 富宁县| 界首市| 贺兰县| 林口县| 全椒县|