freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

電氣自動(dòng)化——畢業(yè)設(shè)計(jì)——基于visualbasic的opc客戶(hù)端的程序設(shè)計(jì)-資料下載頁(yè)

2024-12-03 17:28本頁(yè)面

【導(dǎo)讀】究?jī)?nèi)容的理論依據(jù)和技術(shù)方法;④取得的主要成果及創(chuàng)新點(diǎn);⑤工作態(tài)度及工作量;互、實(shí)現(xiàn)控制系統(tǒng)開(kāi)放性的中間件技術(shù)。程序?qū)崿F(xiàn)了OPC服務(wù)器連接、組建立、項(xiàng)添加、項(xiàng)值讀寫(xiě)等功能。論文最后使用測(cè)試服務(wù)器對(duì)OPC客戶(hù)端程序進(jìn)行了測(cè)試。數(shù)據(jù)的實(shí)時(shí)、快速交換。

  

【正文】 e r組 ( O P C G r o u p )O P C S e r v e r項(xiàng) ( O P C I t e m s )服 務(wù) 器 O P C I t e m ( s )組 集 合 ( O P C G r o u p s )項(xiàng) 集 合 ( O P C I t e m s )瀏 覽 器 ( O P C B r o w s e r ) 圖 OPC數(shù)據(jù)訪問(wèn)對(duì)象分層結(jié)構(gòu) 即一個(gè) OPC服務(wù)器對(duì)象( OPCServer),一個(gè)作為子對(duì)象的 OPC組集合對(duì)( OPCGroups)。在這個(gè) OPC組集合對(duì)象里可以添加多個(gè)的 OPC組對(duì)象( OPCGroup)。各個(gè) OPC組對(duì)象都具有一個(gè)作為子對(duì)象的 OPC標(biāo)簽集合對(duì)象( OPCItems)。在這個(gè) OPC標(biāo)簽集合對(duì)象里可以添加多個(gè)的 OPC標(biāo)簽對(duì)象( OPCItem)。 OPC瀏覽器。這四個(gè)對(duì)象的關(guān)系是包含的層次關(guān)系,所以應(yīng)用程序的設(shè)計(jì)也是按 這種層次的思想進(jìn)行設(shè)計(jì),提供層次的數(shù)據(jù)訪問(wèn)的。即一個(gè) OPC服務(wù)器對(duì)象具有一個(gè)作為子對(duì)象的 OPC組集合對(duì)象,在這個(gè)對(duì)象里可以添加多個(gè)的 OPC組對(duì)象。每個(gè) OPC組對(duì)象都具有一個(gè)作為子對(duì)象的 OPC標(biāo)簽集合對(duì)象,在這個(gè) OPC標(biāo)簽集合對(duì)象里可以添加多個(gè)的 OPC標(biāo)簽對(duì)象。OPC服務(wù)器經(jīng)常對(duì)應(yīng)于某種特定的控制設(shè)備。例如:某種 DCS控制系統(tǒng)或者某種 PLC控制裝置。 OPC組是可以進(jìn)行某種數(shù)據(jù)訪問(wèn)目的的多個(gè) OPC標(biāo)簽的集合,有了 OPC組,OPC應(yīng)用程序可以以同時(shí)需要的數(shù)據(jù)為一批進(jìn)行數(shù)據(jù)訪問(wèn)。標(biāo)簽對(duì)象是 OPC對(duì)象里最基本的對(duì)象, 是 OPC服務(wù)器可以識(shí)別的數(shù)據(jù)定義,通常相當(dāng)于位號(hào)的單一變量, 并和中國(guó)礦業(yè)大學(xué) 2021 屆本科生畢業(yè)設(shè)計(jì) 第 16 頁(yè) 數(shù)據(jù)源相連接。 OPC數(shù)據(jù)訪問(wèn)的方式有同步、異步、訂閱方式三種。 OPC應(yīng)用程序首先生成 OPC服務(wù)器支持的 OPC對(duì)象,然后使用 OPC對(duì)象支持的屬性和方法,對(duì)其進(jìn)行操作。這種結(jié)構(gòu)使得應(yīng)用程序可以像使用自己支持的數(shù)據(jù)和功能一樣,去使用服務(wù)器對(duì)象支持的數(shù)據(jù)和功能。具體來(lái)說(shuō),設(shè)計(jì)一個(gè) OPC客戶(hù)端應(yīng)用程序的具體方法及思路便是,先連接一個(gè)特定的 OPC服務(wù)器,然后再建立 OPC組,最后添加 OPC標(biāo)簽。 綜上所述,可以用一個(gè)表來(lái)表達(dá) OPC數(shù)據(jù)訪問(wèn)對(duì)象模型。如表 : 表 OPC數(shù)據(jù)訪問(wèn)對(duì)象模型 名稱(chēng) 對(duì)象名 說(shuō)明 OPC 服務(wù)器 OPCServer OPC 服務(wù)器對(duì)象在使用其它 OPC 對(duì)象前必須生成。 OPC服務(wù)器自動(dòng)含有一個(gè) OPC 組集合對(duì)象,并可在其基礎(chǔ)上生成一個(gè) OPC 瀏覽器對(duì)象 OPC 組集合 OPCGroups OPC 服務(wù)器中添加的所有 OPC 組集合 OPC 組 OPCGroup OPC 組對(duì)象是用于組的狀態(tài)管理以及利用項(xiàng)集合為單位的數(shù)據(jù)訪問(wèn)。 OPC 標(biāo)簽集合 OPCItems 在對(duì)應(yīng) OPC 組中添加的所有的 OPC 標(biāo)簽的集合 OPC 標(biāo)簽 OPCItem 含有 OPC 標(biāo)簽的定義,現(xiàn)有值、狀態(tài)以及最后更新時(shí)間等信息的對(duì)象。 OPC 瀏覽器 OPCBrowser 用于瀏覽 OPC 服務(wù)器的名稱(chēng)空間的對(duì)象。 OPC 服務(wù)器的層次結(jié)構(gòu) OPC服務(wù)器的層次結(jié)構(gòu)如圖 。最頂層為接口層,該層定義了 OPC的數(shù)據(jù)訪問(wèn)接口,它為客戶(hù)程序與服務(wù)器之間提供了交互方式以及約束。接口一旦定下來(lái)就不能再任意更改。第二層為 OPC模型層,它提供了客戶(hù)訪問(wèn)服務(wù)器的對(duì)象模型。第三層為數(shù)據(jù)連接與耦合層,用于耦合 OPC模型與服務(wù)器資源。 OPC模型通過(guò)該層對(duì)服務(wù)器資源進(jìn)行定位與連接。第四 層為設(shè)備管理與調(diào)度層,用來(lái)管理設(shè)備的配置與運(yùn)行,最底層的是協(xié)議層,負(fù)責(zé)協(xié)議解釋。 中國(guó)礦業(yè)大學(xué) 2021 屆本科生畢業(yè)設(shè)計(jì) 第 17 頁(yè) O P C / C O M 接 口O P C 對(duì) 象 模 型數(shù) 據(jù) 的 連 接 與 耦 合設(shè) 備 的 配 置 與 配 合協(xié) 議 的 解 釋 圖 OPC服務(wù)器的層次結(jié)構(gòu) OPC 客戶(hù)端 關(guān)鍵技術(shù)的實(shí)現(xiàn) OPC 服務(wù)器有多種類(lèi)型,常用的有 :數(shù)據(jù)存取、報(bào)警與事件、歷史數(shù)據(jù)存取、批量過(guò)程。 本文只討論最基礎(chǔ)最常用的功能。 OPC 客戶(hù)端端口的實(shí)現(xiàn) 按照 OPC 數(shù)據(jù)存取 2. 0 規(guī)范,如圖 所示,客戶(hù)端需要實(shí)現(xiàn)兩個(gè)接口IOPCShutdown、 IOPCDataCaUbaek[14]。 I O P C S h u t d o w nI O P C D a t a c h a n g e組 對(duì) 象客 戶(hù) 端服 務(wù) 器 對(duì) 象 圖 客戶(hù)端接口示意圖 中國(guó)礦業(yè)大學(xué) 2021 屆本科生畢業(yè)設(shè)計(jì) 第 18 頁(yè) OPC 規(guī)范規(guī)定了 COM 接口,而不是其實(shí)現(xiàn)。它規(guī)定了正是客戶(hù)程序所期望使用的接口的行為。與所有 COM 工具一樣, OPC 的體系結(jié)構(gòu)是客戶(hù)一服務(wù)器模式, OPC服務(wù)器組件提供 OPC 對(duì)象接口,并管理這些接口。 OPC 服務(wù)器的實(shí)現(xiàn)有許多獨(dú)特的思想。其中主要的一點(diǎn)是數(shù)據(jù)可以在非共享的通信鏈路上物理設(shè)各或數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)傳輸。因而, OPC 服務(wù)器既可以在本地也可以在遠(yuǎn)程機(jī)器上以 EXE 程序運(yùn)行,進(jìn)行從物理設(shè)各或數(shù)據(jù)庫(kù)中高效的采集數(shù)據(jù)。 OPC 客戶(hù)程序通 過(guò)自定義接口或自動(dòng)化接口與 OPC 服務(wù)器通信。 OPC 服務(wù)器必須提供 OPC 自定義接口, OPC 自動(dòng)化接口則可選。在某些情形下, OPC 基金會(huì)提供了一個(gè)標(biāo)準(zhǔn)的自動(dòng)化接口包。任何客戶(hù)一服務(wù)器開(kāi)發(fā)商都可以使用這個(gè) DLL 程序封裝的包。 OPC 客戶(hù)端實(shí)時(shí)數(shù)據(jù)的獲得 應(yīng)用程序作為 OPC接口中的 Client方,硬件驅(qū)動(dòng)程序作為 OPC接口中的 Server方。每一個(gè) OPC Client應(yīng)用程序都可以接若干個(gè) OPC Server,每一個(gè)硬件驅(qū)動(dòng)程序可以為若干個(gè)應(yīng)用程序提供數(shù)據(jù) [14]。 客戶(hù)操作數(shù)據(jù)項(xiàng)的一般步驟為: 通過(guò)服務(wù)器對(duì)象接口枚舉服務(wù)器端定義的所有數(shù)據(jù)項(xiàng)。 將要操作的數(shù)據(jù)項(xiàng)加入客戶(hù)定義的組對(duì)象中。 通過(guò)組對(duì)象對(duì)數(shù)據(jù)項(xiàng)進(jìn)行讀寫(xiě)等操作。 一般來(lái)說(shuō),有三種方法從 OPC服務(wù)器讀取數(shù)據(jù): 使用同步接口 IOPCSyncIO,簡(jiǎn)單而有效,適合于只讀取少量數(shù)據(jù)的客戶(hù)程序。 使用接口 IOPCCallback的“訂閱 (Subscribe)”功能 OnDataChange,每當(dāng)數(shù)據(jù)有變化,服務(wù)器自動(dòng)通知客戶(hù)。這種方法稍復(fù)雜但效率很高,而且可以被 IOPCAsyncIO2::Refresh2觸發(fā)。具體實(shí)現(xiàn)時(shí) ,使用連接點(diǎn)技術(shù),在服務(wù)器方聲明一個(gè)接口,由客戶(hù)端實(shí)這個(gè)接口。服務(wù)器方內(nèi)部調(diào)用這個(gè)接口的方法.從而可以向客戶(hù)發(fā)送事件消息,客戶(hù)接收事件并可進(jìn)行處理。 使用異步接口 IOPCASyncIO2,可以直接與物理設(shè)備通訊,速度慢數(shù)據(jù) 精確度十分高。建議一般情況下不 使用該方法。 本章小結(jié) 本章詳細(xì)描述了 OPC 技術(shù)訪問(wèn)規(guī)范,根據(jù) OPC 基金會(huì)提供的 OPC 規(guī)范對(duì) OPC的體系結(jié)構(gòu)、應(yīng)用場(chǎng)合及 OPC 數(shù)據(jù)訪問(wèn)接口和 OPC 對(duì)象等內(nèi)容作出了 說(shuō)明,并研究了客戶(hù)端關(guān)鍵技術(shù)的實(shí)現(xiàn)。為下一章 OPC 客戶(hù)端應(yīng)用程序的具體設(shè)計(jì)奠定了理論 基礎(chǔ)。 中國(guó)礦業(yè)大學(xué) 2021 屆本科生畢業(yè)設(shè)計(jì) 第 19 頁(yè) 3 OPC 客戶(hù)端程序設(shè)計(jì) 設(shè)計(jì)前的準(zhǔn)備工作 明確了 OPC 的應(yīng)用背景和技術(shù)基礎(chǔ)之后, OPC 應(yīng)用程序的設(shè)計(jì)架構(gòu)和實(shí)現(xiàn)模式是本章討論的重點(diǎn)。本章從軟件開(kāi)發(fā)的角度給出了任務(wù)總述、任務(wù)分解、實(shí)現(xiàn)框架和開(kāi)發(fā)方式,這些都是后續(xù)章節(jié)敘述的綱要。 OPC客戶(hù)程序可以用多種開(kāi)發(fā)工具進(jìn)行開(kāi)發(fā),如: VB、 VC++,本文采用 VB作為開(kāi)發(fā)工具。利用 VB開(kāi)發(fā)的 OPC應(yīng)用程序的系統(tǒng)主要由 OPC服務(wù)器、 OPC代理 占位DLL、 OPC自動(dòng)化包裝 DLL、 OPC應(yīng)用程序幾個(gè)軟件組件構(gòu)成。其中, OPC服務(wù)器,OPC代理 占位 DLL以及 OPC包裝 DLL是由 OPC服務(wù)器供應(yīng)商 (控制設(shè)備制造商或獨(dú)立軟件供應(yīng)商 )提供的, OPC應(yīng)用程序是對(duì)由 OPC服務(wù)器提供的數(shù)據(jù)源進(jìn)行訪問(wèn),為實(shí)現(xiàn)用戶(hù)的特定目的而開(kāi)發(fā)的應(yīng)用程序。 所以 ,需要下載 OPC foundation提供的幾個(gè)動(dòng)態(tài)鏈接庫(kù)。 、 ,通用接口; 、 ,代理一占位,用于遠(yuǎn)程連接通信; ; 用于枚舉本地機(jī)以及遠(yuǎn)程機(jī)上所有 的 OPC Server,運(yùn)行 opcenum/regserver即可??截愡@些文件到系統(tǒng)盤(pán)的 Winnt目錄下,然后在運(yùn)行里執(zhí)行 REGSVR32命令,來(lái)安裝相應(yīng)的代理 DLL文件。以上動(dòng)態(tài)鏈接庫(kù)并不是所有的都必須安裝,需要根據(jù)開(kāi)發(fā)的服務(wù)器功能的需要決定。 本章主要是對(duì) OPC客戶(hù)應(yīng)用程序進(jìn)行開(kāi)發(fā)設(shè)計(jì)。應(yīng)用程序的設(shè)計(jì)主要是指客戶(hù)程序中 OPC接口部分的設(shè)計(jì)。客戶(hù)程序本身可以完成很多復(fù)雜的數(shù)據(jù)處理與顯示功能,但需要通過(guò) OPC接口部分訪問(wèn) OPC服務(wù)器,對(duì)現(xiàn)場(chǎng)數(shù)據(jù)進(jìn)行存取。開(kāi)發(fā) OPC、Data、 Access、 Client之前, 要弄清服務(wù)器的大體情況,比如需要訪問(wèn)的服務(wù)器是否提供自動(dòng)化接口、服務(wù)器的 OPC的版本等,到目前為止, OPC有 1. 0和 2. 0兩個(gè)版本,兩個(gè)版本的接口定義不同, 2. 0版是對(duì) 1. 0的改進(jìn),但不兼容(參見(jiàn)第二章)。 最后,客戶(hù)端的開(kāi)發(fā)是以服務(wù)器已經(jīng)存在為前提的。本文選取了 KEPware 公司提供的 OPC 服務(wù)器,安裝之后,可以在注冊(cè)表里找到該 OPC 服務(wù)器的注冊(cè)信息,找到ProgID。 KEPware 安裝后得到的 ProgID 為 ,在注冊(cè)表的HKEY CLASSES ROOT 下的 CLSID 里可以找到相應(yīng)的信息。根據(jù) ProgID 可以在注冊(cè)表里找到組件相應(yīng)的 CLSID,而該字符串才是客戶(hù)端創(chuàng)建 OPC 服務(wù)器對(duì)象所需要的[15]。 設(shè)計(jì)的總?cè)蝿?wù) 本設(shè)計(jì)的主要任務(wù) : ? 創(chuàng)建服務(wù)器對(duì)象。 ? 建立與服務(wù)器的連接。 中國(guó)礦業(yè)大學(xué) 2021 屆本科生畢業(yè)設(shè)計(jì) 第 20 頁(yè) ? 瀏覽 OPC 服務(wù)器的功能??蛻?hù)程序需要?jiǎng)?chuàng)建 O P C 基金會(huì)提供的 O P C 服務(wù)器瀏覽器對(duì)象 (OPCServerList)再通過(guò)該對(duì)象的 IOPCServerList 接口獲得 OPC 服務(wù)器名稱(chēng)的列表;可以通過(guò)枚舉注冊(cè)表中包含“ OPC”子鍵的程序名來(lái)瀏覽符合 OPC數(shù)據(jù)存取規(guī)范的服務(wù)器。 ? 通過(guò) OPC 接口讀寫(xiě)實(shí)時(shí)數(shù)據(jù)。 ? 斷開(kāi)連接 利用 VB 開(kāi)發(fā) OPC 客戶(hù)端程序的思想步驟 一、 自動(dòng)化接口的 O P C 服務(wù)器的客戶(hù)端訪問(wèn)過(guò)程(通用的客戶(hù)端程序開(kāi)發(fā)) VB 程序剛開(kāi)始運(yùn)行時(shí)就已經(jīng)自動(dòng)初始化 COM 庫(kù),用 New 關(guān)鍵詞生成 OPC 服務(wù)器對(duì)象,獲得 OPC 服務(wù)器對(duì)象初始接口的指針,通過(guò)接口指針就可以調(diào)用該接口的方法。在 VB 中,如果要調(diào)用其它接口,可以通過(guò)執(zhí)行一個(gè) Set 操作實(shí)現(xiàn)。當(dāng)不再使用接口指針時(shí),引用在其作用域外會(huì)自動(dòng)釋放,也可以顯式地把它設(shè)置為“ Nothing”。程序結(jié)束時(shí), VB 可以自動(dòng)取消 COM初始化。也就是說(shuō)用 VB 編寫(xiě) OPC 客戶(hù)端程序時(shí),一定要先建立一個(gè)服務(wù)器對(duì)象,然后才能根據(jù) OPC 服務(wù)器的 ProgID 來(lái)連接OPC 服務(wù)器,實(shí)現(xiàn)從客戶(hù)端啟動(dòng) OPC 服務(wù)器,最后實(shí)現(xiàn)添加組、添加項(xiàng)等操作。讀寫(xiě)數(shù)據(jù)時(shí), OPC 服務(wù)器提供了同步和異步兩種方法。同步的方式中,客戶(hù)端必須等待返回的結(jié)果,效率很低,此種方式一般在故障診斷時(shí)使用。異步的方式使客戶(hù)端可以在訪問(wèn)數(shù)據(jù)后繼續(xù)下一步操作,在結(jié)果返回時(shí), OPC 服務(wù)器會(huì)通過(guò) IOPCDataCallback通知客戶(hù)端,這種方式的訪問(wèn)效率較高,但客戶(hù)端必須實(shí)現(xiàn) IOPCDataCallback 接口。在 OPC 自動(dòng)化接口中,是通過(guò) OPCGroup 事件來(lái)實(shí)現(xiàn)異步讀取數(shù)據(jù)的。規(guī)范定義的OPCGroup 事件包含如下 4 個(gè)事件 [15]: Datachange 事件,該事件在服務(wù)器方數(shù)據(jù)發(fā)生變化時(shí)由服務(wù)器方激發(fā); AsyncReadplete 事件,該事件在異步讀操作完成時(shí)由服務(wù)器方激發(fā); AsyncWriteplete 事件,該事件在異步寫(xiě)操作完成后由服務(wù)器方激發(fā); AsyncCancelplete 事件,該事件在取消操作 (取消某一個(gè)異步讀或?qū)懖僮?)時(shí)由服務(wù)器方激 發(fā)。 其中 Datachange 事件是實(shí)現(xiàn)數(shù)據(jù)訂閱的主要事件,客戶(hù)端在 OPC 服務(wù)器IConnectionPointContainer 中注冊(cè)客戶(hù)端接收器,當(dāng)滿(mǎn)足一定的條件時(shí), OPC 服務(wù)器通過(guò) IOPCDataCallback 返回結(jié)果,激發(fā)相應(yīng)的事件來(lái)通知客戶(hù)端程序做相應(yīng)的處理。 當(dāng)通信完畢,客戶(hù)端需要退出訪問(wèn)時(shí),必須斷開(kāi)與 OPC 服務(wù)器的連接,釋放所有的內(nèi)存和接口。如果 OPC 服務(wù)器程序自行退出,可以通過(guò)激發(fā)客戶(hù)程序的OPCServer 對(duì)象事件 ServerShutDown 來(lái)通知 OPC 客戶(hù)端程序。 OPC 服務(wù)器與客戶(hù)端建 立連接和斷開(kāi)的過(guò)程如圖 中國(guó)礦業(yè)大學(xué) 2021 屆本科生畢業(yè)設(shè)計(jì) 第 21 頁(yè) 創(chuàng) 建 O P C 服 務(wù)器 對(duì) 象連 接 O P C 服 務(wù)器 對(duì) 象添 加 O P C 組 集合 和 組 對(duì) 象在 O P C 組 中 添加 O P C 項(xiàng)更 新 O P C 數(shù) 據(jù)斷 開(kāi) O P C 服 務(wù)器 連 接結(jié) 束 運(yùn) 行 ?
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1