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

正文內(nèi)容

工學(xué)]基于gprs的熱網(wǎng)遠程監(jiān)控系統(tǒng)的設(shè)計-資料下載頁

2025-10-30 01:15本頁面

【導(dǎo)讀】控系統(tǒng)提供了一種低成本的遠程無線監(jiān)控解決方案。系統(tǒng)以中國移動GPRS網(wǎng)絡(luò)作為遠。論文首先介紹了GPRS網(wǎng)絡(luò)體系結(jié)構(gòu)和工作原理,分析了GPRS無線監(jiān)控系。統(tǒng)的巨大優(yōu)勢,然后給出了基于GPRS的熱網(wǎng)遠程監(jiān)控系統(tǒng)的拓撲結(jié)構(gòu)和網(wǎng)絡(luò)組建過程,最后對監(jiān)控中心站和遠程監(jiān)控分站兩部分分別進行軟件設(shè)計并進行系統(tǒng)調(diào)試。GPRS無線監(jiān)控是目前熱網(wǎng)遠程監(jiān)控投資少,效益高,穩(wěn)定性佳的系統(tǒng)解決方案,從根本上提高了城市供熱行業(yè)的自動化管理水平。

  

【正文】 數(shù)是很重要的。 IConnectionPointContainer 接口主要提供了 IOPCShutdown 的出接口連接點訪問支持。 IOPCShutdown 出接口用于服務(wù)器主動與客戶程序斷開連接時對客戶程序進行通知。OPC 服務(wù)器必須支持此接口。它的實現(xiàn)與一般連接點對象的實現(xiàn)相同。當服務(wù)器關(guān)閉之后,客戶端就會知道,并且斷開服務(wù)器。 2. OPC 組對象及其接口 OPC 數(shù)據(jù)存取規(guī)范版本 組對象的接口如圖 46 所示: 圖 46 OPC 數(shù)據(jù)存取規(guī)范版本 組對象的接 口 IOPCItemMgt 接口及其成員函數(shù)的功能是允許 OPC 客戶程序添加和刪除項對象并可控制項對象的行為。 IOPCGroupStateMgt 接口及其成員函數(shù)允許客戶程序管理組對象的所有狀態(tài)。最基本的是改變組對象的更新率和活動狀態(tài)。 IOPCAsyncIO2 接口允許客戶對服務(wù)器執(zhí)行異步讀寫操作,操作被“排隊等候”,函數(shù)立即返回。每項操作被看作一個“事務(wù)”,并被分配一個事務(wù) ID,當操作完成時,客 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 21 頁 戶 IOPCDataCallback 接口的回調(diào)將執(zhí)行?;卣{(diào)中的信息指出了事務(wù) ID 和操作結(jié)果。這兩個是數(shù)據(jù)訪問規(guī)范進行數(shù) 據(jù)訪問的最重要接口。 IConnectionPointContainer 接口:組對象必須實現(xiàn)此接口,與服務(wù)器對象的此接口的唯一區(qū)別是管理的出接口不一樣,組對象管理的出接口是 IOPCDataCallback 接口,可使客戶與服務(wù)器連接并進行最有效的數(shù)據(jù)傳送。 3. OPC 客戶端接口 OPC 數(shù)據(jù)訪問自定義接口規(guī)范 版為服務(wù)器對象和組對象分別定義了一個出接口,它們的具體實現(xiàn)由客戶端提供,因此在這里只簡單介紹一下這兩個出接口的功能: IOPCShutdown:這是相應(yīng)于服務(wù)器對象的出接口。當 OPC 服務(wù)器因為某 種原因需要關(guān)閉時,可通過該接口請求客戶程序與其斷開連接,并提供服務(wù)器關(guān)閉的原因??蛻舫绦驊?yīng)該用 UnAdvise 斷開與該服務(wù)器所有的連接,清除所有的組對象以及釋放所有的接口。 IOPCDataCallback:這是相應(yīng)于組對象的出接口。當組對象的數(shù)據(jù)變化或某些異步讀寫接口被調(diào)用時,將通過該接口把結(jié)果通知客戶端。該接口定義了以下四個方法 : (1) OnDataChange:當組對象 數(shù)據(jù)改變時 服務(wù)器 調(diào)用 此方法通知客戶進行數(shù)據(jù) 處理。 (2) OnReadComplete:當異步讀操作完成服務(wù)器調(diào)用此方法通知客戶進行數(shù)據(jù)處理。 (3) OnWriteComplete:當異步寫操作完成服務(wù)器調(diào)用此方法把操作 結(jié)果通知客戶。 (4) OnCancelComplete:當取消異步讀寫操作服務(wù)器調(diào)用此方法通知客戶進行處理。 OPC 數(shù)據(jù)訪問方式的比較和確定 OPC 的數(shù)據(jù)訪問方法分別有同步訪問、異步訪問和訂閱式數(shù)據(jù)采集方式三種 [15]。 1. 同步數(shù)據(jù)訪問方式 OPC 服務(wù)器把按照 OPC 應(yīng)用程序的要求得到的數(shù)據(jù)訪問結(jié)果作為方法的參數(shù)返回給 OPC 應(yīng)用程序, OPC 應(yīng)用程序在結(jié)果被返回之前必須處于等待狀態(tài)。 同步式訪問特點為:讀取指定 OPC 標簽對應(yīng)的過程數(shù)據(jù)時 ,應(yīng)用程序一直要等到讀取完為止;寫入指定 OPC 標簽對應(yīng)的過程數(shù)據(jù)時,應(yīng)用程序一直等待寫入完成為止。當客戶數(shù)據(jù)較少而且同服務(wù)器交互的數(shù)據(jù)量比較少的時候可以采用這種方式,然而當網(wǎng)絡(luò)堵塞或大量客戶訪問時,會造成系統(tǒng)訪問效率的明顯下降。 同步訪問數(shù)據(jù)處理方式如圖 47 所示: 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 22 頁 圖 47 同步數(shù)據(jù)訪問處理 2. 異步數(shù)據(jù)訪問方式 OPC 服務(wù)器接到 OPC 應(yīng)用程序的要求后,幾乎立即將方法返回。 OPC 應(yīng)用程序隨后可以進行其他處理。當 OPC 服務(wù)器完成數(shù)據(jù)訪問時, OPC 服務(wù)器 轉(zhuǎn)換角色充當成客戶程序,而原來的客戶程序此時可以看成是服務(wù)器。 OPC 服務(wù)器主動觸發(fā) OPC 應(yīng)用程序的異步訪問完成事件,將數(shù)據(jù)訪問結(jié)果傳送給 OPC 應(yīng)用程序。 OPC 應(yīng)用程序在其事件處理程序中接收從 OPC 服務(wù)器傳來的數(shù)據(jù)。異步訪問數(shù)據(jù)處理方式如圖 48 所示: 圖 48 異步數(shù)據(jù)訪問處理 異步式訪問特點為:讀取指定 OPC 標簽對應(yīng)的過程數(shù)據(jù),應(yīng)用程序發(fā)出讀取要求后立即返回,讀取完成時發(fā)生讀取完成事件, OPC 應(yīng)用程序被調(diào)用;寫入指定 OPC 標簽對應(yīng)的過程數(shù)據(jù) 時與讀取 過程類似。 3. 訂閱式數(shù)據(jù)訪問方式 此種方式并不需要 OPC 客戶應(yīng)用程序向 OPC 服務(wù)器提出要求,而是服務(wù)器周期性O(shè)PC 服務(wù)器 方法調(diào)用結(jié)束 方法開始調(diào)用 時間 調(diào)用同步訪問方法 OPC 客戶端 時間 時間 等待 其他處理 通知 異步訪問 完成事件 調(diào)用異步 訪問方法 方法開始調(diào)用 方法調(diào)用結(jié)束 事件發(fā)生 事件處理結(jié)束 OPC 服務(wù)器 時間 OPC 客戶端 等待 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 23 頁 地掃描緩沖區(qū)的數(shù)據(jù),如果發(fā)現(xiàn)數(shù)據(jù)變化超過一定的幅度時,則更新數(shù)據(jù)緩沖器,并自動通知 OPC 應(yīng)用程序。這樣 OPC 客戶應(yīng)用程序就可以自動接到 OPC 服務(wù)器 送來的變化通知的訂閱方式數(shù)據(jù)采集。訂閱式 方式實際上也屬于異步讀取方式的一種。采用訂閱式 方式的服務(wù)器按一定的更新周期更新數(shù)據(jù)緩沖器的數(shù)值時,如果發(fā)現(xiàn)數(shù)據(jù)有變化時,就會以數(shù)據(jù)變化事件通知 OPC 應(yīng)用程序。訂閱式訪問數(shù)據(jù)處理方式如圖 49 所示: 圖 49 訂閱式數(shù)據(jù)采集 訂閱式訪問特點為:服務(wù)器用一定的周期檢查過程數(shù)據(jù),發(fā)現(xiàn) 過程數(shù)據(jù)發(fā)生變化 后,立刻通知客戶程序,傳遞相應(yīng)信息。訂閱式技術(shù)基于“客戶 服務(wù)器 硬件設(shè)備”模型,在服務(wù)器中的內(nèi)部建立預(yù)定數(shù)據(jù)的動態(tài)緩存,并且當數(shù)據(jù)變化時對動態(tài)緩存給予刷新,并向訂閱了這些數(shù)據(jù)的客戶端發(fā)送。 通過比較可以看出,實現(xiàn)異步通信和訂閱式通信相比較同步通信的難 度要大,但異步通信不占用信道和程序的執(zhí)行時間。特別是訂閱式通信 方式,當服務(wù)器數(shù)據(jù)有變化時,它才主動和客戶程序通信,效率是最高 的。 對于數(shù)據(jù)量很大時,異步式或訂閱式 方式是最適宜的。 本文最終同時采用這兩種數(shù)據(jù)訪問方式實現(xiàn)和 OPC 服務(wù)器的通信。 VC++環(huán)境下的 OPC 客戶端程序開發(fā)過程 下面就結(jié)合前面介紹的 OPC 基礎(chǔ)知識來詳細闡述一下 VC++環(huán)境下 OPC 客戶端的開發(fā)過程。 OPC 客戶端的開發(fā)過程大致包括 4 步,分別為:與 OPC 服務(wù)器建立連接,添加組、添加項,異步讀取數(shù)據(jù),斷開連接。 OPC 服務(wù)器 時間 通知 其他處理 數(shù)據(jù)變化 事件發(fā)生 采樣周期 數(shù)據(jù)變化 事件發(fā)生 時間 事件發(fā)生 事件處理結(jié)束 事件發(fā)生 事件處理結(jié)束 通知 OPC 客戶端 其他處理 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 24 頁 1. 建立與 OPC 服務(wù)器的連接并獲取服務(wù)器對象接口指針 代碼說明:首先初始化 COM 庫,然后通過函數(shù) CLSIDFromProgID 將給定的服務(wù)器的 ProgIDProgID 轉(zhuǎn)換為 OPC 服務(wù)器標識 CLSID。其中 為組態(tài)王軟件OPC 服務(wù)器的 ProgID。最后通過調(diào)用 CoCreateInstance 函數(shù),傳遞 OPC 服務(wù)器的 CLSID和計算機名等參數(shù),創(chuàng)建了 OPC 服務(wù)器對象。服務(wù)器端就將服務(wù)器對象接口指針通過 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 25 頁 m_pIOPCServer 傳遞給客戶端。 2. 添加 OPC 組對象和 OPC 數(shù)據(jù)項對象 代碼說明:在添加組時,主要用到服務(wù)器對象 IOPCServer 接口。通過這個接口中AddGroup 函數(shù)來添 加組。在添加組的同時獲得組對象的 m_pIOPCItemMgt 接口指針。在添加項主要用到組對象接口 IOPCItemMgt,通過這個接口中的 AddItems 函數(shù)來添加 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 26 頁 項。 AddItems 函數(shù)告知服務(wù)器客戶端要添加的 Item 的個數(shù)、 ID 號、客戶端句柄等信息,同時服務(wù)器告知客戶端服務(wù)器句柄和數(shù)據(jù)類型等信息。 3 向 OPC Server讀寫數(shù)據(jù) 前面通過對 OPC 數(shù)據(jù)訪問方式的對比,得出本 OPC 客戶端采用異步和訂閱式兩種OPC 數(shù)據(jù)訪問方式。 訂閱式訪問時客戶端程序需要首先調(diào)用 OPC 服務(wù)器組對象接口 IOPCGroupStateMgt的成員函數(shù) SetState,設(shè)定 OPC 服務(wù)器數(shù)據(jù)刷新速率。 SetState 的調(diào)用 是 在 本文編寫的啟動數(shù)據(jù)讀寫函數(shù) readbegin 中實現(xiàn),具體實現(xiàn)代碼如下所示: SetState 函數(shù)被調(diào)用后, OPC 服務(wù)器按指定的刷新速率從數(shù)據(jù)源讀取數(shù)據(jù),如果數(shù)據(jù)發(fā)生變化則調(diào)用客戶端回調(diào)函數(shù) OnDataChange,將指定 Item 的值、時間戳、質(zhì)量等信息傳遞給客戶端??蛻舳死?OnDataChange 函數(shù)接受服務(wù)器傳送的數(shù)據(jù)項各個屬性,并進行進一步的數(shù)據(jù)處理工作。 訂閱式方式訪問時 OnDataChange 函數(shù)具 體實現(xiàn)代碼如下: 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 27 頁 代碼說明: OnDataChange 回調(diào)函數(shù)接受 OPC 服務(wù)器發(fā)送來的變化數(shù)據(jù),并對數(shù)據(jù)項的數(shù)據(jù)值、數(shù)據(jù)質(zhì)量和時間戳等屬性進行適當?shù)母袷睫D(zhuǎn)換。然后利用 phClientItems項標識符,判別出發(fā)生變化的具體 OPC 項目,保存在全局數(shù)組 s_array 中。 采用異步式訪問時客戶端程序需要首先利用 IOPCAsyncIO2 接口指針調(diào)用IOPCAsyncIO2 成員函數(shù) Read,向 OPC Server 發(fā)送讀數(shù)據(jù)命令,同時向 OPC Server 傳遞要讀取的項目數(shù)、項目的服務(wù)句柄、事務(wù) ID??蛻舳苏埱笸?成之后立即返回。 當異步 讀寫命令發(fā)出后,服務(wù)器讀取數(shù)據(jù)完成時,便會調(diào)用函數(shù) OnReadComplete通知客戶端數(shù)據(jù)讀取完成,并將 Item 值、時間戳、質(zhì)量、客戶端傳過來的事務(wù) ID 傳送給客戶端??蛻舳?便可 利用 OnReadComplete 函數(shù)接受服務(wù)器傳送的數(shù)據(jù)項各個屬性。 異步式訪問對數(shù)據(jù)項的處理過程與采用訂閱式訪問時處理基本一致。但由于采用訂閱式訪問方式時, OPC 服務(wù)器返回的數(shù)據(jù)項不僅僅只是發(fā)生變化的數(shù)據(jù)項,而是被訂閱的整個數(shù)據(jù)組。因此回調(diào)函數(shù)中并不需要判別各個數(shù)據(jù)項的標識符,可以進行數(shù)據(jù)的直 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 28 頁 接順序存儲,從 而簡化了回調(diào)函數(shù)的實現(xiàn)代碼,但正是由于是以整個數(shù)據(jù)組的形式返回數(shù)據(jù),異步式訪問的效率較訂閱式訪問明顯降低。 異步式訪問回調(diào)函數(shù) OnReadComplete 函數(shù)具體實現(xiàn)代碼如下: 4 斷開連接 當數(shù)據(jù)通訊完成之后需要與 OPC 服務(wù)器斷開連接,步驟如下: (1) pCPUnadvise(m_dwcookie)語句中 pCP 是服務(wù)器對象 IConnectionPoint 接口指針。 (2) pCPUnadvise(m_dwcookie)語句中 pCP 是組對象 IConnectionPoint 接口指針。 (3) 利用函數(shù) Release 來釋放 所有服務(wù)器對象和組對象接口指針。 (4) 利用函數(shù) CoUnitialize()關(guān)閉 COM 庫。 本文 在函數(shù) stopserver 中斷開 與 OPC 服務(wù)器的 連接,具體實現(xiàn)代碼如下: 東北大學(xué)秦皇島分校畢業(yè)設(shè) 計(論文) 第 29 頁 DDE/OPC 方式優(yōu)缺點對比分析 DDE 方式訪問工控軟件實時數(shù)據(jù) 庫, 由于 Excel 客戶端的存在, 不需要再單獨編寫DDE 客戶端程序, 實現(xiàn)起來叫容易 。但是這種 方式 存在著 以下缺點: 1. DDE 方式實現(xiàn)的前提條件是必須開放變量的“允許 DDE 遠程訪問”屬性, 但是 工控軟件的二次開發(fā)者為保證軟件的穩(wěn)定工作,在軟件實際投入運行后通常是屏蔽DDE 遠程訪問 功能。 2. 由于 DDE 方式訪問組態(tài)王變量時, Excel 表數(shù)據(jù)刷新周期決定于組態(tài)王變量定義時的采集頻率 。 由于 VC++應(yīng)用程序讀取 Excel 表格數(shù)據(jù)需要一定的時間, 容易造成Excel 表讀寫沖突的 問題。隨著 Excel 存儲數(shù)據(jù)量的增大,這種錯誤發(fā)生的概率也明顯提高,影響系統(tǒng)的穩(wěn)定 工作。 OPC 方式 訪問工控軟件實時數(shù)據(jù)庫 ,需要用戶自己開發(fā) OPC 客戶端程序
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1