最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

C#聯(lián)合WINCC之?dāng)?shù)據(jù)通信

2021-04-09 08:49 作者:付工上位機(jī)實(shí)戰(zhàn)  | 我要投稿

在工控領(lǐng)域中,WINCC仍然占有很大的市場(chǎng)份額。很多時(shí)候我們說學(xué)習(xí)C#開發(fā)上位機(jī)可以取代傳統(tǒng)的組態(tài)軟件,兩者就像冤家一樣,然而,即使是冤家,也會(huì)有聯(lián)合的時(shí)候。當(dāng)我們的項(xiàng)目已經(jīng)采用WINCC落地之后,已經(jīng)學(xué)會(huì)C#的我們,還能做哪些事情呢?今天跟大家分享一下如何使用C#與WINCC聯(lián)合實(shí)現(xiàn)數(shù)據(jù)通信。

1、環(huán)境搭建

眾所周知,WINCC作為西門子家族的一款組態(tài)軟件,主要是用來和PLC(主要是西門子PLC)通信,因此我們選擇的硬件就是一款西門子S7-1200 PLC。軟件方面,使用的是WINCC V7.4(其他版本待測(cè)試),以及宇宙第一IDE——VS 2019。

這里有個(gè)問題提醒一下,當(dāng)我安裝好WINCC V7.4,通過添加驅(qū)動(dòng)和S7-1200 PLC通信時(shí),怎么都連接不上,最后發(fā)現(xiàn)應(yīng)該是WINCC的S7-1200 PLC的驅(qū)動(dòng)有點(diǎn)BUG,缺少一些組件,通過安裝TIA博圖之后,最終解決。

如果想通過C#聯(lián)合WINCC訪問到PLC里的變量,前提是WINCC項(xiàng)目已經(jīng)開發(fā)好,并且處于運(yùn)行狀態(tài),操作步驟如下:

首先創(chuàng)建一個(gè)S7連接,并創(chuàng)建4個(gè)變量分別為data1、data2、data3、data4,地址對(duì)應(yīng)DB100.DBD0、DB100.DBD4、DB100.DBD8、DB100.DBD12。

接著創(chuàng)建一個(gè)畫面,拖入4個(gè)顯示控件,分別綁定這4個(gè)變量,通過博圖將4個(gè)變量的值分別設(shè)置為50.5、60.5、70.5、80.5,

然后運(yùn)行WINCC畫面。

接下來我們要做的是通過編寫一個(gè)簡(jiǎn)單的Winform程序來讀取WINCC中這4個(gè)變量的值并顯示,這里有兩種方式可以實(shí)現(xiàn)這樣的效果,一種是通過直接訪問WINCC變量進(jìn)行讀取,另一種是通過訪問WINCC畫面中的控件。

2、訪問WINCC變量

1、首先創(chuàng)建一個(gè)新的Windows窗體應(yīng)用,再?gòu)腤INCC安裝目錄中找到兩個(gè)dll,分別是CCHMIRuntime.dll和CCHMITags.dll,位置默認(rèn)處于C:\Program Files (x86)\Common Files\Siemens\Bin,將這兩個(gè)dll復(fù)制到debug根目錄下并手動(dòng)添加引用。

2、Windows窗體界面設(shè)計(jì)如下圖所示:

3、編寫讀取代碼

4、編寫寫入代碼

5、讀取結(jié)果:

6、寫入結(jié)果

3、訪問WINCC控件

1、重新新建一個(gè)窗體,窗體內(nèi)容和布局與之前一致:

2、讀取代碼

3、寫入代碼

4、讀取結(jié)果

5、寫入結(jié)果

這里值得注意的是,通過訪問控件實(shí)現(xiàn)的寫入并沒有真正寫入PLC,所以這種方式僅限于讀取數(shù)據(jù),但可以通過這種方式來設(shè)置控件的其他屬性,比如樣式、背景、文本等。

4、整體總結(jié)

本文主要以學(xué)習(xí)研究為主,針對(duì)C#與WINCC之間的數(shù)據(jù)通信做了較為詳盡的描述,相信對(duì)于很多電氣工程師,尤其是以西門子PLC為主的電氣工程師來說,會(huì)有很大幫助。也許這種情形目前用途不那么廣泛,但是出現(xiàn)這種需求時(shí),就會(huì)變得很有用。

我一直堅(jiān)信因?yàn)榕Σ艜?huì)有結(jié)果,而不是因?yàn)榭吹浇Y(jié)果,才想著去努力,而是就像學(xué)習(xí)C#和上位機(jī)一樣,你如果不學(xué)習(xí),這些內(nèi)容對(duì)你來說可能就是天方夜譚,但是如果你提前學(xué)習(xí)了,你會(huì)發(fā)現(xiàn)其實(shí)很簡(jiǎn)單。

近幾年隨著人工智能、物聯(lián)網(wǎng)的普及,工控行業(yè)發(fā)生了很大的變化,每一位電氣工程師都應(yīng)該及時(shí)作出調(diào)整,至少學(xué)習(xí)一門高級(jí)編程語言,未雨綢繆,以更好的姿態(tài)來應(yīng)對(duì)即將到來的智能制造2025。


C#聯(lián)合WINCC之?dāng)?shù)據(jù)通信的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
黄龙县| 长沙县| 柯坪县| 图木舒克市| 永善县| 元朗区| 崇明县| 铁岭市| 贺州市| 凤城市| 柘荣县| 康乐县| 墨脱县| 剑川县| 新田县| 九寨沟县| 绥化市| 池州市| 丹棱县| 顺昌县| 泸定县| 东乌珠穆沁旗| 朔州市| 睢宁县| 镇远县| 邳州市| 安陆市| 新野县| 右玉县| 唐河县| 广东省| 宁波市| 彝良县| 徐州市| 赞皇县| 昂仁县| 淮阳县| 武平县| 扬州市| 云和县| 新津县|