尹進軍,劉祥水
(國營蕪湖機械廠,安徽 蕪湖 241007;安徽省航空設備測控與逆向工程實驗室,安徽 蕪湖 241007)
慣性導航系統(tǒng)(Inertial Navigation System,INS)不需要任何外來信息,也不向外輻射任何信息,僅依靠自身就能夠在全天候條件下,在全球范圍內和任何介質環(huán)境里進行連續(xù)的定位和導航,是目前廣受歡迎的導航系統(tǒng)。溫度、平臺偏角、加速度計脈沖數(shù)是某型機載慣性導航系統(tǒng)地面試驗過程中判斷慣導性能好壞的重要指標。為充分檢查各試驗環(huán)節(jié)溫度、平臺偏角、加速度計脈沖數(shù)輸出的正確性,某型機載慣性導航系統(tǒng)地面試驗中設置了大量正常羅經對準導航試驗。實際使用中發(fā)現(xiàn),每次正常羅經對準導航試驗包含的數(shù)據(jù)量大,加之試驗次數(shù)多,操作人員僅通過肉眼觀察數(shù)據(jù)的準確性及跳變合理性,不僅耗時,且容易造成錯漏,導致產品故障被遺漏,影響飛機任務的順利完成。
LabWindows/CVI 是由美國NI 公司推出的一種虛擬儀器軟件開發(fā)工具,為熟悉C 語言的技術開發(fā)人員在測控領域建立計算機儀器系統(tǒng)——虛擬儀器提供了一個理想的軟件開發(fā)環(huán)境[1]。該軟件的應用領域及其廣泛,涵蓋了軍工、電訊、工業(yè)生產和航天等各種行業(yè)[2]。
通過對對準、導航過程中各參數(shù)計算流程進行分析,基于LabWindows/CVI 軟件開發(fā)平臺,設計了某型機載慣性導航系統(tǒng)對準導航數(shù)據(jù)分析軟件。實際應用證明,該軟件可以減少人工工作量,降低差錯率,提高生產效率和產品質量。
根據(jù)某型機載慣性導航系統(tǒng)正常羅經對準導航試驗要求,軟件需要實現(xiàn)對慣性平臺溫度、平臺偏角、加速度計脈沖數(shù)輸出的實時監(jiān)控。具體實現(xiàn)功能包括試驗數(shù)據(jù)提取、數(shù)據(jù)實時顯示更新、異常數(shù)據(jù)顯示、圖形界面生成及切換、繪圖和坐標軸的動態(tài)更新,以及試驗數(shù)據(jù)回放等。
該軟件的特點如下:使用CVI 軟件集成的繪圖空間,使數(shù)據(jù)圖形界面簡單清晰,且有效減少了繪圖工作量,提高了繪圖可靠性;將溫度、平臺偏角、加速度計脈沖數(shù)分別在不同的繪圖框中顯示,使曲線相互獨立,便于觀察和相互比較數(shù)據(jù),便于實時發(fā)現(xiàn)異常數(shù)據(jù)及故障點;實現(xiàn)了坐標的隨動,使曲線的變化趨勢更明顯。
某型慣性導航系統(tǒng)正常羅經對準、導航試驗中,除輸入控制命令外,其余數(shù)據(jù)每10 s 自動保存一次。對準導航試驗時數(shù)據(jù)格式如圖1 所示。
圖1 對準導航試驗時數(shù)據(jù)格式
對準過程數(shù)據(jù)包括開機時間、對準時間、對準狀態(tài)碼、平臺偏角、T1(上陀螺溫度)、T2(東向加速度計溫度)、T3(平臺殼體溫度)、T4(量化器恒溫槽溫度)以及4 個溫度的加溫功率等參數(shù);導航過程重點關注數(shù)據(jù)有東北天向加速度計脈沖數(shù)(Nx、Ny、Nz)。
試驗數(shù)據(jù)每10 s 自動保存一次,因此,設計軟件每10 s 讀取一次“*.tot”文檔中的數(shù)據(jù),對準和導航階段數(shù)據(jù)提取流程如圖2 所示。
圖2 對準導航數(shù)據(jù)提取流程圖
部分測試程序如下。
新建一個異步時鐘用于獲取當前試驗文件夾及文件路徑,并判斷當前需分析曲線的類型:
realTimerHandle=NewAsyncTimer(60,-1,1,realTime Deal,0); //新建一個異步時鐘,初始使能
int CVICALLBACK realTimeDeal (int panel, int control, int event,void *callbackData, int eventData1, int eventData2); //異步時鐘回調函數(shù)
新建一個時鐘控件用于每10 s 獲取當前溫度、平臺偏角和導航脈沖數(shù)等數(shù)據(jù)
int CVICALLBACK do10s (int panel, int control,int event,void *callbackData, int eventData1, int eventData2);
openhandle =penFile(getpathname,VAL_READ_ONLY,VAL_OPEN_AS_IS,VAL_ASCII);
//打開試驗數(shù)據(jù)文件
lenTxt=ReadFile(openhandle,buff,150000); //將試驗數(shù)據(jù)存儲在字符串中
buff[lenTxt]=0;
strIndex=strstr(buff,” ALIGN_” ); //判斷對準是否開始獲取對準導航數(shù)據(jù),并將相關數(shù)據(jù)存儲在數(shù)組中:char algDataStr[100][10][10]; //對準數(shù)據(jù)
char navDataStr[720][7][20]; //導航數(shù)據(jù)
char navTemStr[120][5][20]; //導航時間
將數(shù)據(jù)繪制為曲線。
需要對試驗溫度、平臺偏角及導航脈沖進行實時監(jiān)控,并根據(jù)該型慣性導航系統(tǒng)精度要求對監(jiān)控數(shù)據(jù)合格性進行判斷并直觀顯示。曲線繪制流程如圖3 所示。
圖3 溫度、平臺偏角及導航脈沖繪制流程圖
部分繪制程序如下:
PlotPoint(panel,PANEL_GRAPH,strToD(algDataStr[i][0]),strToF(algDataStr[i][6]),VAL_SOLID_CIRCLE,T 1color); //畫出采集的點
PlotLine(panel,PANEL_GRAPH,strToD(algDataStr[i][0]),strToF(algDataStr[i][6]),strToD(algDataStr[i+1][0]),strToF(algDataStr[i+1][6]),T1color); //將兩點之間使用線連接
AddGraphAnnotation(panel,PANEL_GRAPH,strTo D(algDataStr[i+1][0]),strToF(algDataStr[i+1][4]),nChar,-25,-65); //在異常處插入標簽
由于監(jiān)控數(shù)據(jù)波動范圍較大,需要將當前坐標與坐標軸邊界項進行比較,若超界,則自動更新坐標軸,由此可以更全面地觀察監(jiān)測數(shù)據(jù)的變化趨勢和走向。部分程序如下。
每10 s 獲取數(shù)組中溫度、平臺偏角和脈沖數(shù)最大值及最小值,用于設置曲線坐標上下限:
SetAxisScalingMode(panel,PANEL_GRAPH,VAL_LEFT_YAXIS,VAL_MANUAL,minTem,maxTem);//設置坐標上下限
為便于后期數(shù)據(jù)查看,軟件除設計實時監(jiān)控功能外,還實現(xiàn)了試驗數(shù)據(jù)回放功能。
部分程序如下:
selFile=FileSelectPopup(fileDir,” *.tot” ,” *.tot” ,” 選擇文本” ,VAL_SELECT_BUTTON,0,0,1,
0,getPath); //選擇回放試驗數(shù)據(jù)
strcpy(getpathname,getPath);//復制回放試驗數(shù)據(jù)至數(shù)據(jù)分析路徑
DeleteGraphPlot(panel,PANEL_GRAPH,-1,VAL_DELAYED_DRAW);//清空曲線
該軟件已被成功應用于某型機載慣導地面靜態(tài)試驗、標定試驗及環(huán)境試驗中。實際界面如圖4、圖5、圖6 所示。
圖4 溫度曲線繪制效果圖
圖5 平臺偏角繪制效果圖
圖6 加速度計脈沖繪制效果圖
利用該軟件實現(xiàn)了對溫度、平臺偏角及加速度計脈沖數(shù)的實時監(jiān)控,并且實現(xiàn)了對異常數(shù)據(jù)的直觀呈現(xiàn),此外數(shù)據(jù)回放功能可通過“載入數(shù)據(jù)”實現(xiàn)。實際使用證明,該軟件可以有效、準確且全面監(jiān)控試驗數(shù)據(jù),減少人工讀數(shù)造成的工作量和差錯率,提高生產效率和產品質量。