余嘉偉,胡海洋
(杭州電子科技大學(xué) 計(jì)算機(jī)學(xué)院,浙江 杭州 310018)
信息物理系統(tǒng)(Cyber-Physical System,CPS)在運(yùn)行的過(guò)程中,計(jì)算過(guò)程的推進(jìn)與物理環(huán)境的變化形成了多種事件,包括環(huán)境感知、指令生成、行為調(diào)控等,從而組成一個(gè)閉環(huán)結(jié)構(gòu)。因此,CPS具備較強(qiáng)的事件驅(qū)動(dòng)性,其連續(xù)的物理進(jìn)程與離散的計(jì)算進(jìn)程之間構(gòu)成了多種復(fù)雜的交互事件[1]。具體地,可將CPS分為三大組件:傳感器、控制器、執(zhí)行器[2]。其中,傳感器負(fù)責(zé)感知并簡(jiǎn)單處理環(huán)境中的信息;控制器負(fù)責(zé)根據(jù)獲得的信息擬定和發(fā)送指令;執(zhí)行器負(fù)責(zé)執(zhí)行收到的指令,從而改變物理環(huán)境。
虛擬世界和現(xiàn)實(shí)世界的緊密聯(lián)系賦予了CPS獨(dú)特的優(yōu)越性,使其成為一個(gè)實(shí)現(xiàn)高度智能化的復(fù)雜嵌入式系統(tǒng),但其能耗分析卻成為了瓶頸。CPS的能耗分析是其設(shè)計(jì)與維護(hù)中的關(guān)鍵挑戰(zhàn)之一,因?yàn)檫@要求設(shè)計(jì)者必須考慮到CPS的各個(gè)異構(gòu)組件和它們之間的緊密交互,以及組件內(nèi)部活動(dòng)所產(chǎn)生能耗的不確定性。
現(xiàn)階段,在CPS的能耗分析方面,國(guó)內(nèi)外學(xué)者也進(jìn)行了一些研究。文獻(xiàn)[3]通過(guò)開(kāi)發(fā)和求解基于隨機(jī)活動(dòng)網(wǎng)絡(luò)的隨機(jī)模型,分析了鐵路道岔加熱器CPS系統(tǒng)的可靠性和能耗指標(biāo)。文獻(xiàn)[4]提出了一種基于統(tǒng)計(jì)模型檢查的環(huán)境感知能耗評(píng)估框架,該框架中使用隨機(jī)混合自動(dòng)機(jī)對(duì)影響CPS能耗的各種環(huán)境因素進(jìn)行建模。文獻(xiàn)[5]擴(kuò)展了基于微體系結(jié)構(gòu)的時(shí)序分析方法,在準(zhǔn)確地說(shuō)明保持設(shè)備處于活動(dòng)狀態(tài)的執(zhí)行時(shí)間的基礎(chǔ)上,提出了用于分析CPS最壞能耗的全系統(tǒng)分析框架。文獻(xiàn)[6]提出了一種基于時(shí)間狀態(tài)轉(zhuǎn)換矩陣的CPS軟件能耗建模方法,并設(shè)計(jì)了基于有界模型檢驗(yàn)技術(shù)的多屬性約束能耗分析方法。文獻(xiàn)[7]提出了一種基于體系結(jié)構(gòu)能耗建模的CPS軟件可信性評(píng)估方法,該方法基于能耗時(shí)間Petri網(wǎng)建立CPS的能耗模型,并分析了影響CPS軟件可信性的能耗問(wèn)題。文獻(xiàn)[8]將CPS軟件解構(gòu)為構(gòu)件、接口、連接件,隨后使用能耗隨機(jī)Petri網(wǎng)對(duì)這些模塊進(jìn)行了建模與能耗預(yù)測(cè)。
上述研究工作從不同角度提出了對(duì)CPS進(jìn)行能耗分析的各種方法,但還存在著不足之處,主要體現(xiàn)在兩方面:(1)多數(shù)研究著重點(diǎn)在于CPS的軟件構(gòu)件部分,但缺少對(duì)整個(gè)CPS(傳感器、控制器、執(zhí)行器)的能耗建模;(2)未考慮CPS在運(yùn)行過(guò)程中各活動(dòng)能耗的不確定性,這導(dǎo)致分析結(jié)果雖較為正確,但卻都缺乏一定的精準(zhǔn)性,從而無(wú)法完全反映CPS的實(shí)際能耗。并且,在逐漸普及應(yīng)用CPS的智能制造領(lǐng)域,目前的應(yīng)用文獻(xiàn)十分缺乏。
基于這些問(wèn)題,本文構(gòu)建了一種面向?qū)ο竽:齈etri網(wǎng)(Object-Oriented Fuzzy Petri Net,OFPN)能耗模型。該模型以面向?qū)ο蟮募夹g(shù)建模CPS的模塊化結(jié)構(gòu),并使用三角模糊數(shù)及其α截集的方法表征能耗的不確定性。最后提出了一種CPS組件能耗分析算法,結(jié)合輸入的變遷模糊能耗值與OFPN的可達(dá)標(biāo)識(shí)圖,輸出一系列解模糊的能耗數(shù)值,提高了結(jié)果的準(zhǔn)確性。
Petri網(wǎng)[9]最早由Carl Adam Petri于1962年提出,它是對(duì)離散并行系統(tǒng)的數(shù)學(xué)表示,并通過(guò)資源(托肯)的流動(dòng)來(lái)表示系統(tǒng)的動(dòng)態(tài)變化。Petri網(wǎng)具有嚴(yán)格的數(shù)學(xué)表達(dá)方式與直觀的圖形表達(dá)方式,被廣泛應(yīng)用于建模和分析并發(fā)、異步、分布式的系統(tǒng)。在各種建模方法中,Petri網(wǎng)因其兼具的靜態(tài)與動(dòng)態(tài)特性,已成為制造系統(tǒng)建模與分析的成熟工具[10-11]。Petri網(wǎng)良好的可擴(kuò)展性使其既能分析制造系統(tǒng)的生產(chǎn)率和設(shè)備利用率等性能指標(biāo),又可以檢查與防止資源沖突和堆棧溢出等消極行為。
然而,傳統(tǒng)Petri網(wǎng)存在著諸多不足,例如無(wú)法建模CPS中的異構(gòu)組件之間的交互行為,且無(wú)法描述CPS不確定的能耗屬性。因此,本文將傳統(tǒng)Petri網(wǎng)擴(kuò)展為面向?qū)ο竽:齈etri網(wǎng),作為一種新的CPS能耗分析模型。
諸如CPS的復(fù)雜系統(tǒng)的設(shè)計(jì)與分析往往涉及到不確定性。在CPS中,這些不確定性主要表現(xiàn)為隨機(jī)性和模糊性。雖然描述與建模不確定性的主流方法是基于概率的隨機(jī)模型(例如隨機(jī)Petri網(wǎng)[12]等),但這些模型不適用于描述所有的不確定性,只適用于隨機(jī)性。類(lèi)似于CPS能耗這種屬性的不精確性是由于測(cè)量精度有限而導(dǎo)致的,本質(zhì)上不是統(tǒng)計(jì)數(shù)據(jù),不能用概率來(lái)描述[13]。因此,使用模糊集理論[14]中的模糊數(shù)來(lái)量化能耗的一維數(shù),是一種可行的解決方案。
三角模糊數(shù)[15-16]是最常見(jiàn)的模糊數(shù),與LR型模糊數(shù)[17]相比,它的用法較為簡(jiǎn)便,使用范圍更廣。
圖1 三角模糊數(shù)的幾何表示
在Petri網(wǎng)中引入三角模糊數(shù)的做法,即用三角模糊數(shù)量化Petri網(wǎng)中變遷能耗屬性的一維數(shù),再將其表示為對(duì)應(yīng)的α截集。由于三角模糊數(shù)的α截集并非實(shí)數(shù)形式的數(shù)值結(jié)果,因此利用三角模糊數(shù)的運(yùn)算法則[18]得到最終能耗計(jì)算結(jié)果的模糊值時(shí),需將其進(jìn)行解模糊。具體方法是,求得模糊能耗值即α截集后,由于三角模糊數(shù)在α=1處的截集取得唯一值(最可能值);在α=0處的截集取得兩個(gè)邊界值(最小、最大值)。因此,以0、1分別代入一個(gè)三角模糊數(shù)的α截集,即可解模糊得到該模糊數(shù)的最小值、最大值和最可能值。
為了闡述基于OFPN的CPS能耗建模過(guò)程,下面首先給出OFPN網(wǎng)系統(tǒng)的正式定義。
OFPN網(wǎng)系統(tǒng)定義為一個(gè)二元組ONS=
信息發(fā)送者對(duì)象Obi至信息接收者對(duì)象Obj之間的消息傳遞關(guān)系Rij∈R定義為一個(gè)七元組Rij={OMi,gij,IMj,Iij,Oij,Cij}。其中,OMi是對(duì)象Obi的輸出信息庫(kù)所的有限集合;gij是Obi到Obj的信息傳遞的門(mén)變遷的有限集合;IMj是對(duì)象Obj的輸入信息庫(kù)所的有限集合;Iij(OMi,gij)是從輸出信息庫(kù)所OMi到門(mén)gij的輸入映射(函數(shù));Oij(gij,IMj)是從門(mén)gij到輸入信息庫(kù)所IMj的輸出映射(函數(shù));Cij={C(IMj),C(OMi)}是輸入、輸出信息庫(kù)所中托肯的色彩集合,且有Cij∈C。
OFPN網(wǎng)系統(tǒng)是一個(gè)兩層結(jié)構(gòu)模型,如圖2所示。其中,系統(tǒng)層描述了CPS的整體結(jié)構(gòu)與組件間的交互,由消息傳遞關(guān)系R定義;組件層描述了CPS傳感器、控制器、執(zhí)行器的內(nèi)部活動(dòng),由對(duì)象的OFPN模型Ob定義。
圖2 OFPN網(wǎng)系統(tǒng)
為了定義OFPN的發(fā)生規(guī)則,使其的動(dòng)態(tài)行為符合CPS的特性,可將OFPN網(wǎng)系統(tǒng)中的所有弧Fij關(guān)聯(lián)一個(gè)表達(dá)式EXPij∈EXP,且有EXP=EXPI∪EXPO,EXPI∩EXPO=?。其中,EXPI表示庫(kù)所到變遷的弧的表達(dá)式,EXPO表示變遷到庫(kù)所的弧的表達(dá)式。則OFPN的發(fā)生規(guī)則可由式(1)~式(4)給出。
(1)
(2)
(3)
(4)
其中,式(1)表示輸入庫(kù)所為Pi的變遷Tj的發(fā)生條件,是當(dāng)且僅當(dāng)Pi中托肯的顏色與C(Pi)相同且為資源類(lèi)托肯時(shí),才滿足弧Fij的表達(dá)式,從而托肯方可通過(guò)Fij流動(dòng)至Tj將其變?yōu)槭鼓?可發(fā)生)狀態(tài)。式(2)為輸入庫(kù)所是信息庫(kù)所時(shí)的特殊情況。式(3)表示Tj發(fā)生完成后,托肯被修改為資源類(lèi)且其色彩被修改為C(Pi),隨后通過(guò)Fij流動(dòng)至輸出庫(kù)所Pj。類(lèi)似地,式(4)為輸出庫(kù)所是信息庫(kù)所時(shí)的特殊情況。
基于CPS的結(jié)構(gòu)以及OFPN的相關(guān)定義,使用OFPN建模CPS及其能耗的過(guò)程可分為3步:(1)將CPS中的所有設(shè)備歸類(lèi)至傳感器、控制器、執(zhí)行器三大組件;(2)根據(jù)組件對(duì)象具體數(shù)量建立如圖2所示的OFPN網(wǎng)系統(tǒng);(3)根據(jù)OFPN中對(duì)象的定義與CPS的實(shí)際情境,擴(kuò)展網(wǎng)系統(tǒng)中的對(duì)象。
基于OPFN的可達(dá)標(biāo)識(shí)圖,可進(jìn)行CPS的能耗分析。OFPN的標(biāo)識(shí)定義為一個(gè)一維向量S,且有|S|=|P|+|IM|+|OM|,其中的每個(gè)元素是一個(gè)表示對(duì)應(yīng)庫(kù)所中的托肯數(shù)目的自然數(shù)。S0為初始標(biāo)識(shí),表示初始狀態(tài)下的托肯分布情況。由OFPN的發(fā)生規(guī)則(式(1)~式(4))可知,變遷的發(fā)生會(huì)導(dǎo)致標(biāo)識(shí)的變化,所以從初始標(biāo)識(shí)開(kāi)始,可將兩個(gè)標(biāo)識(shí)之間用以變遷標(biāo)注的有向箭頭連接,得到OFPN的可達(dá)標(biāo)識(shí)圖。
可達(dá)標(biāo)識(shí)圖給出了OFPN的全部可能所處的狀態(tài)以及它們之間的聯(lián)系(變遷),使用Petri網(wǎng)分析軟件(如PIPE)進(jìn)行仿真后可得到OFPN的可達(dá)標(biāo)識(shí)圖。在此基礎(chǔ)上,可進(jìn)行如下所示的組件能耗分析算法。該算法統(tǒng)計(jì)分析CPS中各組件產(chǎn)生的能耗的模糊值并進(jìn)行解模糊,然后將它們的最小值與最大值作為輸出。
步驟1為了統(tǒng)計(jì)CPS的各組件能耗,需得到OFPN的所有可能執(zhí)行軌跡,即在OFPN可達(dá)圖G中找出所有以S0為起(終)點(diǎn)的環(huán)路,并存儲(chǔ)為σ;
步驟2對(duì)σ中的每一個(gè)環(huán)σi,以S0為起點(diǎn),將造成標(biāo)識(shí)改變的當(dāng)前變遷T的能耗模糊值(即α截集e(α))根據(jù)其類(lèi)別(傳感器ES(α)、控制器EC(α)、執(zhí)行器EA(α))累加到當(dāng)前環(huán)σi對(duì)應(yīng)的能耗Ei中,直到再次回到S0;
以杭州西奧電梯有限公司(www.xiolift.com)的智能厚板生產(chǎn)線為例,說(shuō)明本文所提出方法的詳細(xì)執(zhí)行步驟。該CPS包括以下組件:(1)傳感器,包括一個(gè)測(cè)長(zhǎng)度傳感器,一臺(tái)工業(yè)相機(jī);(2)控制器,包括3個(gè)西門(mén)子S7-300型號(hào)的可編程邏輯控制器(Programmable Logic Controller,PLC)和1個(gè)OPC(OLE for Process Control)服務(wù)器;(3)執(zhí)行器,包括一臺(tái)村田機(jī)械M2048TS型號(hào)的沖床以及配合工作的機(jī)器人(型號(hào)為ABB的IRB-6700)、兩臺(tái)LVD折彎?rùn)C(jī)(型號(hào)分別為PPEB-220T和PPEC-220T)以及配合工作的機(jī)器人(型號(hào)為ABB的IRB-6700)、一個(gè)碼垛機(jī)器人(型號(hào)為ABB的IRB-6700)。其中部分設(shè)備如圖3所示。
圖3 厚板生產(chǎn)線部分設(shè)備
智能厚板生產(chǎn)線生產(chǎn)線負(fù)責(zé)加工成套的XOA4040KZD999型板(以下簡(jiǎn)稱(chēng)A型板)和XOA4288BBT989型板(以下簡(jiǎn)稱(chēng)B型板),該CPS的具體工作過(guò)程如下:
步驟1沖床與其機(jī)器人將A型板打孔,同時(shí)PPEB-220T折彎?rùn)C(jī)與其機(jī)器人折彎B型板;
步驟2B型板折彎完成后,PPEB-220T折彎?rùn)C(jī)與其機(jī)器人開(kāi)始折彎A型板。同時(shí),測(cè)長(zhǎng)度傳感器和工業(yè)相機(jī)將分別測(cè)量折彎完成的B型板的長(zhǎng)度和角度,并將檢測(cè)數(shù)據(jù)發(fā)送至OPC服務(wù)器。如果角度不在符合質(zhì)量要求的正確范圍內(nèi),則服務(wù)器將操作命令發(fā)送到PPEC-220T折彎?rùn)C(jī)與其機(jī)器人的PLC來(lái)根據(jù)偏差進(jìn)行角度校準(zhǔn),否則進(jìn)行下一步;
步驟3碼垛機(jī)器人將折彎完成的一塊A型板和一塊B型板碼垛為一組成品。然后,該生產(chǎn)線將從第一步開(kāi)始重復(fù)迭代,以加工后續(xù)板材。
在建立了圖2所示的OFPN頂層模型后,根據(jù)每個(gè)組件對(duì)象的任務(wù)和工作過(guò)程,可以將厚板生產(chǎn)線的OFPN網(wǎng)系統(tǒng)模型擴(kuò)展為如圖4所示架構(gòu),模型中庫(kù)所與變遷的詳細(xì)含義在表1中給出。
圖4 厚板生產(chǎn)線的OFPN網(wǎng)系統(tǒng)模型
在查閱了西奧電梯有限公司的生產(chǎn)數(shù)據(jù),并對(duì)智能厚板生產(chǎn)線中設(shè)備的能耗進(jìn)行了一系列的實(shí)地測(cè)量,以及對(duì)控制器軟件的能耗進(jìn)行測(cè)量[19]后,可得到各步驟能耗的平均值及其波動(dòng)范圍,作為三角模糊數(shù)的最可能值以及模糊系數(shù)δ的取值依據(jù)。然后,根據(jù)三角模糊數(shù)的α截集方法,將厚板生產(chǎn)線中活動(dòng)的能耗平均值進(jìn)行模糊化,作為OFPN中變遷的能耗屬性值。最后根據(jù)變遷的所屬對(duì)象進(jìn)行能耗分類(lèi),得到的結(jié)果如表2所示。其中,執(zhí)行器能耗的單位為千瓦時(shí)(kW·h),傳感器能耗的單位為焦(J),控制器能耗的單位為毫焦(mJ,1 mJ=0.001 J)。
本文需要注意OFPN模型中的變遷T4作為邏輯變遷存在,表示“B型板準(zhǔn)備碼垛”,而非某耗能活動(dòng),故其能耗不參與計(jì)算。表2中的各變遷的模糊數(shù)及其α截集表示形式可由e={0.074,0.663,0.221,0.008,0.116,25.600,0.700,0.700}及δ={0.025,0.087,0.029,0.001,0.018,1.800,0.010,0.010}導(dǎo)出。
對(duì)于CPS的能耗分析,根據(jù)圖4所示的智能厚板生產(chǎn)線的OFPN模型,利用Petri網(wǎng)分析軟件PIPE對(duì)其進(jìn)行測(cè)試后,發(fā)現(xiàn)此OFPN是有界、安全且無(wú)死鎖的,接著生成其對(duì)應(yīng)的可達(dá)圖,如圖5所示。其中,每一個(gè)狀態(tài)S代表此OFPN的一個(gè)標(biāo)識(shí),以矩形表示S0為初始狀態(tài)(標(biāo)識(shí)),以橢圓表示的為中間狀態(tài)(標(biāo)識(shí))。
圖5 OFPN的可達(dá)圖
根據(jù)本文提出的基于標(biāo)識(shí)的分組件能耗算法,可分別計(jì)算出傳感器、控制器、執(zhí)行器能耗的最小、最大以及最可能值,得到的結(jié)果如圖6和圖7所示。
圖6 傳感器、控制器能耗
圖7 執(zhí)行器能耗
從圖6中可以發(fā)現(xiàn),傳感器、控制器的能耗雖存在小幅波動(dòng)范圍,但相對(duì)較為穩(wěn)定。而圖7中執(zhí)行器的能耗分為最好情況和最壞情況,兩種情況分別又存在小幅度的波動(dòng)范圍。其原因是B型板在加工過(guò)程的中途折彎后,可能會(huì)被檢測(cè)為角度不合格板材,這時(shí)就產(chǎn)生了PPEC-220T折彎?rùn)C(jī)和機(jī)器人對(duì)其進(jìn)行角度校準(zhǔn)的額外能耗。
針對(duì)CPS組件化的特點(diǎn),本文提出了一種新的CPS能耗模型面向?qū)ο竽:齈etri網(wǎng)。在此模型中,CPS的各組件以及組件間的交互被建模為若干個(gè)對(duì)象以及對(duì)象間的通信,而CPS中能耗的不確定性則由模糊數(shù)學(xué)相關(guān)理論予以解決。得到能耗的模糊值并解模糊后,計(jì)算結(jié)果符合實(shí)際情況,進(jìn)一步驗(yàn)證了本文所提出的模型的有效性,為系統(tǒng)的長(zhǎng)期運(yùn)行與結(jié)構(gòu)調(diào)整、流程優(yōu)化提供了基礎(chǔ)。為了提高OFPN的精確度與實(shí)用性,在后續(xù)的研究中,應(yīng)當(dāng)考慮CPS中設(shè)備的故障和其他外界因素對(duì)能耗的影響,在時(shí)間等屬性上擴(kuò)展模型,并在其他領(lǐng)域的CPS進(jìn)行應(yīng)用。