孫銀娣, 黃 濤
(中國特種飛行器研究所,湖北 荊門 448035)
當(dāng)下是信息現(xiàn)代化、通信網(wǎng)絡(luò)化、人工智能化的時代,浮空飛行器的發(fā)展面臨著前所未有的機(jī)遇與挑戰(zhàn)。浮空飛行器的設(shè)計(jì)是一個系統(tǒng)工程,涉及的專業(yè)眾多,包括飛行控制、導(dǎo)航制導(dǎo)與控制、通信、壓力調(diào)節(jié)與控制等。其中壓力調(diào)節(jié)與控制系統(tǒng)是浮空器設(shè)計(jì)的關(guān)鍵,該系統(tǒng)用于保證浮空器的氣動外形和運(yùn)行安全,因此對其控制元部件(如氦氣閥門、空氣閥門、風(fēng)機(jī)等)工作性能參數(shù)的檢測與試驗(yàn)分析極其重要,是閥門試驗(yàn)臺測控系統(tǒng)的核心任務(wù)。
國內(nèi)外各個領(lǐng)域的測控系統(tǒng)設(shè)計(jì)實(shí)例眾多,南京航空航天大學(xué)的馬培圣等[1]構(gòu)建了基于數(shù)傳電臺的無人機(jī)測控系統(tǒng),用于防空探測系統(tǒng)和防空武器系統(tǒng)的功能和性能測試,提高了靶機(jī)測控系統(tǒng)的可靠性;大連理工大學(xué)的楊波[2]利用LabVIEW對發(fā)動機(jī)試驗(yàn)臺架測控系統(tǒng)進(jìn)行設(shè)計(jì),實(shí)現(xiàn)了參數(shù)自動采集、實(shí)時監(jiān)控、數(shù)據(jù)記錄與處理等功能,滿足發(fā)動機(jī)臺架試驗(yàn)的各項(xiàng)需求;2020年5月SpaceX公司載人龍飛船順利升空并完成與國際空間站對接,其中地面軟件采用LabVIEW開發(fā)用于任務(wù)和發(fā)射控制的GUI(Graphical User Interface),供工程師和操作人員監(jiān)控飛行器遙測和指揮火箭、航天器、平臺支持設(shè)備[3]。目前,針對浮空器壓力調(diào)節(jié)與控制系統(tǒng)元部件級功能與性能的測試與試驗(yàn)的研究文獻(xiàn)不多。該閥門試驗(yàn)臺是為滿足中國特種飛行器研究所浮空器型號研制需要而專門研制的試驗(yàn)設(shè)備,能夠用于測試和驗(yàn)證閥門的密封性與功能、壓力-流量特性等,為相關(guān)閥門的功能、性能鑒定和設(shè)計(jì)改型提供了試驗(yàn)依據(jù)。
考慮到閥門試驗(yàn)臺通用性、開放性和快速原型設(shè)計(jì)需求,綜合現(xiàn)代成熟的測試與控制技術(shù)、傳感器技術(shù)、壓力調(diào)節(jié)與控制系統(tǒng)特性,設(shè)計(jì)并開發(fā)了基于虛擬儀器技術(shù)[4]的浮空器閥門試驗(yàn)臺測控系統(tǒng)軟件,可實(shí)現(xiàn)試驗(yàn)測試數(shù)據(jù)的實(shí)時采集和監(jiān)控顯示、試驗(yàn)特征變量的分析與計(jì)算、試驗(yàn)數(shù)據(jù)的存儲和導(dǎo)出、試驗(yàn)設(shè)備(如風(fēng)機(jī)、閥門)的控制、試驗(yàn)項(xiàng)目的配置管理、試驗(yàn)流程控制等功能。軟件設(shè)計(jì)利用虛擬儀器領(lǐng)域最具代表性的圖形化編程開發(fā)平臺LabVIEW。LabVIEW是NI公司推出的一種面向儀器的交互式圖形化編程環(huán)境,也是目前世界上非常流行的測試程序開發(fā)環(huán)境[5-7]。其強(qiáng)大的圖形數(shù)據(jù)庫有利于為開發(fā)者提供友好的圖形化界面,且便于用戶進(jìn)行二次開發(fā)。
該測控軟件最終在閥門試驗(yàn)臺上完成了測試及驗(yàn)證,保證了閥門測試試驗(yàn)的順利開展,是浮空器壓力調(diào)節(jié)與控制系統(tǒng)元部件級工作功能與性能的測試與試驗(yàn)的一次全新嘗試,且意義重大。
閥門試驗(yàn)臺主要由臺架、氣源、手動節(jié)流閥、儲氣容器、標(biāo)準(zhǔn)容器、流量控制閥和測控系統(tǒng)等組成。閥門綜合試驗(yàn)臺測控系統(tǒng)用于完成試驗(yàn)數(shù)據(jù)的測試采集與顯示、試驗(yàn)設(shè)備的控制、試驗(yàn)項(xiàng)目的配置管理、試驗(yàn)數(shù)據(jù)的存儲處理等。根據(jù)浮空器閥門試驗(yàn)任務(wù)需求和試驗(yàn)臺對測控系統(tǒng)的功能需求,軟件設(shè)計(jì)需滿足以下基本功能。
① 資源管理功能:用于管理測控系統(tǒng)的硬件資源配置文件,測控系統(tǒng)主要硬件設(shè)備包括研華的PCI工控機(jī)、PCI-1716板卡、PCLD-8710接線端子板、傳感器組等。
② 試驗(yàn)配置管理功能:根據(jù)試驗(yàn)任務(wù)要求進(jìn)行試驗(yàn)配置,配置內(nèi)容包括被測閥門型號選擇、試驗(yàn)項(xiàng)目選擇、試驗(yàn)名稱定義、試驗(yàn)測試通道配置等。
③ 數(shù)據(jù)采集功能:能夠根據(jù)數(shù)采通道的配置,對傳感器數(shù)據(jù)進(jìn)行測試、采集和調(diào)理等。
④ 數(shù)據(jù)顯示功能:能夠?qū)崟r顯示采集試驗(yàn)數(shù)據(jù),也可在試驗(yàn)結(jié)束后回放采集的數(shù)據(jù),可以通過組態(tài)的方式配置顯示界面,可配置示波器顯示、數(shù)值顯示、表格顯示、過程曲線顯示等。
⑤ 數(shù)據(jù)處理功能:具有數(shù)據(jù)運(yùn)算功能,能進(jìn)行試驗(yàn)特征參數(shù)計(jì)算,實(shí)現(xiàn)對閥門性能參數(shù)的監(jiān)控,能根據(jù)試驗(yàn)要求繪制采集參數(shù)關(guān)系曲線。
⑥ 數(shù)據(jù)存儲功能:能夠存儲數(shù)采終端采集的模擬量和開關(guān)量數(shù)據(jù)。
⑦ 數(shù)據(jù)查詢、導(dǎo)出功能:能根據(jù)試驗(yàn)要求按照時間和試驗(yàn)名稱進(jìn)行試驗(yàn)數(shù)據(jù)查詢,并能導(dǎo)出試驗(yàn)數(shù)據(jù),可生成*.xls、*.txt等標(biāo)準(zhǔn)格式的數(shù)據(jù)報(bào)表。
(1) 模塊化設(shè)計(jì)。
測控軟件采用模塊化設(shè)計(jì)架構(gòu),相對獨(dú)立的功能模塊劃分在不同的VI(Virtual Instrument)或子VI程序中實(shí)現(xiàn),其優(yōu)點(diǎn)是程序代碼可讀性高,并且容易維護(hù)、便于開展二次開發(fā)。用戶可以根據(jù)實(shí)際任務(wù)需求基于基礎(chǔ)功能增加擴(kuò)展模塊,擴(kuò)展模塊與現(xiàn)有模塊之間可無縫銜接。
(2) 通用化設(shè)計(jì)。
軟件平臺通用性強(qiáng),硬件設(shè)備可使用行業(yè)標(biāo)準(zhǔn)與成熟的仿真機(jī)、工控機(jī)、PCI/PXI總線方式控制器、板卡等,不限定使用特殊或?qū)S玫挠布脚_,可方便軟件的快速部署以及后期測控平臺的快速擴(kuò)容。同時,軟件在設(shè)計(jì)之初考慮了測試與控制的對象涵蓋所有浮空器型號系列閥門,增強(qiáng)了整個平臺系統(tǒng)的通用性和適用性。
(3) 軟件可擴(kuò)展性和靈活性強(qiáng)。
軟件平臺能夠支持的板卡種類與數(shù)量多達(dá)上百種,并全部提供原生硬件驅(qū)動支持,無須經(jīng)過復(fù)雜的底層調(diào)用開發(fā)工作,可使系統(tǒng)進(jìn)行快速、高效的擴(kuò)展,使系統(tǒng)具備極強(qiáng)的重構(gòu)能力。
(4) 軟件人機(jī)交互性良好。
軟件人機(jī)界面友好,美觀大方,符合人機(jī)交互原則,便于試驗(yàn)人員通過最簡便、最少操作完成既定測試與控制任務(wù)和試驗(yàn)任務(wù)。
軟件編寫采用“自頂向下逐層分解”的方式,將各項(xiàng)資源和信息整合后再進(jìn)行功能模塊和VI劃分,這樣的方式提高了軟件設(shè)計(jì)和使用的靈活性和擴(kuò)展性[8]?;谛袠I(yè)標(biāo)準(zhǔn)與成熟的軟硬件架構(gòu),采用標(biāo)準(zhǔn)化與定制化結(jié)合的方式進(jìn)行各功能模塊和VI的設(shè)計(jì)。
測控軟件設(shè)計(jì)流程如圖1所示,對應(yīng)的功能模塊包括用戶入口主程序、登錄管理模塊、數(shù)據(jù)后處理模塊、傳感器零位調(diào)定模塊、傳感器系數(shù)標(biāo)定模塊、數(shù)據(jù)采集/試驗(yàn)?zāi)K、耐久性測試閥門自動控制模塊等。
圖1 測控軟件操作流程圖
用戶入口主程序是閥門綜合試驗(yàn)臺的主程序,登錄管理模塊用于實(shí)現(xiàn)用戶登錄管理,通過密碼保護(hù)實(shí)現(xiàn)準(zhǔn)入允許,并允許用戶修改和保護(hù)登錄的密碼。數(shù)據(jù)后處理模塊允許用戶進(jìn)行數(shù)據(jù)查詢、曲線回放和數(shù)據(jù)導(dǎo)出。傳感器零位調(diào)定模塊可實(shí)現(xiàn)對激光位移傳感器數(shù)據(jù)進(jìn)行清零操作,即實(shí)現(xiàn)線位移測試數(shù)據(jù)的零位校準(zhǔn)。傳感器系數(shù)標(biāo)定軟件模塊用于對模擬量測試通道進(jìn)行線性標(biāo)定計(jì)量,標(biāo)定公式為y=k·x+b。
數(shù)據(jù)采集/試驗(yàn)?zāi)K是開展數(shù)據(jù)采集和試驗(yàn)任務(wù)的程序,主要實(shí)現(xiàn)數(shù)據(jù)實(shí)時采集、數(shù)字和曲線顯示、特征數(shù)據(jù)計(jì)算、數(shù)據(jù)存儲;對試驗(yàn)設(shè)備和試驗(yàn)對象實(shí)施人工控制,即手動控制閥門和風(fēng)機(jī)開啟、關(guān)閉;數(shù)據(jù)采集及板卡健康狀態(tài)檢測;試驗(yàn)流程控制等功能。
耐久性測試閥門自動控制模塊用于對試驗(yàn)設(shè)備和試驗(yàn)對象實(shí)施自動控制,即控制閥門自動開啟、關(guān)閉,可以設(shè)置閥門工作循環(huán)次數(shù)、閥門每兩個工作循環(huán)之間的間隔時間、閥門每個工作循環(huán)內(nèi)開啟和關(guān)閉的間隔時間;顯示閥門開關(guān)狀態(tài)、閥門工作循環(huán)總次數(shù)和當(dāng)前工作循環(huán)次數(shù);應(yīng)嚴(yán)格按照時間進(jìn)行自動控制,包括對試驗(yàn)設(shè)備和試驗(yàn)對象實(shí)施手動控制,如手動控制風(fēng)機(jī)、閥門開啟和關(guān)閉;顯示風(fēng)機(jī)、閥門開關(guān)狀態(tài)。
基于閥門綜合試驗(yàn)臺測控系統(tǒng)的硬件架構(gòu),測控軟件的運(yùn)行環(huán)境定為Windows操作系統(tǒng),開發(fā)環(huán)境采用LabVIEW。每個功能模塊采用獨(dú)立的VI編程實(shí)現(xiàn),多個VI構(gòu)建一個項(xiàng)目工程,以此開發(fā)出一套完整的測控軟件程序包。
測控軟件程序包的每個VI由兩個部分組成:前面板和程序框圖。前面板主要用于用戶界面的設(shè)計(jì)與開發(fā),程序框圖主要實(shí)現(xiàn)軟件邏輯設(shè)計(jì)與代碼開發(fā)。
1.4.1 用戶界面設(shè)計(jì)
用戶界面設(shè)計(jì)即前面板設(shè)計(jì)。前面板模擬真實(shí)儀器面板,能夠?qū)崿F(xiàn)測量數(shù)據(jù)的實(shí)時顯示和對試驗(yàn)設(shè)備的控制,并且擁有豐富的數(shù)據(jù)顯示和控制控件,滿足不同用戶對虛擬儀器面板樣式的需求。前面板可以模擬真實(shí)儀器功能按鍵、提供數(shù)據(jù)輸入功能,使用戶通過鼠標(biāo)單擊即可完成相應(yīng)的按鍵操作,以及通過數(shù)據(jù)輸入框、下拉列表、旋鈕等即可實(shí)現(xiàn)數(shù)據(jù)輸入。
在進(jìn)行前面板設(shè)計(jì)時需要充分考慮布局合理化問題,合理規(guī)劃功能區(qū)塊,將常用、關(guān)鍵功能區(qū)塊布置在頁面的顯要位置。在控件選用和布置方面多做“減法”,將不常用的控件和功能模塊隱藏,以保持界面的簡潔,使用戶專注于任務(wù)操作流程,這樣有利于提高軟件的易用性和可用性。用戶界面顯示信息的含義和顏色要明確,控件名稱和指示信息應(yīng)易懂、準(zhǔn)確,使用戶接觸軟件后對界面上對應(yīng)的功能一目了然,不用查閱幫助文件就能知道該界面的功能并進(jìn)行相關(guān)的正確操作。另外,在程序設(shè)計(jì)時還需考慮防誤操作處理,減少軟件因用戶人為錯誤而引起的破壞。
按照上述用戶界面設(shè)計(jì)原則,設(shè)計(jì)并開發(fā)了每個VI的前面板,包括功能模塊選擇按鍵、試驗(yàn)任務(wù)信息顯示、終端設(shè)備健康巡檢顯示、試驗(yàn)數(shù)據(jù)顯示、試驗(yàn)參數(shù)設(shè)置、試驗(yàn)設(shè)備控制、特征參數(shù)時域圖等。以閥門綜合試驗(yàn)臺主程序和數(shù)據(jù)采集程序?yàn)槔?,設(shè)計(jì)效果如圖2和圖3所示。
圖2 閥門綜合試驗(yàn)臺主程序用戶界面
圖3 數(shù)據(jù)采集用戶界面
1.4.2 程序框圖設(shè)計(jì)
程序框圖設(shè)計(jì)主要實(shí)現(xiàn)軟件邏輯設(shè)計(jì)與代碼開發(fā)。LabVIEW程序本質(zhì)上是一種帶有圖形控制流結(jié)構(gòu)的數(shù)據(jù)流程序,通過程序框圖中的輸入端口和輸出端口、函數(shù)選板的函數(shù)節(jié)點(diǎn)、連線形式進(jìn)行編程[9-12]。
本軟件程序框圖設(shè)計(jì)根據(jù)實(shí)際測試需求和試驗(yàn)任務(wù)過程,分為程序流程控制和獨(dú)立執(zhí)行模塊兩大部分進(jìn)行設(shè)計(jì),其中獨(dú)立執(zhí)行模塊包括數(shù)據(jù)標(biāo)定、數(shù)據(jù)調(diào)零、數(shù)據(jù)采集、數(shù)據(jù)處理、閥門自動控制等子功能模塊。
對于程序流程控制部分,采用狀態(tài)機(jī)設(shè)計(jì)模式,實(shí)現(xiàn)試驗(yàn)任務(wù)信息獲取與顯示、設(shè)備健康狀態(tài)巡檢(包括輪詢采集板卡和數(shù)據(jù)存儲硬盤)、試驗(yàn)流程控制等。另外,在前面板設(shè)置了試驗(yàn)流程控制界面,通過使能和失能控制按鈕的方式編制程序代碼,引導(dǎo)用戶按照試驗(yàn)流程或試驗(yàn)步驟開展試驗(yàn)過程。測控任務(wù)狀態(tài)機(jī)邏輯如圖4所示。
圖4 測控任務(wù)狀態(tài)機(jī)邏輯圖
對于獨(dú)立執(zhí)行模塊部分,不同的子功能模塊由不同的子VI文件設(shè)計(jì)實(shí)現(xiàn),在多個子VI之間或者同一VI不同線程之間采用同步控制技術(shù)實(shí)現(xiàn)同步任務(wù)和交換數(shù)據(jù)。LabVIEW中提供了“同步”函數(shù)選板,包括通知器操作、隊(duì)列操作、信號量、集合點(diǎn)、事件發(fā)生、首次調(diào)用函數(shù)。本程序利用LabVIEW里面的隊(duì)列操作、并行循環(huán)設(shè)計(jì)模式,同步執(zhí)行不同子VI文件的工作任務(wù)。
對于數(shù)據(jù)采集部分,從LabVIEW測量I/O函數(shù)選板/DAQNavi/Data Acquation,選擇對應(yīng)于研華采集板卡的函數(shù)VI,設(shè)置采集通道、采樣方式、采樣頻率、采樣數(shù)等參數(shù),建立數(shù)據(jù)采集和數(shù)據(jù)輸出任務(wù),實(shí)現(xiàn)與傳感器組、流量控制閥、閥門、風(fēng)機(jī)實(shí)時交互數(shù)據(jù),該部分的任務(wù)周期設(shè)定為10 ms,數(shù)據(jù)顯示刷新周期為40 ms。
對于數(shù)據(jù)存儲部分,試驗(yàn)數(shù)據(jù)存儲采用TDMS(Technical Document Management System)文件格式。TDMS文件是NI公司用于測試測量領(lǐng)域的通用數(shù)據(jù)文件格式。TDMS文件是一種二進(jìn)制記錄文件,兼顧了高速、易存取和方便等優(yōu)勢,能夠在各種數(shù)據(jù)分析或挖掘軟件之間進(jìn)行無縫交互,也能夠提供一系列API函數(shù)供其他應(yīng)用程序調(diào)用。TDMS文件采用三層邏輯結(jié)構(gòu),即由文件、通道組和通道這3個部分組成。文件對象處于最頂層,其次是通道組對象,最底層是通道對象。LabVIEW提供了專門的TDMS文件函數(shù)選板,如TDMS打開函數(shù)、TDMS寫入函數(shù)、TDMS讀取函數(shù)和TDMS關(guān)閉函數(shù)等[13-14]。
由于數(shù)據(jù)存儲比較耗費(fèi)時間,當(dāng)數(shù)據(jù)存儲量較大時,將會嚴(yán)重影響其他程序的執(zhí)行速度。因此,采用隊(duì)列形式,將待存儲數(shù)據(jù)封裝成數(shù)據(jù)簇,存入數(shù)據(jù)存儲隊(duì)列,數(shù)據(jù)存儲線程等待并讀取存儲隊(duì)列中的數(shù)據(jù),然后依次將其存儲于計(jì)算機(jī)中。數(shù)據(jù)存儲程序框圖如圖5所示。
圖5 數(shù)據(jù)存儲程序框圖
本測控軟件已在閥門綜合試驗(yàn)臺上完成集成、調(diào)試和驗(yàn)收,測控軟件的各個模塊功能運(yùn)行正常,能夠滿足浮空器閥門綜合試驗(yàn)需求。為進(jìn)一步驗(yàn)證該軟件的實(shí)用性和可靠性,設(shè)計(jì)并開展了密封性測試試驗(yàn)、開啟壓力/回座壓力測試和動作性能測試。
下面以密封性測試試驗(yàn)為例進(jìn)行說明。按照試驗(yàn)流程操作測控軟件,在主程序界面上登錄軟件后,根據(jù)功能模塊指示信息進(jìn)入數(shù)據(jù)采集VI界面,在此界面上開啟羅茨風(fēng)機(jī)、向流量控制閥發(fā)送不同數(shù)值的充氣流量指令,同時觀察虛擬示波器上儲氣容器差壓數(shù)值曲線,當(dāng)其基本持平時,關(guān)閉風(fēng)機(jī)、調(diào)整充氣流量為0,再次觀察虛擬示波器上儲氣容器差壓曲線變化情況,待曲線再次基本持平持續(xù)3 min后停止試驗(yàn)并保存試驗(yàn)數(shù)據(jù),試驗(yàn)結(jié)束后對記錄的試驗(yàn)數(shù)據(jù)做進(jìn)一步事后處理和分析。繪制儲氣容器差壓時間歷程曲線如圖6所示,充氣流量分別為4 L/min、8 L/min、12 L/min、70 L/min時,某型號閥門的開啟壓力基本維持在887~891 Pa,回座壓力基本為690~700 Pa,并且差壓變化規(guī)律符合預(yù)期。多次測試結(jié)果證明該測控軟件運(yùn)行的有效性和正確性。整個試驗(yàn)測試過程軟件功能運(yùn)行良好,并且從未出現(xiàn)程序故障和無故死機(jī)現(xiàn)象,運(yùn)行的可靠性高。
本測控系統(tǒng)軟件設(shè)計(jì)采用LabVIEW軟件開發(fā),很好地將信號采集、處理、控制與試驗(yàn)對象有效集成,為浮空器閥門綜合試驗(yàn)提供了很好的通用測控平臺,可服務(wù)于多種型號浮空器閥門的測試試驗(yàn)。
圖6 不同充氣流量下儲氣容器差壓時間歷程曲線
軟件采取通用化、模塊化和結(jié)構(gòu)化的原則進(jìn)行設(shè)計(jì),提高了軟件模塊的獨(dú)立性,其優(yōu)點(diǎn)如下:
① 軟件開發(fā)和調(diào)試階段,可快速定位和排除代碼錯誤,方便修改軟件代碼。
② 軟件作業(yè)階段,獨(dú)立模塊設(shè)計(jì)使用戶能夠快速訪問所需的功能模塊,實(shí)現(xiàn)快速和有效操作。
③ 后期維護(hù)階段,容易實(shí)現(xiàn)代碼二次開發(fā)和軟件平臺功能擴(kuò)展。