新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > OPC簡(jiǎn)介及OPC DA 服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)

        OPC簡(jiǎn)介及OPC DA 服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)

        作者: 時(shí)間:2012-08-31 來源:網(wǎng)絡(luò) 收藏

          0 引言

        本文引用地址:http://www.104case.com/article/148479.htm

           全稱OLE for Process CONtrol,它是由 基金會(huì)制定的自動(dòng)化領(lǐng)域過程控制標(biāo)準(zhǔn)。

          實(shí)際上, 代表一系列的標(biāo)準(zhǔn),包括OPC 數(shù)據(jù)訪問(OPC Data AccESS),OPC 報(bào)警與事件(Alarms Events ),歷史數(shù)據(jù)訪問(OPC Historical Data Access),OPC XML-(1.0)等。目前,OPC 標(biāo)準(zhǔn)在現(xiàn)代工業(yè)控制領(lǐng)域,特別是在數(shù)據(jù)采集和軟實(shí)時(shí)控制方面已有很好的應(yīng)用。

          1 OPC 標(biāo)準(zhǔn)介紹

          在 OPC 標(biāo)準(zhǔn)制定之前,工業(yè)軟件制造商需要為不同的硬件開發(fā)各自獨(dú)立的驅(qū)動(dòng)接口。對(duì)于開發(fā)典型監(jiān)控程序軟件的技術(shù)人員來說,約有20%-30%的時(shí)間是用于編寫通訊驅(qū)動(dòng)程序。當(dāng)供應(yīng)商提供一個(gè)新的硬件時(shí),應(yīng)用軟件研發(fā)人員就不得不重新編寫一個(gè)新的程序。
          而OPC 標(biāo)準(zhǔn)的出現(xiàn)為此解決該問題提供了一個(gè)方案,它制定了一系列的數(shù)據(jù)存取,事件,報(bào)警等規(guī)范,使得當(dāng)有新的硬件出現(xiàn)時(shí),供應(yīng)商只需提供的OPC 標(biāo)準(zhǔn)接口,而上層應(yīng)用軟件則不需重新改寫。這樣,在系統(tǒng)與設(shè)備之間,車間現(xiàn)場(chǎng)與信息管理之間,甚至更遠(yuǎn)的距離上,都可以通過OPC 標(biāo)準(zhǔn)無縫通訊,而不必?fù)?dān)心設(shè)備升級(jí)帶來的不便和額外費(fèi)用。

          OPC 為不同的應(yīng)用制定了不同的標(biāo)準(zhǔn),OPC 是針對(duì)現(xiàn)場(chǎng)數(shù)據(jù)進(jìn)行存取的接口規(guī)范,該標(biāo)準(zhǔn)基于OLE / COM / DCOM / COM+技術(shù),采用Client / Server 模式。數(shù)據(jù)通過特定的采集卡或串口等,從現(xiàn)場(chǎng)設(shè)備中獲得,然后OPC 將這些從數(shù)據(jù)源采集到的數(shù)據(jù),以O(shè)PC 標(biāo)準(zhǔn)接口形式提供給外部應(yīng)用程序,例如工控軟件,實(shí)時(shí)數(shù)據(jù)庫(kù)等。OPC 可以通過本地或遠(yuǎn)程服務(wù)兩種方式,為依照OPC 標(biāo)準(zhǔn)的客戶端提供服務(wù)。

          2 OPC DA 服務(wù)器的

          本文通過使用 VC++編程實(shí)現(xiàn)的一個(gè)OPC DA 服務(wù)器框架,來介紹OPC DA 服務(wù)器中需要解決的主要問題。在OPC 服務(wù)器的中,引入適配器模式,通過適配層將數(shù)據(jù)訪問同具體的數(shù)據(jù)源操作相分離,以便針對(duì)不同的數(shù)據(jù)來源時(shí),進(jìn)行快速的二次開發(fā)。實(shí)現(xiàn) OPC DA 服務(wù)器,需要依照OPC 基金會(huì)提供的OPC DA 標(biāo)準(zhǔn),將從數(shù)據(jù)源中采集數(shù)據(jù),以標(biāo)準(zhǔn)規(guī)定的接口形式提供給外部。其中,OPC 規(guī)范為OPC 服務(wù)器規(guī)定了兩套接口方式:定制接口(Custom interface)和自動(dòng)化接口(AutomATIon Interface)。其中,前者是OPC 服務(wù)器必須實(shí)現(xiàn)的接口,后者則是為方便VB 等腳本語(yǔ)言而提供,可以選擇性實(shí)現(xiàn)。

          2.1 OPC DA 服務(wù)器中的對(duì)象

          根據(jù) OPC 標(biāo)準(zhǔn),在OPC DA 服務(wù)器中,主要包含三個(gè)層次的對(duì)象:服務(wù)器對(duì)象(Server),組對(duì)象(Group)和數(shù)據(jù)項(xiàng)(Item)。其中,服務(wù)器對(duì)象與組對(duì)象是一對(duì)多的關(guān)系,一個(gè)Server 對(duì)象可以包含0 到多個(gè)Group 對(duì)象,而一個(gè)組對(duì)象中可以包含0 到多個(gè)數(shù)據(jù)項(xiàng)。OPC DA 標(biāo)準(zhǔn)對(duì)Server 和Group 對(duì)象需要實(shí)現(xiàn)的接口,進(jìn)行了詳細(xì)的規(guī)定說明。

          在 OPC DA 標(biāo)準(zhǔn)中,客戶端對(duì)服務(wù)器的數(shù)據(jù)存取是以Group 為單位的,每次將需要存取的數(shù)據(jù)項(xiàng)item 加入一個(gè)Group,然后對(duì)該Group 進(jìn)行整體讀寫操作。Group 對(duì)象通過標(biāo)準(zhǔn)定義的IOPCDataMgt 接口,對(duì)Item 進(jìn)行添加,刪除等相關(guān)的管理;而Server 對(duì)象則通過IOPCServer 接口對(duì)Group 對(duì)象進(jìn)行添加,刪除等管理。

          2.2 OPC DA 服務(wù)器的結(jié)構(gòu)

          開發(fā)一個(gè) OPC DA 服務(wù)器需要注意以下問題:服務(wù)器的運(yùn)行方式,各個(gè)接口與對(duì)象的相互關(guān)系,內(nèi)部數(shù)據(jù)的組織形式,對(duì)外部數(shù)據(jù)源的訪問等。在本實(shí)例中,OPC 數(shù)據(jù)存取服務(wù)器的框架結(jié)構(gòu)如下圖所示

          

        OPC 服務(wù)器的結(jié)構(gòu) www.elecfans.com


          圖 1 OPC 服務(wù)器的結(jié)構(gòu)


        上一頁(yè) 1 2 3 下一頁(yè)

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 敦煌市| 嘉黎县| 五大连池市| 城步| 通许县| 瑞丽市| 南召县| 德清县| 丽水市| 南华县| 姚安县| 南城县| 元谋县| 九龙坡区| 张家界市| 六盘水市| 阳曲县| 集贤县| 名山县| 嘉荫县| 湖北省| 永平县| 乌鲁木齐县| 巴里| 四会市| 普安县| 将乐县| 云林县| 灵丘县| 闽侯县| 贺兰县| 郴州市| 班戈县| 新郑市| 肇州县| 从化市| 罗甸县| 汶川县| 都兰县| 合肥市| 仁怀市|