關(guān)守平 王梁
新一代信息通信技術(shù)快速發(fā)展并與制造業(yè)的深度融合,引發(fā)制造業(yè)制造模式、制造流程、制造手段、生態(tài)系統(tǒng)等的重大變革,傳統(tǒng)工業(yè)控制技術(shù)也面臨新的變化.目前,工業(yè)控制上常用的控制系統(tǒng)有集中控制系統(tǒng)、分散控制系統(tǒng)、總線控制系統(tǒng)和網(wǎng)絡(luò)控制系統(tǒng),這些控制系統(tǒng)有其各自的優(yōu)勢和適用范圍[1-3],但是其共同的問題是建設(shè)和運行維護成本較高,控制算法的更新替換不靈活.近年來,云計算(Cloud computing)的興起給工業(yè)控制帶來了新的思路.
云計算是通過網(wǎng)絡(luò)提供可伸縮的廉價的分布式計算能力,是并行計算(Parallel computing)、分布式計算(Distributed computing)和網(wǎng)格計算(Grid computing)的發(fā)展[4].云計算是虛擬化(Virtualization)、效用計算(Utility computing)、將基礎(chǔ)設(shè)施作為服務(wù)IaaS (Infrastructure as a service)、將平臺作為服務(wù)PaaS (Platform as a service)和將軟件作為服務(wù)SaaS (Software as a service)等概念混合演進并躍升的結(jié)果[5],能達到10 萬億次的運算能力.在實際系統(tǒng)中,云計算首先是將大量的計算機通過網(wǎng)絡(luò)連接起來,將其虛擬化成可配置資源的共享資源池,其中包括計算、軟件、數(shù)據(jù)訪問和存儲的服務(wù),然后把計算任務(wù)加載到資源池中完成計算[6-7].終端用戶不需要了解“云”中基礎(chǔ)設(shè)施的細節(jié),不必具有相應(yīng)的專業(yè)知識,無需知道服務(wù)提供者的物理位置和具體配置就能進行使用.在這個系統(tǒng)中,電腦和其他設(shè)備通過網(wǎng)絡(luò)提供了一種服務(wù),使用戶能夠通過網(wǎng)絡(luò)訪問和使用,進行資源共享、軟件使用和信息讀取等,就如同這些設(shè)備安裝在本地.云計算系統(tǒng)的處理能力不斷提高,可以減少用戶終端的處理負擔,最終使用戶終端簡化成一個單純的輸入輸出設(shè)備,并能夠按需購買.云計算的虛擬化、多粒度(節(jié)點)、動態(tài)調(diào)度、軟計算的特性一方面使其更具高效性、開放性和可擴展性,另一方面也使得云計算具有更大的不確定性,給基于云計算的控制系統(tǒng)設(shè)計帶來了新的挑戰(zhàn).
在工業(yè)控制方案中引入云計算,形成“云控制系統(tǒng)(Cloud control system,CCS)”.在云端利用深度學習等智能算法,結(jié)合網(wǎng)絡(luò)化預測控制、數(shù)據(jù)驅(qū)動控制等方法實現(xiàn)系統(tǒng)的自主智能控制,同時利用高速通信通道保證控制的實時性[8].云控制系統(tǒng)可以在不增加硬件成本的前提下,工程師可以針對不同被控對象的不同狀態(tài),靈活地選擇云控制器中相應(yīng)的控制算法,實現(xiàn)多種被控對象的“定制化”控制.因此,云控制系統(tǒng)將是繼集中控制系統(tǒng)、分散控制系統(tǒng)、總線控制系統(tǒng)和網(wǎng)絡(luò)控制系統(tǒng)后的下一代控制系統(tǒng)新方式.
云控制系統(tǒng)最典型的特征是將控制器算法置于云端,從而形成基于云計算的遠程控制系統(tǒng).如果將云計算端用計算機來代替,就是典型的網(wǎng)絡(luò)控制系統(tǒng)結(jié)構(gòu),因此云控制系統(tǒng)是網(wǎng)絡(luò)控制系統(tǒng)的下一代遠程控制系統(tǒng).目前,針對云控制系統(tǒng),夏元清等[2,8-9]提出了云控制系統(tǒng)的基本概念,但這些框架性質(zhì)的概念有些抽象、模糊,缺少具體的控制系統(tǒng)結(jié)構(gòu)與實現(xiàn)方法;而后雖然在現(xiàn)代智能交通控制網(wǎng)絡(luò)的預測計算中有了云計算的應(yīng)用[10],但是并沒有分析云特性加入對于控制系統(tǒng)帶來的影響,不涉及控制算法的設(shè)計;國外可檢索的文獻[11]中,提出了一種視覺反饋云控制系統(tǒng),利用云計算技術(shù)強大的計算能力進行圖像的特征提取與分析,并且分析了云特性加入帶來的時延,針對云特性影響提出了切換增益控制策略,取得了較好的控制效果;但該文所涉及的問題是云計算處理圖像反饋信息帶來的時延問題,控制系統(tǒng)結(jié)構(gòu)本質(zhì)上還是常規(guī)的反饋控制系統(tǒng),與本文的云控制系統(tǒng)概念和結(jié)構(gòu)有本質(zhì)的區(qū)別.文獻[12]研究了基于云的控制系統(tǒng)的網(wǎng)絡(luò)通信要求,分析了不同使用背景下的云控制系統(tǒng)通信要求并提出了解決方案;但該文并沒有涉及針對通訊時延等特性的建模和控制器設(shè)計問題.在云計算應(yīng)用方面,文獻[13-14]提出了一種基于云的全新虛擬實驗室教學平臺,利用云存儲平臺提供學習資料的共享,學生遠程控制虛擬機執(zhí)行實驗任務(wù);但側(cè)重于云平臺的應(yīng)用,并沒有涉及到控制問題.因此,目前針對云控制系統(tǒng)的研究以概述性介紹和應(yīng)用為主,建模與控制問題的研究很少,缺乏統(tǒng)一的云控制系統(tǒng)框架,缺乏對云控制系統(tǒng)不確定性問題的分析,也沒有針對云控制系統(tǒng)建立一個普遍適用的模型,因此有必要基于本文所定義的云控制系統(tǒng)結(jié)構(gòu),從控制的角度對云控制系統(tǒng)進行深入的分析和研究.
本文從實際應(yīng)用的角度出發(fā),提出了一種云控制系統(tǒng)的通用結(jié)構(gòu),通過深入分析云控制系統(tǒng)內(nèi)部特性,將云控制系統(tǒng)不確定性分解為云端不確定性和網(wǎng)絡(luò)端不確定性,實現(xiàn)了云控制系統(tǒng)不確定性的有效分解;基于上述分解原則,針對典型的時延不確定性問題,分別對云端和網(wǎng)絡(luò)端進行時延分析,然后將兩者疊加獲得了通用的云控制系統(tǒng)時延模型;基于建立的云控制系統(tǒng)時延特性模型,采用極點配置方法設(shè)計了云控制系統(tǒng)的控制器,從而保證了閉環(huán)系統(tǒng)的穩(wěn)定性.典型環(huán)節(jié)的仿真證明了本文所提出方法的有效性.
縱觀目前控制系統(tǒng)的設(shè)計以及所使用的各種控制系統(tǒng),即從集中控制系統(tǒng),分散控制系統(tǒng),總線控制系統(tǒng)到網(wǎng)絡(luò)控制系統(tǒng),主要圍繞“控制器”這一核心進行系統(tǒng)設(shè)計和軟硬件配置,工程師主要的焦點是運行各種控制算法的計算機,而被控對象(或過程)則一般置于遠端,控制系統(tǒng)結(jié)構(gòu)如圖1 所示.在這種控制系統(tǒng)結(jié)構(gòu)中,為了提高控制器的性能,需要在計算機控制系統(tǒng)軟硬件配置上不斷提高;另外,信號的遠距離傳輸也需要鋪設(shè)大量的電纜等,因此控制系統(tǒng)的建設(shè)和運行維護成本較高.
而基于云計算的控制系統(tǒng)結(jié)構(gòu),則如圖2 所示,其核心理念是使控制系統(tǒng)設(shè)計圍繞被控對象(或過程)進行,而將控制器置于遠方,工程師的主要焦點是被控對象,而不是控制器(計算機),這有利于工程師對被控對象實時狀態(tài)的把控.高速通訊信道和云計算的出現(xiàn)為這種控制系統(tǒng)結(jié)構(gòu)提供了可能性,工程師可以將各種控制器(控制算法,優(yōu)化算法等)置于遠方的“云”中,構(gòu)成云控制器[15],而被控對象端只需要通過高速通訊信道發(fā)送現(xiàn)場檢測信號和接收遠方控制信號即可.
圖2 云控制系統(tǒng)結(jié)構(gòu)Fig.2 The structure of CCS
云控制系統(tǒng)的一種具體實現(xiàn)結(jié)構(gòu)如圖3 所示.在云端服務(wù)器建立數(shù)據(jù)庫、控制算法庫、優(yōu)化算法庫等,彼此互相連接,通過服務(wù)器軟件進行云端管理.云端服務(wù)器通過互聯(lián)網(wǎng)與各個被控對象端進行信息交換.被控對象端頂層為互聯(lián)網(wǎng)通信接口,中層為檢測器與執(zhí)行器,底層為被控對象.檢測器實時檢測底層被控對象的各個狀態(tài)變量,并通過通信端口提交至云端服務(wù)器;執(zhí)行器依據(jù)通信端口接收從云端傳來的控制信號,進而對被控對象的各操作變量進行實時控制.監(jiān)控端可以是移動設(shè)備終端(如手機等)或者計算機,通過互聯(lián)網(wǎng)與云端進行信息交換,供工程師實時監(jiān)控被控對象的運行狀態(tài).
圖3 云控制系統(tǒng)實現(xiàn)結(jié)構(gòu)Fig.3 The realization structure of CCS
該結(jié)構(gòu)可以有效克服現(xiàn)有控制系統(tǒng)控制算法更新替換不靈活、對于系統(tǒng)硬件要求高的問題,使控制系統(tǒng)設(shè)計更加靈活方便.在不增加硬件成本的前提下,工程師可以針對不同被控對象的不同狀態(tài),靈活地選擇云控制器中相應(yīng)的控制算法,實現(xiàn)多種被控對象的“定制化”控制.云控制器的提出和使用,有可能像本世紀初網(wǎng)絡(luò)控制系統(tǒng)的出現(xiàn)一樣,給控制理論的研究帶來新的方向和課題,促進控制理論自身的不斷完善和發(fā)展.
對圖3 所示的典型云控制系統(tǒng)結(jié)構(gòu)進行簡化,得到云控制系統(tǒng)理論結(jié)構(gòu)模型如圖4 所示,該結(jié)構(gòu)由云端、網(wǎng)絡(luò)端和對象端三部分組成.實際上,如果將云端用一臺計算機來代替,圖4 就是一種典型的網(wǎng)絡(luò)控制系統(tǒng)理論模型[16].
圖4 云控制系統(tǒng)理論結(jié)構(gòu)模型Fig.4 The theoretical structural model of CCS
從圖4 可以看出,云控制系統(tǒng)可以認為是云計算與網(wǎng)絡(luò)控制系統(tǒng)的融合,包括了網(wǎng)絡(luò)控制系統(tǒng)的全部特性.網(wǎng)絡(luò)控制系統(tǒng)本身由于網(wǎng)絡(luò)的存在而具有不確定性,云控制系統(tǒng)由于云計算的加入而進一步增加了系統(tǒng)的不確定性,其主要原因是云計算平臺負載動態(tài)變化,計算資源也動態(tài)變化,多種資源動態(tài)變化導致云計算系統(tǒng)不確定性的存在.眾多不確定性的混合給云控制系統(tǒng)的建模和控制研究增加了難度.
因此為了便于分析,本文對云控制系統(tǒng)不確定性進行分解,如圖5 所示,認為云控制系統(tǒng)存在兩個不確定性:云端不確定性和網(wǎng)絡(luò)端不確定性.二者結(jié)合形成整個云控制系統(tǒng)的不確定性.這種分解策略的優(yōu)點是:可以充分利用網(wǎng)絡(luò)控制系統(tǒng)的理論成果(如網(wǎng)絡(luò)控制系統(tǒng)的時延模型),集中精力進行云控制系統(tǒng)的不確定分析;在此基礎(chǔ)上,將兩種不確定性模型按照某種原則有效結(jié)合,從而建立云控制系統(tǒng)的不確定性模型,簡化云控制系統(tǒng)不確定性建模的難度.
圖5 云控制系統(tǒng)不確定性分解圖Fig.5 The uncertainty division diagrgam of CCS
云控制系統(tǒng)中由于云計算這一動態(tài)資源的加入,相較網(wǎng)絡(luò)控制系統(tǒng),不確定性更多,如時延不確定性[15]、丟包現(xiàn)象[1]、時序錯亂現(xiàn)象[17]等,其中時延的不確定性由于云計算中資源的動態(tài)調(diào)度更加突出,是一種最主要的不確定特性.因此本文重點對時延不確定性進行分析和建模.
對一個控制系統(tǒng)而言,根據(jù)控制器的位置可以將時延分為兩部分:前向通道時延(也稱前向時延)和反饋通道時延(也稱反饋時延).前向通道指的是由控制器的輸出到執(zhí)行器的輸入;反饋通道指的是由傳感器的輸出到控制器的輸入.前向時延的存在使得被控對象不能實時地接收控制器發(fā)出的控制信息,而反饋時延的存在使得系統(tǒng)狀態(tài)不能得到及時的反饋,兩個時延對于系統(tǒng)的影響是不一樣的.
與網(wǎng)絡(luò)控制系統(tǒng)相比,云控制系統(tǒng)時延分析更加復雜,主要體現(xiàn)在如下幾個方面:
1)網(wǎng)絡(luò)控制系統(tǒng)的組成中,當傳感器到控制器,或者控制器到執(zhí)行器的連接不是網(wǎng)絡(luò)連接時,則不必考慮網(wǎng)絡(luò)特性(網(wǎng)絡(luò)時延),這樣就會大大簡化控制器設(shè)計[18].但是在云控制系統(tǒng)設(shè)計中,這種假定不存在,因為傳感器或者執(zhí)行器與云端的連接必須通過網(wǎng)絡(luò),因此網(wǎng)絡(luò)特性更加復雜.
2)網(wǎng)絡(luò)控制系統(tǒng)中為了研究問題方便,通常將前向通道時延和反饋通道時延合并,成為一個總的時延,置于前向通道當中[19].但是這種合并是有前提的,即控制器的結(jié)構(gòu)和參數(shù)不隨時間改變.這種假設(shè)在云控制系統(tǒng)中不一定成立,因為云計算本身的不確定性使控制器模型也具有不確定性,因此云控制系統(tǒng)前向通道時延和反饋通道時延要分開考慮;進一步,甚至網(wǎng)絡(luò)端時延和云端時延也應(yīng)該分開考慮,因為網(wǎng)絡(luò)端的時延是數(shù)據(jù)傳輸?shù)臅r延,而云端的時延是計算時延.
3)一般來說,云端的可靠性要遠遠大于網(wǎng)絡(luò)端的可靠性,因此云端的時延不確定性一般會服從某一概率分布,較少會發(fā)生極端情況;以丟包為例,云端丟包的概率會很小,而網(wǎng)絡(luò)端的丟包概率會很大,一旦發(fā)生丟包現(xiàn)象,則網(wǎng)絡(luò)端時延就會取極值(最大情況).
因此綜合考慮云端和網(wǎng)絡(luò)端不確定性的時延模型更加復雜.本文基于云控制系統(tǒng)結(jié)構(gòu)分解分別分析了云控制系統(tǒng)云端和網(wǎng)絡(luò)端的前向時延和反饋時延產(chǎn)生的原因,為了簡單起見,將兩者疊加構(gòu)成整個云控制系統(tǒng)的前向時延和反饋時延,并分別考慮兩個時延對于云控制系統(tǒng)中控制器設(shè)計的不同影響,以更加適合云控制系統(tǒng)的結(jié)構(gòu)特性.
云端環(huán)境復雜,云控制系統(tǒng)數(shù)據(jù)處理、傳輸、調(diào)度、存儲等都是在云端完成的,云端任務(wù)執(zhí)行的復雜性給云端時延分析帶來很大難度.一般來說,云端任務(wù)執(zhí)行原理采用的是MapReduce 架構(gòu)[20-21],近幾年Jstorm 架構(gòu)逐漸興起,但是Jstorm 也是基于MapReduce 原理給出的,而且目前沒有得到廣泛應(yīng)用,因此本文主要分析云端MapReduce 任務(wù)執(zhí)行架構(gòu).
為了便于時延分析,本文基于MapReduce 任務(wù)執(zhí)行架構(gòu)給出云端任務(wù)執(zhí)行模型,基于該執(zhí)行模型進行云端時延分析.
MapReduce 任務(wù)執(zhí)行架構(gòu)如圖6 所示,圖中給出的是具有5 個輸入端口和3 個輸出端口的Map-Reduce 架構(gòu),實際應(yīng)用中可以根據(jù)任務(wù)類型靈活選擇MapReduce 架構(gòu)輸入端口和輸出端口數(shù)目.Map-Reduce 架構(gòu)下對于任務(wù)處理主要包括圖6 所示的5 個階段.任務(wù)輸入(Input)到云端主節(jié)點后,主節(jié)點負責接收任務(wù)并對任務(wù)進行分割(Split),然后把分割后的任務(wù)映射(Map)給從節(jié)點,同時監(jiān)控從節(jié)點的任務(wù)執(zhí)行情況.從節(jié)點執(zhí)行分配的計算任務(wù)并將計算結(jié)果輸出.從節(jié)點的計算結(jié)果輸出后會被按照一定的規(guī)則進行變換(Shuffle),然后送到相應(yīng)的Reduce 分區(qū)進行規(guī)約(Reduce),最終將規(guī)約結(jié)果輸出(Output),任務(wù)執(zhí)行完成.
圖6 MapReduce 任務(wù)執(zhí)行架構(gòu)Fig.6 The task execution architecture under MapReduce
因此,MapReduce 任務(wù)執(zhí)行架構(gòu)的主要思想就是對復雜任務(wù)進行分割后分配給多個從節(jié)點進行計算,提高任務(wù)的執(zhí)行效率.它對于任務(wù)的執(zhí)行主要包含兩個階段:任務(wù)映射階段和規(guī)約階段[22].云端的時延也是在這兩個階段產(chǎn)生的.為了便于時延的分析,本文給出了云端基于MapReduce 任務(wù)執(zhí)行模型如圖7 所示.
圖7 云端基于MapReduce 任務(wù)執(zhí)行模型Fig.7 The task execution model under MapReduce in the cloud-end
在該模型中,云端主要包含3 類節(jié)點:主節(jié)點CT,從節(jié)點Ci(i=1,2,···,M),規(guī)約節(jié)點Rj(j=1,2,···,K).具體任務(wù)執(zhí)行過程如下:復雜任務(wù)以任務(wù)隊列的形式進入云端主節(jié)點,主節(jié)點接收任務(wù)并將復雜任務(wù)隊列分割成N個任務(wù)塊D1,D2,···,Dg,任務(wù)塊被均勻地映射到g個從節(jié)點執(zhí)行,其他任務(wù)塊在主節(jié)點等待,等D1,D2,···,Dg任務(wù)塊執(zhí)行完畢后,Dg+1,···,DN任務(wù)塊也會被依次均勻映射到g個從節(jié)點執(zhí)行,所有任務(wù)塊執(zhí)行完畢后,任務(wù)映射階段結(jié)束.從節(jié)點執(zhí)行結(jié)果均勻分配到規(guī)約節(jié)點Rj進行規(guī)約輸出,規(guī)約完畢后,規(guī)約階段結(jié)束.至此云端任務(wù)執(zhí)行過程結(jié)束.
云端基于MapReduce 任務(wù)執(zhí)行模型是在認為各種資源是靜態(tài)的情況下進行分析的,而實際上,每個采樣時刻輸入云端的任務(wù)隊列是動態(tài)的,計算資源也是動態(tài)的.因此,將動態(tài)因素加入云端基于MapReduce 任務(wù)執(zhí)行模型,建立基于MapReduce動態(tài)任務(wù)執(zhí)行模型,此時主節(jié)點的作用除了任務(wù)映射外還包括任務(wù)管理[23].任務(wù)隊列傳輸?shù)街鞴?jié)點后,主節(jié)點會根據(jù)任務(wù)的大小將任務(wù)隊列分割為n個任務(wù)塊,并在云端發(fā)送控制任務(wù)要求,包括完成任務(wù)所需計算資源以及相應(yīng)的控制算法,云端所有從節(jié)點都可以接收這個要求.
CT發(fā)送控制要求,當有空閑從節(jié)點接收到要求后,對要求進行核實能夠滿足控制要求時,Ci會向主節(jié)點CT發(fā)送狀態(tài)反饋,反饋包含以下內(nèi)容[21]:1)任務(wù)傳輸?shù)綇墓?jié)點Ci的傳輸時延τi以及可能丟包數(shù)Pi; 2)從節(jié)點Ci可用計算能力CCAi.
當Ci的反饋信息到達CT后,CT會利用預先設(shè)定好的優(yōu)先級評估函數(shù)Si對Ci的優(yōu)先級進行評估,具體優(yōu)先級評估函數(shù)見式(1)[23]
式中,α,β,γ參數(shù)值分別代表傳輸時延、可能丟包數(shù)以及可用計算能力在優(yōu)先級評估中所占的權(quán)值,參數(shù)值越大說明該參數(shù)代表的內(nèi)容對優(yōu)先級影響越大,實際應(yīng)用中可以根據(jù)優(yōu)先級需要調(diào)整參數(shù)值.f(τi),g(Pi),h(CCAi)為離差標準化歸一化函數(shù),以g(Pi)為例進行歸一化函數(shù)介紹.假設(shè)M個節(jié)點的可能丟包數(shù)分別為P1,P2,···,PM,其中最大丟包數(shù)為Pmax,最小丟包數(shù)為Pmin,則歸一化后的第i個節(jié)點的可能丟包數(shù)為=(Pi-Pmin)/(Pmax-Pmin),歸一化后的在[0,1]范圍內(nèi)取值.對傳輸時延以及可用計算能力采用同種方法進行歸一化處理.總之,傳輸時延τi越短,可能丟包數(shù)Pi越小,可用計算能力CCAi越高,則Ci優(yōu)先級越高.
主節(jié)點CT將收到的所有愿意從節(jié)點的優(yōu)先級進行排序[23],具體排序內(nèi)容見表1.排序后主節(jié)點會選擇排在前g位的從節(jié)點分配任務(wù)并執(zhí)行.
表1 愿意節(jié)點列表Table 1 The list of willing modes
每個采樣時刻,主節(jié)點CT都會根據(jù)當前任務(wù)隊列需求,決定該時刻任務(wù)隊列分割數(shù)量n以及所需從節(jié)點數(shù)g,并向所有從節(jié)點發(fā)送要求.所有活動的從節(jié)點都會向CT發(fā)送反饋,CT依據(jù)從節(jié)點反饋信息根據(jù)優(yōu)先級進行從節(jié)點的更替.因此本文所給的基于MapReduce 動態(tài)任務(wù)執(zhí)行模型是一個動態(tài)管理過程,主節(jié)點CT不斷尋找愿意從節(jié)點,刪除并替換失效從節(jié)點,該模型符合云端各種資源動態(tài)變化的特點.
云端資源動態(tài)變化給云端時延帶來很大的不確定性.為了便于分析,在對基于MapReduce 動態(tài)任務(wù)執(zhí)行模型下信息傳遞時延進行分析前,先做如下假設(shè):1)每次任務(wù)執(zhí)行中,任務(wù)隊列都是均勻分割的;2)每個從節(jié)點的計算能力是一致的;3)任務(wù)隊列均勻地分配給從節(jié)點和規(guī)約節(jié)點.
接下來進行時延分析.從圖7 可以看出,假設(shè)某個采樣時刻任務(wù)隊列進入主節(jié)點后被分割為n個任務(wù)塊,并依次被分配到g個從節(jié)點.如果一個任務(wù)隊列在一個從節(jié)點計算所用的時間為TC,則在g個從節(jié)點計算所用時間為
從節(jié)點將計算結(jié)果輸送給規(guī)約節(jié)點進行任務(wù)計算結(jié)果的規(guī)約輸出,假設(shè)一個任務(wù)塊的規(guī)約時間為TI,一共有r個規(guī)約節(jié)點,則n個任務(wù)塊的規(guī)約時間為
可以看出云端時延為任務(wù)塊數(shù)n、從節(jié)點數(shù)g以及任務(wù)規(guī)約節(jié)點數(shù)r的函數(shù),不同的n,g和r的取值會獲得不同的云端時延.本文所給出的云端基于MapReduce 動態(tài)任務(wù)執(zhí)行模型,充分考慮了云端資源的動態(tài)變化,基于此分析的時延也是動態(tài)不確定的,符合云端的特征.
在一般網(wǎng)絡(luò)傳輸過程中,信息從源節(jié)點發(fā)送至目的節(jié)點主要包括3 個過程:源節(jié)點、網(wǎng)絡(luò)傳輸、目的節(jié)點[24].具體時延組成如圖8 所示.
圖8 一般網(wǎng)絡(luò)傳輸時延組成圖Fig.8 The delay composition graph of general network transmission
定義源節(jié)點內(nèi)的處理器時延為Tsp,源節(jié)點內(nèi)通信等待時延為Tsw,網(wǎng)絡(luò)傳輸時延為Tnet-transfer,目的節(jié)點內(nèi)通信等待時延為Tdw,目的節(jié)點內(nèi)處理器時延為Tdp.
在云控制系統(tǒng)中,采集信息和控制信息的傳輸是通過網(wǎng)絡(luò)實現(xiàn)的.但是與一般網(wǎng)絡(luò)不同,云控制系統(tǒng)中反饋通道的目的節(jié)點和前向通道的源節(jié)點在云端,相應(yīng)的處理器時延以及通信等待時延已經(jīng)在云端分析.因此,這里基于現(xiàn)有的一般網(wǎng)絡(luò)傳輸時延組成,給出云控制系統(tǒng)網(wǎng)絡(luò)端時延組成如圖9所示.
圖9 云控制系統(tǒng)網(wǎng)絡(luò)端傳輸時延組成圖Fig.9 The delay composition graph of the network-end in the CCS
云控制系統(tǒng)特性是云端特性和網(wǎng)絡(luò)端特性的綜合,因此時延特性也是兩者的結(jié)合.這里采用疊加策略,認為云端時延和網(wǎng)絡(luò)端時延是相互獨立的,因此云控制系統(tǒng)前向時延τca和反饋時延τsc分別為
基于以上分析,得到具有前向通道時延和反饋通道時延,綜合考慮網(wǎng)絡(luò)特性和云特性的云控制系統(tǒng)時延模型結(jié)構(gòu),如圖10 所示.
圖10 云控制系統(tǒng)時延模型結(jié)構(gòu)Fig.10 The structure of CCS time-delay model
基于狀態(tài)空間模型的極點配置設(shè)計方法,其控制器設(shè)計包含兩部分:觀測器和控制律.觀測器主要根據(jù)傳感器輸出進行狀態(tài)重構(gòu),然后基于重構(gòu)的狀態(tài)進行控制律設(shè)計.分離性原理說明觀測器和控制律可以獨立設(shè)計,綜合應(yīng)用,可以保證系統(tǒng)的穩(wěn)定性和控制系統(tǒng)的指標基本不變.本文據(jù)此進行觀測器和控制律設(shè)計,并充分考慮云特性的加入對于觀測器和控制律設(shè)計的影響.
假設(shè)包含傳感器和執(zhí)行器的廣義被控對象的狀態(tài)空間模型為
其中,x(t)∈Rn,u(t)∈R,y(t)∈R 分別為系統(tǒng)狀態(tài)、系統(tǒng)輸入和系統(tǒng)輸出,A,B,C為具有相應(yīng)維數(shù)的常矩陣.
基于圖10 所示系統(tǒng)設(shè)計控制器如圖11 所示.這里將云控制系統(tǒng)的時延不確定性納入到控制器的設(shè)計中,通過控制器的設(shè)計來克服這些不確定性的影響,而對于廣義被控對象來說,模型保持式(10)不變,這是從被控對象的角度來審視控制器的.如果從控制器的角度來審視被控對象,則可以將云控制系統(tǒng)的不確定性納入被控對象模型中,對式(10)的模型進行修正,納入時延不確定性的影響,然后針對修正后的不確定模型設(shè)計控制器.
圖11 帶有控制器的云控制系統(tǒng)結(jié)構(gòu)Fig.11 The structure of CCS with controller
觀測器進行狀態(tài)重構(gòu)后會將其輸入到控制律,計算出的控制量通過網(wǎng)絡(luò)到達執(zhí)行器.由于前向通道時延的影響,t時刻到達被控對象的控制量是基于t-τca時刻的重構(gòu)狀態(tài)獲得的,因此控制律設(shè)計為
式中,L=[l1,l2,···,ln] 為控制律增益矩陣.不同于一般網(wǎng)絡(luò)控制系統(tǒng)將前向時延和反饋時延疊加組成一個總的時延,本文進行觀測器和控制律設(shè)計時,根據(jù)云控制系統(tǒng)實際情況分別考慮了前向時延和反饋時延的影響,其中,式(11)的狀態(tài)觀測器中考慮了反向時延,式(12)的控制律中考慮了前向時延,因此更加符合云控制系統(tǒng)的實際特性.
定義誤差向量e(t)=x(t)-(t),將式(12)代入狀態(tài)空間表達式,則有
由式(13)和式(15)可得帶有觀測器和控制律的閉環(huán)系統(tǒng)方程式為
求解上述2n個方程組,可以最終獲得系統(tǒng)狀態(tài)觀測器增益K和控制律增益L.
式(23)存在唯一解是需要滿足一定條件的.進一步將式(23)整理,可得
由線性代數(shù)相關(guān)知識可知,式(24)有唯一解的充分必要條件是2n個線性方程組線性獨立,即F2n×2n行滿秩:r ank(F2n×2n)=2n.
為了檢驗本文設(shè)計的云控制器性能,下面通過典型環(huán)節(jié)的仿真實驗進行驗證.假設(shè)廣義被控對象的狀態(tài)空間表達式為
實際云控制系統(tǒng)中時延是動態(tài)變化的,本文仿真過程中假設(shè)隨機時延服從高斯分布,即τ~N(μ,σ2).高斯曲線下P{|τ -μ|<3σ}=0.9974,因此可以認為隨機時延τ主要在 (μ-3σ,μ+3σ)范圍內(nèi)取值,μ+3σ為時延取值區(qū)間的最大值,并且μ-3σ=0,即 (μ-3σ,μ+3σ)等價于 ( 0,τmax).
為了檢驗云特性加入對于控制系統(tǒng)的影響,首先對常規(guī)狀態(tài)反饋控制系統(tǒng)進行仿真,其次將云特性加入常規(guī)控制系統(tǒng),先分別設(shè)置云特性前向和反饋最大時延為10 ms,使兩個時延均在(0,10)ms內(nèi)呈高斯分布變化;再分別將云特性前向和反饋最大時延增大到20 ms,使兩個時延均在(0,20)ms內(nèi)呈高斯分布變化.應(yīng)用常規(guī)極點配置進行常規(guī)控制器設(shè)計,根據(jù)時域指標:調(diào)節(jié)時間和超調(diào)量,選定一對主導極點,將其他4 個輔助極點選定在遠離主導極點的位置.取調(diào)節(jié)時間0.6 s,超調(diào)量5%,從而可以確定一對主導極點s1,2=-5±7.5 j,將其他4個輔助極點選定在遠離主導極點的位置s3=-30,s4=-32,s5=-34,s6=-36.由此求得系統(tǒng)期望的閉環(huán)特征方程.設(shè)常規(guī)控制系統(tǒng)觀測器和控制律增益矩陣為K=[k1, k2, k3]T,L=[l1,l2,l3],另外根據(jù)式(10)利用常規(guī)狀態(tài)觀測器和控制律設(shè)計方法可以求得系統(tǒng)包含控制器的實際的閉環(huán)特征方程,根據(jù)對應(yīng)項系數(shù)相等可以求得常規(guī)觀測器矩陣以及控制律矩陣分別為K=[128,1 826,87]T,L=[5.8,4.5,56].將求得的觀測器以及控制律分別代入常規(guī)控制系統(tǒng)、短時延云特性系統(tǒng)以及長時延云特性系統(tǒng).對比常規(guī)控制器下不同時延云特性的加入對于控制效果的影響,具體仿真效果如圖12 所示,圖中響應(yīng)最平滑的曲線是常規(guī)控制系統(tǒng)的響應(yīng)曲線,振蕩最劇烈的曲線是加入長時延云特性的響應(yīng)曲線,響應(yīng)比較穩(wěn)定但是帶有毛刺的曲線是加入短時延云特性的響應(yīng)曲線.為了使仿真效果更加明顯,對圖12 初始時刻以及穩(wěn)態(tài)時刻的曲線進行了放大.從圖中可以看出,無論是短時延云特性還是長時延云特性,它們的加入延緩了系統(tǒng)的響應(yīng),系統(tǒng)的響應(yīng)速度明顯變慢,響應(yīng)曲線也不再平滑.另外,短時延云特性的加入使得系統(tǒng)的穩(wěn)態(tài)誤差增大,長時延云特性的加入使得系統(tǒng)響應(yīng)難以達到穩(wěn)態(tài).仿真結(jié)果說明云特性的加入對于系統(tǒng)控制效果的影響是比較大的,有必要基于云特性進行控制器的設(shè)計.
圖12 云特性影響控制效果對比圖Fig.12 The contrast graph of cloud characteristics influencing control effect
分別將求得的參數(shù)代入前述控制系統(tǒng)中,檢驗本文設(shè)計的控制器對于短時延和長時延云特性控制系統(tǒng)的控制效果,如圖13 和圖14 所示,兩個圖中較為平滑的曲線是加入控制器后的響應(yīng)曲線.為便于對比,將圖12 中的不考慮云特性的控制系統(tǒng)響應(yīng)曲線重畫于圖13 和圖14 中,兩個圖中較為粗糙的曲線是加入控制器前的曲線.
圖13 短時延云特性控制器控制效果對比圖Fig.13 Contrast graph of control effect of short time-delay cloud characteristic controller
圖14 長時延云特性控制器控制效果對比圖Fig.14 Contrast graph of control effect of long time-delay cloud characteristic controller
從圖13 中可以看出,基于短時延云特性設(shè)計的控制器能夠有效補償短時延云特性的引入對于控制系統(tǒng)的影響,與常規(guī)控制器相比,云特性控制器的響應(yīng)曲線更加平滑,并且從局部放大圖可以看出,對于頻繁的云特性隨機時延變化,云特性控制器響應(yīng)曲線趨于穩(wěn)定,說明它能夠及時補償時延的動態(tài)變化.從圖14 可以看出,基于長時延云特性設(shè)計的控制器使得原本發(fā)散的系統(tǒng)趨于穩(wěn)定,并且有效地減小了系統(tǒng)的振蕩程度.短時延云特性和長時延云特性對比仿真實驗說明了本文提出的云特性控制器設(shè)計方法能夠有效補償長短時延云特性的加入對于控制系統(tǒng)的影響.
本文給出了一種典型云控制系統(tǒng)結(jié)構(gòu),提出了對云控制系統(tǒng)的不確定性分解策略,并據(jù)此進行了云端和網(wǎng)絡(luò)端的時延分析,從而建立了云控制系統(tǒng)時延模型.在充分考慮前向時延和反饋時延特性對控制系統(tǒng)產(chǎn)生不同影響的情況下,應(yīng)用極點配置方法進行了云控制系統(tǒng)控制器設(shè)計.典型環(huán)節(jié)的仿真對比實驗證明了本文基于云特性所設(shè)計的控制器的有效性.
本文所做的研究工作屬于云控制系統(tǒng)建模和控制問題的初步探索,仍然存在很多不足.例如,為了便于時延分析,本文對云端結(jié)構(gòu)進行了簡化,忽略了云端部分時延;本文基于時延進行控制器設(shè)計本質(zhì)上是基于時延上界的前提下進行的,因此設(shè)計偏于保守;可以考慮云端時延和網(wǎng)絡(luò)端時延在相同或不同隨機分布條件下的動態(tài)建模和控制問題,以及其他不確定性(如丟包、時序錯亂等)條件下的云控制系統(tǒng)建模和控制器設(shè)計問題.這些都是未來云控制系統(tǒng)所要解決的問題,也是我們下一步的研究方向.