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

        ?

        基于C#語(yǔ)言的工業(yè)計(jì)算機(jī)與S7-300的OPC通訊

        2011-11-18 08:02:36黃希敏
        重型機(jī)械 2011年5期
        關(guān)鍵詞:數(shù)據(jù)通訊機(jī)架通訊

        黃希敏

        (陜西教育學(xué)院,陜西 西安 710100)

        1 前言

        OPC(OLE for Process Control)是一種用于工業(yè)數(shù)據(jù)通訊的標(biāo)準(zhǔn)協(xié)議,使開(kāi)發(fā)人員能夠方便的按照OPC協(xié)議編程實(shí)現(xiàn)OPC客戶端程序與OPC服務(wù)器之間的通訊。為了實(shí)現(xiàn)工業(yè)計(jì)算機(jī)與S7-300的實(shí)時(shí)數(shù)據(jù)通訊,本文以西門子公司的SIMATIC NET作為OPC服務(wù)器,使用C#語(yǔ)言編程實(shí)現(xiàn)OPC客戶端程序與SIMATIC NET OPC服務(wù)器之間的數(shù)據(jù)通訊。

        2 SIMATIC NET OPC服務(wù)器及連接配置

        SIMATIC NET是西門子在工業(yè)控制系統(tǒng)提供的一個(gè)開(kāi)放的、多元的通訊系統(tǒng),可以實(shí)現(xiàn)工業(yè)現(xiàn)場(chǎng)的PLC、主機(jī)、工作站和個(gè)人電腦聯(lián)網(wǎng)通訊。通訊的網(wǎng)絡(luò)包括了工業(yè)以太網(wǎng)、PROFIBUS、PROFIBUS-PA等。SIMATIC NET OPC服務(wù)器不但提供了數(shù)據(jù)訪問(wèn)的接口,同時(shí)還提供了報(bào)警和事件的接口等多種功能。

        為了能夠讓SIMATIC NET系統(tǒng)正常的工作,必須安裝SIMATIC NET軟件。網(wǎng)絡(luò)通訊方式為工業(yè)以太網(wǎng)。按照OPC接口的規(guī)定,C或C++語(yǔ)言編寫(xiě)的客戶機(jī)應(yīng)用程序可以使用自定義接口和自動(dòng)化接口。其他的編程語(yǔ)言(如VB,Delphi,C#等)編寫(xiě)的客戶機(jī)應(yīng)用程序只能使用自動(dòng)化接口。

        2.1 安裝軟件

        工業(yè)計(jì)算機(jī)的操作系統(tǒng)為XP系統(tǒng),SIMATIC NET軟件的版本為SIMATIC.NET 2006,編程環(huán)境為Microsoft Visual Studio 2008。當(dāng)SIMATIC NET軟件安裝成功后,在桌面上可以看到Station Configuration、SIMATIC Manager等的快捷圖標(biāo)。

        2.2 OPC服務(wù)器與S7-300連接通訊

        首先,打開(kāi) SIMATIC NET軟件的 Station Configuration Editor窗口進(jìn)行PC硬件機(jī)架的配置,在打開(kāi)的窗口中依次在第一行和第三行插入OPC Server和IE General,同時(shí)還需要對(duì)工業(yè)計(jì)算機(jī)的網(wǎng)絡(luò)進(jìn)行配置,以保證PC站的IP地址與S7-300的IP地址屬于同一IP段。以上操作完成后,點(diǎn)擊“Station Name”按鈕來(lái)給PC指定一個(gè)名稱,例如:“ethernetOPC”。圖1為PC硬件機(jī)架的配置界面截圖。

        圖1 PC硬件機(jī)架的配置Fig.1 configuration of PC hardware chassis

        其次,打開(kāi)Configuration Console窗口對(duì)控制臺(tái)進(jìn)行配置。在打開(kāi)的窗口中首先可以查看到以太網(wǎng)的模式已經(jīng)從PG mode切換到Configuration mode,然后單擊“Access Points”把S7ONLINE的指向選項(xiàng)選為“PC internal(local)”。

        最后,打開(kāi) SIMATIC Manager窗口,通過(guò)“File→New”創(chuàng)建一個(gè)新項(xiàng)目,如:“S7300OPC”。通過(guò)“Insert→Station→Simatic PC Station”插入一個(gè)PC站,并且命名與上述命名的PC站名稱相同,本文中即“ethernetOPC”。創(chuàng)建成功后,雙擊Configuration進(jìn)入PC Station組態(tài),從硬件目錄串口選擇與已安裝的SIMATIC NET軟件版本相符的硬件插入到與上述PC硬件機(jī)架對(duì)應(yīng)的位置。雙擊“Configure Network”進(jìn)行NetPro配置,選擇OPC Server連接表的第一行,通過(guò)“Insert→New Connection”來(lái)建立一個(gè)新的連接,在彈出的連接屬性畫(huà)面中,選擇“S7 connection”屬性。然后在“S7 connection”屬性窗口中按照提示輸入S7-300與工業(yè)計(jì)算機(jī)的IP地址,雙擊“Address Details”設(shè)置符合S7-300的機(jī)架號(hào)0和插槽號(hào)2。上述操作完成后,編譯無(wú)誤后保存。

        上述步驟完成后,就實(shí)現(xiàn)了S7-300與SIMATIC NET OPC服務(wù)器的數(shù)據(jù)通訊,可以通過(guò)OPC Scout來(lái)檢查連接是否正常。圖2為OPC Scout的運(yùn)行界面截圖。

        圖2 OPC Scout的運(yùn)行界面截圖Fig.2 Screenshot of running interface of OPC Scout

        圖2 中,Item Names項(xiàng)為S7 PLC站的變量地址。例如:S7:[S7 connection_1]DB400,INT44中,S7為協(xié)議ID,這是S7協(xié)議規(guī)定的;[S7 connection_1]為連接名,這是用戶定義的OPC連接字符串標(biāo)識(shí)名;DB400為數(shù)據(jù)塊,INT44為變量的類型和地址。OPC Scout要能夠正常的訪問(wèn)S7 PLC站的變量地址,必須嚴(yán)格按照上述的變量編址方式。

        3 OPC客戶端程序的軟件實(shí)現(xiàn)

        本文研究的OPC客戶端與SIMATIC NET OPC服務(wù)器的數(shù)據(jù)通訊,實(shí)際是為了實(shí)現(xiàn)S7-300與工業(yè)計(jì)算機(jī)的數(shù)據(jù)通訊。在已經(jīng)配置好的SIMA-TIC NET OPC服務(wù)器的基礎(chǔ)上,確定了OPC Server名“OPC.SIMATICNET”和采用自動(dòng)化接口,并且嚴(yán)格按照S7 PLC站的變量編址方式,可以編程實(shí)現(xiàn)基于C#編程語(yǔ)言的OPC客戶端程序與SIMATIC NET OPC服務(wù)器通訊。圖3為實(shí)現(xiàn)OPC客戶端與OPC服務(wù)器連接通訊的程序流程圖。

        (1)添加引用。OpcRcw.DA和OpcRcw.Comn是西門子提供的關(guān)于OPC通訊的兩個(gè)動(dòng)態(tài)鏈接庫(kù)文件。在C#編程環(huán)境中引用這兩個(gè)文件,調(diào)用這兩個(gè)動(dòng)態(tài)連接庫(kù)中的接口函數(shù)。

        圖3 OPC客戶端與OPC服務(wù)器通訊程序流程圖Fig.3 Flow chart of communication between OPC client and OPC server

        using OpcRcw.Comn;

        using OpcRcw.Da;

        (2)定義OPC相關(guān)變量。在進(jìn)行與OPC服務(wù)器的連接之前,首先要定義OPC相關(guān)的變量,其中包括:OPC的服務(wù)器名,OPC服務(wù)器的對(duì)象名等。

        internal const string SERVER_ NAME =“OPC.SIMATICNET“;//OPC服務(wù)器名

        private IOPCServer pIOPCServer;//定義OPCServer對(duì)象

        (3)實(shí)現(xiàn)與OPC服務(wù)器的連接。public bool ConnectServer(string node_name,out string error),其中node_name為OPC服務(wù)器的計(jì)算機(jī)名稱,連接過(guò)程中的錯(cuò)誤信息捕捉給error輸出。函數(shù)返回true和false,分別代表成功和失敗。具體的步驟:創(chuàng)建服務(wù)器對(duì)象創(chuàng)建OPC組對(duì)象-向組對(duì)象中添加多項(xiàng)OPC客戶端讀寫(xiě)操作。

        (4)創(chuàng)建服務(wù)器對(duì)象。pIOPCServer=(IOPCServer)System.Activator.CreateInstance(svr-Componenttyp)

        (5)創(chuàng)建OPC組對(duì)象。public bool AddGroup(string groupName,int bActive,int updateRate,out string error),其中g(shù)roupName為創(chuàng)建組對(duì)象的組名,bActive為組的激活狀態(tài),updateRate為組的刷新頻率,創(chuàng)建組對(duì)象過(guò)程中的錯(cuò)誤信息捕捉給error輸出。函數(shù)返回true和false,分別代表成功和失敗。

        (6)向組對(duì)象中添加多項(xiàng)。public bool AddItems(string[]itemsName,int[]itemsID,out string error),其中itemsName為要添加的項(xiàng)的名稱,是一個(gè)字符串?dāng)?shù)組,itemsID為與字符串?dāng)?shù)組相對(duì)應(yīng)的序號(hào)數(shù)組。添加項(xiàng)對(duì)象過(guò)程中的錯(cuò)誤信息捕捉給error輸出。函數(shù)返回true和false,分別代表成功和失敗。

        (7)OPC客戶端讀寫(xiě)操作。OPC客戶端進(jìn)行讀寫(xiě)操作之前,首先要根據(jù)通訊方式是同步還是異步,從而實(shí)例化指針I(yè)OPCSyncIO/IOPCAsyncIO接口。本文的OPC客戶端通訊采用同步方式。

        實(shí)際應(yīng)用過(guò)程中,IOPCSyncIO接口分別提供了讀、寫(xiě)的方法,即 IOPCSyncIO.READ和IOPCSyncIO.WRITE。

        (8)斷開(kāi)與OPC服務(wù)器的連接。public bool Close(out string error),其中,斷開(kāi)連接過(guò)程中的錯(cuò)誤信息捕捉給error輸出。函數(shù)返回true和false,分別代表成功和失敗。在程序斷開(kāi)與OPC服務(wù)器的連接之前,必須先刪除已經(jīng)創(chuàng)建的OPC對(duì)象并且釋放內(nèi)存。

        上述利用C#編程語(yǔ)言實(shí)現(xiàn)OPC客戶端程序與SIMATIC NET OPC服務(wù)器的數(shù)據(jù)通訊,在OPC通訊客戶端系統(tǒng)界面上實(shí)時(shí)顯示了數(shù)據(jù)的讀寫(xiě)情況。圖4為OPC通訊客戶端運(yùn)行界面截圖。

        圖4 OPC通訊客戶端程序運(yùn)行界面Fig.4 program running interface for client of OPC communication

        4 結(jié)束語(yǔ)

        以SIMATIC NET OPC為服務(wù)器,S7-300與SIMATIC NET OPC服務(wù)器連接配置,采用C#計(jì)算機(jī)編程語(yǔ)言實(shí)現(xiàn)了OPC客戶端程序與OPC服務(wù)器的數(shù)據(jù)讀寫(xiě)操作。通過(guò)多次的應(yīng)用測(cè)試證明,OPC客戶端程序運(yùn)行可靠,操作簡(jiǎn)單,符合現(xiàn)場(chǎng)對(duì)實(shí)時(shí)監(jiān)控的要求。

        [1] Christian Nagel Bill Evjen Jay Glynn著,李銘譯.C#高級(jí)編程(6版)[M].北京:清華大學(xué)出版社,2008,11.

        [2] 羅斌,羅順文.Visual C#2005編程技巧大全[M].北京:中國(guó)水利水電出版,2007.

        [3] 蔣秀鳳,何鳳英.Oracle 9i數(shù)據(jù)庫(kù)管理教程[M].北京:清華大學(xué)出版社,2005.

        [4] 滕永昌.Oracle 9i數(shù)據(jù)庫(kù)管理員使用大全[M].北京:清華大學(xué)出版社,2004.

        [5] 陽(yáng)憲惠.工業(yè)數(shù)據(jù)通訊與控制網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2003.

        猜你喜歡
        數(shù)據(jù)通訊機(jī)架通訊
        《茶葉通訊》簡(jiǎn)介
        茶葉通訊(2022年2期)2022-11-15 08:53:56
        《茶葉通訊》簡(jiǎn)介
        茶葉通訊(2022年3期)2022-11-11 08:43:50
        通訊報(bào)道
        機(jī)器視覺(jué)系統(tǒng)與PLC的數(shù)據(jù)通訊
        別忽略它的存在!“意大利新一代架皇”BAS Accordeon(雅歌頓)XL4 2.0發(fā)燒機(jī)架
        通訊簡(jiǎn)史
        熱軋拉矯機(jī)機(jī)架加工討論
        基于C#的船舶電力推進(jìn)監(jiān)控系統(tǒng)的數(shù)據(jù)通訊設(shè)計(jì)
        智能電能表數(shù)據(jù)通訊安全性分析
        雙機(jī)架平整機(jī)板形控制算法及其應(yīng)用
        上海金屬(2013年6期)2013-12-20 07:58:02
        手机在线看片在线日韩av| 丰满少妇高潮惨叫久久久一 | 免费男人下部进女人下部视频| 一区二区三区婷婷在线| 人妻在线中文字幕视频| 一区二区中文字幕在线观看污污 | 亚洲AV无码一区二区三区性色学| 国产av乳头久久一区| 亚洲一区二区三区成人网| 插鸡网站在线播放免费观看| 午夜福利啪啪片| 乱子真实露脸刺激对白 | 在线亚洲精品一区二区三区| 男女啪啪视频高清视频| 永久免费人禽av在线观看| 韩国精品一区二区三区无码视频| 无码一区二区三区网站| 一区二区三区av资源网| 日本一级特黄aa大片| 国产国产裸模裸模私拍视频| 丰满少妇在线观看网站| 亚洲国产AⅤ精品一区二区久| 亚洲一区二区三区在线高清中文 | 久久蜜桃资源一区二区| 97精品国产一区二区三区| 永久免费av无码网站yy| 国产va在线播放| 在线视频免费自拍亚洲| 国产亚洲aⅴ在线电影| 99久久精品国产一区二区三区| 亚洲产在线精品亚洲第一站一| 青青草久热手机在线视频观看| 中文字幕日韩有码国产| 国产精品妇女一二三区| 国产精品视频一区二区三区四 | 国产目拍亚洲精品二区| 中文字日产幕码三区国产| 亚洲精品国偷拍自产在线观看| 人妻av一区二区三区精品| 国产在线精品亚洲视频在线| 亚洲男人综合久久综合天堂|