




已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
摘要 摘要 隨著工業(yè)自動(dòng)化的發(fā)展,監(jiān)控組態(tài)軟件在工業(yè)控制系統(tǒng)中得到了廣泛的應(yīng)用。p l c 驅(qū) 動(dòng)程序的設(shè)計(jì)和開(kāi)發(fā)成為經(jīng)常遇到的問(wèn)題。信道利用率和數(shù)據(jù)采集效率直接影響到整個(gè)監(jiān) 控系統(tǒng)的性能。 本課題就是作者在北京昆侖通態(tài)公司實(shí)習(xí)期間,針對(duì)出現(xiàn)的實(shí)際問(wèn)題開(kāi)展的。m c g s 組態(tài)軟件是昆侖通態(tài)公司開(kāi)發(fā)的組態(tài)軟件,具有功能強(qiáng)大、使用方便的優(yōu)點(diǎn)。但是在使用 中,需要自動(dòng)控制工程師開(kāi)發(fā)大量的m c g s 上應(yīng)用的硬件設(shè)備的驅(qū)動(dòng)程序。這些驅(qū)動(dòng)程序 的開(kāi)發(fā)耗時(shí)費(fèi)力,并且數(shù)據(jù)采集的效率不盡令人滿(mǎn)意。 本課題進(jìn)行了相關(guān)的調(diào)查和研究,實(shí)現(xiàn)了組態(tài)軟件與p l c 設(shè)備的通用性設(shè)備驅(qū)動(dòng)框架 的設(shè)計(jì)。在c 6 s 與p l c 設(shè)備數(shù)據(jù)通信中,本課題主要解決幾個(gè)關(guān)鍵問(wèn)題:i ) 驅(qū)動(dòng)框架的 通用性設(shè)計(jì)2 ) 數(shù)據(jù)采集的優(yōu)化:3 ) 常用設(shè)備命令的封裝;4 ) 設(shè)備運(yùn)行實(shí)時(shí)信息的顯示。 本文中分析和總結(jié)了現(xiàn)有通信程序中存在的問(wèn)題,給出p l c 驅(qū)動(dòng)框架的功能規(guī)格說(shuō)明并一 一實(shí)現(xiàn);并且著重對(duì)有限信道下的數(shù)據(jù)采集問(wèn)題提出并實(shí)現(xiàn)若干優(yōu)化措施?,F(xiàn)在已有多個(gè) 開(kāi)發(fā)出的實(shí)例投入使用,經(jīng)實(shí)踐檢驗(yàn),能夠提高p l c 設(shè)備驅(qū)動(dòng)的采集效率,縮短開(kāi)發(fā)周期, 降低開(kāi)發(fā)難度。 在本課題的基礎(chǔ)上,可快速開(kāi)發(fā)p l c 驅(qū)動(dòng)實(shí)例。在實(shí)際生產(chǎn)中,已有多個(gè)實(shí)例投入應(yīng) 用。根據(jù)應(yīng)用的情況來(lái)看,到達(dá)了預(yù)期的目標(biāo),具有廣闊的應(yīng)用前景和經(jīng)濟(jì)價(jià)值。 在本文最后對(duì)所做的工作進(jìn)行了總結(jié),并提出了進(jìn)一步的研究方向和目標(biāo)。 關(guān)鍵詞:組態(tài)軟件;可編程邏輯控制器;驅(qū)動(dòng);m c g s 壘墮墮 一一 _。-。_-。_。-。_。-_。_。_。-。_。_。_1。_1。1。一 a b s t r a c t w i t ht h ed e v e l o p m e n to fi n d u s t r ya u t o m a t i o n ,h o wt od e s i g na n dd e v e l o p m e n tp l cd r i v e r p r o g r a m si sc o m i n gi n t ob e e no n eo ft h em o s tc r i t i c a lp r o b l e m s t h ee f f i c i e n c yo f c h a n n e ld a t a p r o c e s s i n gi st h ek e yo f t h ew h o l es y s t e m t h i st h e s i si sf o rr e s o l v i n gt h ep r o b l e mm e e ti nt h ek u n l u nt o n g t a ic o m p a n yd u r i n gm y p r a c t i c ep e r i o d m c g si sac o n f i g u r a t i o ns y s t e md e v e l o p e db y t h ek u n l u nt o n g t a ic o m p a n y , w i t ht h em e r i t ss u c ha st h ep o w e r f u lf u n c t i o na n da d v a n t a g e o u su t i l i t y h o w e v e r , t h ed r i v e r so f t h eh a r d w a r ea p p l i e di nm c g sn e e dd e v e l o pb ye n g i n 螂t h e ed e v e l o p m e n t sa l w a y s 1 p 圮d l o n gh o u r s a n dt h ed a t ac o l l e c t e do f t h ee f f i c i e n c i e sa r ev e r yl o w t h ea r t i c l ed i s c u s sf e wk e yp r o b l e m s , s u c h 勰c u r r e n c yd a t ac o m m u n i c a t i o ni n t e r f a c e d e s i g n ;i m p r o v ed a t ac o l l e c te f f i c i e n c y ;p a c k a g ec o u l m o n u s ee q u i p m e n t so r d e r s ;s h o wr u n t i m e i n f o r m a t i o no f e q u i p m e n t w ed i s c u s sm c g sa n dp l cd a t ac o m m u n i c a t i o np r o c e s s i nt h i sp a p e r , h o wt od e s i g na n d d e v e l o p m e n tt h ep l cd r i v e rp r o g r a mi se x p l o r e d t h i sp a p e rg i v ed e t a i ld e s i g no fp l c d r i v e r f u n c t i o na n ds o l v es e v e r a lk e yp r o b l e m sa b o u tc h a n n e ld a t ap r o c e s s i n gb a s et h ea r t i c l e ,t h ep l c d r i v e rp r o g r a mc a nb ed e v e l o p m e n tq u i c k l y t h ee x p e r i m e n t a lr e s u l t ss h o wt h a t ,i tc a ns a v ec o s t a n di m p r o v ee f f i c i e n c y f i n a l l y , t h es u m m a r yi sg i v e no ns e t t l et h i n g sa n d t l e x tr e s e a r c h i n gc o n t e n ti sp r o p o s e d k e y w o r d s :s c a d a ;p l c ;d r i v e ;m c g s i i 第一章緒論 1 1 課題的目的和意義 第一章緒論 隨著計(jì)算機(jī)科學(xué)技術(shù)、工業(yè)控制等方面的新技術(shù)的迅速發(fā)展,計(jì)算機(jī)監(jiān)控系統(tǒng)由早期 的集中式監(jiān)控向全分布式的方向發(fā)展,計(jì)算機(jī)監(jiān)控系統(tǒng)軟件也隨著面向?qū)ο蠹夹g(shù)、分布式 對(duì)象計(jì)算、多層次c l i e n t s e r v e r 技術(shù)的成熟,從早期面向功能的系統(tǒng),發(fā)展為面向具體 現(xiàn)場(chǎng)設(shè)備為特征的面向?qū)ο蟮挠?jì)算機(jī)監(jiān)控系統(tǒng)。 這期間,計(jì)算機(jī)監(jiān)控系統(tǒng)規(guī)模越來(lái)越大,不同廠家生產(chǎn)的現(xiàn)場(chǎng)設(shè)備的種類(lèi)也在不斷的 增加,其中使用組態(tài)軟件與現(xiàn)場(chǎng)p l c 設(shè)備進(jìn)行數(shù)據(jù)交換得到了廣泛的應(yīng)用。這類(lèi)數(shù)據(jù)交換 往往具有以下的特點(diǎn),即數(shù)據(jù)量大,采集點(diǎn)分散,帶寬較窄。由于不同廠家所提供的p l c 現(xiàn)場(chǎng)設(shè)備的通訊機(jī)制并不相同,組態(tài)軟件需要開(kāi)發(fā)的設(shè)備通信驅(qū)動(dòng)程序越來(lái)越多這種復(fù) 雜的設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)不但存在開(kāi)發(fā)周期長(zhǎng),難度大,難以通用的問(wèn)題,而且對(duì)于有限 帶寬限制條件下的大數(shù)據(jù)量傳輸,普遍存在著信道利用率低,系統(tǒng)效率差,不穩(wěn)定的情況。 本課題是作者在北京昆侖通態(tài)公司實(shí)習(xí)期問(wèn),針對(duì)出現(xiàn)的實(shí)際問(wèn)題而開(kāi)展的。在課題 中進(jìn)行了相關(guān)的調(diào)查和研究,實(shí)現(xiàn)了組態(tài)軟件與p l c 設(shè)備的通用性數(shù)據(jù)通信接口即m c g s 中的p l c 設(shè)備驅(qū)動(dòng)框架的設(shè)計(jì),在此基礎(chǔ)上開(kāi)發(fā)的多個(gè)實(shí)例,在實(shí)際生產(chǎn)中已投入應(yīng)用。 根據(jù)應(yīng)用的情況來(lái)看,能夠有效克服上文提到的各項(xiàng)弊病,具有廣闊的應(yīng)用前景和經(jīng)濟(jì)價(jià) 值。 同時(shí),在目前已有的數(shù)據(jù)交換標(biāo)準(zhǔn)中,對(duì)于如何提高有限帶寬條件下的信道利用率還 沒(méi)有成熟的設(shè)計(jì)。本課題在這方面做了一些有益的嘗試,有助于進(jìn)一步的深入研究。 1 2 組態(tài)軟件的現(xiàn)狀和發(fā)展 1 2 1 組態(tài)軟件的產(chǎn)生 組態(tài)的概念最早來(lái)自英文c o n f i g u r a t i o n ,含義是使用軟件工具對(duì)計(jì)算機(jī)及軟件的 各種資源進(jìn)行配置,達(dá)到讓計(jì)算機(jī)或軟件按照預(yù)先設(shè)置自動(dòng)執(zhí)行特定任務(wù)、滿(mǎn)足使用者要 求的目的【”。 監(jiān)控組態(tài)軟件是面向監(jiān)控與數(shù)據(jù)采集( s u p e r v i s o r yc o n t r o la n dd a t aa c q u i s it i o n 簡(jiǎn)稱(chēng)s c a d a ) 的軟件平臺(tái)工具。在監(jiān)控組態(tài)軟件出現(xiàn)之前,工控領(lǐng)域的用戶(hù)通過(guò)手工或委 托第三方編寫(xiě)h m i 應(yīng)用,開(kāi)發(fā)時(shí)間長(zhǎng),效率低,可靠性差;或者購(gòu)買(mǎi)專(zhuān)用的工控系統(tǒng),通 常是封閉的系統(tǒng),選擇余地小,往往不能滿(mǎn)足需求,很難與外界進(jìn)行數(shù)據(jù)交互,升級(jí)和增 加功能都受到嚴(yán)重的限制。組態(tài)軟件的出現(xiàn),把用戶(hù)從這些困境中解脫出來(lái),可以利用組 態(tài)軟件的功能,構(gòu)建一套最適合自己的應(yīng)用系統(tǒng)。 1 第一章緒論 監(jiān)控組態(tài)軟件最早出現(xiàn)時(shí),h m i ( h u m a nm a c h i n ei n t e r f a c e ) 或m m i ( m a nm a c h i n e i n t e r f a c e ) 是其主要內(nèi)涵,即主要解決人機(jī)圖形界面問(wèn)題。隨著它的快速發(fā)展,實(shí)時(shí)數(shù)據(jù) 庫(kù)、實(shí)時(shí)控制、s c a d a 、通訊及聯(lián)網(wǎng)、開(kāi)放數(shù)據(jù)接口、對(duì)i 0 設(shè)備的廣泛支持已經(jīng)成為它 的主要內(nèi)容。 世界上第一個(gè)把組態(tài)軟件作為商品進(jìn)行開(kāi)發(fā)銷(xiāo)售的專(zhuān)業(yè)軟件公司是美國(guó)w o n d e r w a r e 公司,它于2 0 世紀(jì)8 0 年代末率先推出第一個(gè)商品化監(jiān)控組態(tài)軟件i n t o u c h 。此后監(jiān)控組態(tài) 軟件在全球得到了蓬勃發(fā)展,目前世界上的組態(tài)軟件有幾十種之多,總裝機(jī)量有幾十萬(wàn)套。 伴隨著信息化社會(huì)的到來(lái),監(jiān)控組態(tài)軟件在社會(huì)信息化進(jìn)程中將扮演越來(lái)越重要的角色, 每年的市場(chǎng)增幅都會(huì)有較大增長(zhǎng),未來(lái)的發(fā)展前景十分看好。 8 0 年代中后期,隨著個(gè)人計(jì)算機(jī)的普及和開(kāi)放系統(tǒng)( o p e ns y t e m ) 概念的推廣,基于個(gè) 人計(jì)算機(jī)的監(jiān)控系統(tǒng)開(kāi)始進(jìn)入市場(chǎng),并發(fā)展壯大。組態(tài)軟件作為個(gè)人計(jì)算機(jī)監(jiān)控系統(tǒng)的重 要組成部分,比p c 監(jiān)控的硬件系統(tǒng)具有更為廣闊的發(fā)展空間。這是因?yàn)椋谝?,很多d c s 和 p i c 廠家主動(dòng)公開(kāi)通訊協(xié)議,加入“p c 監(jiān)控”的陣營(yíng)。目前,幾乎所有的p l c 和一半以上 的d c s 都使用p c 作為操作站。第二,由于p c 監(jiān)控大大降低了系統(tǒng)成本,使得市場(chǎng)空間得到 擴(kuò)大,從無(wú)人值守的遠(yuǎn)程監(jiān)視( 如防盜報(bào)警、江河汛情監(jiān)視、環(huán)境監(jiān)控、電信線路監(jiān)控、交 通管制與監(jiān)控、礦井報(bào)警等) 、數(shù)據(jù)采集與計(jì)量( 如居民水電氣表的自動(dòng)抄表、鐵道信號(hào) 采集與記錄等) 、數(shù)據(jù)分析( 如汽車(chē)機(jī)車(chē)自動(dòng)測(cè)試、機(jī)組設(shè)備參數(shù)測(cè)試、醫(yī)療化驗(yàn)儀 器設(shè)備實(shí)時(shí)數(shù)據(jù)采集、虛擬儀器、生產(chǎn)線產(chǎn)品質(zhì)量抽檢等) 到過(guò)程控制,幾乎無(wú)處不用。 第三,各類(lèi)智能儀表、調(diào)節(jié)器和p c b a s e d 設(shè)備可與組態(tài)軟件構(gòu)筑完整的低成本自動(dòng)化系 統(tǒng),具有廣闊的市場(chǎng)空間。第四,各類(lèi)嵌入式系統(tǒng)和現(xiàn)場(chǎng)總線的異軍突起,把組態(tài)軟件推到 了自動(dòng)化系統(tǒng)主力軍的位置,組態(tài)軟件在工業(yè)自動(dòng)化系統(tǒng)中占有了越來(lái)越重要的地位。 1 2 2 常見(jiàn)的組態(tài)軟件 目前世界上的組態(tài)軟件有近百種之多。國(guó)際上知名的工控組態(tài)軟件有美國(guó)商業(yè)組態(tài)軟 件公司w o n d e r w a r e 公司的i n t o u c h 、i n t e l l u t i o n 公司的f i x 、n c m as o f t 公司的p a r a g o n 、 t ae n 2 i n e e r i n 2 公司的a i m a x 、通用電氣公司的c i m p l i c i w 、r o c k w e l l 公司的r s v i c w 3 2 、 信肯通公司的t h i n k & d o 、n a t i o n a li n s t r u m e n t s 公司的l a b v i e w 、l e o n i t s 公司的g e n e s i s , 德國(guó)西門(mén)子公司的w i n c c ,以色列p cs o f t 公司的w i z c o ,澳大利亞c i t e c h 公司的c i t e c h 等。國(guó)內(nèi)的組態(tài)軟件起步也比較早,目前實(shí)際工業(yè)過(guò)程中運(yùn)行可靠的有北京昆侖通態(tài)自 動(dòng)化軟件科技有限公司的m c g s 、北京三維力控科技有限公司的力控、北京亞控科技發(fā)展 有限公司的組態(tài)王以及臺(tái)灣研華的g e n i e 等。 目前絕大多數(shù)工控組態(tài)軟件都可運(yùn)行在w i n d o w s9 8 n t 2 0 0 0 環(huán)境下,界面友好, 易于操作。從結(jié)構(gòu)上來(lái)說(shuō),工控組態(tài)軟件一般都是由系統(tǒng)開(kāi)發(fā)環(huán)境( 或稱(chēng)組態(tài)環(huán)境) 與系統(tǒng) 一2 第一章緒論 運(yùn)行環(huán)境兩大部分組成。整體結(jié)構(gòu)比較相似。系統(tǒng)開(kāi)發(fā)環(huán)境是自動(dòng)化工程設(shè)計(jì)師為實(shí)旌其 控制方案,在組態(tài)軟件的支持下進(jìn)行應(yīng)用程序的系統(tǒng)生成工作所必須依賴(lài)的工作環(huán)境,通 過(guò)建立一系列用戶(hù)數(shù)據(jù)文件,生成最終的圖形目標(biāo)應(yīng)用系統(tǒng),供系統(tǒng)運(yùn)行環(huán)境運(yùn)行時(shí)使 用。系統(tǒng)運(yùn)行環(huán)境將目標(biāo)應(yīng)用程序裝入計(jì)算機(jī)內(nèi)存并投入實(shí)時(shí)運(yùn)行。有些工控組態(tài)軟件雖 然系統(tǒng)組成上包含多種部件,但就其功能結(jié)構(gòu)來(lái)說(shuō)均可以認(rèn)為是組態(tài)環(huán)境與運(yùn)行環(huán)境的 結(jié)合。維系組態(tài)環(huán)境與運(yùn)行環(huán)境的紐帶是實(shí)時(shí)數(shù)據(jù)庫(kù)。如圖1 1 所示。 z 授動(dòng)隧穩(wěn)逢 蜜 運(yùn) = i := 穗梭掇動(dòng)蘑 流程控鍘設(shè)計(jì) 薅 對(duì)= c 敬 j 邑場(chǎng)控制 綴綏系統(tǒng)綴恣 箍行 綴衾麴線綴卷 琢 蓀 繇 撒饕彳?chē)趟瑚谔?鹱 搖 壤 報(bào)襲曲線打掰 二竣餐緩磊 庫(kù) v o 竣鋸晌應(yīng) 1 2 3m c g s ,m c g s e 圖l 1 組態(tài)環(huán)境與運(yùn)行環(huán)境關(guān)系示意圖f l 】 與本課題密切相關(guān)的是j e 京昆侖通態(tài)公司生產(chǎn)的全中文工控組態(tài)軟件m c g s 。它包括 通用版( m c g s ) 、網(wǎng)絡(luò)版( m c g s v 0 、嵌入版( m x o s e ) - - 個(gè)版本。是目前國(guó)內(nèi)嵌入系統(tǒng)中占 有市場(chǎng)份額最大的產(chǎn)品【2 1 m c g $ ( m o n i t o ra n dc o n l l o lg e n e r a t e ds y s t e m ,通用監(jiān)控系統(tǒng)) 是一套用于快速構(gòu)造和 生成計(jì)算機(jī)監(jiān)控系統(tǒng)的組態(tài)軟件,它能夠在基于m i c r o s o f t ( 各種3 2 位w i n d o w s 平臺(tái)上) 運(yùn)行,通過(guò)對(duì)現(xiàn)場(chǎng)數(shù)據(jù)的采集處理,以動(dòng)畫(huà)顯示、報(bào)警處理、流程控制、實(shí)時(shí)曲線、歷史 曲線和報(bào)表輸出等多種方式向用戶(hù)提供解決實(shí)際工程問(wèn)題的方案,它充分利用了w i n d o w s 圖形功能完備、界面一致性好、易學(xué)易用的特點(diǎn),比以往使用專(zhuān)用機(jī)開(kāi)發(fā)的工業(yè)控制系統(tǒng) 更具有通用性,在自動(dòng)化領(lǐng)域有著更廣泛的應(yīng)用【3 1 。 m c g s e ( m c g s 嵌入版) 是在m c g 8 通用版的基礎(chǔ)上開(kāi)發(fā)的,專(zhuān)門(mén)應(yīng)用于嵌入式計(jì) 算機(jī)監(jiān)控系統(tǒng)的組態(tài)軟件,m c g s 嵌入版包括組態(tài)環(huán)境和運(yùn)行環(huán)境兩部分,它的組態(tài)環(huán)境 能夠在基于m i c r o s o f t 的各種3 2 位w i n d o w s 平臺(tái)上運(yùn)行,運(yùn)行環(huán)境則是在實(shí)時(shí)多任務(wù)嵌入 式操作系統(tǒng)w i n d o w s c e 中運(yùn)行。適應(yīng)于應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等 綜合性能有嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。通過(guò)對(duì)現(xiàn)場(chǎng)數(shù)據(jù)的采集處理,以動(dòng)畫(huà)顯示、報(bào)警 處理、流程控制和報(bào)表輸出等多種方式向用戶(hù)提供解決實(shí)際工程問(wèn)題的方案,在自動(dòng)化領(lǐng) 域有著廣泛的應(yīng)用。此外m c g s 嵌入版還帶有一個(gè)模擬運(yùn)行環(huán)境,用于對(duì)組態(tài)后的工程進(jìn) 行模擬測(cè)試,方便用戶(hù)對(duì)組態(tài)過(guò)程的調(diào)試。 m c g s w ( m c g s 網(wǎng)絡(luò)版) 采用c s 模式,全面支持i e 瀏覽技術(shù),可以實(shí)現(xiàn)遠(yuǎn)程的控制 功能,并能夠提高網(wǎng)絡(luò)遠(yuǎn)程控制的安全性。 一3 第一章緒論 本課題的p l c 設(shè)備驅(qū)動(dòng)框架,是基于m c g s 三個(gè)版本的軟件所開(kāi)發(fā),可以支持m c g s 通用版、嵌入版和網(wǎng)絡(luò)版。 1 2 4m c g s 的可擴(kuò)充性與設(shè)備驅(qū)動(dòng)程序 通常,m c g s 需要與多個(gè)設(shè)備進(jìn)行通信。如圖1 2 所示。 圖1 2m c g s 與多個(gè)設(shè)備通信 在通信過(guò)程中,m c g s 核心軟件沒(méi)有直接與設(shè)備核心軟件進(jìn)行交互。而是通過(guò)設(shè)備驅(qū) 動(dòng)程序來(lái)進(jìn)行的。如圖1 3 所示。 箍回遮舔 圖1 3m c g s 與p l c 設(shè)備通信原理圖 我們所要開(kāi)發(fā)的p l c 通用性數(shù)據(jù)通信接口就是m c g s 中設(shè)備驅(qū)動(dòng)程序的通用性框架。 m c g s 的設(shè)備驅(qū)動(dòng)程序在上位機(jī)與p l c 的通信中起到了重要的作用。在監(jiān)控軟件的運(yùn)行模 式下,監(jiān)控軟件會(huì)定時(shí)或在事件激發(fā)時(shí)調(diào)用設(shè)備驅(qū)動(dòng)程序,而設(shè)備驅(qū)動(dòng)程序根據(jù)需要再調(diào) 用設(shè)備核心函數(shù)。這個(gè)設(shè)備驅(qū)動(dòng)程序表現(xiàn)形式為一個(gè)a c t i v ed l l 構(gòu)件。m c g s 通過(guò)規(guī)范的 o l e 接口將其掛接在m c g s 中,使其與m c g s 主程序在界面顯示、數(shù)據(jù)交互等方面融為 一個(gè)整體。所以也把設(shè)備驅(qū)動(dòng)程序叫做設(shè)備驅(qū)動(dòng)構(gòu)件。 目前m c g s 已自帶了許多設(shè)備驅(qū)動(dòng)程序,能夠連接的設(shè)備種類(lèi)包括:帶數(shù)字通訊接口 ( r s 2 3 2 瓜s 4 2 2 瓜s 4 8 5 、以太網(wǎng)、現(xiàn)場(chǎng)總線等) 的智能儀表,如流量計(jì)等計(jì)量設(shè)備、報(bào)警 器等安防設(shè)備、遙測(cè)傳感設(shè)備;p c 總線工業(yè)計(jì)算機(jī)設(shè)備;帶開(kāi)放接口的基于p c 的數(shù)據(jù)處 4 第一章緒論 理系統(tǒng);某些d c s 、p l c 類(lèi)型的控制設(shè)備。 雖然m c g s 已提供了很多的設(shè)備驅(qū)動(dòng)程序,但是,無(wú)論從數(shù)量還是種類(lèi)上來(lái)講,仍然 不能滿(mǎn)足全部用戶(hù)的需要。我們希望通過(guò)開(kāi)發(fā)p l c 通用性設(shè)備驅(qū)動(dòng)框架,達(dá)到縮短開(kāi)發(fā)周 期,降低開(kāi)發(fā)難度,提高數(shù)據(jù)采集速度的目的。 1 3p l c 設(shè)備在過(guò)程控制領(lǐng)域中的應(yīng)用 1 3 1p l c 的產(chǎn)生和發(fā)展 可編程控制器( p r o g r a m m a b l ec o n l r o l l a r ) 是計(jì)算機(jī)家族中的一員,是為工業(yè)控制應(yīng)用 而設(shè)計(jì)制造的。早期的可編程控制器稱(chēng)作可編程邏輯控制器( p r o g r a m m a b l el o g i c c o n t r o l l e r ) ,簡(jiǎn)稱(chēng)p l c ,它主要用來(lái)代替繼電器實(shí)現(xiàn)邏輯控制f 4 j 。隨著技術(shù)的發(fā)展,這種裝 置的功能已經(jīng)大大超過(guò)了邏輯控制的范圍,因此,今天這種裝置稱(chēng)作可編程控制器,簡(jiǎn)稱(chēng) p c 。但是為了避免與個(gè)人計(jì)算機(jī)( p e r s o n a lc o m p u t e r ) 的簡(jiǎn)稱(chēng)混淆,所以將可編程控制器 簡(jiǎn)稱(chēng)p l c 。關(guān)于p l c 的定義很多,其中,在1 9 8 7 年國(guó)際電工委員會(huì)( i n t e r n a t i o n a le l e c t r i c a l c o m m i t t e e ) 頒布的p l c 標(biāo)準(zhǔn)草案中對(duì)p l c 做了如下定義: p l c 是一種專(zhuān)門(mén)為在工業(yè)環(huán) 境下應(yīng)用而設(shè)計(jì)的數(shù)字運(yùn)算操作的電子裝置。它采用可以編制程序的存儲(chǔ)器,用來(lái)在其內(nèi) 部存儲(chǔ)執(zhí)行邏輯運(yùn)算、順序運(yùn)算、計(jì)時(shí)、計(jì)數(shù)和算術(shù)運(yùn)算等操作的指令,并能通過(guò)數(shù)字式 或模擬式的輸入和輸出,控制各種類(lèi)型的機(jī)械或生產(chǎn)過(guò)程。p l c 及其有關(guān)的外圍設(shè)備都應(yīng) 該按易于與工業(yè)控制系統(tǒng)形成一個(gè)整體,易于擴(kuò)展其功能的原則而設(shè)計(jì)。 p l c 具有通用性強(qiáng)、使用方便,適應(yīng)面廣、可靠性高、抗干擾能力強(qiáng)、編程簡(jiǎn)單等特 點(diǎn),在工業(yè)自動(dòng)化控制特別是順序控制中具有重要的地位。目前,世界上有2 0 0 多個(gè)廠家 生產(chǎn)p l c ,知名的有美國(guó)的a b 通用電氣、莫迪康公司:日本的三菱、富士、歐姆龍、松 下電工等公司;德國(guó)的西門(mén)子公司;法國(guó)的t e 施耐德公司;韓國(guó)的三星、【n 公司等。 1 3 。2p l c 的工作過(guò)程 p l c 設(shè)備的工作過(guò)程大概分以下幾個(gè)過(guò)程:首先,掃描輸入信號(hào)模塊,包括d i ,a i ; 然后計(jì)算和執(zhí)行控制指令;接下來(lái)輸出控制信號(hào)d o ,a o ,完成通訊功能。當(dāng)掃描周期結(jié) 束時(shí)重新開(kāi)始,循環(huán)執(zhí)行。 p l c 提供大量的數(shù)據(jù)寄存器,并把寄存器分成各種功能塊,包括開(kāi)關(guān)量輸入繼電器區(qū), 開(kāi)關(guān)量輸出繼電器區(qū),模擬量輸入寄存器區(qū),模擬量輸出寄存器區(qū),中間繼電器區(qū),數(shù)據(jù) 寄存器區(qū),定時(shí)器,計(jì)數(shù)器等功能寄存器區(qū)。所有的控制信息均放在以上的寄存器區(qū),p c 機(jī)通過(guò)控制要求修改這些寄存器值,就實(shí)現(xiàn)了控制p l c 運(yùn)行的目的。 5 一 第一章緒論 1 3 3p l c 的通訊方式 p l c 具有通信聯(lián)網(wǎng)的功能,它使p i x 與p l c 之間、p l c 與上位計(jì)算機(jī)以及其他智能設(shè) 備之間能夠交換信息,形成一個(gè)統(tǒng)一的整體,實(shí)現(xiàn)分散集中控制。多數(shù)p l c 具有r s 一2 3 2 接口,還有一些內(nèi)置有支持各自通信協(xié)議的接口。p l c 的通信目前還未實(shí)現(xiàn)互操作性,i e c 規(guī)定了多種現(xiàn)場(chǎng)總線標(biāo)準(zhǔn),p l c 各廠家均有采用。如圖1 4 所示。 生產(chǎn)商產(chǎn)品型號(hào)通訊方式 c p m l r s 2 3 2 r s 4 2 2 0 m r o n r s 2 3 2 r s 4 2 2 、 c q m lc o i i i i p o i ;u s s 、 c o m p o b u s o c 1 0 0 0 h c 2 0 0 0 h r s 2 3 2 r s 4 2 2 、 c 2 0 0 ha c o n t r o l l e r l i n k 、s y s m a cl i n i ( 、s y s n e t 、 c v m c v e t h e r n e t 、c o m p o b u s s 、 c s l c o m p o b u s d c 2 0 h - c 6 0 h r s 2 3 2 r s 4 2 2 f x 系列 r s 2 3 2 r s 4 2 2 m i s t u b i s h r s 2 3 2 r s 4 2 2 u s b 、 a 系列 q 系列 p r o f i b u s 、m o d b u s 、 m e l s e c n e t l o 、c c l i n k 、e t h e r n e t c o n t r o l l o g i x r s 2 3 2 r s 4 2 2 、 a 1l e n b r a d l e yp l c 5 s l c 5 0 0 d h + d h 4 8 5 、c o n t r o l n e t 、e t h e r n e t 、d e v i c e n e t f p o f p l r s 2 3 2 r s 4 2 2 、 松下 f p 3 f p i o s h e t h e r n e t 、壯w n e t 、c _ n e t u 1 9 0 一3 0r s - 2 3 2 4 2 2 、e t h e r n e t 、g e n i u sb u s 、p r o f i b u s 、 g ef a n u c l m 9 0 7 0 w o r l d f i p 、i n t e r b u s s n a n or s 4 8 5 s c h n e i d e r t s x - m i c r o r s 2 3 2 r s 4 2 2 t s x - p r e m i u m e t h e r n e t 、m o d b u s p l u s 、r s 2 3 2 ( m o d b u s ) 、 t s x - q u a n t u m t s x m o m e n t u m w o r l d f i p 、i n t e r b u s 、p r o f i b u s s 5p r o f i b u s s i e m e n s $ 7 - 2 0 0p p i s 7 3 0 0 、$ 7 - 4 0 0m p i 、p r o f i b u s 、e t h e r n e t 6 第一章緒論 1 4 課題目標(biāo)和主要研究?jī)?nèi)容 1 4 1 課題的總體目標(biāo) 本課題的目標(biāo)是,實(shí)現(xiàn)一個(gè)基于p l c 設(shè)備與上位監(jiān)控系統(tǒng)m c g s 間的通用性高效設(shè)備 驅(qū)動(dòng)框架,并實(shí)現(xiàn)示范性的實(shí)例。此模塊需要考慮在有限帶寬情況下的多種情況,能夠具 有良好的通用性,降低應(yīng)用開(kāi)發(fā)的難度。并且,對(duì)于大數(shù)據(jù)量傳輸、采集點(diǎn)分散的情況, 提供較好的數(shù)據(jù)采集方式,提高了系統(tǒng)效率和信道利用率。最終能夠在實(shí)際生產(chǎn)中投入使 用,提高生產(chǎn)效率,獲得可觀的經(jīng)濟(jì)效益。 1 4 2 研究的主要內(nèi)容 本課題主要的研究?jī)?nèi)容,基于如圖1 5 所示的p l c 設(shè)備的通用性數(shù)據(jù)通信接口的總體 設(shè)計(jì)結(jié)構(gòu)。 【飄。e 設(shè)備驅(qū)動(dòng)與m c g s 的接玨 l l l jl li l l ll l lp l c 界面模塊p l c 基本數(shù)處理 i國(guó)e v p a g e )援繳d e v b a s ) l 。 l i 。l l l l l l l 毒 i ,通道數(shù)據(jù)讀寫(xiě)模塊 。軸姆 。+ 1 i l p 燃鹺件設(shè)備 圖1 5p l c 設(shè)備驅(qū)動(dòng)框架程序結(jié)構(gòu) 下面就本課題所做工作的主要內(nèi)容,進(jìn)行一下簡(jiǎn)要說(shuō)明: ( 1 ) 分析p l c 設(shè)備通信的需求。分析和總結(jié)了現(xiàn)有通信程序中存在的問(wèn)題。給出總體 的實(shí)現(xiàn)方法并給出p l c 通信框架的功能規(guī)格說(shuō)明。 ( 2 ) 框架的設(shè)計(jì)與實(shí)現(xiàn): 一7 - 第一章緒論 類(lèi)的設(shè)計(jì)與接口的劃分; 實(shí)現(xiàn)框架與m c g s 的接口; 課題中對(duì)與m c g s 通信的1 5 個(gè)接口函數(shù)的實(shí)現(xiàn)。 實(shí)現(xiàn)框架的各項(xiàng)功能 包括數(shù)據(jù)的處理,數(shù)據(jù)的讀寫(xiě),界面的設(shè)計(jì),對(duì)通信協(xié)議的封裝,關(guān)鍵變量的設(shè) 計(jì),以及數(shù)據(jù)采集,設(shè)備命令等功能。 對(duì)有限信道下的數(shù)據(jù)采集問(wèn)題提出并實(shí)現(xiàn)若干優(yōu)化。 主要有三種采集模式的劃分,動(dòng)態(tài)分塊算法等。 記錄設(shè)備日志信息的實(shí)現(xiàn)。 主要是驅(qū)動(dòng)運(yùn)行過(guò)程中,1 2 個(gè)運(yùn)行狀態(tài)參數(shù)以及4 k 的通訊日志。這些是p l c 驅(qū) 動(dòng)運(yùn)行時(shí)的狀態(tài)信息,可以幫助驅(qū)動(dòng)調(diào)試人員或現(xiàn)場(chǎng)維護(hù)人員發(fā)現(xiàn)和解決問(wèn)題。 ( 4 ) 針對(duì)此接口給出示范性開(kāi)發(fā)實(shí)例。為一般的p l c 設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)提供設(shè)計(jì) 思路與實(shí)現(xiàn)方法。 ( 5 ) 對(duì)p l c 設(shè)備驅(qū)動(dòng)框架進(jìn)行測(cè)試; 本論文的章節(jié)安排如下; 第二章,提出了p l c 通用性數(shù)據(jù)通信接口的總體研究思路:第三章,p l c 通用性數(shù)據(jù) 通信接口的具體設(shè)計(jì)與實(shí)現(xiàn);第五章,提出并實(shí)現(xiàn)了p l c 框架開(kāi)發(fā)的范例,第五章,提出 并實(shí)現(xiàn)了p l c 通用性框架的測(cè)試過(guò)程;第六章,針對(duì)本文的工作進(jìn)行了總結(jié),并對(duì)未來(lái)的 發(fā)展做出了期望。 一8 第二章p l c 設(shè)備驅(qū)動(dòng)框架的總體設(shè)計(jì) 第二章p l c 設(shè)備驅(qū)動(dòng)框架的總體設(shè)計(jì) 本章首先分析和總結(jié)了目前通信及設(shè)備驅(qū)動(dòng)開(kāi)發(fā)中存在的不足和希望改進(jìn)之處,然后 提出了本課題的總體設(shè)計(jì)思路,并給出p l c 設(shè)備與組態(tài)軟件間通信接口的功能、性能等各 方面的規(guī)格描述。 2 1 對(duì)現(xiàn)有設(shè)備驅(qū)動(dòng)程序的分析 在昆侖通態(tài)進(jìn)行課題調(diào)研的期間,作者對(duì)目前設(shè)備驅(qū)動(dòng)存在的問(wèn)題進(jìn)行了調(diào)查、分析 和總結(jié)。調(diào)查主要是通過(guò)三個(gè)渠道。一是向客戶(hù)發(fā)放并回收調(diào)查問(wèn)卷;二是通過(guò)直接的用 戶(hù)反饋;三是調(diào)查總結(jié)技術(shù)部門(mén)驅(qū)動(dòng)開(kāi)發(fā)中出現(xiàn)的問(wèn)題。 目前設(shè)備驅(qū)動(dòng)開(kāi)發(fā)中存在的一些問(wèn)題主要體現(xiàn)在兩大類(lèi),一類(lèi)是驅(qū)動(dòng)開(kāi)發(fā)過(guò)程中存在 的問(wèn)題,另一類(lèi)是使用開(kāi)發(fā)出的p l c 設(shè)備驅(qū)動(dòng)程序與監(jiān)控系統(tǒng)問(wèn)通信存在的。具體如下: 一、組態(tài)軟件如m c g s 在出廠時(shí),會(huì)自帶一部份p l c 設(shè)備的驅(qū)動(dòng)程序。但是支持的 數(shù)量畢竟是有限的。因此需要開(kāi)發(fā)人員不斷開(kāi)發(fā)新的p l c 驅(qū)動(dòng)程序,或是自控系統(tǒng)集成工 程師根據(jù)m c g s 提供的接口自己動(dòng)手進(jìn)行編程。這樣就出現(xiàn)了許多問(wèn)題。隨著監(jiān)控系統(tǒng)普 及程度的提高,針對(duì)p l c 設(shè)備驅(qū)動(dòng)的編程量和出錯(cuò)率到了令人很不滿(mǎn)意的程度。p l c 通信 比較復(fù)雜,開(kāi)發(fā)需要相對(duì)長(zhǎng)的時(shí)間。一方面,由于各編程人員的水平參差不齊,許多軟件 的功能和可靠性都存在問(wèn)題;另一方面,由于每個(gè)編程人員的編程習(xí)慣和編程思路都不同。 程序可維護(hù)性和重用性比較差。 二、大部分開(kāi)發(fā)者僅滿(mǎn)足于完成驅(qū)動(dòng)的協(xié)議解析部分,即最基本的通信功能。而沒(méi)有 對(duì)數(shù)據(jù)緩沖,功能覆蓋,性能調(diào)度等一系列問(wèn)題投以足夠的重視。這樣造成p l c 驅(qū)動(dòng)程序 的通信質(zhì)量不盡如人意。但是要使每一位開(kāi)發(fā)者都能具備非常高的開(kāi)發(fā)能力,也是不切實(shí) 際的。 三、p l c 類(lèi)設(shè)備起到承上啟下的作用。它一方面連接為數(shù)眾多的下位設(shè)備如傳感器 等,另一方面需要與組態(tài)軟件進(jìn)行通訊。由于連接的下位設(shè)備很多,因此p l c 需要處理非 常多的通道。麗信道的物理帶寬是有限的,這造成了通信中的瓶頸。在目前的驅(qū)動(dòng)開(kāi)發(fā)中, 存在著采集效率低,信道利用率的問(wèn)題。 四、在已有的驅(qū)動(dòng)中,一直沒(méi)有記錄設(shè)備驅(qū)動(dòng)的內(nèi)部工作狀態(tài)。因此在控制現(xiàn)場(chǎng),一 旦通信出現(xiàn)問(wèn)題,查找驅(qū)動(dòng)出錯(cuò)原因非常困難,從而造成了經(jīng)濟(jì)損失和系統(tǒng)地維護(hù)難度。 尤其是在一些重要的應(yīng)用現(xiàn)場(chǎng),如造幣廠,發(fā)電站等,一旦出現(xiàn)問(wèn)題,造成的經(jīng)濟(jì)損失非 常巨大。 五、目前,要想取得較好的通訊效率,在實(shí)際使用中,需要最終用戶(hù)進(jìn)行參數(shù)配置, 如設(shè)置最小采集時(shí)聞等。本意是希望可以通過(guò)人工配置得到最優(yōu)的通信結(jié)果。但絕大部分 的最終用戶(hù),缺乏相關(guān)的專(zhuān)業(yè)知識(shí)。對(duì)他們來(lái)說(shuō)這是一件很困難的工作。因此降低使用難 第二章p l c 設(shè)備驅(qū)動(dòng)框架的總體設(shè)計(jì) 度,是非常必要的。 通過(guò)我們的總結(jié)發(fā)現(xiàn),用現(xiàn)有開(kāi)發(fā)方式開(kāi)發(fā)出的設(shè)備驅(qū)動(dòng),無(wú)論在采集速度、回寫(xiě)速 度、穩(wěn)定性和支持p l c 種類(lèi)各項(xiàng)評(píng)價(jià)設(shè)備驅(qū)動(dòng)的指標(biāo)上,都不夠理想。 總的來(lái)看,設(shè)備驅(qū)動(dòng)的不足已經(jīng)嚴(yán)重影響了組態(tài)軟件的實(shí)施、推廣和利潤(rùn),影響了各 現(xiàn)場(chǎng)自動(dòng)監(jiān)控系統(tǒng)的實(shí)施,造成了人力、物力、財(cái)力的浪費(fèi)。解決此問(wèn)題,成為一項(xiàng)迫在 眉睫且很有意義的工作。 2 2p l c 設(shè)備通用性數(shù)據(jù)通信接口的總體設(shè)計(jì)思路 通過(guò)上文的分析,我們已了解到要想提高數(shù)據(jù)通信的效率,降低設(shè)備驅(qū)動(dòng)開(kāi)發(fā)的難度, 開(kāi)發(fā)p l c 設(shè)備的通用性數(shù)據(jù)通信接口是非常必要的。本節(jié)中將給出p l c 通用性數(shù)據(jù)通信 接口總體的設(shè)計(jì)思路。 2 2 1 開(kāi)發(fā)方法 在本課題開(kāi)發(fā)過(guò)程中,應(yīng)用了研究生課程軟件開(kāi)發(fā)與程序設(shè)計(jì)方法學(xué)中的部分理 論與方法。如需求分析階段使用用例明確需求、u m l 建模嘲、黑盒測(cè)試和白盒測(cè)試的理 論與方法等【6 1 。 生命周期采用瀑布模型。開(kāi)發(fā)經(jīng)歷階段分為需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、 測(cè)試與實(shí)例開(kāi)發(fā)。并針對(duì)開(kāi)發(fā)出的實(shí)例做測(cè)試。 需求分析階段的主要工作是調(diào)查需求,確定驅(qū)動(dòng)框架的功能規(guī)格說(shuō)明,要作到明確、無(wú) 歧義。不涉及具體實(shí)現(xiàn)方法。在確定軟件開(kāi)發(fā)可行的情況下,對(duì)軟件需要實(shí)現(xiàn)的各個(gè)功能 進(jìn)行分析。概要設(shè)計(jì)階段的主要工作是確定技術(shù)路線,給出整體的解決方案,并指出關(guān)鍵 技術(shù)難點(diǎn)等。詳細(xì)設(shè)計(jì)階段是對(duì)概要設(shè)計(jì)的迸一步細(xì)化,要完成具體細(xì)節(jié)的設(shè)計(jì)。編碼階 段是根據(jù)詳細(xì)設(shè)計(jì)的要求進(jìn)行編碼。在軟件設(shè)計(jì)完成后是測(cè)試階段。接下來(lái)是實(shí)例開(kāi)發(fā), 在驅(qū)動(dòng)框架用戶(hù)的角度上進(jìn)行實(shí)例開(kāi)發(fā)。最后是對(duì)比測(cè)試,設(shè)計(jì)測(cè)試用例測(cè)試接口的效率, 驗(yàn)證課題是否達(dá)到目標(biāo)。 2 2 2 開(kāi)發(fā)環(huán)境 任何監(jiān)控系統(tǒng)不可能脫離執(zhí)行設(shè)備而單獨(dú)存在,設(shè)備驅(qū)動(dòng)開(kāi)發(fā)也必須依托一定的硬件 環(huán)境,最終開(kāi)發(fā)的驅(qū)動(dòng)構(gòu)件才能正確的驅(qū)動(dòng)設(shè)備工作。 硬件環(huán)境:包括p c 機(jī)一臺(tái),通訊設(shè)備( 若干p l c ,主要有西門(mén)子2 0 0 系列p l c 、松 下f p 系列p l c 等) 及通訊所需的通訊電纜。比如:設(shè)備只支持r s 4 8 5 ,p c 機(jī)只能r s 2 3 2 通訊,需要r s 2 3 2 4 8 5 的模塊。 軟件環(huán)境:操作系統(tǒng)w i n 2 0 0 0 + s p 4 ( 以上補(bǔ)丁) , w m d o w sx p 。m c g s 和m c g s e 組 第二章p l c 設(shè)備驅(qū)動(dòng)框架的總體設(shè)計(jì) 態(tài)環(huán)境、運(yùn)行環(huán)境的d e b u g 版本,用于設(shè)備驅(qū)動(dòng)調(diào)試。 開(kāi)發(fā)工具:使用v c + + 6 0 和e v c a 0 進(jìn)行開(kāi)發(fā)。v c 6 0 0 + s p 5 ,e v c a 0 0 + s p 2 。 其中,使用v c + + 6 0 開(kāi)發(fā)的驅(qū)動(dòng)框架適用于m c g s 通用版和m c g s 網(wǎng)絡(luò)版。適用于 m c g s 嵌入版的驅(qū)動(dòng)框架需要使用e v c 4 0 進(jìn)行編譯。 開(kāi)發(fā)出的驅(qū)動(dòng)框架由一系列頭文件、庫(kù)文件和一個(gè)樣例驅(qū)動(dòng)、一個(gè)v c ( e v c ) 的驅(qū) 動(dòng)模板工程組成。 2 2 3 框架規(guī)格說(shuō)明 p l c 設(shè)備驅(qū)動(dòng)框架的目標(biāo)用戶(hù)有兩類(lèi)。對(duì)于開(kāi)發(fā)人員,希望使用p l c 設(shè)備驅(qū)動(dòng)框架可 以降低開(kāi)發(fā)難度,提高通信效率。對(duì)于最終用戶(hù),希望使用p l c 設(shè)備驅(qū)動(dòng)框架基礎(chǔ)上開(kāi)發(fā) 的實(shí)例,可以提高可用性,提高通信效率。因此p l c 設(shè)備驅(qū)動(dòng)框架主要的功能規(guī)格說(shuō)明如 下。 通用性設(shè)計(jì) 框架將p l c 設(shè)備驅(qū)動(dòng)的大部分功能封裝,在此基礎(chǔ)上,開(kāi)發(fā)者只關(guān)注于協(xié)議的分析和 實(shí)現(xiàn),只需要極少的時(shí)問(wèn)和精力就可以開(kāi)發(fā)出新的不同協(xié)議的p l c 驅(qū)動(dòng)。簡(jiǎn)化編寫(xiě)驅(qū)動(dòng)的 復(fù)雜度,快速高效率編寫(xiě)p l c 驅(qū)動(dòng)程序。這為日后開(kāi)發(fā)其他設(shè)備的通用化設(shè)備驅(qū)動(dòng)具有良 好的借鑒意義。 以下功能驅(qū)動(dòng)開(kāi)發(fā)人員將不再關(guān)心: 與m c g s 的交互;判斷通道優(yōu)先級(jí),判斷通道是否需要采集;通道的分塊控制;常用 設(shè)備命令的實(shí)現(xiàn)。 在驅(qū)動(dòng)框架基礎(chǔ)上開(kāi)發(fā)需要關(guān)心的內(nèi)容: 定義設(shè)備本身的屬性;定義設(shè)備的寄存器類(lèi),實(shí)現(xiàn)讀寫(xiě)的打包和解包過(guò)程。 封裝通信過(guò)程 框架提供了一次采集( 或下寫(xiě)) 過(guò)程中,通訊參數(shù)的配置途徑和通訊次數(shù)的控制途徑 ( 某些驅(qū)動(dòng)完成一次采集需要一次以上的發(fā)收過(guò)程,如西門(mén)子$ 7 2 0 0 ) 。最多可提供一次采 集( 或下寫(xiě)) 過(guò)程進(jìn)行9 次發(fā)收過(guò)程。 完成通道優(yōu)先級(jí)控制。在框架中實(shí)現(xiàn)保證了采集按優(yōu)先級(jí)正常進(jìn)行,驅(qū)動(dòng)開(kāi)發(fā)人員不 用關(guān)心優(yōu)先級(jí),降低開(kāi)發(fā)難度。框架完全封裝了采集和寫(xiě)設(shè)備時(shí)的通訊過(guò)程,驅(qū)動(dòng)開(kāi)發(fā)中 不需調(diào)用通訊相關(guān)函數(shù),發(fā)送接收過(guò)程自動(dòng)完成。對(duì)有限信道下的通訊給出多種優(yōu)化方式, 第二章p l c 設(shè)備驅(qū)動(dòng)框架的總體設(shè)計(jì) 包括三種采集模式的劃分,動(dòng)態(tài)分塊算法等。提高數(shù)據(jù)通訊效率,保證p l c 設(shè)備與監(jiān)控系 統(tǒng)間的高效、穩(wěn)定、快速的數(shù)據(jù)交換。 常用功能設(shè)計(jì) 采集功能:通過(guò)三種不同的采集方式實(shí)現(xiàn)。提高采集效率和信道利用率。 讀寫(xiě)設(shè)備命令功能:將常用設(shè)備命令集成至框架中。如沒(méi)有特殊的要求,驅(qū)動(dòng)開(kāi)發(fā)時(shí) 將不需要專(zhuān)門(mén)為設(shè)備編寫(xiě)設(shè)備命令的實(shí)現(xiàn)代碼。常用的有讀命令,寫(xiě)命令等。 讀命令r e a d ( 寄存器名,寄存器地址,數(shù)據(jù)類(lèi)型描述,數(shù)據(jù)變量名) 。從指定寄存器的 制定地址中,按照指定數(shù)據(jù)類(lèi)型讀取一個(gè)數(shù)據(jù),讀出來(lái)的數(shù)據(jù)放置到數(shù)據(jù)變量中。 寫(xiě)命令w r i t e ( 寄存器名,寄存器地址,數(shù)據(jù)類(lèi)型描述,數(shù)據(jù)值) 。向指定寄存器地址中, 按照指定數(shù)據(jù)類(lèi)型,寫(xiě)入指定數(shù)據(jù)值。 記錄設(shè)備信息功能 提供現(xiàn)場(chǎng)故障及時(shí)發(fā)現(xiàn),診斷和處理手段。應(yīng)記錄設(shè)備運(yùn)行狀態(tài)等重要信息??蚣苡?錄驅(qū)動(dòng)運(yùn)行過(guò)程中,1 2 個(gè)運(yùn)行狀態(tài)參數(shù)以及4 k 的通訊日志。這些信息包含了p l c 驅(qū)動(dòng)運(yùn) 行時(shí)的大部分狀態(tài),可以幫助驅(qū)動(dòng)調(diào)試人員或現(xiàn)場(chǎng)維護(hù)人員發(fā)現(xiàn)和解決問(wèn)題。要查看日志 信息,只需要在運(yùn)行窗1 3 空白處( 無(wú)構(gòu)件的地方) 按下鼠標(biāo)1 0 秒,即可彈出驅(qū)動(dòng)日志信 息窗口,通過(guò)導(dǎo)出功能,還可以將這些信息導(dǎo)出到文本文件中。 其他方面的目標(biāo) 易用性: 提供一個(gè)統(tǒng)一,友好的設(shè)備組態(tài)管理界面,引導(dǎo)用戶(hù)能自然方便的組態(tài)出最優(yōu)化采集 方式。降低最終用戶(hù)使用監(jiān)控系統(tǒng)的難度??蚣芤酝ǖ浪⑿聲r(shí)間來(lái)控制采集優(yōu)先級(jí),用戶(hù) 組態(tài)容易理解。 兼容性: 需要兼容已有的m c g s 驅(qū)動(dòng)接口。 采集速度: 1 ) 通道采集更新時(shí)間( 在窗口中顯示兩次更新的聞隔) :密集采集模式下,最壞情況是 所有通道一次采集時(shí)間或設(shè)定采集周期的最大值+ 一個(gè)動(dòng)畫(huà)刷新周期。按需要采集模 式下,最壞情況:所有通道一次采集的總時(shí)間+ 一個(gè)動(dòng)畫(huà)刷新周期。最好的情況,一 第二章p l c 設(shè)備驅(qū)動(dòng)框架的總體設(shè)計(jì) 次采集的時(shí)問(wèn)。定時(shí)采集模式下,最壞情況,m a x ( 所有通道一次采集時(shí)間,指定的刷 新時(shí)間卜一個(gè)動(dòng)畫(huà)刷新周期 2 ) 通道寫(xiě)更新時(shí)間( 發(fā)生通道寫(xiě)命令到執(zhí)行成功的時(shí)間間隔) :最壞情況,次通道采 集時(shí)問(wèn)+ 一次向下寫(xiě)的時(shí)間。最好情況,一次向下寫(xiě)的時(shí)阿。 資源占用率: 1 ) c p u 占用率:密集采集模式下:線程會(huì)始終處于忙碌狀態(tài),只有通訊過(guò)程中進(jìn)行通訊 等待的時(shí)問(wèn)可以切換給其它線程使用,所以對(duì)動(dòng)畫(huà)顯示等其它低優(yōu)先級(jí)有較大影響。 按需要采集模式下,只在需要時(shí)進(jìn)行一次所有通道采集,資源占用率低。定時(shí)采集模 式,跟目前的采集相比占用率稍高一些。 2 ) 內(nèi)存占用率:一個(gè)數(shù)據(jù)緩沖區(qū),大小一般不超過(guò)4 k 。 2 3 本章小結(jié) 本章主要提出了p l c 通信框架的總體設(shè)計(jì)思路。在本章的開(kāi)始,分析并總結(jié)目前通信 及設(shè)備驅(qū)動(dòng)開(kāi)發(fā)中存在的不足和希望達(dá)成的目標(biāo),然后提出了總體設(shè)計(jì)思路,并給出p l c 設(shè)備驅(qū)動(dòng)框架的功能、性能各方面的規(guī)格描述。 第三章p l c 設(shè)需驅(qū)動(dòng)框架的實(shí)現(xiàn) 第三章p l c 設(shè)備驅(qū)動(dòng)框架的實(shí)現(xiàn) 本章將詳細(xì)講解本課題p l c 設(shè)備驅(qū)動(dòng)框架的設(shè)計(jì)與實(shí)現(xiàn)。概述部分給出程序總體結(jié)構(gòu) 和主要數(shù)據(jù)結(jié)構(gòu)、類(lèi)的設(shè)計(jì)。然后依次詳細(xì)說(shuō)明接口函數(shù)和主要功能的實(shí)現(xiàn)。 3 1 概述 3 1 1 程序結(jié)構(gòu) 我們將整個(gè)p l c 設(shè)備通訊驅(qū)動(dòng)框架的結(jié)構(gòu)主要設(shè)計(jì)為四部分。如圖3 1 所示。 i 飄疋設(shè)備驅(qū)動(dòng)與m c g s 豹接口 i t i l ll li l l 毒 lp l c 界面模塊lp l c 基本數(shù)處理 i ( d e v p a g e ) 穰j 敷c d e v b a s ) l jl i 。 jl ll i i 善 i 通道數(shù)據(jù)讀寫(xiě)模塊 i d e v i j r i p 蜓硬件設(shè)備 圖3 1 程序模塊劃分 第一部分是提供給m c g s 的1 5 個(gè)接口函數(shù)。這1 5 個(gè)函數(shù)的作用就是使組態(tài)軟件能夠 認(rèn)出本程序,并且利用程序讀出的主站和從設(shè)備的參數(shù)構(gòu)造設(shè)備組態(tài)的對(duì)話(huà)框。這些函數(shù) 的名稱(chēng)、參數(shù)是由m c g s 主程序確定的,具體的函數(shù)的實(shí)現(xiàn)需要自己實(shí)現(xiàn)。這部分的實(shí)現(xiàn) 將在3 2 節(jié)中詳細(xì)講解。 第二部分是界面模塊。包括與生成設(shè)備組態(tài)對(duì)話(huà)框有關(guān)的c d e v p a g e ,c d e v p a g a d d , c _ m c g s g r i d , c l n f o p a g e 四個(gè)類(lèi)。c d e v p a g e 類(lèi)和c d e v p a g a d d 類(lèi)是通過(guò)添加對(duì)話(huà)框控件, 第三章p l c 設(shè)備驅(qū)動(dòng)框架的實(shí)現(xiàn) 添加對(duì)應(yīng)的函數(shù)的方法實(shí)現(xiàn)的,比較簡(jiǎn)單。c d e v p a g e 類(lèi)用來(lái)構(gòu)建設(shè)備屬性對(duì)話(huà)框, c d e v p a g a d d 類(lèi)用來(lái)構(gòu)建添加參數(shù)設(shè)置對(duì)話(huà)框。另外,c l n f o p a g e 用于構(gòu)建實(shí)時(shí)信息對(duì)話(huà) 框。c _ m c g s g r i d 類(lèi)中的函數(shù)的作用僅限于在c d e v p a g e 類(lèi)里對(duì)話(huà)框控件中用到的 m c g s e d i t g r i d 的a c t i v e x 控件中使用,這個(gè)類(lèi)也是通過(guò)調(diào)用m c g s e 提供的自動(dòng)化方法實(shí) 現(xiàn)的。 第三部分是對(duì)數(shù)據(jù)進(jìn)行處理的c o w n e r o b j c c t , c o w n e r a r c h i v e , c d e v b a s 三個(gè)類(lèi)。 c o w n e r o b j e c t 類(lèi)是為了流化而設(shè)計(jì),作為各個(gè)需要流化的類(lèi)的基類(lèi)。c o w n e r a r c h i v e 類(lèi)的 功能就是對(duì)數(shù)據(jù)的流化c d e v b a s 類(lèi)中主要有2 5 個(gè)成員函數(shù),實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)的采集 ( m l c o l l e e t d e v d a t a 0 ) 、數(shù)據(jù)的解析( m t e x p l a i n c o m m b t y e d a t a 0 ) 、數(shù)據(jù)的轉(zhuǎn)化 ( s v r d o u b l e 2 s t r 0 ,s v r s 缸2 d o u b l e o , s v r h b y t e 2 s t r 0 ,s v r s 血2 h b y t e ) , d e vd a t a 結(jié)構(gòu)的初始化 ( m f c h e c k d e v d a t a l n i t o ) ,d e v b l o e k 和d e v r o w 的初始化( m f l n i t b l o e k a n d r o w 0 ) 等針對(duì)開(kāi)發(fā) 人員設(shè)計(jì)的接口。 第四部分是通道數(shù)據(jù)讀寫(xiě)模塊。包括c d c v s c r v e r ,c d e v b l o e k , c d e v r o w , c d e v t a b l e 四個(gè)類(lèi)。c d e v s e r v e r 類(lèi)主要含有1 7 個(gè)服務(wù)型成員函數(shù),完成對(duì)串口的讀寫(xiě)操作,對(duì)組態(tài)后 的參數(shù)進(jìn)行存儲(chǔ)等操作。并且還含有一些工具函數(shù)。c d c v b l o c k 中主要實(shí)現(xiàn)分塊的操作。 c d e v r o w 和c d e v t a b l e 類(lèi)對(duì)通訊的數(shù)據(jù)進(jìn)行組織,并且其中一些函數(shù)的作用是控制在 c d e v p a g e 類(lèi)和c d e v p a g a d d 類(lèi)里面進(jìn)行屬性值以及屬性名稱(chēng)、數(shù)目等參數(shù)的實(shí)現(xiàn)。 另外還有程序和m c g s e 通過(guò)的自動(dòng)化接口進(jìn)行通信的兩個(gè)自動(dòng)化客戶(hù)端類(lèi): i d a t a c e n t r e 和i m c g s s e t ,這兩個(gè)類(lèi)是通過(guò)由自動(dòng)化客戶(hù)端的類(lèi)c o l e d i s p a t c h d r i v e r 派生得 到的,能夠利用m c g s e 提供的自動(dòng)化服務(wù)器端的方法和屬性。其中,i m c g s s e t 用于組態(tài) 軟件的組態(tài)環(huán)境,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 塑鋼圍欄施工方案
- 2024高考化學(xué)二輪復(fù)習(xí)題型專(zhuān)練五常見(jiàn)有機(jī)化合物含解析
- 共同租地合同范例
- 公司銷(xiāo)售兼職合同范例
- 2025年環(huán)氧丙烷項(xiàng)目建議書(shū)
- 凈水設(shè)備定銷(xiāo)合同范例
- 養(yǎng)豬用地合同范例
- 環(huán)氧樹(shù)脂管道施工方案
- 鄉(xiāng)村土地租賃合同范例
- 涂料粉刷施工方案
- 新蘇教版科學(xué)六年級(jí)下冊(cè)全冊(cè)教案(含反思)
- 觸電事故應(yīng)急處置卡
- 國(guó)際貿(mào)易運(yùn)輸方式課件
- 南陽(yáng)理工學(xué)院畢業(yè)論文格式規(guī)范
- SolidWorks入門(mén)教程(很全面)PPT課件
- 日語(yǔ)五十音圖(清晰打印版)92905
- 新舊會(huì)計(jì)科目對(duì)照表
- 2019寧波地產(chǎn)品牌半程馬拉松 (海景風(fēng)情 健康寧波主題)活動(dòng)策劃方案-41P
- 醫(yī)用耗材超常預(yù)警和評(píng)價(jià)制度
- 性格色彩培訓(xùn)-團(tuán)隊(duì)培訓(xùn)必備
- 拆遷安置房小區(qū)物業(yè)管理的問(wèn)題與對(duì)策
評(píng)論
0/150
提交評(píng)論