專利名稱:具有短執行時限的魯棒系統控制方法
技術領域:
本發明涉及關鍵自動系統的控制。本發明應用于穩定性是關鍵問題的魯棒 (robust)自動系統,比如航空電子系統。
背景技術:
關鍵安全產品,比如航空電子產品,通常根據嚴格的安全規范進行開發。這些安全規范包括系統定時行為的確定和預測。通常,總體開發方法是基于控制設計和實現關注事項的分離。
在控制設計期間,重要的問題是保持具有等距樣本且無抖動的恒定采樣率,以及具有可忽略不計的、或者固定已知的延遲。而且,根據實時調度理論,其主要地著重于為資源標注尺寸以滿足時限(或者等價地,著重于針對給定資源的調度分析)。
通常,在運行期間,系統的每個資源都被分配了時隙用以響應請求。如果資源響應過遲,則響應將不被考慮。例如,考慮飛行命令,如果飛行員輸出命令來啟動發動機電源,則將時隙分配給發動機電源控制系統以將命令施加到發動機。如果在時隙結束之前仍沒有施加命令,則控制系統可以被認為是有故障的并且飛機的總體安全系統可以選擇輔助的發動機功率控制系統。
在計算機科學和實時調度領域,主要目標在于考慮固定時段和硬時限的情況下來實現這些控制任務。通常這些時限被選擇為等于或大于“WCET”(最壞情況執行時間的縮寫)。必須精確地獲知WCET以保證系統的安全工作。
這種假設適用于控制和調度設計之間的分離,但是卻導致了計算資源(CPU資源) 的非最佳使用,并且該方法面臨技術、經濟、和工業的挑戰。
現有技術方法中的一個最嚴峻挑戰是用于標注系統尺寸所需的WCET的確定。結果的可靠性與處理單元的可預測性相關聯。
即將生產的處理器似乎偏離了執行時間的可預測性和決定性目標。由于新處理器的加速卻難預料的機制,處理速度和性能快速增長,但是變得難于預測對在最壞情況下考慮的執行時間的影響。現今,雖然提出了多種嘗試來確定WCET的上限,但是傳統和當前的方法都難應用于現今處理器世代,并且產生出悲觀的值,也就是說會導致系統運行過于保守的值。
然后,為了實現控制規則,現有技術的不靈活和昂貴的方法包括,從硬件、操作系統和通信協議方面構建高度確定的系統,使得實際的執行參數滿足理想值。實質上,單純基于WCET和硬時限因素的實施方式是保守的,并且導致計算和網絡資源的非最優使用,并且最終導致電源、冷卻系統和重量過大。
當前的實時系統設計方法和相關的分析工具不能提供足夠靈活的模型來很好地適應控制系統需求。而且,經典控制理論并沒有教導如何在設計和實施階段中將資源和依賴性約束包含到控制器中。
總之,用于自動系統的現有技術控制技術實施用于控制任務執行的硬時限并且不允許錯過任何時限。此外,由于大部分時間中任務完全能夠在WCET時限之前輸出結果,因此WCET方法并不允許CPU資源的最優使用。(換句話說,任務執行持續時間達到WCET的情況是非常不常見的)。
所以,需要優化關鍵自動系統中的計算機資源。發明內容
根據本發明的第一方面,提供一種控制系統的方法,包括如下步驟
-發起任務,所述任務與最壞情況執行時間相關聯;以及
-在分配給所述任務的執行的時隙之后,檢測所述任務的結束;
其中所述時隙比所述最壞情況執行時間短。
所以,在檢查任務是否結束之前以及在執行后續動作之前,并不系統地等待最壞情況執行時間(WCET)逝去。這導致計算能力方面的節省。
事實上,WCET幾乎總是大于執行時間,尤其是對于安全關鍵應用。因此,在絕大多數任務執行中,任務在WCET結束之前就良好地結束。任務結束和WCET結束之間的時間與被分配給任務執行的資源(如處理器)不被使用期間的時間相對應。
發明人發現該時間可被減少以使得可以優化計算資源。該時間可以被用于執行其它任務,由此增強了系統的處理效率。系統還可以被標定為具有更少計算機資源的尺寸,由此節省了與冗余計算資源相關的成本,所述冗余計算資源通常提供在系統中作為用于不常見情況的備用資源,在所述不常見情況下,由于使用大于WCET的執行時間來執行任務所以檢測到了設備故障。還可以在系統中節約能量并且還可以減少體積和重量。
發明人發現自動系統中分配給任務執行的執行時隙可以比WCET短,同時保持系統的性能
事實上,在考慮到閉環控制系統的情況下,可以通過利用反饋回路的基本特征 (相對于建模不確定性的魯棒性、抗擾性以及對各種操作條件的適應性),來實施更為靈活的解決方案。反饋控制器的魯棒性還意味著相對于與理想定時圖案(例如等距采樣)的偏差的某些容錯。這一特征可以有效地用于保證在弱化實時約束的情況下的端到端控制質量,即穩定性和性能水平,從而改善了總的計算能力平均利用。
發明人因此提供一種用于實時反饋控制器的“弱化(weakened) ” (即,不像必需嚴格遵守WCET的現有技術中那樣硬性)實施方案。本發明減少了由于傳統的最壞情況考慮因素導致的保守性,同時保持系統的穩定性和控制性能。
基于用于采用延遲的和采樣數據輸入來評估線性系統的穩定性的新方法,本發明考慮控制任務錯過的時限的影響以及受控系統(或設施)中的不確定性。
本發明“弱化”實時約束并且使得能夠在保持系統穩定性的同時節省計算能力。
如果任務在系統中執行,則可以在初步統計分析期間確定最壞情況執行時間。例如,任務被發起給定次數并且監視和存儲執行時間。任務的執行條件可以改變以便考慮壞的和好的系統操作條件(例如硬件故障或軟件錯誤的仿真)。在分析期間測量的最長執行時間因此對應于最壞情況執行時間。
任務可以對應于計算機程序(如計算方法)的實例,例如,要由用于實施計算代碼的一個或多個處理器執行的一組指令。任務還可以對應于一個或多個計算線程。
根據實施例,根據固定的時間段周期性地發起任務。
因此,定期地產生在計算周期方面的節省,由此增強了系統的總體優化。
例如,當任務執行在被分配的時隙之前結束時,該方法還包括輸出基于當前輸入值而計算出的值。
這可以對應于常規情況,其中任務必須基于來自已經觸發任務執行的傳感器的測量值向致動器輸出命令信號。
根據另一示例,當任務執行在被分配的時隙之前未結束時,該方法還包括輸出基于前一個輸入值而計算出的值。
因此,系統仍可以通過保持致動器上的當前命令來運行。這是對于當錯過執行時隙時限時執行任務的處理器的總體禁用的一種替代方式。
根據實施例,該方法還包括停止任務并且在下一個時間段用下一個輸入值再次發起任務。
當前值因此被忽略,以便不會減慢系統的總體操作。
根據實施例,時隙被確定為使得未在時隙之前結束的相繼任務的統計最大數量小于性能閾值。
例如,時隙被確定為使得達到未在時隙之前結束的相繼任務的最大數量的概率小于性能閾值。
因此,系統設計者可以執行系統的初步分析,在初步分析期間限定魯棒性和資源優化之間的平衡。
根據實施例,系統具有反饋回路。
這樣的系統是足夠魯棒的以容易地允許執行時隙小于WCET。這樣的系統還可以容忍要被錯過的時限。
例如,任務對應于系統的致動器的命令。
根據本發明的第二方面,提供一種包括指令的計算機程序和計算機程序產品,所述指令當被加載并運行于系統的控制單元的計算機裝置上時,用于實施根據本發明的第一方面的方法。還提供了存儲這樣的計算機程序的計算機可讀裝置。
根據本發明的第三方面,提供包括被配置為執行根據第一方面的方法的控制單元的系統。
根據本發明的第四方面,提供包括根據第三方面的系統的飛行器命令系統。
根據本發明的第五方面,提供一種包括根據第四方面的系統的飛行器。
根據本發明的第二、三、四、五方面的目的提供了至少與由根據本發明的第一方面的方法提供的優點相同的優點。根據本發明的第三、四、五方面的目的可以包括用于實施根據第一方面的方法的可選特征的裝置。
參照附圖,根據對非限制性示意實施例的以下描述本發明的其它特征和優點將變得清楚,在附圖中
圖I是自動反饋控制系統的總體架構的示意圖2是根據實施例的控制方法的步驟的流程圖
圖
圖
圖
圖
圖
圖
圖
圖3是用于選擇執行時隙的過程的示意圖;4是控制任務的示意性執 行調度的示意圖;5是要由系統執行的任務的執行時間和相關概率密度的分布的示圖; 6是根據實施例的控制任務的執行調度的示圖;7是選擇比WCET更短的時隙的示圖;8是F-16飛機的俯仰控制系統的框圖;9是用于情況研究的控制任務的執行調度的示圖;10-13、14a-14b以及15a_15b是示出情況研究結果的圖;以及 16是根據實施例的系統的示意圖。
具體實施方式
發明人已發現目前,自動控制系統理論已經達到了允許容忍錯失時限的魯棒性分析置信水平。發明人還發現在大多數應用(尤其是安全關鍵應用)中普遍的WCET方法過于謹慎。下文中,將描述一種控制自動系統的方法,其具有分配給控制任務執行的小于WCET 的時隙并且容忍錯失時限。還示出了可以保證的系統的穩定性和安全性。
如下,對于η維狀態向量X和非負延遲h,Xt表示使得對于所有Θ e [_h,0]有 xt(0) =χα-θ)的函數。該函數Xt的集合表示為Kh。集R+、Rnxn以及Sn*別表示正標量集、ηχη矩陣集以及Rnm的對稱矩陣集。上標’ Τ’表示矩陣轉置。對于P e Sn,標記P > O 表示P是正定的。對于任意矩陣A e Rnxn,標記2He {A} > O表示Α+Ατ >0。符號I和O表示適當維度的單位矩陣和零矩陣。
圖1是自動反饋控制系統的總體架構的示意圖。該架構可以在各種應用(諸如航空電子設備、汽車、發電控制裝置等)中實施。
依照該架構,系統具有接口單元100,從該接口單元100使用者或者其他系統可以發送命令。接口因此可以是鍵盤、觸摸屏或通信接口。接口單元將命令信號輸出給控制單元101。控制單元隨后根據系統的狀態管理命令信號并且輸出控制信號給單元102,所述單元102包括系統的執行由命令信號所要求的動作的致動器。傳感器單元103執行系統中的測量以便向控制單元提供使得控制單元能夠確定系統的當前狀態的信息。
在航空電子設備應用中,致動器可以是空氣制動器、發動機或飛機的其它元件。傳感器單元可以包括例如速度傳感器。接口可以是駕駛艙桿。
依照實施例,控制單元可以依照圖2的總體流程來執行方法。
在步驟S200期間,控制單元接收命令信號。該步驟可以根據時間段順序地執行。 例如,控制單元監測通信端口,從通信端口處從接口接收命令信號。
接著,在步驟S201期間,控制單元發起與命令信號相對應的任務。例如,任務是由處理器實施的一組處理,所述處理器基于命令信號中所包含的輸入值來執行計算。
一旦發起控制任務,則在步驟S202期間,控制單元通過向分配給任務執行的時隙設置定時器來監測任務的執行。
一旦時隙逝去了,則控制單元在步驟S203期間通過檢測任務是否已經輸出結果來檢測任務是否已經執行。
如果任務在分配的時隙之前已經結束,則控制單元在步驟S204期間輸出控制信號。例如,控制信號向系統的致動器饋給已經基于在命令信號中接收的輸入值而計算出的輸出值。
如果任務在分配的時隙之前尚未結束,則控制單元在步驟S205期間保持當前控制信號。例如,控制信號向致動器饋給基于在針時先前發起任務的前一命令信號中所接收的輸入值而計算出的輸出值。
在該情況下,控制單元可以檢測進行任務執行計算的控制單元元件(比如處理器)的故障。在步驟S206期間檢測故障。例如,當檢測到故障時,該元件(例如處理器) 被禁用并且在直到被檢查之前將不再被使用。在該情況下,控制單元具有用于執行計算的主處理器和輔助處理器。主處理器用于正常情況而輔助處理器用于主處理器出現故障的情況。
禁用可以在任務第一次錯過時限時就執行,或者可以設置計數器用于在給定數目的錯失時限之后禁用處理器。
在步驟S204和S206之后,控制單元依照上述已經提到的順序時間段而返回到步驟 S200。
如下文中示出的,基于系統性能和控制單元的處理器資源優化之間的平衡來確定時隙。該時隙被確定為小于任務的WCET。
圖3中示意性的表示了選擇時隙值的總體過程。
在初步過程中,確定如下元素
-系統的數學模型300。模型基于系統的物理結構。
-被設計用于系統運行的命令算法301。
-基系統統計研究的WCET估計302。系統運行給定次數并且測量任務的響應時間來確定所測量的響應時間的分布。
-給定設想應用,系統必須滿足的性能和安全規范303。
-對于高級安全應用比如航空電子設備應用,系統所必須遵守的認證規范304。
隨后,在第一分析序列305期間,指定運行模式。在該序列期間,順序地排列在運行模式期間要由系統執行的任務(步驟306)。每個任務都被分配了執行時隙并且時隙被依照系統運行而排序。
在下一個序列307期間,使用模型300,系統通過縮短執行時隙而弱化直到系統達到不穩定。在步驟S308期間,分配給任務的執行時隙被減少到由項302給出的相應WCET 之下。
隨后在步驟S309期間使用項300和301來估計系統的結果穩定性和魯棒性。并行地,在步驟S310期間,評估在系統的計算資源方面的所得增益。例如,確定執行每個任務所使用的序列數目。
在下個序列311期間,分析系統退化所導致的控制質量。執行步驟S312,在步驟 S312將控制質量損失和所獲得的計算機資源優化進行比較。換句話說,檢查計算機資源方面的增益(例如,所節約的處理器周期的數目)是否值得性能和魯棒性的損失。
隨后在序列313期間分析資源使用的優化。檢查控制質量(QoC)和從系統退化所導致的處理資源使用之間的平衡是否滿足取決于應用、系統必須符合的性能和安全規范 (該信息通過項303和304給出)的標準。執行步驟S314來驗證這些標準的滿意度。
如果平衡不令人滿意,則再次執行步驟S308并且再稍稍減少所分配的執行時隙。
如果平衡是令人滿意的,則在序列315期間驗證系統分析的最終結果。執行步驟 S316,在步驟316期間采用系統的非線性模型來測試具有所分配的執行時隙的系統運行。 在該測試期間,使用考慮飽和性和不確定性問題的系統表示來確認所分配的時隙值。
接著,如果在甚至考慮了這些問題的情況下系統令人滿意地運行,則在步驟S317 期間確定每個控制任務的執行時隙。
下面,將針對魯棒性考慮來詳細地示出WCET(最壞情況執行時間的縮寫)問題。隨后給出發明人所提出的解決方案。
當前,許多控制系統,比如飛行控制或制動控制系統,獨考慮為硬實時的,其意味著在系統的設計過程中,假設控制任務必須嚴格周期性地執行。控制任務執行必須受限于固定時隙,其不允許錯過時限,并且抖動也被禁止(或在實踐中嚴格受限)。假設理想定時模式下的任意偏差都必然地導致系統的故障。
這樣的控制任務的實施依賴于每個任務的WCET的安全和保守估計,WCET用于標定分配給控制任務執行的時隙的尺度。圖4中描述了控制任務的示意性執行調度。例如, 該任務基于飛行員的命令以及飛機元件上測量的其它參數來控制飛行器的俯仰(Pitch)。
假設給定的任務周期性地執行。時隙Tsltrt被分配給任務來用于其執行。在圖4 的示意性任務中,時隙首先被考慮為WCET。通過時刻Sk處出現的測量值X (Sk)以周期T = Sk-Sk^1來觸發每個時隙。測量值可以對應于來自飛行器的傳感器(如速度或俯仰傳感器) 的輸出或具有駕駛艙界面的通信端口上的數據訪問(或讀取)。
由控制任務執行的計算所花費的時間Tex通常小于WCET,這是由于WCET對應于最壞執行時間。為了避免輸出抖動,在時隙的端部(即,在時刻sk+WCET)將控制信號U(x(sk)) 施加到飛行器的致動器(如發動機、液壓致動器、副翼或后掠翼)
對于滿足sk+WCET彡t < sk+1+WCET的任意t,即,
權利要求
1.一種控制系統的方法,包括如下步驟 -發起(S201)任務,所述任務與最壞情況執行時間相關聯;以及 -在分配給所述任務的執行的時隙之后,監測(S202,S203)所述任務的結束; 其中所述時隙比所述最壞情況執行時間短。
2.根據權利要求I所述的方法,其中,根據固定的時間段來周期性地發起所述任務。
3.根據權利要求2所述的方法,其中,當所述任務的執行在分配的時隙之前結束時,所述方法還包括輸出(S204)基于當前的輸入值而計算出的值。
4.根據權利要求2或3所述的方法,其中當所述任務的執行未在分配的時隙之前結束時,所述方法還包括輸出(S205)基于前一個輸入值而計算出的值。
5.根據權利要求4所述的方法,還包括停止所述任務并且在下一個時間段用下一個輸入值再次發起任務。
6.根據前述權利要求中任一項所述的方法,其中,所述時隙被確定為使得未在所述時隙之前結束的相繼任務的統計最大數量小于性能閾值。
7.根據前述權利要求中任一項所述的方法,其中,所述時隙被確定為使得達到未在所述時隙之前結束的相繼任務的最大數量的概率小于性能閾值。
8.根據前述權利要求中任一項所述的方法,其中,所述系統具有反饋回路。
9.根據前述權利要求中任一項所述的方法,其中,所述任務對應于計算機程序的實例。
10.根據前述權利要求中任一項所述的方法,其中,所述任務對應于所述系統的致動器的命令。
11.一種計算機程序,包括當所述程序被加載并由可編程裝置執行時用于實施根據前述權利要求中任一項所述的方法的指令。
12.—種系統(160),包括被配置為執行根據權利要求I到10中任一項所述的方法的控制單元(161)。
13.一種飛行器命令系統,包括根據權利要求12所述的系統。
14.一種飛行器,包括根據權利要求12和13中任一項所述的系統。
全文摘要
一種具有短執行時限的魯棒系統控制方法。提供了一種控制系統的方法,包括如下步驟發起任務,所述任務與最壞情況執行時間相關聯;以及在分配給任務的執行的時隙之后,監測任務的結束;其中所述時隙比所述最壞情況執行時間短。
文檔編號G05B13/04GK102981405SQ20121046201
公開日2013年3月20日 申請日期2012年9月6日 優先權日2011年9月6日
發明者P·安德里亞尼艾納, A·塞雷, D·西蒙 申請人:空中客車運營簡化股份公司