劉建航,程學珍,2,鄭 宸,魏翠麗,崔立文
(1.山東科技大學 電氣與自動化工程學院,山東 青島266590;2.山東科技大學 礦山災害預防控制省部共建國家重點實驗室培育基地,山東 青島266590)
網(wǎng)絡化傳感系統(tǒng)是由多個傳感器節(jié)點元件通過有線或無線通信方式連接到網(wǎng)絡系統(tǒng),以實現(xiàn)網(wǎng)絡區(qū)域傳感信息的感知、采集、傳輸、處理等功能[1]。當前,IEEE 1451[2]成為構(gòu)建網(wǎng)絡化傳感系統(tǒng)的技術(shù)手段,而傳感系統(tǒng)建模則是其網(wǎng)絡化開發(fā)的前提。因此,研究一種通用的網(wǎng)絡化傳感系統(tǒng)模型是非常有必要的,也是當前所亟需的。
本文研究了一種網(wǎng)絡化傳感系統(tǒng)模型,該模型的建立能實現(xiàn)網(wǎng)絡傳感系統(tǒng)快速化、標準化。
目前,在主流的建模語言中,統(tǒng)一建模語言(unified modeling language,UML)[3]是一種面向?qū)ο蟮慕UZ言,是一種定義良好、易于表達、功能強大且普遍實用的可視化建模語言,在靜態(tài)結(jié)構(gòu)描述能力和面向?qū)ο笤O計思想中具有較大優(yōu)勢,因此,非常適合應用于基于IEEE 1451 網(wǎng)絡化傳感系統(tǒng)的模型構(gòu)建中,但是其缺乏有效驗證分析方法[4],而Petri 網(wǎng)正好彌補這一缺陷。與UML 相比,Petri 網(wǎng)[5,6]具有形式化定義,能夠提供多種驗證分析方法,在動態(tài)行為分析方面具有較大優(yōu)勢,但其建模方法不夠直觀明確,在獲取需求,交互方面較差。因此,本文將UML 建模和Petri 網(wǎng)建模兩者結(jié)合起來,采用基于UML 和Petri 網(wǎng)的信息流層次化動態(tài)(information flow hierachical dynamic,IFHD)建模方法[7],這樣既能夠滿足獲取有效需求、分析設計,同時又能夠進行嚴格建模和形式化驗證,以達到其準確,直觀,以致達到節(jié)約時間,提高效率。
圖1 中建模過程中分為靜態(tài)建模、系統(tǒng)部署圖、動態(tài)建模行為驗證,利用UML 用例圖、順序圖及部署圖對系統(tǒng)進行靜態(tài)描述,再利用UML 與Petri 網(wǎng)的轉(zhuǎn)換規(guī)則轉(zhuǎn)換為Petri 網(wǎng)模型,經(jīng)過動態(tài)行為驗證,對模型簡化和優(yōu)化。
圖1 基于UML 和Petri 網(wǎng)建模原理圖Fig 1 Modeling principle diagram based on UML and Petri networks
在系統(tǒng)的靜態(tài)建模中,主要是利用UML 的優(yōu)勢[8,9]來構(gòu)建的。
1)系統(tǒng)結(jié)構(gòu)
網(wǎng)絡傳感系統(tǒng)的功能是完成數(shù)據(jù)的采集、處理和傳輸,參與者有本地操作者、遠程操作者。除此之外,還有現(xiàn)場傳感器實現(xiàn)信息的采集;執(zhí)行元件對遠程操作者發(fā)送的控制命令進行執(zhí)行。
2)需求分析
系統(tǒng)是為本地操作者和遠程操作者服務,因此,需要分別從本地操作者、遠程操作者、傳感器和執(zhí)行元件的角度來實現(xiàn)系統(tǒng)需要的具體功能。
3)確認用例
根據(jù)需求得到的用例并非適于在用例圖中出現(xiàn),用例間總是存在著各種關(guān)系,如泛化、包含和擴展等關(guān)系。經(jīng)過用例的分析找出用例間的關(guān)系和適合在用例圖中使用的用例,如圖2 所示。
圖2 網(wǎng)絡化傳感系統(tǒng)用例圖Fig 2 Use-case of networked sensing system
4)確定用例間的關(guān)系
根據(jù)IEEE 1451 技術(shù)標準的定義,NCAP 和STIM 能夠包含的用例如圖3 和圖4 所示。
圖3 NCAP 模塊用例間的包含關(guān)系圖Fig 3 Use-case diagram between NCAP module contains relationship
圖4 STIM 模塊用例間的包含關(guān)系圖Fig 4 Use-case diagram between STIM module contains relationship
5) 網(wǎng)絡化傳感系統(tǒng)用例圖
在用例關(guān)系確定后,查看最終的用例與參與者的關(guān)系。其中,當?shù)夭僮髡摺鞲衅骱蛨?zhí)行元件都需要操作STIM 模塊;遠程操作者需要操作NACP 模塊。結(jié)合上面兩個圖,網(wǎng)絡化傳感系統(tǒng)用例圖如圖5 所示。
圖5 網(wǎng)絡化傳感系統(tǒng)用例圖Fig 5 Use cases of networked sensing system
UML 的交互圖描述了系統(tǒng)的實際運作過程,在確定系統(tǒng)的用例之后,需要運用交互圖描述系統(tǒng)對象的的實際運作和交互。交互圖有3 種,即順序圖、通信圖和時間圖,其中順序圖的應用最為廣泛,本文模型設計中采用順序圖對系統(tǒng)的實際運作進行描述。
順序圖根據(jù)具體用例的對象,描述對象之間的交互和交互發(fā)生的次序。
1)遠程操作者與系統(tǒng)的交互:與遠程操作者交互的用例有:網(wǎng)絡通信、初始化、數(shù)據(jù)采集、數(shù)據(jù)處理、TEDS 配置、輸出控制。遠程操作者與系統(tǒng)的交互順序圖如圖6 所示。
圖6 遠程操作者順序圖Fig 6 Sequence diagram of remote operator
順序圖中:a.縱向軸為時間信息軸,縱向軸向下為正方向;b.用例協(xié)作中各獨立對象的類元角色在橫向軸表示;c.表明一個對象在一段時間內(nèi)存在,用一條虛直線表示對象生命;d.從一個對象生命線指向另一個對象生命線的箭頭表示消息事件的發(fā)生。
2)本地操作者與系統(tǒng)的交互:與本地操作者交互的用例有:系統(tǒng)初始化、數(shù)據(jù)采集、數(shù)據(jù)處理、TEDS 配置。本地操作者的順序圖可以從遠程操作者順序圖中分析處理,另外,傳感器和執(zhí)行元件的順序圖也包含在遠程操作者的順序圖中,此處均不再另行繪制。
基于IEEE 1451 技術(shù)標準的網(wǎng)絡化傳感系統(tǒng)使用面向?qū)ο笙到y(tǒng),面向?qū)ο笙到y(tǒng)在物理方面建模的實現(xiàn)方式圖有兩種,即組件圖和部署圖。本文中模型設計采用部署圖對系統(tǒng)進行面向?qū)ο蟮慕?,基于IEEE 1451.2 標準的網(wǎng)絡傳感系統(tǒng)的組件主要有:變送器接口、信號調(diào)理轉(zhuǎn)換、TEDS、微處理器、存儲單元、IEEE 1451.2 接口、驅(qū)動單元、網(wǎng)絡接口、Web 服務器。
部署圖用來建模系統(tǒng)的物理部署,主要涉及物理結(jié)構(gòu)與它們間的關(guān)系。網(wǎng)絡傳感系統(tǒng)的使用者為遠程操作者和本地操作者,圖7 可以清晰地看出系統(tǒng)的部署圖。
網(wǎng)絡化傳感系統(tǒng)的物理結(jié)構(gòu)有:NCAP 模塊和STIM 模塊。其中,NCAP 模塊提供網(wǎng)口給遠程操作者,STIM 模塊提供端口給本地操作者。
至此,網(wǎng)絡化傳感系統(tǒng)的靜態(tài)模型和系統(tǒng)部署圖已經(jīng)建立。在靜態(tài)建模過程中,首先對所要建模系統(tǒng)的功能進行分析,確定模型的角色和用例,以及各角色和用例之間的關(guān)系。之后,繪制網(wǎng)絡化傳感系統(tǒng)的順序圖,對所設計系統(tǒng)工作時的信息流進行詳細的表述,對系統(tǒng)內(nèi)部信號流向有了精確的表述。通過部署圖對系統(tǒng)進行物理方面的建模,確定了系統(tǒng)各模塊以及模塊內(nèi)部各個組件之間的關(guān)系,使系統(tǒng)模型的靜態(tài)表述更趨完善,為動態(tài)模型建立進行形式化驗證做好鋪墊。
圖7 基于IEEE 1451 網(wǎng)絡化傳感系統(tǒng)部署圖Fig 7 Deployment diagram of networked sensing system based on IEEE 1451
在設計系統(tǒng)時,首先要識別構(gòu)成系統(tǒng)的元素,尤其是識別被動元素和主動元素。Petri 網(wǎng)對這種二元性提供了強大的支持。系統(tǒng)中的一個對象是作為主動元素還是被動元素來建模是根據(jù)系統(tǒng)中的前后關(guān)系確定的。主要由Petri網(wǎng)中的兩類元素[14]:P 元素和T 元素完成。UML 元素與Petri 網(wǎng)圖像元素的映射如表1 所示。
表1 UML 元素與Petri 網(wǎng)圖像元素映射表Tab 1 Mapping tab of UML elements and Petri networks elements
通過兩者之間的映射關(guān)系,把系統(tǒng)的UML 用例圖轉(zhuǎn)換為Petri 網(wǎng)模型,轉(zhuǎn)換后的圖形如圖8 所示。
圖8 網(wǎng)絡化傳感系統(tǒng)Petri 網(wǎng)模型Fig 8 Petri networks model of networked sensing system
通過搭建的動態(tài)模型可以對系統(tǒng)的動態(tài)行為進行分析。通過分析,在系統(tǒng)內(nèi)部信號處理方面的動態(tài)行為表述的不是十分明確,系統(tǒng)模型還需要進一步的簡化與優(yōu)化,簡化后的系統(tǒng)Petri 網(wǎng)模型如圖9 所示。利用CPN Tools 可以對網(wǎng)絡智能化傳感系統(tǒng)模型進行分析,能夠確認出所建立的模型結(jié)構(gòu)不存在死鎖,是可逆的,具有可達性、有界性。
圖9 優(yōu)化后的網(wǎng)絡化傳感系統(tǒng)Petri 網(wǎng)模型Fig 9 Optimized Petri networks model for networked sensing system
本文采用UML 和Petri 網(wǎng)相結(jié)合的方法對網(wǎng)絡傳感系統(tǒng)進行模型搭建。考慮到UML 在靜態(tài)建模方面的優(yōu)越性,利用UML 對系統(tǒng)的靜態(tài)特性進行表述;同時,利用UML 到Petri 網(wǎng)的轉(zhuǎn)換規(guī)則,得到系統(tǒng)的動態(tài)模型,利用Petri 網(wǎng)在動態(tài)行為上的優(yōu)勢對系統(tǒng)的動態(tài)行為進行分析、優(yōu)化與簡化,最后得到網(wǎng)絡化網(wǎng)絡傳感系統(tǒng)的模型,能夠為后續(xù)智能傳感器的性能分析、管理決策、數(shù)據(jù)仿真、優(yōu)化分析提供技術(shù)支持。
[1] Gurkan D.Interoperable smart sensor networking[C]∥12th International Conference on Engineering,Science,Construction,and Operations in Challenging Environments,2010:1634-1643.
[2] 劉桂雄.基于IEEE 1451 的智能傳感器技術(shù)與應用[M].北京:清華大學出版社,2012.
[3] Docherty M O.Object-oriented analysis and design:Understanding system development with UML 2.0[M].Chichester:John Wiley&Sons,2005.
[4] 付茂洺,王 悠.可視化UML 模型驗證環(huán)境研究[J].電子科技大學學報,2010,39(2):289-292.
[5] Zairi S,Zouari B,Niel E.Coloured Petri net model for the formal validation of sensor networks[C]∥1st International Conference on Sensor Networks and Applications(SNA2009),2009:148-153.
[6] Shareef A,Yifeng Z.Energy modeling of wireless sensor nodes based on Petri nets[C]∥39th International Conference on Parallel Processing,ICPP 2010,2010:101-110.
[7] 周岳斌.IEEE 1451 混合接入模式下網(wǎng)絡化智能傳感系統(tǒng)建模與實現(xiàn)[D].廣州:華南理工大學,2012.
[8] Lee K B,Song E Y.Object-oriented application framework for IEEE 1451.1 standard[J].IEEE Transactions on Instrumentation and Measurement,2005,54(4):1527-1533.
[9] 黃國健,劉桂雄,洪曉斌,等.IEEE 1451 網(wǎng)絡化智能傳感器的通用建模方法及應用[J].光學精密工程,2010,18(8):1914-1921.
[10]楊玉梅,刁永鋒.基于UML 順序圖的Petri 網(wǎng)建模[J].計算機技術(shù)與發(fā)展,2007(10):130-133.