亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于.NET上位機(jī)與PLC工業(yè)以太網(wǎng)通信的實(shí)現(xiàn)

        2016-12-19 11:41:32朱津津申屠浩鮑可進(jìn)
        電子科技 2016年11期
        關(guān)鍵詞:程序

        朱津津,申屠浩,鮑可進(jìn)

        (江蘇大學(xué) 計(jì)算機(jī)科學(xué)與通信工程學(xué)院,江蘇 鎮(zhèn)江 212013)

        ?

        基于.NET上位機(jī)與PLC工業(yè)以太網(wǎng)通信的實(shí)現(xiàn)

        朱津津,申屠浩,鮑可進(jìn)

        (江蘇大學(xué) 計(jì)算機(jī)科學(xué)與通信工程學(xué)院,江蘇 鎮(zhèn)江 212013)

        在遠(yuǎn)程監(jiān)測系統(tǒng)的上位機(jī)數(shù)據(jù)監(jiān)測軟件的設(shè)計(jì)中,上位機(jī)要對工業(yè)現(xiàn)場機(jī)器的運(yùn)行情況進(jìn)行實(shí)時(shí)監(jiān)測,只有解決了和底層控制設(shè)備通信問題,才能實(shí)現(xiàn)對工業(yè)現(xiàn)場數(shù)據(jù)的實(shí)時(shí)采集,進(jìn)而實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)、動(dòng)態(tài)曲線的顯示和數(shù)據(jù)報(bào)警等功能。在Visual Studio2012運(yùn)行環(huán)境下,運(yùn)用.NET技術(shù),實(shí)現(xiàn)上位機(jī)數(shù)據(jù)監(jiān)測軟件與S7-300之間的工業(yè)以太網(wǎng)通信。結(jié)合某企業(yè)鋁軋機(jī)的應(yīng)用需求,對基于西門子 S7-300/400系列 PLC的遠(yuǎn)程監(jiān)測系統(tǒng)進(jìn)行了相關(guān)的研究與設(shè)計(jì),通過工業(yè)以太網(wǎng)通信方式,上位機(jī)數(shù)據(jù)監(jiān)測軟件可以監(jiān)測 S7-300 PLC采集的鋁軋機(jī)軸承溫度、油霧風(fēng)機(jī)速度、供油泵壓力等參數(shù),實(shí)驗(yàn)結(jié)果表明,軟件能夠?qū)崟r(shí)地采集數(shù)據(jù)和控制工業(yè)現(xiàn)場的設(shè)備。

        遠(yuǎn)程監(jiān)測;工業(yè)以太網(wǎng);TCP/IP;PLC

        在上位機(jī)數(shù)據(jù)監(jiān)測軟件的開發(fā)過程中,首要就是解決和底層設(shè)備間的通信問題。只有實(shí)現(xiàn)與底層設(shè)備穩(wěn)定的通信,才能與底層設(shè)備實(shí)現(xiàn)數(shù)據(jù)交換,從而實(shí)現(xiàn)監(jiān)測軟件對工業(yè)現(xiàn)場數(shù)據(jù)的采集和控制[1-2]。遠(yuǎn)程監(jiān)測系統(tǒng)的數(shù)據(jù)傳輸方式可分為有線方式和無線方式兩種,有線方式適用于對實(shí)時(shí)性的要求高和傳輸?shù)臄?shù)據(jù)量較大兩種情景,因此在視頻監(jiān)控和實(shí)時(shí)監(jiān)控等情況下被頻繁地使用;無線方式適用的情景是監(jiān)控的范圍會(huì)隨時(shí)地變化,監(jiān)控區(qū)域布線困難,傳輸數(shù)據(jù)量小,對實(shí)時(shí)性要求不高的幾種常見實(shí)現(xiàn)方式,如通信網(wǎng)絡(luò)和與之相對應(yīng)的無線通信產(chǎn)品[3]。工業(yè)以太網(wǎng)已成為一種重要的工業(yè)通信方式,其低成本、開放性好、廣泛的開發(fā)和應(yīng)用軟、硬件的支持等優(yōu)勢,成為了目前應(yīng)用廣泛的網(wǎng)絡(luò)技術(shù)[4-5]。因此,本文主要研究通過工業(yè)以太網(wǎng)的通信方式,建立數(shù)據(jù)監(jiān)測軟件和底層設(shè)備的網(wǎng)絡(luò)通信。

        西門子 S7-300/400系列 PLC屬于大中型 PLC,憑借其出色的性能,在工業(yè)自動(dòng)化控制領(lǐng)域中使用廣泛,PLC很好地支持 PROFIBUS總線和工業(yè)以太網(wǎng)等多種通信方式[6-7]。

        綜合對處理速度、實(shí)時(shí)性以及各 CPU的性能指標(biāo)等方面的要求,本文選用 CPU319-3 PN/ DP,它是 S7-300系列性能最高的 CPU,所用的是它基于以太網(wǎng) TCP/ IP的 PROFINET接口。監(jiān)測軟件用.NET進(jìn)行開發(fā),采用網(wǎng)絡(luò)編程技術(shù)給出了數(shù)據(jù)監(jiān)測軟件與S7-300之間通過以太網(wǎng)進(jìn)行通信的實(shí)現(xiàn)方法。

        1 TCP/IP

        基于TCP/IP協(xié)議的網(wǎng)絡(luò)結(jié)構(gòu)模型已成為目前最為流行的組網(wǎng)方式。TCP協(xié)議工作在傳輸層,完成數(shù)據(jù)校驗(yàn),保證兩臺機(jī)器之間數(shù)據(jù)的可靠傳輸,首先其將應(yīng)用層傳過來的數(shù)據(jù)分隔成大小合適的數(shù)據(jù)塊,然后增加 TCP的報(bào)文頭信息后再傳輸給網(wǎng)絡(luò)層;IP協(xié)議工作在網(wǎng)絡(luò)層,需要完成的工作是對數(shù)據(jù)分組的路徑進(jìn)行有效的選擇[8]。

        TCP建立連接的過程也被稱作3次握手,即經(jīng)過“建立連接請求”、“連接確認(rèn)”、“建立連接成功”3個(gè)步驟[9],確保了數(shù)據(jù)的穩(wěn)定傳輸,減少了數(shù)據(jù)差錯(cuò),并且按照發(fā)送順序來接收,在網(wǎng)絡(luò)不好時(shí)也能保證數(shù)據(jù)傳輸?shù)馁|(zhì)量,因此本文選用 TCP/ IP協(xié)議。

        2 PLC通信程序設(shè)計(jì)

        CPU 319-3PN/DP 自帶以太網(wǎng)處理模塊和以太網(wǎng)接口,以太網(wǎng)通信程序主要使用STL和FBD 語言開發(fā)。TCP 通信程序的主要功能包括:設(shè)置TCP 連接所需要的參數(shù)、建立TCP 連接、接收TCP 數(shù)據(jù)、發(fā)送TCP 數(shù)據(jù)、斷開TCP連接。

        步驟1 TCP通信程序的初始化程序,包括連接狀態(tài)、斷開請求、發(fā)送請求以及發(fā)送忙等狀態(tài)位的初始化。

        步驟2 TCP連接參數(shù)設(shè)置程序,完成主動(dòng)或被動(dòng)模式、本地和遠(yuǎn)程端口號、遠(yuǎn)程IP地址設(shè)備號等參數(shù)的設(shè)置。TCP 連接參數(shù)設(shè)置程序如圖 1 ,其中DEV_ID設(shè)為B#16#3,代表PLC為CPU319-3PN/DP;ACTIVE設(shè)為M0.2(常量0)時(shí),PLC工作在被動(dòng)模式(TCP Server);LOC_PORT本地端口號L#6000,上位機(jī)軟件建立TCP連接時(shí)使用此端口號;當(dāng)PLC工作在被動(dòng)模式下,可以不設(shè)定遠(yuǎn)程端口號REM_PORT,IP地址設(shè)為0.0.0.0,表示對PC機(jī)的IP地址無特定需求,只要在同一個(gè)網(wǎng)段即可。

        步驟3 判斷連接是否已建立,如果未完成TCP連接建立則返回主程序。

        步驟4 如果連接建立完成,則順序執(zhí)行數(shù)據(jù)發(fā)送程序、數(shù)據(jù)接收程序。

        FB63程序可完成TCP數(shù)據(jù)發(fā)送,如圖2所示,其中,LEN變量為數(shù)據(jù)發(fā)送長度;DATA變量為待發(fā)送的數(shù)據(jù)區(qū)域。FB63程序是異步實(shí)現(xiàn)TCP數(shù)據(jù)發(fā)送的,所以在發(fā)送完成前或者出錯(cuò)前必須保證發(fā)送區(qū)域的數(shù)據(jù)不變。

        FB64程序可完成TCP數(shù)據(jù)接收,如圖3所示,其中DATA變量指定了數(shù)據(jù)的接收區(qū)域,接收到的數(shù)據(jù)的長度保存在RCVD_LEN變量中。

        圖1 TCP連接參數(shù)設(shè)置程序

        圖2 TCP 數(shù)據(jù)發(fā)送程序FB63

        圖3 FB64數(shù)據(jù)接收程序

        步驟5 最后需要判斷是否有斷開請求,如果有斷開連接請求,將連接斷開然后修改相關(guān)狀態(tài)位,然后返回主程序。

        嚴(yán)格遵照步驟完成全部程序的設(shè)計(jì)工作,OB1 是主程序,它實(shí)現(xiàn)的主要功能是調(diào)用通信程序模塊;OB34、OB35 產(chǎn)生周期時(shí)鐘脈沖控制數(shù)據(jù)發(fā)送周期;OB100 為初始化程序;FB63、FB64、FB65、FB66 是 TCP 通信時(shí)用到的系統(tǒng)功能塊;FB300 為TCP 通信程序;FC97 是TCP 連接設(shè)置程序;DB300 是FB300 的背景數(shù)據(jù)塊;DB301 為接收TCP數(shù)據(jù)的數(shù)據(jù)塊;DB302 為發(fā)送TCP 數(shù)據(jù)的數(shù)據(jù)塊;UDT65 為自定義連接參數(shù)的數(shù)據(jù)結(jié)構(gòu)。

        3 上位機(jī)監(jiān)測軟件通信程序設(shè)計(jì)

        上位機(jī)監(jiān)測軟件是利用了.NET設(shè)計(jì)開發(fā)完成,具體功能有[10-11]:(1)與數(shù)據(jù)采集、控制設(shè)備(PLC)間的通信(數(shù)據(jù)交換);(2)可以方便地查詢存儲(chǔ)的歷史數(shù)據(jù),定時(shí)存儲(chǔ)現(xiàn)場傳輸?shù)臄?shù)據(jù);(3)生成參數(shù)各異的曲線圖并將這些曲線圖打印出來;(4)對采集到的數(shù)據(jù)進(jìn)行分析當(dāng)數(shù)據(jù)異常時(shí)發(fā)出報(bào)警。

        上位機(jī)要對現(xiàn)場機(jī)器運(yùn)行情況進(jìn)行實(shí)時(shí)監(jiān)測,首要的是解決與下位機(jī)的通信問題,而為了解決 PLC與上位機(jī)監(jiān)測軟件之間以太網(wǎng)的通信問題,通常需要采用 Socket網(wǎng)絡(luò)編程技術(shù)加以解決。Socket是基于TCP/IP協(xié)議設(shè)計(jì)并實(shí)現(xiàn)的,因此一個(gè)Socket至少應(yīng)該包含:本地IP地址、端口號、TCP或UDP協(xié)議[12-13]。

        為實(shí)現(xiàn)網(wǎng)絡(luò)間的相互通信,服務(wù)器端的程序和客戶端的程序需要分別調(diào)用不同的Socket系統(tǒng)接口函數(shù)。在TCP通信程序設(shè)計(jì)中,將ACTIVE設(shè)為M0.2(常量0)時(shí),PLC工作在被動(dòng)模式(TCP Server),即客戶端為PC機(jī),PLC為服務(wù)器端。

        服務(wù)器端Socket網(wǎng)絡(luò)通信程序的關(guān)鍵步驟如下:

        步驟1 WSAStartup()/socket():載入Socket庫并創(chuàng)建Socket;

        步驟2 bind():為Socket綁定本地IP地址和端口號;

        步驟3 listen():設(shè)置監(jiān)聽模式并等待來自客戶端的Socket連接請求;

        步驟4 accept():監(jiān)聽得到來自客戶端的Socket連接請求后,接收此次請求;

        步驟5 send()/recv():與客戶端進(jìn)行數(shù)據(jù)通信;

        步驟6 繼續(xù)等待另一連接請求;

        步驟7 closesocket()/WSACleanup():關(guān)閉Socket并清空第一步載入的Socket庫。

        客戶端編程的主要步驟:

        步驟1 WSAStartup()/socket():載入Socket庫并創(chuàng)建Socket;

        步驟2 connect():向服務(wù)器發(fā)出連接請求;

        步驟3 send()/recv():與服務(wù)器端數(shù)據(jù)通信;

        步驟4 closesocket()/WSACleanup():關(guān)閉Socket并清空第一步載入的Socket庫。

        為便于在后臺完成數(shù)據(jù)的接收操作,TCP客戶端需要主動(dòng)提供一個(gè)與TCP服務(wù)器端進(jìn)行連接操作的功能接口??蛻舳顺绦蛲瑫r(shí)提供定義數(shù)據(jù)幀結(jié)構(gòu)的功能,按照下位機(jī)的數(shù)據(jù)幀格式完成偏移量、變量名、數(shù)據(jù)類型、長度以及說明等參數(shù)的定義,效果如圖4所示。

        圖4 TCP客戶端程序

        另外,在正常運(yùn)行的狀況下,被監(jiān)測的各種參數(shù)在一定時(shí)間內(nèi)保持穩(wěn)定,但當(dāng)出現(xiàn)意外情況時(shí),其參數(shù)往往會(huì)出現(xiàn)較大幅度的波動(dòng)[14]。因此,引入?yún)?shù)隨時(shí)間變化的曲線趨勢圖能夠更加形象地監(jiān)視現(xiàn)場工作情況,也有助于通過趨勢走向更準(zhǔn)備地進(jìn)行數(shù)據(jù)分析。所以提供了一個(gè)顯示曲線的按鍵來打開數(shù)據(jù)的監(jiān)測界面。

        軟件調(diào)用Steema Software公司開發(fā)的TeeChart 2010組件實(shí)現(xiàn)了監(jiān)控曲線的功能。 TeeChart支持多數(shù)據(jù)同時(shí)監(jiān)控,可以在同一窗口觀測不同數(shù)據(jù)的曲線走勢[15],從而容易進(jìn)行比較且可以通過曲線進(jìn)行放大,TeeChart也支持把曲線圖存入相連的數(shù)據(jù)庫的功能,曲線監(jiān)控如圖5所示。

        圖5 數(shù)據(jù)監(jiān)測曲線

        4 結(jié)束語

        本文實(shí)現(xiàn)了上位機(jī)數(shù)據(jù)監(jiān)測軟件與SIMATIC S7-300之間的以太網(wǎng)通信,對工業(yè)現(xiàn)場數(shù)據(jù)的實(shí)時(shí)采集,進(jìn)而實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)、動(dòng)態(tài)曲線的顯示和數(shù)據(jù)報(bào)警等功能。

        [1] 槐利,譚一川,程玉龍.基于PLC的煤礦壓風(fēng)機(jī)自動(dòng)控制系統(tǒng)[J].工礦自動(dòng)化,2012, 38(4):13-16.

        [2] 徐彪,朱健銘,蔣朝陽,等. 通用型工業(yè)級數(shù)據(jù)采集和監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)測量與控制, 2014, 22(10): 3192-3195,3198.

        [3] 郭榮祥,雷高陽.基于PLC和GPRS的遠(yuǎn)程監(jiān)控供水系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)測量與控制, 2013, 21(10): 2694-2696.

        [4] 王文磊,徐汀榮.PLC 和PC 基于工業(yè)以太網(wǎng)通信研究與實(shí)現(xiàn)[J].微計(jì)算機(jī)息,2006,22(13):135-138.

        [5] 胡曉欽,張曉光,尹春榮,等.基于工業(yè)以太網(wǎng)的泵房綜合自動(dòng)化系統(tǒng)的設(shè)計(jì)[J].工礦自動(dòng)化,2009,35(6): 81-83.

        [6] Dana S,Saghyroon A,Elrayes A.Development of monitoring and control platform for PLC-based applicatios[J]. Computer Standards & Interfaces,2008, 30(3):157-166.

        [7] Bolton W. Programmable logic controllers[M].Boston:Newnes, 2009.

        [8] 安劍奇,廖力清,李超林. 鋁箔軋機(jī)網(wǎng)絡(luò)控制系統(tǒng)的研制[J]. 計(jì)算機(jī)測量與控制, 2007, 5(9): 1163-1165.

        [9] 吳瓊.基于工業(yè)以太網(wǎng)的集散控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].南昌:南昌航空大學(xué),2013.

        [10] 譚延良,盛占石,李正明. 基于公用電話交換網(wǎng)的電壓監(jiān)測系統(tǒng)軟件設(shè)計(jì)[J].微機(jī)與應(yīng)用,2001, 22(3):45-47.

        [11] 王曉遠(yuǎn),杜靜娟,齊利曉,等. 基于工業(yè)組態(tài)軟件WinCC的化工工業(yè)監(jiān)控系統(tǒng)[J]. 化工自動(dòng)化及儀表, 2006, 33(5): 41-43.

        [12] 李杰.基于C#.NET的電力監(jiān)控主站后臺監(jiān)控程序的設(shè)計(jì)[D].廈門:廈門大學(xué),2008.

        [13] 許銳炮.Socket在C#程序中的應(yīng)用[J].科技視界,2014(21):64-65.

        [14] 楊大全,拱長青, 董偉嗣,等.Socket 編程技術(shù)[J]. 沈陽工業(yè)大學(xué)學(xué)報(bào),2000, 22(4):313-316.

        [15] 馮曦.基于西門子S7-400PLC的遠(yuǎn)程監(jiān)測系統(tǒng)開發(fā)[D].秦皇島:燕山大學(xué),2014.

        Realization of Communication Between PLC and Supervision Computer Through Industrial Ethernet Based on .NET

        ZHU Jinjin, SHEN Tuhao, BAO Kejin

        (School of Computer Science and Telecommunication Engineering, Jiangsu University, Zhenjiang 212013, China)

        The remote monitoring system requires the real-time monitoring of the operation of the industrial field machine. Not until the communication problem of the underlying control equipment is solved can the real-time collection, storage, dynamic curve display, data alarm and other operations of the industrial field data be achieved. In this paper, the industrial Ethernet communication between the upper machine data monitoring software and S7-300 is under the environment of Visual Studio2012 and supported by the .NET technology. And the remote monitoring system based on Siemens S7-300/400 series PLC is studied combined with the application requirements of an enterprise of the aluminum rolling mill. Through the industrial Ethernet communication mode, the PC data monitoring software can monitor S7-300 PLC to collect the aluminum rolling mill bearing temperature for the oil pump, oil mist fan speed, pressure, etc. Experiments verify that our software can collect real-time data and control the industrial field devices.

        remote monitoring; industrial ethernet; TCP/IP; PLC

        2016- 03- 11

        朱津津(1991-),女,碩士研究生。研究方向:嵌入式系統(tǒng)應(yīng)用。申屠浩(1972-),男,碩士,講師。研究方向:嵌入式系統(tǒng)應(yīng)用。鮑可進(jìn)(1958-),男,碩士,教授。研究方向:嵌入式系統(tǒng)應(yīng)用。

        10.16180/j.cnki.issn1007-7820.2016.11.033

        TP277.2

        A

        1007-7820(2016)11-115-04

        猜你喜歡
        程序
        給Windows添加程序快速切換欄
        電腦愛好者(2020年6期)2020-05-26 09:27:33
        試論我國未決羈押程序的立法完善
        失能的信仰——走向衰亡的民事訴訟程序
        “程序猿”的生活什么樣
        英國與歐盟正式啟動(dòng)“離婚”程序程序
        基于VMM的程序行為異常檢測
        偵查實(shí)驗(yàn)批準(zhǔn)程序初探
        我國刑事速裁程序的構(gòu)建
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        恐怖犯罪刑事訴訟程序的完善
        国产午夜免费高清久久影院| 粉嫩av一区二区在线观看| 国产成av人在线观看| 久久国产精品超级碰碰热| 日本一区二区视频免费在线观看 | 新婚少妇无套内谢国语播放| 久久aⅴ人妻少妇嫩草影院| 人妻熟妇乱系列| 69精品人妻一区二区| 人妻少妇哀求别拔出来| 国语精品一区二区三区| 伊人久久亚洲综合影院首页| 亚洲国产人成自精在线尤物| 免费a级毛片在线播放| 中文字幕乱伦视频| 精品午夜一区二区三区久久| 亚洲av资源网站手机在线| 国产成人精品日本亚洲专区61| 国产成人精品成人a在线观看| 日本一区免费喷水| 男女射精视频在线观看网站| 国产三区在线成人av| 国产网站视频| 玖玖资源网站最新网站| 狠狠躁夜夜躁人人爽超碰97香蕉| 99久久久精品免费观看国产| 亚洲av日韩片在线观看| 少妇精品揄拍高潮少妇桃花岛| 国产动作大片中文字幕| 亚洲h视频| 亚洲色图第一页在线观看视频| а天堂中文地址在线| 亚洲人成亚洲精品| 97久久综合区小说区图片区| 久久免费看视频少妇高潮| 国产99久久久国产精品~~牛| 毛片在线播放a| 国产经典免费视频在线观看| 成人影院视频在线免费观看| 国产sm调教视频在线观看| 久久亚洲国产欧洲精品一|