,, ,
(中國空氣動力研究與發(fā)展中心,四川 綿陽 621000)
風洞試驗流程是風洞試驗中參與流場調節(jié)的受控對象運行時序和運行邏輯的描述。在風洞試驗過程中,不同試驗方式、內容和對象對試驗流程有不同的要求。傳統的風洞流場控制軟件中試驗流程設計固定[1],試驗流程的調整主要依靠修改軟件代碼、升級軟件的方式將軟件功能調整到需要進行的試驗控制流程。這種以軟件代碼修改方式為主的軟件維護方法,增加了軟件維護成本和維護難度,對軟件維護人員提出了較高的要求;同時,也容易產生無法預料的錯誤,給風洞試驗帶來潛在風險。
現代科學技術迅猛發(fā)展,測量、控制軟硬件技術水平不斷提高,為風洞測控系統功能完善、性能提升創(chuàng)造了更多實現方法,提供了更佳的技術支持體驗。為研究如何以靈活、有效的方式,處理大量不同試驗的變化[2],以降低應對成本和風險,提高風洞試驗質量效率和管理效率,需要對風洞流場控制軟件的可靠性、靈活性進行有針對性的設計。
本文以某新建亞跨超三聲速暫沖風洞流場控制系統為研究對象,簡要介紹了該風洞流場控制軟件試驗控制流程描述與解析設計實現方法。
風洞流場控制系統的主要功能是依據試驗工況差異選擇不同的運行模式對參與流場調節(jié)的主進氣管路調壓閥(包括主調壓閥和旁路調壓閥)、引射進氣管路調壓閥(以下簡稱:引射器調壓閥)、柵指等執(zhí)行機構進行位置閉環(huán)控制和壓力閉環(huán)控制,從而建立所需的穩(wěn)定流場,同時還負責模型姿態(tài)角控制,以獲得模型在確定流場環(huán)境、不同姿態(tài)下的試驗數據。具體而言,超聲速試驗前,柔壁型面控制系統將噴管預置到試驗所需的M數型面,亞跨聲速試驗時,柔壁型面控制系統將噴管預置到聲速型面。主調壓閥、旁路調壓閥和引射器調壓閥等組成閥門系統,負責試驗中氣流控制和總壓、引射壓力調節(jié);柵指機構用于亞跨聲速流場駐室靜壓的調節(jié)[3]。
流場控制軟件采用LabVIEW統一開發(fā)環(huán)境[4]進行開發(fā),實時應用軟件開發(fā)需要安裝Real-Time實時軟件模塊[5]。軟件包括測控間運行管理軟件和部署到風洞現場PXI實時系統[6]的實時應用軟件兩部分。軟件采用三層結構進行設計,由頂至下分別是:
操作層(即運行管理軟件)實現軟件的交互功能,提供給操作人員使用;
問題領域層用于解決流場控制領域內的試驗流程解析、壓力閉環(huán)控制、機構控制、安全控制及對上層、對下層的通訊接口;
硬件接口層用于實現與PXI外聯設備的信息交互,是三層中唯一與設備耦合的層,也就是說,硬件接口層之上的兩層都采用數據、變量、參數文件、數據文件等進行交互,與設備零耦合,這樣的軟件結構是后續(xù)軟件優(yōu)化的前提和基礎。問題領域層和硬件接口層共同構成實時應用軟件。流場控制軟件基本功能及結構如圖1所示。
圖1 流場控制軟件基本功能及結構示意圖
根據試驗需求,風洞基本運行模式包括(但不限于)以下3種:
(1)下吹式,只有主進氣管路調壓閥對總壓進行調節(jié),引射器調壓閥不工作;
(2)引射下吹式,主進氣管路調壓閥和引射器調壓閥均投入各自壓力調節(jié);
(3)引射啟動式,風洞啟動時引射器調壓閥工作,然后主進氣管路調壓閥投入運行,主進氣管路調壓閥轉入壓力閉環(huán)控制后關閉引射器調壓閥,試驗結束時再次啟動引射器調壓閥[7]。
圖2 亞跨超聲速風洞運行模式流程圖
圖2是上述三種運行模式的簡要流程,流程中的虛線部分“柵指M數調節(jié)”模塊僅在需要使用柵指進行M數調節(jié)的亞跨聲速試驗工況下才會被使用。
隨著風洞試驗技術不斷配套,風洞試驗工況不斷增加,風洞試驗流程也會不斷增加。因此,如何安全、高效應對更多試驗工況,這是擺在流場控制軟件設計者面前不可回避的問題。
依據對現有風洞長期運行實踐經驗的積累,可以認為,參與流場調節(jié)的控制對象及這些控制對象在流場調節(jié)過程中的控制行為都是確知的、可枚舉的有限數量集?;诖?,為改進流場控制軟件設計模式以優(yōu)化軟件維護管理模式,在軟件代碼設計階段,僅對這些參與流場調節(jié)的控制對象及其控制行為進行描述,而不對這些控制對象及控制行為的運行時序和邏輯進行描述。在上位運行管理軟件中開發(fā)獨立的試驗流程編制模塊,對試驗流程進行基于自然語言的流程描述[8];在PXI實時應用軟件中開發(fā)流程解析模塊,對來自運行管理軟件的試驗流程進行解析,風洞按照所解析的時序和邏輯調度參試設備完成試驗,試驗結束后按照配置的關車流程自動關車。試驗中,欲有緊急情況時,操作人員通過上位運行管理軟件發(fā)出“終止試驗”信號,PXI實時應用軟件收到指令信息后立即將試驗流程跳轉到“緊急關車”流程,風洞將按照配置好的“緊急關車”流程自動完成系列關車動作。
風洞試驗流程描述[9]設計主要包括流程索引、指令節(jié)點和行為節(jié)點三部分內容。
流程索引是對每條流程節(jié)點的序列標識。索引值起始于0,逐條加1。每一個指令節(jié)點、行為節(jié)點都有唯一的流程索引與之對應。試驗流程的時序和跳轉邏輯將以流程索引為依據進行執(zhí)行。
指令節(jié)點包括準備開車、準備開車取消、開車、正常關車、PXI回零關車、PLC回零關車、緊急停車等。指令節(jié)點采用中文命名,按順序排列,這些節(jié)點將一個完整的試驗流程劃分為幾個階段,每個階段內依據試驗需要而包含數條行為節(jié)點。指令節(jié)點本身并不產生任何機構控制行為,機構控制行為依據指令節(jié)點后跟隨的行為節(jié)點而產生不同的動作。
行為節(jié)點包括機構名稱、機構行為、行為參數1、行為參數2和狀態(tài)檢查五部分內容。機構名稱對象有主調壓閥、旁路調壓閥、引射器調壓閥、柵指機構、迎角機構等;機構行為指的是機構在流場調節(jié)中的動作,比如充壓階段的“調壓閥高開”和瀉壓階段的“調壓閥回拉”,調壓閥轉入“壓力閉環(huán)控制”,“調壓閥定位”等,在流場調節(jié)過程中,某機構具有哪些控制行為,其依據是軟件研制過程中設計了哪些行為,及哪些行為被調度;行為參數1、行為參數2則是這些機構行為的速度、位置、時間等參數;狀態(tài)檢查用于確定是否需要對機構行為執(zhí)行情況進行狀態(tài)檢查,如果不需要狀態(tài)檢查,則直接將流程索引跳轉到下一流程索引;如果需要檢查,則需要判斷被檢查項是否完成,待完成后再轉入執(zhí)行下一流程索引。
為實現試驗流程編輯功能,上位運行管理軟件開發(fā)試驗流程控制表編輯模塊,試驗流程控制表編輯器如圖3所示,編輯器界面分為三個區(qū)域,左側區(qū)域是某個機構的行為列表,用以提示對應機構擁有哪些行為動作可以選擇輸入到表格中;右側區(qū)域是幫助說明,提供簡要的編輯指導說明;中間區(qū)域用于編輯流程所有相關信息。編輯器中,除了參數1、參數2需要手動輸入外,機構名稱、機構行為和狀態(tài)檢查都采用快捷菜單選擇輸入方式進行編輯,這樣可以最大限度控制人為編輯錯誤。
圖3 試驗流程控制表編輯器
流程控制表編輯好后,軟件在保存控制表時自動將表格索引作為流程索引一并保存。
試驗階梯數及各個階梯的值不在此進行編輯,而在試驗參數中進行給定,在準備試驗時,需將試驗參數通過網絡共享變量發(fā)送到現場實時應用軟件。
為實現對流程控制表信息的解析,PXI實時應用軟件開發(fā)專門的流程解析模塊。流程解析模塊通過網絡接收來自上位運行管理軟件的流程控制表,并將該表以變量的形式存于系統內存中。PXI實時應用軟件對試驗流程控制表的解析包括分別用于指令節(jié)點解析、行為節(jié)點解析和階梯進程解析三個部分。
在PXI實時應用軟件中,對指令節(jié)點解析過程是:實時應用軟件接收到來自上位運行管理軟件的試驗流程控制指令(如:準備開車、準備開車取消、開車、PXI回零關車等),或接收到實時應用軟件中安全聯鎖模塊產生的流程控制指令(如:超壓保護關車,PLC回零關車等),在流程控制表中搜索指令所在位置,并對流程索引執(zhí)行加1操作,試驗流程將自動轉入指令節(jié)點后的系列行為節(jié)點解析。
在PXI實時應用軟件中,行為節(jié)點解析模塊針對每種機構而開發(fā)。對機構行為節(jié)點的解析流程是:在流程索引所在行機構名稱列提取機構名稱,在解析模塊中判斷機構名稱是否與本模塊控制對象一致,如果不一致,則保持當前索引值,程序轉入下一機構解析模塊,如果一致,則轉入本模塊內進行機構行為解析,并將參數1、參數2賦值給該機構行為,同時加載狀態(tài)檢查項。
狀態(tài)檢查項用于控制行為節(jié)點索引。如果某項行為需要進行狀態(tài)檢查,在該行為未能滿足狀態(tài)檢查條件時,索引保持當前值;在該行為滿足狀態(tài)檢查條件后,流程索引控制將對流程索引執(zhí)行加1操作,從而將索引指向下一個行為節(jié)點;如果該行為不需要進行狀態(tài)檢查,則該行為分支發(fā)出控制指令后,流程索引控制將對流程索引執(zhí)行加1操作,從而將索引指向下一個行為節(jié)點。上述解析流程如圖4所示。
圖4 行為節(jié)點解析流程
在實時應用軟件中,行為節(jié)點解析模塊按照主調壓閥、旁路調壓閥、引射調壓閥、柵指、模型支撐機構、其它外部機構的順序串行設計和解析。上位運行管理軟件在編輯試驗流程時,須按照同樣的順序編輯機構行為。這樣的設計可以保證:假如所有的行為都不需要進行狀態(tài)檢查,則在軟件模塊一個掃描周期內,所編輯的行為將被順序執(zhí)行,從而提高了軟件的運行效率和實時性。
風洞完成啟動轉入壓力閉環(huán)控制后,試驗流程將轉入階梯進程解析控制階段。階梯進程解析控制功能主要實現總壓階梯進程解析與控制、M數階梯進程解析與控制和模型姿態(tài)角階梯進程解析與控制。試驗中,最常見的試驗工況是固定總壓、固定M數、變模型姿態(tài)角階梯控制,但也存在變總壓階梯,或變M數階梯的試驗工況。為兼顧三種參數的階梯進程解析與控制,特將模型姿態(tài)角階梯、M數階梯和總壓階梯設計為由內至外的固定解析控制結構,即首先解析模型姿態(tài)角階梯,如果模型姿態(tài)角階梯試驗完成,再轉軟M數階梯,待M數階梯試驗結束,最后轉入總壓階梯,總壓階梯試驗結束,則轉入關車流程,具體流程詳見圖5所示。因此,運行管理軟件在編制試驗階梯進程時,需要按照上述固定結構進行編輯。
圖5 試驗階梯解析控制流程圖
軟件測試分為軟件獨立測試和流場控制系統無風聯調測試兩部分內容。
軟件獨立測試主要完成了以下兩項流程描述與解析相關測試:
(1)流程控制表編輯器功能測試,通過測試完善了行為參數1、行為參數2的邊界預警和強制轉換功能,將參數限定在系統可接受的合理范圍內。
(2)試驗流程控制表一致性檢查,對存在于運行管理軟件中的流程控制表和通過網絡發(fā)送到現場實時應用軟件中試驗流程控制表的一致性進行檢查,由于采用NI提供的網絡共享變量進行網絡傳輸,其傳輸機制保證了數據傳輸的完整性,未檢測到流程控制表不一致的現象。
為實現無風狀態(tài)下流場控制系統聯調測試[10],專門開發(fā)了壓力仿真模塊用以模擬試驗中各壓力監(jiān)測點的壓力,控制系統無風聯調測試過程中,截至氣流,流場控制系統在壓力仿真模塊引導下完整模擬試驗過程全部調控細節(jié)。
無風聯調測試主要完成了以下幾項流程描述與解析相關測試:
(1)指令節(jié)點解析模塊和行為節(jié)點解析模塊功能測試,測試將現場實時應用軟件中執(zhí)行的流程索引值通過共享變量上傳至運行管理軟件并保存,試驗完成后通過索引值反查流程控制表以檢查流程執(zhí)行的正確性。
(2)階梯進程解析控制模塊功能測試,測試試驗是否按照給定的階梯控制參數執(zhí)行試驗。
(3)參數測試,測試了軟件是否嚴格按照流程控制表提供的參數執(zhí)行。
(4)狀態(tài)檢查項測試,測試了軟件是否嚴格按照流程控制表提供的狀態(tài)檢查參數執(zhí)行。
軟件后期還通過風洞綜合性能調試進一步測試驗證了軟件功能和性能,測試結果表明:
(1)軟件的流程描述功能設計合理,能夠準確描述和配置復雜的試驗控制流程,流程編制和流程解析方面實現了預期的功能。
(2)基于流程描述的風洞流場控制軟件設計方法,極大降低了對軟件代碼修改的依賴程度,提高了試驗工況軟件變更的效率,提高了風洞調試效率;
(3)基于流程描述的風洞流場控制軟件設計方法,極大降低軟件維護難度,降低了軟件維護人員的技術門檻。
限于篇幅限制,本文僅就流程描述方法、流程編輯實現、流程解析過程及軟件測試進行了陳述,軟件的功能模塊和軟件結構設計等問題未作詳細陳述。
基于試驗流程描述與解析的軟件設計方法,采用NI LabVIEW(包含Real-Time Module)軟件開發(fā)平臺,完成了某亞跨超三聲速風洞流場控制上位運行管理軟件和現場PXI實時應用軟件設計開發(fā)和測試。通過風洞綜合性能調試,對軟件進行了完整檢驗、測試和完善,軟件達到了預期的設計目標,軟件設計模式具有一定的推廣應用價值。