關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > OPC服務(wù)器的研究及其在CAN總線(xiàn)系統(tǒng)中的實(shí)現(xiàn)

OPC服務(wù)器的研究及其在CAN總線(xiàn)系統(tǒng)中的實(shí)現(xiàn)

作者: 時(shí)間:2009-09-29 來(lái)源:網(wǎng)絡(luò) 收藏
組件的注冊(cè)

本文引用地址:http://butianyuan.cn/article/163548.htm

  注冊(cè)表是客戶(hù)和組件程序共同訪(fǎng)問(wèn)的信息倉(cāng)庫(kù),通常情況下,當(dāng)組件程序被安裝到計(jì)算機(jī)上之后,必須通過(guò)某種途徑把它的信息注冊(cè)到注冊(cè)表中,然后客戶(hù)程序才能根據(jù)注冊(cè)表中的信息對(duì)組件程序進(jìn)行操作。

  根據(jù)COM規(guī)范,組件程序可分為自注冊(cè)組件程序和非自注冊(cè)組件程序。基金會(huì)提供的組件都是自注冊(cè)組件。對(duì)于非自注冊(cè)組件程序,其注冊(cè)過(guò)程與組件程序沒(méi)有直接關(guān)系,必須單獨(dú)進(jìn)行注冊(cè)信息的配置,比如,可以編寫(xiě)一個(gè)注冊(cè)表文件,然后在RegEdit中引入。

  對(duì)于DLL形式的進(jìn)程內(nèi)自注冊(cè)組件,Windows提供了RegSvr32.exe注冊(cè)工具進(jìn)行組件注冊(cè)和注銷(xiāo)。組件程序本身必須包含DllRegisterServer和DllUnregisterServer兩個(gè)注冊(cè)表入口函數(shù)。注冊(cè)和注銷(xiāo)的格式分別為:

  RegSvr32路徑>

  RegSvr32/u路徑>

  對(duì)于EXE形式的進(jìn)程外自注冊(cè)組件,COM規(guī)范規(guī)定,必須支持兩個(gè)命令行參數(shù)/RegServer和/UnregServer(大小寫(xiě)無(wú)關(guān),并且“/”可以用“-”代替),以便完成注冊(cè)和注銷(xiāo)操作。注冊(cè)和注銷(xiāo)的格式分別為:

  系統(tǒng)路徑>/RegServer

  系統(tǒng)路徑>/UnregServer

  2.2.3測(cè)試

  OPC經(jīng)過(guò)調(diào)試之后,還需要利用OPC客戶(hù)程序?qū)λ闹饕δ苓M(jìn)行測(cè)試。

3OPC技術(shù)在現(xiàn)場(chǎng)系統(tǒng)中的應(yīng)用

  本文開(kāi)發(fā)的OPC是針對(duì)華控公司的通訊卡編寫(xiě)的,用于從華控的通訊卡和RSM智能模塊組成的現(xiàn)場(chǎng)通訊網(wǎng)絡(luò)中讀取信息。

  3.1系統(tǒng)組成

  系統(tǒng)主要由上位機(jī),CAN通訊卡,OPC客戶(hù)端,OPC服務(wù)器,RSM智能模塊,通訊媒體等組成。如圖2所示。


圖2系統(tǒng)構(gòu)成

 ?、偕衔粰C(jī)的軟、硬件配置:MicrosoftWindows98/2000或WindowsNT操作系統(tǒng);32M以上內(nèi)存、1G以上可用硬盤(pán)空間、SVGA顯示卡。

 ?、贑AN通訊卡選用華控公司的HK-CAN30B,它是一種將CAN通訊協(xié)議與PC機(jī)PCI標(biāo)準(zhǔn)相連接的非智能CAN插卡,通過(guò)該卡可對(duì)工業(yè)現(xiàn)場(chǎng)具有CAN通訊接口的儀表和控制設(shè)備進(jìn)行監(jiān)控。

 ?、跜AN現(xiàn)場(chǎng)設(shè)備選用華控的RSM智能模塊,每個(gè)模塊都是在一個(gè)嵌入式實(shí)時(shí)多任務(wù)的內(nèi)核管理下周期性工作,按組態(tài)要求定時(shí)地向上發(fā)送和取得數(shù)據(jù)。

 ?、芡ㄓ嵜襟w可以選用雙絞線(xiàn)、帶屏蔽雙絞線(xiàn)等。

 ?、菘蛻?hù)端選用力控公司的力控2.6監(jiān)控組態(tài)軟件。力控2.6支持OPC技術(shù)。它作為OPC客戶(hù)端,充分利用了OPC服務(wù)器的強(qiáng)大性能,為工程人員提供了方便高效的數(shù)據(jù)訪(fǎng)問(wèn)能力。在力控中可以同時(shí)掛接任意多個(gè)OPC服務(wù)器,每個(gè)OPC服務(wù)器都可以當(dāng)作一個(gè)外部設(shè)備進(jìn)行定義、增加或刪除。

  3.2OPC服務(wù)器與客戶(hù)端的連接

  3.2.1定義OPC設(shè)備

  首先在力控導(dǎo)航器窗口中選擇“實(shí)時(shí)數(shù)據(jù)庫(kù)”中的“I/O設(shè)備驅(qū)動(dòng)”并展開(kāi),出現(xiàn)“OPC”設(shè)備。雙擊“OPC(Client)”,出現(xiàn)I/O設(shè)備定義對(duì)話(huà)框。在“設(shè)備名稱(chēng)”中定義邏輯設(shè)備的名稱(chēng)(由用戶(hù)隨意定義),不妨定義為“OPC”,在“數(shù)據(jù)更新周期”中指定采集周期,填寫(xiě)故障后恢復(fù)查詢(xún)的周期和最長(zhǎng)時(shí)間,然后單擊“下一步”,出現(xiàn)OPC設(shè)備定義對(duì)話(huà)框。

  力控會(huì)自動(dòng)搜索計(jì)算機(jī)系統(tǒng)中已經(jīng)安裝的所有OPC服務(wù)器。如果OPC服務(wù)器編寫(xiě)無(wú)誤并且注冊(cè)正確,則點(diǎn)擊下拉框“OPC服務(wù)器”時(shí)會(huì)列出已經(jīng)安裝的所有OPC服務(wù)器的名稱(chēng),選擇要使用的OPC服務(wù)器,這里選擇本文設(shè)計(jì)的服務(wù)器“OPC.Server.1”。

  選擇“Server類(lèi)型”,是“當(dāng)?shù)兀╨ocal)”還是“遠(yuǎn)程(remote)”。在“數(shù)據(jù)訪(fǎng)問(wèn)方式”中選擇“緩沖區(qū)”或“外設(shè)”方式,對(duì)于“緩沖區(qū)”方式,OPC客戶(hù)程序?qū)⑼ㄟ^(guò)OPC服務(wù)器的緩沖區(qū)讀取數(shù)據(jù);對(duì)于“外設(shè)”方式,OPC客戶(hù)程序?qū)⑼ㄟ^(guò)OPC服務(wù)器直接從設(shè)備讀取數(shù)據(jù)。從設(shè)備直接讀取數(shù)據(jù)速度會(huì)慢一些,一般只有在故障診斷或極特殊的情況下才會(huì)使用。在“死區(qū)百分比”中輸入一個(gè)百分值,表示過(guò)程數(shù)據(jù)值的變化不超出這個(gè)比例將不對(duì)其進(jìn)行數(shù)據(jù)更新。單擊“確定”就完成了OPC設(shè)備的定義。

  3.2.2對(duì)OPC數(shù)據(jù)項(xiàng)進(jìn)行數(shù)據(jù)連接

  啟動(dòng)力控的數(shù)據(jù)庫(kù)組態(tài)程序DBMan。首先在點(diǎn)組態(tài)中創(chuàng)建所要用的變量,不妨設(shè)為gg1。展開(kāi)“數(shù)據(jù)連接”項(xiàng),已經(jīng)建立的OPC設(shè)備就排列在其中。雙擊我們剛才建立的OPC設(shè)備“OPC”,則出現(xiàn)“數(shù)據(jù)連接”對(duì)話(huà)框。選擇要連接的點(diǎn)參數(shù)gg1后,單擊“增加”按鈕,出現(xiàn)“數(shù)據(jù)項(xiàng)組態(tài)”對(duì)話(huà)框。

  如果OPC服務(wù)器支持“瀏覽”功能,雙擊右上側(cè)列表框中的“Root”,列表框會(huì)自動(dòng)列出它提供的數(shù)據(jù)區(qū);如果OPC服務(wù)器不支持“瀏覽”功能,其數(shù)據(jù)項(xiàng)的描述需要用戶(hù)根據(jù)OPC服務(wù)器的資料說(shuō)明,在“數(shù)據(jù)項(xiàng)”輸入框內(nèi)手工填寫(xiě)。選擇“數(shù)據(jù)類(lèi)型”和“讀寫(xiě)權(quán)限”,在“訪(fǎng)問(wèn)路徑”中輸入數(shù)據(jù)的訪(fǎng)問(wèn)路徑(這一項(xiàng)不是必需的,需要填寫(xiě)的,可以參考所使用的OPC服務(wù)器的手冊(cè)),這里不用填寫(xiě)。

  最后單擊“確定”按鈕,就生成了一個(gè)數(shù)據(jù)項(xiàng)的數(shù)據(jù)連接,如圖3所示,從而了與現(xiàn)場(chǎng)實(shí)際信息的連接。


圖3力控?cái)?shù)據(jù)連接結(jié)果

  在系統(tǒng)運(yùn)行時(shí),力控和服務(wù)器建立連接,自動(dòng)完成和OPC服務(wù)器之間的數(shù)據(jù)交換。

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

  本文設(shè)計(jì)的OPC數(shù)據(jù)訪(fǎng)問(wèn)服務(wù)器符合OPC規(guī)范,了對(duì)數(shù)據(jù)的實(shí)時(shí)讀寫(xiě),具有實(shí)用價(jià)值??傊辛薕PC規(guī)范,控制系統(tǒng)軟件可以高效、穩(wěn)定地對(duì)硬件設(shè)備進(jìn)行數(shù)據(jù)存取,系統(tǒng)應(yīng)用軟件之間也可以靈活地進(jìn)行信息交互,極大地提高了控制系統(tǒng)的互操作性和適應(yīng)性。


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

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉