何瑤
(中國直升機設計研究所,江西 景德鎮 333000)
余度技術,也叫冗余技術或容錯技術,是飛控系統設計中常用的提高系統可靠性和安全性設計方法。余度技術就是引入多套相同或者相似的系統或者通道來完成同一指令或是同一項工作的任務。根據可靠性指標要求和特性要求,典型的有雙余度、三余度和四余度系統。其中一條信號采集和處理單元構成一條通道,也可以稱一條余度。余度之間可以監控其他余度的工作狀態,識別出故障通道,輸出正確的結果。雖然在正常工作的情況下,單個通道已經能夠完成飛控任務。但在單個通道故障時,系統則無法正常工作甚至出現導致出現嚴重的安全事故。因此引入多個相同或相似通道,這樣就可以通過增加可選擇通道的方式來提高系統的可靠性。從收到的多個冗余輸入中根據設定的表決條件(如表決門限值)產生一個結果作為輸出,這個過程稱為表決。輸出的結果和采用的表決算法(硬件或軟件)有直接關系。飛控系統是關系到飛機安全的重要系統,對于信號可靠性和安全性有極高的要求,因此對于飛控系統的多余度設計和表決算法研究具有重要意義。
本文提出的信號表決算法易于工程實現,具有以下優點:對于四余度系統能夠輸出安全可靠的表決值,并且能夠快速定位故障數據,為系統安全工作提供了有力支撐。
飛控計算機實現飛控功能判別、余度管理、故障管理等功能,是整個系統數據輸入輸出的核心部件。通常情況下,計算機外部連接慣性測量組件,以獲得飛機姿態、姿態角、加速度等信息;從駕駛桿獲得飛行員的操縱信息;飛控操縱臺提供飛行員與系統的人機操作界面。系統還和機上的航電設備進行交聯。其中激光慣性測量組件和光纖慣性測量組件,作為慣性測量組件的二次備份。從大氣機、無高表獲得空速、高度等信息。綜合顯示系統則通過ARINC429、1553b 信號接收來自飛控計算機的故障信息。飛控系統應用軟件綜合上述信息,進行飛控系統控制模態的選擇和控制律計算,通過直升機主旋翼、尾旋翼等操縱面,實現對直升機姿態和軌跡的控制。每個余度通道與其他余度之間的聯系包括同步接口、故障邏輯接口、交叉傳輸(CCDL)接口,以實現系統余度工作,來提高飛控系統的可靠性和安全性。
簡單概括飛控計算機的外部交聯關系,可以認為前端為飛控計算機輸入端,后端為飛控計算機輸出端。我們以四余度飛控系統為例,飛控計算機交聯關系可以概括為圖1。我們已經知道,對于輸入信號和輸出信號,不管是在數量和來源上,都有著不同程度上的冗余。因此,對于飛控計算機來說,從這些冗余信息中篩選出合理的輸入或者輸出,并識別出有故障的入輸出信號通道,是至關重要的。

圖1 四余度飛控計算機交聯圖
冗余信號和多余度設計為系統提供了系統故障時重構系統和保證系統安全工作的可能性,是提高系統可靠性的重要設計手段。其中非相似余度設計是目前常用的技術方法。非相似余度技術采用完全不同的硬件或軟件來組成余度通道,采集和監控飛行控制信號,從而可以避免多通道余度系統的共性故障。
國外的大型民用飛機飛控系統普遍采用非相似余度設計方法。例如,B777 采用的是3×3 非相似余度設計的飛控計算機,主控計算機是包含3 臺完全相同的數字式飛行控制計算機。而主控計算機內的3 個CPU 則為非相似設計。其中每個主控計算機個3 條ARINC629 總線相連接。一臺計算機獲得外部三余度信號。通過系統表決算法對每個計算機采集外部信號進行表決,并完成控制律及余度管理的計算,最終輸出指令舵機。控制指令同樣通過ARINC629 總線輸出。但每臺主控計算機僅將指令傳送給3 條總線中的其中一條。從輸出端看,系統為三余度。且3 臺計算機完全執行相同的任務,每套計算機是可以互換的。這可以確保在某臺計算機出現問題時,系統正常工作。但在每個主計算機內部則包含3個非相似的CPU。他們運行的是采用不同的編譯器完成編譯的可執行代碼。當觸發了潛在的編譯異常時,這可以防止因使用了相同編譯器而發生3 個CPU 都失效的情況。
從圖1 可以看出,輸入飛控計算機的信號眾多,因此采用和選擇合理的輸入信號,從而進行控制律計算輸出舵機控制指令成為飛控軟件的關鍵。
從圖1 可以看出,系統輸入輸出信號均為四余度冗余設計。在數據輸入端,通過交叉傳輸的方式,構成系統四余度信號輸入。在輸入數據端采用表決算法,完成信號的選擇和監控。同樣在通道的輸出端上設置表決,完成對多個輸出的選擇。因此構成了系統的多級表決,提高了系統的可靠性。對于冗余信號,我們主要利用信號監控方法獲得可以信賴的余度信號。得到合理的系統輸入或者輸出。因此,本文設計以下的四余度表決算法。系統的輸入表決和輸出表決采用相同的表決算法。算法流程見圖2。

圖2 四余度飛控表決算法
對于四余度系統,存在四余度表決、三余度表決、雙余度表決、單余度工作的情況。信號監控技術實現系統數據故障判別和管理,從而決定表決余度。通常情況下,監控技術可分為以下幾類。
(1)部件自身監控,例如,對于系統中的關鍵傳感器,部件自身具有和值監控功能。對于離散量和模擬量可以使用采集狀態來確定信號好壞。對于ARINC429信號可根據SSM 的狀態來確定數據是否正常。軟件通過采集ARINC429 部件中的SSM 狀態,設置信號監控結果。
(2)某余度通道失效時,該余度所有的數據不參與表決。此時,該余度的所有表決鏈路失效。余度通道失效的情況可能是數字機失效,由通道故障邏輯電路監控輸出獲得。或是當某機CCDL 失效,其余余度無法獲得該機數據。相應的系統的信號余度降級。以上都是自監控技術。
(3)比較監控,是通過把各余度信號進行相互比較的方法,實現對故障的檢測和識別。好的余度表決算法可以達到準確定位故障的目的。相較自監控,比較監控直觀簡單、覆蓋率高。很多自監控方法也是基于比較技術。在多余度系統中,二者通常配合使用。普遍采用的比較監控方法是門限比較法。門限的設置是非常重要的,過大的門限導致故障的漏檢率大,過小的門限值使得虛警率大。一般情況下,通過工程實際和以往實驗結果得出合理的門限值。
總之,需要合理設置系統信號監控器,這些信號監控器對于每個參與控制律運算或是系統故障管理的信號進行正常與故障的判斷。通過這些監控器系統可以確定每個信號應該采用四余度、三余度、雙余度或是單余度表決算法。最終為飛控計算機提供合理的輸入或是輸出。對于一路信號可以有多個監控器,如自身監控加比較監控相結合的方式。其中自身監控方法和又有多種方法可以采用。同樣的一個監控器可以監控多個信號的好壞。例如,通常對于慣測信號來說,其中的姿態信號和角速率信號在硬件來源上有著很大的關聯性。一般情況下,姿態信號是通過角速率信號不斷積分得到的。所以,當姿態信號和角速率信號的狀態應該是一致的。因此,對于這樣的信號就可以使用同一個監控器。
軟件中對于這些監控器進行實時監控,會消耗大量運行時間。所以合理的監控器設置是優化算法和軟件的重要手段。優化監控器設置遵循下面的規則:監控器要監控到所有的輸入輸出信號。但這并不是意味著可以隨著信號的增加而一味增加監控器的數量。實際上,要確保監控器設置不能冗余,避免為系統運行帶來大量的時間消耗。
由于不同信號的表決邏輯是相同的,差別只是在表決門限的設置考慮上。因此,下面以四余度模擬量表決為例闡述表決原理。
考慮到大概率事件是四余度信號無故障工作,信號故障時,也可以通過系統設置的自身比較監控器可以檢測出其故障來。考慮到正常的信號之間應該呈聚集狀態,所有信號應是趨同的。也就是說,所有的信號應在某個理想值的一定范圍內聚集。這個理想值就是信號的真實值。那么對于二維線性分布來說,理想值就是這些信號的均值。這樣我們就得到了正確的信號。
由于上述的信號特性,我們知道數據之間的差值變化是很小的。所以假設數據的變化應該不會超過既定的閾值ε。如果某兩個或多個數據之間的差值較大,則有理由認為某個或多個信號源不可信。因此,對四個信號進行排序,依次為最大、次大、次小、最小,分別記為X1、X2、X3、X4。
檢測相鄰信號差值與閾值之間的關系:如果3 個差值均小于閾值ε,則四余度的信號均有效;如果某兩個相鄰信號差值超過了閾值ε,如最大值與次大值之間差值大于閾值,而其余信號差值均在閾值內,則認為最大值遠離其他所有的信號,由于3 個信號同時故障屬于小概率事件,由此可以相信偏離的信號屬于故障信號。如果是次大值和次小值之間差值大于閾值,則認為四個信號成離散分布。均偏離了理論信號中心,此種情況認為四個信號均故障。根據以上理論,對相鄰信號值進行比較所對應的信號狀態和表決值如表1 所示(表中“1”表示不超差,“0”表示超差,Δ12表示最大信號與次大信號之間的差值,以此類推)。

表1 四余度表決算法
可以看到,表決算法是一種典型的門限比較監控方法。比較門限的確定通常有嚴格判等和常值比較。對于不同的信號特性采用不同的方法。如對于離散量信號,由于信號不同含義對輸入有著極大影響,所以必須采取嚴格判等。也就是說,門限為0。對于模擬量,環境的影響會使其伴隨著隨機的噪聲波動。即使是同一信號源輸出的信號,通過濾波處理后還有著微小的差別,所以門限設置要考慮到信號的實際變化范圍和信號來源的差別。合理的門限設置能大大提高監控結果的準確性。我們可以看到,表決監控結果反過來影響參與表決的信號鏈路個數。如果某余度監控結果正常,表明參與表決的該余度信號正常,這樣使有著正確輸出的信號源參與表決,能夠確保信號來源的可靠性,從而得到可信的表決值。如果表決監控結果故障,在算法中將該余度信號剔除在表決值計算之外,達到了隔離故障信號的作用。
三余度表決算法。同樣對信號進行排列,依次為,最大值、中間值、最小值,分別記為X1、X2、X3。三余度表決算法見表2。(表中“1”表示不超差,“0”表示超差,Δ12 表示最大信號與次大信號之間的差值,以此類推)。

表2 三余度表決算法
雙余度表決算法。同樣對信號進行排列,依次為最大值、最小值,分別記為X1、X2。雙余度表決算法見表3(表中“1”表示不超差,“0”表示超差,Δ12表示最大信號與次大信號之間的差值,以此類推)。

表3 雙余度表決算法
基于PowerPC 的開發平臺下構建了實驗環境,其分為硬件平臺、開發環境系統和軟件平臺3 個部分。
(1) 系統硬件平臺, 主要包含微處理器PowerPC8247、SDRAM、Flash、網絡模塊、串口、電源模塊。
(2)開發環境系統,使用的是Tornado2.2 進行軟件開發和編譯。
(3)系統軟件平臺,主要包括VxWorks 和文件系統的構建。驅動程飛控軟件。驅動程序包含CPU的初始化、串口和相關文件系統所需要的驅動。
我們選擇飛控系統中常見的位移傳感器信號作為實驗數據。可以看到真實的模擬量信號在時間分布上有著隨機波動。圖3 為四余度表決算法的仿真結果,圖中連續線段為四余度傳感器信號,點線為表決結果。數據在2.0處浮動,設計閾值ε 為0.6。從圖中可以看出,本算法可以很好地輸出較優的表決值,并且快速識別出故障情況。但還有不足是在表決時出現四余度信號均故障的情況下,無法識別出真實數據。這是算法后續需要改進的地方。

圖3 四余度表決算法仿真結果
本文提出了一種飛控四余度數據表決算法。此算法基于工程實踐中的數據特征,使用簡單快速的比較監控算法判別出信號的有效性。實踐表明,該表決算法具有較好合理性、可靠性和簡便性。隨著電子技術與數字飛行控制系統的不斷發展,四余度數字電傳控制系統的余度管理功能也會不斷地更新和完善,基于此算法的表決策略也將會不斷發展和完善。