【據(jù)《自動(dòng)化信息》訊】
方案綜述:
1、簡介
自律分散系統(tǒng)(Autonomous Decentralized System,簡稱ADS)是近年來才逐漸發(fā)展起來
的一個(gè)新的系統(tǒng)概念。它突破了原來傳統(tǒng)集中式分布式的C/S模型,建立了全新的系統(tǒng)模型。在
這一系統(tǒng)中所有的單元(子系統(tǒng))都是獨(dú)立平等的,它們之間不存在任何隸屬關(guān)系。各個(gè)單元
都能獨(dú)立完成各自的任務(wù)而不受其他單元的干預(yù)。同時(shí)各個(gè)單元之間也能協(xié)調(diào)工作來實(shí)現(xiàn)整個(gè)系
統(tǒng)的運(yùn)行。這就是自律分散系統(tǒng)的兩大特性:自律可控性和自律可協(xié)調(diào)性。實(shí)現(xiàn)這一系統(tǒng)模型的
關(guān)鍵概念是數(shù)據(jù)域和廣播的通訊方式。系統(tǒng)中的每個(gè)單元都主動(dòng)地向數(shù)據(jù)域廣播其內(nèi)部處理信息
同時(shí)根據(jù)各自的需求從數(shù)據(jù)域中接收信息。各個(gè)子系統(tǒng)都只同數(shù)據(jù)域打交道,它們相互之間沒有
直接的糯合關(guān)系。這就較好地保證了在線擴(kuò)展、在線維護(hù)及容錯(cuò)。
現(xiàn)代工業(yè)的發(fā)展給監(jiān)控系統(tǒng)提出了新的要求。由于生產(chǎn)規(guī)模的不斷擴(kuò)大發(fā)展,因而對(duì)相應(yīng)的
監(jiān)控系統(tǒng)的設(shè)計(jì)不可能一次完成,而要隨著生產(chǎn)發(fā)展變化不斷進(jìn)行修改、完善和擴(kuò)充。但是現(xiàn)有
的監(jiān)控系統(tǒng)是不可能允許在其正常運(yùn)行的過程中進(jìn)行逐步組建,也不能允許在部分系統(tǒng)出現(xiàn)故障
或處于維修階段的同時(shí)仍然運(yùn)作。因此一旦一個(gè)監(jiān)控系統(tǒng)設(shè)計(jì)組建完畢后就很難改進(jìn),即使要修
改,也要終止整個(gè)系統(tǒng)的運(yùn)行,給生產(chǎn)廠家造成了人力物力以及資源的浪費(fèi),還影響了正常生產(chǎn),
造成經(jīng)濟(jì)損失。這必將越來越嚴(yán)重地制約生產(chǎn)發(fā)展。面對(duì)如此現(xiàn)狀,用ADS系統(tǒng)概念來設(shè)計(jì)工業(yè)監(jiān)
控系統(tǒng)能較好地實(shí)現(xiàn)在線擴(kuò)展、在線維護(hù)和容錯(cuò),滿足了新的生產(chǎn)要求。
2、自律分散系統(tǒng)的概念
定義自律分散系統(tǒng)的兩個(gè)前提是:
。1) 系統(tǒng)中的故障是正,F(xiàn)象。
。2)系統(tǒng)是由子系統(tǒng)組成。
首先必須存在子系統(tǒng)。整體系統(tǒng)是不能事先定義的,只能定義為子系統(tǒng)的集成。其中某些子
系統(tǒng)可能處于故障狀態(tài)、正在進(jìn)行改進(jìn)或維修。因此,若一個(gè)系統(tǒng)滿足以下兩點(diǎn)要求則可稱之為
自律分散系統(tǒng):
(1)自律可控性。即系統(tǒng)中有任何子系統(tǒng)出現(xiàn)故障,正在維修或剛剛加入,這都不能影響其
他子系統(tǒng)的自我管理及功能的運(yùn)行。
(2)自律可協(xié)調(diào)性。即系統(tǒng)中有任何子系統(tǒng)出現(xiàn)故障,正在維修或剛剛加入,其他子系統(tǒng)之
間能夠協(xié)調(diào)各自的任務(wù)并以協(xié)作方式運(yùn)行以實(shí)現(xiàn)各自功能。
正是這兩個(gè)特性保證了系統(tǒng)的在線擴(kuò)展、在線維護(hù)和容錯(cuò)。因此要求每一個(gè)子系統(tǒng)都能有
“智能”管理自己而又不干涉其他子系統(tǒng)的事務(wù)并且也不受其他子系統(tǒng)干涉,但它還能和其他子
系統(tǒng)進(jìn)行協(xié)調(diào)工作。
自律可控性和自律可協(xié)調(diào)性的實(shí)現(xiàn)反過來又要求每個(gè)子系統(tǒng)必須滿足:
。1)平等性。每個(gè)子系統(tǒng)都能管理自己并不能被其他系統(tǒng)管理。子系統(tǒng)之間沒有主從關(guān)系。
。2)局所性。每個(gè)子系統(tǒng)在只依靠本地信息的情況下就可以管理自己并與其他子系統(tǒng)進(jìn)行
協(xié)調(diào)。
。3)自足性。每個(gè)子系統(tǒng)管理自己和協(xié)調(diào)他人的功能是自足的。
以上三個(gè)特點(diǎn)表明了即使其他子系統(tǒng)都出現(xiàn)故障或者終止了與某子系統(tǒng)的通訊,該子系統(tǒng)仍
能進(jìn)行工作。
3、自律分散系統(tǒng)的模型
最基本的ADS系統(tǒng)是由原子節(jié)點(diǎn)(Atom)和數(shù)據(jù)域(Data Field)組成。原子節(jié)點(diǎn)可對(duì)應(yīng)的
物理實(shí)體為計(jì)算機(jī)、智能設(shè)備或其他硬件。數(shù)據(jù)域是ADS中信息傳播的空間。從物理概念上講,
它相當(dāng)于網(wǎng)絡(luò)或存儲(chǔ)器。
各個(gè)原子發(fā)出的信息在數(shù)據(jù)域中循環(huán)同時(shí)各個(gè)原子又從數(shù)據(jù)域中提取信息。原子之間沒有
直接連接關(guān)系,它們只對(duì)數(shù)據(jù)域中的信息內(nèi)容感興趣而不必知道此信息來自何處。因此,在數(shù)
據(jù)域中流動(dòng)的信息都包含一個(gè)內(nèi)容碼(Content Code)來標(biāo)志其屬性,各個(gè)原子也正是通過識(shí)
別內(nèi)容碼來決定自己是否需要此信息的。
3.1數(shù)據(jù)域
在自律分散系統(tǒng)中所有的原子節(jié)點(diǎn)都是一個(gè)自律單元,它們之間的聯(lián)系僅僅是通過數(shù)據(jù)域
來實(shí)現(xiàn)的。所有的數(shù)據(jù)都以廣播方式發(fā)送到數(shù)據(jù)域中并在其中循環(huán)。數(shù)據(jù)域延伸至原子內(nèi)部的
一部分稱之為原子數(shù)據(jù)域(Atom Data Field),其中流動(dòng)的是原子的系統(tǒng)或應(yīng)用程序模塊所需
的數(shù)據(jù)。
所有信息都帶有一內(nèi)容碼規(guī)定了其屬性。由于系統(tǒng)的結(jié)構(gòu)隨著自身擴(kuò)展、縮小或部分故障
而發(fā)生變更,為了保證子系統(tǒng)的運(yùn)行不受干擾,每一子系統(tǒng)都以廣播方式發(fā)送帶有CC的信息,
由于其不具有目的地址,則接收者只能根據(jù)CC來選擇信息而不知道其發(fā)送者。
這種基于內(nèi)容碼的通訊方式保證了每個(gè)子系統(tǒng)的自律信息發(fā)送和自律信息接收。即每個(gè)子
系統(tǒng)不必知道信息來源和目的地之間的關(guān)系,因而它實(shí)現(xiàn)了每個(gè)子系統(tǒng)的局所性。
3.2原子節(jié)點(diǎn)飛
每個(gè)原子節(jié)點(diǎn)都是一個(gè)自律的子系統(tǒng),它能夠根據(jù)一個(gè)內(nèi)置的內(nèi)容碼表來選取其所需的數(shù)
據(jù)信息。已被選取的數(shù)據(jù)信息進(jìn)一步在內(nèi)部數(shù)據(jù)域(ADF)中流動(dòng)。
原子中的所有系統(tǒng)、應(yīng)用程序模塊都使用同樣的機(jī)制,即一旦模塊所需的所有數(shù)據(jù)全部到
齊,系統(tǒng)或應(yīng)用程序軟件就會(huì)自動(dòng)開始執(zhí)行,我們稱之為數(shù)據(jù)驅(qū)動(dòng)機(jī)制。沒有一個(gè)模塊能夠控
制其他模塊、指示其他模塊接收處理數(shù)據(jù)。各軟件模塊之間只有松散的藕合關(guān)系,不存在控制
和被控制的關(guān)系,都能獨(dú)立判斷管理自己的行為,即各原子是平等的。
4、自律分散系統(tǒng)的技術(shù)
4.1在線擴(kuò)展
系統(tǒng)在線擴(kuò)展包括原子節(jié)點(diǎn)和系統(tǒng)兩個(gè)層次上的擴(kuò)展。
對(duì)于原子內(nèi)部軟件模塊的擴(kuò)充,它只需在系統(tǒng)內(nèi)部的內(nèi)容碼表中注冊(cè)上新的內(nèi)容碼而不需
報(bào)告給其他原子。因此這種在線修改不會(huì)影響到其他原子的運(yùn)行,并且也不會(huì)影響原子內(nèi)部其
他軟件模塊的執(zhí)行。
對(duì)于系統(tǒng)級(jí)的擴(kuò)展,也含有兩種類型。同構(gòu)的系統(tǒng)擴(kuò)展只需簡單將其數(shù)據(jù)域合并,所有數(shù)
據(jù)信息都在合并后的數(shù)據(jù)域進(jìn)行廣播。而雜合系統(tǒng)的擴(kuò)展則需要網(wǎng)關(guān)。對(duì)于雜合系統(tǒng)A和B的連
接擴(kuò)展(圖5),可以將其中任何一個(gè)系統(tǒng)和網(wǎng)關(guān)視為一整體看作是另一系統(tǒng)原子節(jié)點(diǎn)。如此,
A可以根據(jù)登記在網(wǎng)關(guān)中B所需的內(nèi)容碼將相應(yīng)的信息廣播到B的數(shù)據(jù)域中去。反之B也可將A所需
的信息傳送給A的數(shù)據(jù)域。在網(wǎng)關(guān)中注冊(cè)登記內(nèi)容碼不會(huì)影響到兩個(gè)系統(tǒng)的正常運(yùn)行。
4.2在線維護(hù)
自律分散系統(tǒng)在運(yùn)行的同時(shí)可進(jìn)行部分子系統(tǒng)或其內(nèi)部軟件模塊的測(cè)試。運(yùn)行的原子節(jié)點(diǎn)發(fā)
出的信息分為兩類:在線信息和測(cè)試信息。相對(duì)應(yīng)地,運(yùn)行的原子節(jié)點(diǎn)也分為在線和測(cè)試兩種狀
態(tài)。并且規(guī)定:在線節(jié)點(diǎn)只接收在線信息,而測(cè)試節(jié)點(diǎn)兩種信息都接收。因而處于測(cè)試狀況的節(jié)
點(diǎn)不會(huì)干擾在線節(jié)點(diǎn)的正常運(yùn)行,同時(shí)它又可以接收在線信息進(jìn)行單個(gè)測(cè)試或接收測(cè)試信息進(jìn)行
聯(lián)合測(cè)試。
4.3容錯(cuò)
自律分散系統(tǒng)的系統(tǒng)結(jié)構(gòu)及其數(shù)據(jù)驅(qū)動(dòng)機(jī)制使軟件模塊可以自由地異步執(zhí)行。實(shí)際中,我
們根據(jù)每一軟件的重要程度來決定其復(fù)制數(shù)量。因此可以在系統(tǒng)中的不同子系統(tǒng)中安置多個(gè)復(fù)
制的軟件模塊,這些所有相同的軟件模塊都在獨(dú)立運(yùn)行并獨(dú)立接收和發(fā)送信息。其中某些模塊
可能處于故障狀態(tài),因此其發(fā)送的信息可能是錯(cuò)誤信息,而另外一些模塊仍在正常運(yùn)行,發(fā)送
正確信息。使用這些信息的軟件模塊如何從所有這些信息中挑選正確的以供自己使用,需要通
過兩步來完成。一是選取所有復(fù)制模塊的“同一數(shù)據(jù)”(時(shí)間上同步);另一步是從“同一數(shù)
據(jù)”中選取正確的數(shù)據(jù)。解決的辦法是使用“事件序號(hào)機(jī)制”和“投票機(jī)制”。通過以上的處
理途徑很好地解決了以往使用備用容錯(cuò)技術(shù)出現(xiàn)的問題,即本身切換裝置出現(xiàn)故障,無法使用
備用。ADS系統(tǒng)在處理容錯(cuò)問題時(shí),不存在任何中間切換裝置,即故障軟件可和正常軟件同時(shí)運(yùn)
行,運(yùn)用誰的信息的決定權(quán)完全取決于接收者。從這一意義上講,它實(shí)現(xiàn)了真正的容錯(cuò)。
5、監(jiān)控系統(tǒng)的發(fā)展需求
目前,隨著社會(huì)化大生產(chǎn)規(guī)模的不斷擴(kuò)大,一個(gè)企業(yè)往往要跨越不同的國家地區(qū),在世界
各地建立自己的分廠、分公司,如此之多的部門要協(xié)調(diào)一致地運(yùn)作,完成生產(chǎn)過程的監(jiān)控、生
產(chǎn)任務(wù)的分配管理、信息的收集仲裁以及對(duì)外的信息發(fā)布,這必然要求監(jiān)控系統(tǒng)相應(yīng)地向大規(guī)
;l(fā)展。而傳統(tǒng)的集中式或分布式監(jiān)控系統(tǒng)都是基于客戶機(jī)/服務(wù)器模式,隨著系統(tǒng)規(guī)模的擴(kuò)
大、信息量的增多,必然會(huì)加大服務(wù)器的負(fù)擔(dān)。嚴(yán)重情況下,會(huì)發(fā)生由于某時(shí)間段對(duì)服務(wù)器的
訪問驟增,而服務(wù)器響應(yīng)不及,影響了整個(gè)生產(chǎn)過程。
另一方面,正是生產(chǎn)規(guī)模不斷擴(kuò)大的趨勢(shì)表明在設(shè)計(jì)其相應(yīng)的監(jiān)控系統(tǒng)時(shí),不可能一次性
將各個(gè)部分、各個(gè)環(huán)節(jié)都考慮完整周全,而必須隨著生產(chǎn)的發(fā)展擴(kuò)大不斷擴(kuò)充規(guī)模、不斷完善
功能,F(xiàn)有的監(jiān)控系統(tǒng)都是一次性建設(shè)完畢,如要進(jìn)行擴(kuò)充只能終止整個(gè)系統(tǒng)的運(yùn)行,這必然
會(huì)給生產(chǎn)者造成極大的經(jīng)濟(jì)損失。
鑒于以上的問題,必須使用新的技術(shù)。我們的設(shè)想是用ADS的系統(tǒng)概念來組建新型的監(jiān)控網(wǎng)
絡(luò)。
在本文的前面已經(jīng)看到由于自律分散系統(tǒng)的子系統(tǒng)有著自律可控性和自律可協(xié)調(diào)性因而保
證了這個(gè)系統(tǒng)的在線擴(kuò)展、在線維護(hù)和容錯(cuò)。因此根據(jù)ADS思路設(shè)計(jì)的監(jiān)控系統(tǒng)體現(xiàn)了以下優(yōu)點(diǎn):
首先,它不再基于傳統(tǒng)的C/S模型,而是由若干分系統(tǒng)構(gòu)成。各個(gè)分系統(tǒng)之間是相互平等的,
不存在依附關(guān)系,可以自主運(yùn)作,但這并不表明它們不與外界交換信息。實(shí)際上,各個(gè)子系統(tǒng)不
斷向外界以廣播方式發(fā)送信息,同時(shí)又根據(jù)各自需求接收來自外界的信息以為自己服務(wù)。這樣一
來,C/S模式中服務(wù)器大量的負(fù)擔(dān)被有限地分散了,而且加快了子系統(tǒng)間信息的交換速度。這對(duì)
于信息就是效益的生產(chǎn)領(lǐng)域不能不稱得上是一個(gè)好的選擇。
不僅如此,基于ADS的監(jiān)控系統(tǒng)還很好地解決了自身的擴(kuò)充問題。對(duì)于大型的企業(yè)來說,監(jiān)控
系統(tǒng)的組建可隨著生產(chǎn)部門的建設(shè)一步步完成。有多少部門投入運(yùn)行,與之相應(yīng)的監(jiān)控子系統(tǒng)就
可先行自主并協(xié)調(diào)地運(yùn)行。隨著生產(chǎn)規(guī)模的逐漸擴(kuò)大,可以在線地?cái)U(kuò)充監(jiān)控子系統(tǒng)且不會(huì)干擾已
經(jīng)運(yùn)作的部門環(huán)節(jié)。一旦新加入的監(jiān)控子系統(tǒng)調(diào)試通過,它可以和原有的系統(tǒng)無縫地集成成更大
系統(tǒng),共同實(shí)現(xiàn)整個(gè)企業(yè)的各項(xiàng)任務(wù)?梢钥闯觯@種監(jiān)控系統(tǒng)是一種動(dòng)態(tài)的系統(tǒng),與以往的監(jiān)
控系統(tǒng)相比具有更大的靈活性。
大型生產(chǎn)廠家面臨的另一個(gè)問題是產(chǎn)品多樣化的需求。要占領(lǐng)并控制市場(chǎng),就必須充分了解
市場(chǎng),迅速捕捉信息。往往市場(chǎng)需求變化非常之快,一種新產(chǎn)品沒上市多久,就被更新的產(chǎn)品所
替代。廠家想要追求更高的經(jīng)濟(jì)效益,必須及時(shí)調(diào)整生產(chǎn)計(jì)劃、改造工藝。這就要求相應(yīng)的監(jiān)控
系統(tǒng)也能隨時(shí)調(diào)整。傳統(tǒng)的監(jiān)控系統(tǒng)自然不具備此種能力。
一種可選的方案又是ADS系統(tǒng)模型構(gòu)造的監(jiān)控系統(tǒng)。ADS系統(tǒng)不僅在子系統(tǒng)的層次上可做到在
線擴(kuò)展和更新,而且在每個(gè)系統(tǒng)內(nèi)部軟件層次也使用了平等自制的機(jī)制,各個(gè)軟件模塊之間的稿
合關(guān)系較為松散,可實(shí)現(xiàn)在線更新、升級(jí)。因而基于這一概念的監(jiān)控系統(tǒng)可按照生產(chǎn)的變化要求
進(jìn)行硬件更換,軟件的更新、調(diào)整,從而使其適應(yīng)新產(chǎn)品的監(jiān)控要求。
6、一監(jiān)控系統(tǒng)結(jié)構(gòu)框架
在這一系統(tǒng)中包含有現(xiàn)場(chǎng)過程控制部分,這些微處理器直接和工業(yè)生產(chǎn)過程中的傳感器、控
制器以及執(zhí)行器相連接。在線信息數(shù)據(jù)庫、市場(chǎng)信息發(fā)布、生產(chǎn)任務(wù)管理以及軟件開發(fā)等子系統(tǒng)
都通過光纖與現(xiàn)場(chǎng)過程控制連接成一環(huán)狀的網(wǎng)絡(luò)。 市場(chǎng)信息發(fā)布計(jì)算機(jī)通過Internet或其他輸
人提供最新的市場(chǎng)需求及銷售分析結(jié)果。生產(chǎn)任務(wù)管理計(jì)算機(jī)可根據(jù)最新市場(chǎng)信息或人工輸入調(diào)
整生產(chǎn)計(jì)劃或要求新軟件的開發(fā)。軟件開發(fā)計(jì)算機(jī)則完成軟件模塊的開發(fā)、修改,并上載到現(xiàn)場(chǎng)
控制器或其他管理計(jì)算機(jī)中。在線信息數(shù)據(jù)庫動(dòng)態(tài)存儲(chǔ)、更新生產(chǎn)過程信息以備后用。
這樣一個(gè)系統(tǒng)各個(gè)單元都在獨(dú)立自主地運(yùn)行并可進(jìn)行相互協(xié)調(diào)。硬件、軟件均可在線擴(kuò)展、
維護(hù)并實(shí)現(xiàn)了容錯(cuò)。唯一的要求是事先定義在系統(tǒng)中傳輸?shù)男畔⒌膬?nèi)容碼,這對(duì)于一個(gè)給定的
監(jiān)控系統(tǒng)是很容易做到的。
7、結(jié)論
自律分散系統(tǒng)以其獨(dú)特的數(shù)據(jù)域結(jié)構(gòu)和數(shù)據(jù)驅(qū)動(dòng)機(jī)制實(shí)現(xiàn)了其子系統(tǒng)的自律可控性和自律
可協(xié)調(diào)性,從而保證了整個(gè)系統(tǒng)的在線擴(kuò)展、在線維護(hù)及容錯(cuò)。
現(xiàn)代工業(yè)生產(chǎn)規(guī)模的不斷擴(kuò)大和發(fā)展對(duì)監(jiān)控系統(tǒng)提出了更新的要求。利用自律分散系統(tǒng)的
概念構(gòu)造的工業(yè)監(jiān)控網(wǎng)絡(luò)很好地解決了這一問題,它必將在今后的工業(yè)監(jiān)控領(lǐng)域發(fā)揮巨大的作
用。
摘自《自動(dòng)化信息》2001年2月