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

        ?

        面向PLC的OPC服務(wù)器設(shè)計(jì)與開發(fā)

        2011-07-03 08:58:28李紹成馬連祥
        制造業(yè)自動(dòng)化 2011年24期
        關(guān)鍵詞:設(shè)計(jì)

        李紹成,馬連祥

        (南京林業(yè)大學(xué) 木材工業(yè)學(xué)院,南京 210037)

        0 引言

        可編程控制器PLC(Programmable Logic Controller)具有可靠性高、通用性強(qiáng)、編程簡(jiǎn)單、體積小、安裝維護(hù)方便等優(yōu)點(diǎn),在工業(yè)控制中得到了廣泛應(yīng)用[1~3]。

        在工業(yè)控制系統(tǒng)中,可能存在不同廠家生產(chǎn)的、多種型號(hào)的可編程控制器PLC。為了便于系統(tǒng)集成,一般采用基于OPC(OLE for Process Control)規(guī)范的接口進(jìn)行數(shù)據(jù)交換,為此,需要設(shè)計(jì)、開發(fā)面向PLC的OPC服務(wù)器。

        1 OPC服務(wù)器開發(fā)工具

        面向PLC的OPC服務(wù)器開發(fā)需要完成以下兩個(gè)方面工作:一方面,需要根據(jù)PLC的通信協(xié)議實(shí)現(xiàn)上位機(jī)服務(wù)器軟件與PLC的數(shù)據(jù)交換;另一方面,需要合理設(shè)計(jì)服務(wù)器軟件的架構(gòu)與接口,使之符合OPC技術(shù)規(guī)范。

        由于OPC服務(wù)器是基于COM技術(shù)的,這就要求程序設(shè)計(jì)人員必須非常熟悉COM技術(shù),而精通COM技術(shù)是有一定難度的,因此,OPC服務(wù)器的源碼級(jí)開發(fā)是相當(dāng)復(fù)雜的,一般由專業(yè)的軟件公司進(jìn)行開發(fā)[4,5]。

        為了便于OPC技術(shù)的推廣和應(yīng)用,國(guó)內(nèi)外許多單位推出了OPC服務(wù)器快速開發(fā)工具包。這種工具包將微軟公司的OLE/COM/DCOM技術(shù)和OPC的技術(shù)細(xì)節(jié)進(jìn)行了隱藏,使用戶開發(fā)工作集中在數(shù)據(jù)采集和處理任務(wù)上,從而簡(jiǎn)化了OPC服務(wù)器的開發(fā)。

        基于工具包的OPC服務(wù)器開發(fā),主要任務(wù)是熟悉工具包的API接口函數(shù),通過(guò)調(diào)用工具包的API接口函數(shù)實(shí)現(xiàn)OPC服務(wù)器的功能,為應(yīng)用軟件提供符合OPC規(guī)范的接口。

        2 OPC服務(wù)器設(shè)計(jì)與開發(fā)

        2.1 軟件設(shè)計(jì)

        基于工具包的面向PLC的OPC服務(wù)器開發(fā)的首要任務(wù)是設(shè)計(jì)OPC對(duì)象與接口、OPC服務(wù)器界面,然后進(jìn)行OPC服務(wù)器與PLC的通信設(shè)計(jì),以實(shí)現(xiàn)OPC服務(wù)器與PLC的數(shù)據(jù)交換,具體的軟件架構(gòu)如圖1所示。

        圖1 面向PLC的OPC服務(wù)器軟件架構(gòu)

        OPC對(duì)象與接口是OPC服務(wù)器與客戶端程序進(jìn)行交互的部分。首先應(yīng)進(jìn)行OPC服務(wù)器對(duì)象設(shè)計(jì),即定義服務(wù)器名稱ProgID和類標(biāo)識(shí)符CLSID。服務(wù)器名稱ProgID可以自由確定;類標(biāo)識(shí)符CLSID是一個(gè)128字節(jié)的數(shù)據(jù),是用來(lái)標(biāo)識(shí)一個(gè)COM對(duì)象的,可用微軟自帶的工具GUIDGEN.EXE快速確定。然后根據(jù)OPC項(xiàng)的管理要求設(shè)計(jì)OPC組對(duì)象,如果OPC項(xiàng)較少,可以直接利用工具包默認(rèn)的一個(gè)OPC組對(duì)象。最后確定OPC項(xiàng)對(duì)象,一個(gè)OPC項(xiàng)可以對(duì)應(yīng)于PLC內(nèi)存中的若干寄存器,一般根據(jù)PLC的具體控制要求進(jìn)行設(shè)計(jì),并確定可讀項(xiàng)與可寫項(xiàng)。

        OPC服務(wù)器與PLC的通信模塊是面向PLC的OPC服務(wù)器的重要組成部分,OPC可讀項(xiàng)的數(shù)據(jù)就是通過(guò)該模塊采集PLC中相應(yīng)寄存器的信息獲得的;OPC可寫項(xiàng)的數(shù)據(jù)就是通過(guò)該模塊寫入PLC中相應(yīng)寄存器的。

        服務(wù)器程序界面可以為用戶提供友好的交互平臺(tái),便于觀察數(shù)據(jù)項(xiàng)的變化,以及對(duì)數(shù)據(jù)項(xiàng)進(jìn)行管理和設(shè)置。

        2.2 軟件開發(fā)

        在采用工具包開發(fā)面向PLC的OPC服務(wù)器時(shí),主要是利用工具包提供的API接口函數(shù)進(jìn)行如下的操作:

        1)工具包動(dòng)態(tài)庫(kù)初始化

        OPC服務(wù)器開始運(yùn)行時(shí),應(yīng)進(jìn)行工具包動(dòng)態(tài)庫(kù)初始化,以及設(shè)置OPC服務(wù)器的最高刷新頻率,這是OPC服務(wù)器得以運(yùn)行的基礎(chǔ)。

        2)OPC服務(wù)器信息設(shè)置

        主要是設(shè)置服務(wù)器的運(yùn)行狀態(tài)、版本號(hào)、廠商信息等。

        3)OPC項(xiàng)的創(chuàng)建與刪除

        在OPC服務(wù)器開始運(yùn)行時(shí)創(chuàng)建OPC項(xiàng),在OPC服務(wù)器運(yùn)行結(jié)束時(shí)刪除OPC項(xiàng)。

        4)OPC項(xiàng)數(shù)據(jù)的更新

        OPC服務(wù)器需要周期地更新OPC項(xiàng)的值、質(zhì)量和時(shí)間戳,即將數(shù)據(jù)存儲(chǔ)區(qū)中的數(shù)據(jù)更新到相應(yīng)的OPC項(xiàng)。當(dāng)客戶端程序請(qǐng)求寫數(shù)據(jù)時(shí),OPC運(yùn)行庫(kù)調(diào)用寫回調(diào)函數(shù),并利用服務(wù)器與PLC的通信模塊將數(shù)據(jù)寫入PLC中的相應(yīng)寄存器中;當(dāng)客戶請(qǐng)求讀數(shù)據(jù)時(shí),OPC運(yùn)行庫(kù)調(diào)用讀回調(diào)函數(shù),返回相應(yīng)的OPC項(xiàng)的數(shù)據(jù)。

        服務(wù)器與PLC的通信模塊是基于PLC的通信接口方式進(jìn)行開發(fā)的。例如串口通信,其是根據(jù)PLC的通信協(xié)議采用串口通信控件或API函數(shù)編程來(lái)實(shí)現(xiàn)數(shù)據(jù)交換的。

        5)回調(diào)函數(shù)注冊(cè)

        工具包中有三個(gè)回調(diào)函數(shù):讀回調(diào)函數(shù)、寫回調(diào)函數(shù)和斷開回函數(shù)。只有注冊(cè)了這三個(gè)回調(diào)函數(shù)后,OPC服務(wù)器才能和客戶端程序按照OPC技術(shù)規(guī)范進(jìn)行正常通信。

        6)OPC服務(wù)器注冊(cè)和注銷

        OPC服務(wù)器安裝到計(jì)算機(jī)后,首先應(yīng)將服務(wù)器名稱ProgID和類標(biāo)識(shí)符CLSID等信息進(jìn)行注冊(cè)。在OPC服務(wù)器注冊(cè)后,OPC客戶端程序才能在本機(jī)或局域網(wǎng)上檢索到該OPC服務(wù)器,從而與該OPC服務(wù)器建立連接與數(shù)據(jù)交換。注銷是將計(jì)算機(jī)系統(tǒng)中的OPC服務(wù)器信息清除。

        OPC服務(wù)器是一個(gè)進(jìn)程外組件,其在運(yùn)行過(guò)程中對(duì)工具包接口函數(shù)的調(diào)用流程如圖2所示。

        圖2 工具包接口函數(shù)調(diào)用流程

        3 設(shè)計(jì)實(shí)例

        3.1 PLC控制對(duì)象

        Denford公司的FMS(Flexible Manufacturing System)教學(xué)演示系統(tǒng)由一臺(tái)數(shù)控車床、一臺(tái)數(shù)控銑床、兩臺(tái)機(jī)器手和一條傳送帶組成,該系統(tǒng)可以通過(guò)數(shù)字I/O接口進(jìn)行控制,各設(shè)備的I/O接口數(shù)如表1所示。

        由表1可以看出,該FMS的控制器需要有13個(gè)數(shù)字輸入口采集設(shè)備的狀態(tài)信息,需要11個(gè)數(shù)字輸出口發(fā)送控制命令。歐姆龍公司生產(chǎn)的CPM1A-30CDR-A-V型PLC有18個(gè)數(shù)字輸入口和12數(shù)字輸出口,滿足該FMS控制的接口要求。為了滿足該FMS控制系統(tǒng)快速重構(gòu)的要求,其控制系統(tǒng)必須是基于OPC規(guī)范接口的,即按照?qǐng)D3所示的體系結(jié)構(gòu)進(jìn)行控制。因此,需要為圖3所示的PLC開發(fā)OPC服務(wù)器。

        表1 Denford FMS硬件設(shè)備I/O接口

        圖3 基于PLC和OPC的FMS控制系統(tǒng)

        3.2 OPC服務(wù)器設(shè)計(jì)

        由表1和圖3所示的CPM1A-30CDR-A-V型PLC控制對(duì)象的具體要求可知,該 OPC服務(wù)器主要與PLC的輸入與輸出口進(jìn)行數(shù)據(jù)交換,因此,在該OPC服務(wù)器中設(shè)計(jì)定義了6個(gè)OPC項(xiàng),其中4個(gè)OPC數(shù)據(jù)項(xiàng)為可讀項(xiàng):TagIn0CH、TagIn1CH、TagIn10CH、TagIn11CH,分別用于讀取該P(yáng)LC的輸入端000通道與001通道、輸出端010通道與011通道的數(shù)值,即采集FMS硬件設(shè)備的狀態(tài)信息;另外2個(gè)OPC數(shù)據(jù)項(xiàng)為可寫項(xiàng):TagOut10CH、TagOut11CH,分別用于對(duì)該P(yáng)LC的輸出端010通道與011通道寫數(shù)值,即向FMS硬件設(shè)備發(fā)送控制命令。

        服務(wù)器與PLC的通信功能模塊是采用串口通信控件MSComm實(shí)現(xiàn)的,具體的通信協(xié)議是由CPM1A-PLC手冊(cè)中的讀出輸入輸出繼電器內(nèi)容和寫入輸入輸出繼電器區(qū)中的命令格式和響應(yīng)格式確定的。

        開發(fā)的OPC服務(wù)器主界面如圖4所示,具有注冊(cè)和注銷、OPC項(xiàng)的創(chuàng)建與刪除、OPC項(xiàng)數(shù)據(jù)的更新等功能。在該OPC服務(wù)器安裝、注冊(cè)后,利用圖4所示的OPC客戶端軟件進(jìn)行了性能測(cè)試,結(jié)果表明該OPC 服務(wù)器符合OPC接口規(guī)范要求,可以在本機(jī)或局域網(wǎng)上進(jìn)行訪問,滿足圖3所示的FMS控制要求。

        圖4 CPM1A-30CDR型 PLC的OPC服務(wù)器界面

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

        本文研究了面向PLC的OPC服務(wù)器的快速實(shí)現(xiàn)方法,設(shè)計(jì)了一用于Denford公司FMS控制的PLC的OPC服務(wù)器,運(yùn)行結(jié)果表明采用本文研究的方法所開發(fā)的OPC服務(wù)器符合OPC技術(shù)規(guī)范要求,具有一定的工程應(yīng)用價(jià)值。

        [1] 謝慶華. PLC在電力系統(tǒng)操作電源監(jiān)控系統(tǒng)中的應(yīng)用[J].化工自動(dòng)化及儀表, 2007, 34(5): 77-78.

        [2] 宋青. 基于工業(yè)以太網(wǎng)多PLC的污水處理控制系統(tǒng)[J].自動(dòng)化與儀表, 2011, (6); 28-32.

        [3] 楊旭宏, 劉進(jìn)平. 基于PLC的煤礦水倉(cāng)水位監(jiān)控系統(tǒng)[J].遼寧工程技術(shù)大學(xué)學(xué)報(bào)(自然科學(xué)版), 2011, 30(2): 190-193.

        [4] 戚中奎, 林果園, 孫統(tǒng)風(fēng). OPC數(shù)據(jù)訪問服務(wù)器的研究與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2011, 32(4): 1517-1520.

        [5] 周磊, 劉大成, 周傳福, 等. OPC規(guī)范下數(shù)據(jù)訪問服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微計(jì)算機(jī)信息, 2007, 23(11): 264-266.

        猜你喜歡
        設(shè)計(jì)
        二十四節(jié)氣在平面廣告設(shè)計(jì)中的應(yīng)用
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        基于PWM的伺服控制系統(tǒng)設(shè)計(jì)
        電子制作(2019年19期)2019-11-23 08:41:36
        基于89C52的32只三色LED搖搖棒設(shè)計(jì)
        電子制作(2019年15期)2019-08-27 01:11:50
        基于ICL8038的波形發(fā)生器仿真設(shè)計(jì)
        電子制作(2019年7期)2019-04-25 13:18:16
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        從平面設(shè)計(jì)到“設(shè)計(jì)健康”
        商周刊(2017年26期)2017-04-25 08:13:04
        香蕉亚洲欧洲在线一区| 日韩欧美人妻一区二区三区| 一本大道久久东京热无码av| 亚洲精品黄网在线观看| 都市激情亚洲综合一区| 久久精品国产av麻豆五月丁| 美女网站免费福利视频| 四虎影院在线观看| 中国产无码一区二区三区| 日韩av一区二区不卡在线| 色88久久久久高潮综合影院| 久久乐国产精品亚洲综合| 国产精品98视频全部国产| 精品福利一区二区三区| 色婷婷综合久久久中文字幕| 亚洲欧美日韩国产综合一区二区| 久久久国产精品ⅤA麻豆百度| 亚洲av日韩综合一区尤物| 欧美精品国产综合久久| 亚洲综合av在线在线播放| 日韩av在线不卡一区二区三区 | 人妖系列在线免费观看| 亚洲精品久久国产精品| 久久综合九色综合网站| 无码av一区在线观看| 亚洲国产av一区二区不卡| 久久精品www人人爽人人| 狠狠噜天天噜日日噜| 青青草国内视频在线观看| 中国人在线观看免费的视频播放| 伊人久久大香线蕉亚洲五月天 | 女同另类激情在线三区| 宅男亚洲伊人久久大香线蕉| 人妻久久久一区二区三区| 男人的天堂在线无码视频 | 日本五十路人妻在线一区二区| 在线成人爽a毛片免费软件| 最新国产在线精品91尤物| 视频在线播放观看免费| 国产精品无码素人福利| 欧美成人一区二区三区在线观看 |