尹进军,刘祥水
(国营芜湖机械厂,安徽 芜湖 241007;安徽省航空设备测控与逆向工程实验室,安徽 芜湖 241007)
惯性导航系统(Inertial Navigation System,INS)不需要任何外来信息,也不向外辐射任何信息,仅依靠自身就能够在全天候条件下,在全球范围内和任何介质环境里进行连续的定位和导航,是目前广受欢迎的导航系统。温度、平台偏角、加速度计脉冲数是某型机载惯性导航系统地面试验过程中判断惯导性能好坏的重要指标。为充分检查各试验环节温度、平台偏角、加速度计脉冲数输出的正确性,某型机载惯性导航系统地面试验中设置了大量正常罗经对准导航试验。实际使用中发现,每次正常罗经对准导航试验包含的数据量大,加之试验次数多,操作人员仅通过肉眼观察数据的准确性及跳变合理性,不仅耗时,且容易造成错漏,导致产品故障被遗漏,影响飞机任务的顺利完成。
LabWindows/CVI 是由美国NI 公司推出的一种虚拟仪器软件开发工具,为熟悉C 语言的技术开发人员在测控领域建立计算机仪器系统——虚拟仪器提供了一个理想的软件开发环境[1]。该软件的应用领域及其广泛,涵盖了军工、电讯、工业生产和航天等各种行业[2]。
通过对对准、导航过程中各参数计算流程进行分析,基于LabWindows/CVI 软件开发平台,设计了某型机载惯性导航系统对准导航数据分析软件。实际应用证明,该软件可以减少人工工作量,降低差错率,提高生产效率和产品质量。
根据某型机载惯性导航系统正常罗经对准导航试验要求,软件需要实现对惯性平台温度、平台偏角、加速度计脉冲数输出的实时监控。具体实现功能包括试验数据提取、数据实时显示更新、异常数据显示、图形界面生成及切换、绘图和坐标轴的动态更新,以及试验数据回放等。
该软件的特点如下:使用CVI 软件集成的绘图空间,使数据图形界面简单清晰,且有效减少了绘图工作量,提高了绘图可靠性;将温度、平台偏角、加速度计脉冲数分别在不同的绘图框中显示,使曲线相互独立,便于观察和相互比较数据,便于实时发现异常数据及故障点;实现了坐标的随动,使曲线的变化趋势更明显。
某型惯性导航系统正常罗经对准、导航试验中,除输入控制命令外,其余数据每10 s 自动保存一次。对准导航试验时数据格式如图1 所示。
图1 对准导航试验时数据格式
对准过程数据包括开机时间、对准时间、对准状态码、平台偏角、T1(上陀螺温度)、T2(东向加速度计温度)、T3(平台壳体温度)、T4(量化器恒温槽温度)以及4 个温度的加温功率等参数;导航过程重点关注数据有东北天向加速度计脉冲数(Nx、Ny、Nz)。
试验数据每10 s 自动保存一次,因此,设计软件每10 s 读取一次“*.tot”文档中的数据,对准和导航阶段数据提取流程如图2 所示。
图2 对准导航数据提取流程图
部分测试程序如下。
新建一个异步时钟用于获取当前试验文件夹及文件路径,并判断当前需分析曲线的类型:
realTimerHandle=NewAsyncTimer(60,-1,1,realTime Deal,0); //新建一个异步时钟,初始使能
int CVICALLBACK realTimeDeal (int panel, int control, int event,void *callbackData, int eventData1, int eventData2); //异步时钟回调函数
新建一个时钟控件用于每10 s 获取当前温度、平台偏角和导航脉冲数等数据
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);
//打开试验数据文件
lenTxt=ReadFile(openhandle,buff,150000); //将试验数据存储在字符串中
buff[lenTxt]=0;
strIndex=strstr(buff,” ALIGN_” ); //判断对准是否开始获取对准导航数据,并将相关数据存储在数组中:char algDataStr[100][10][10]; //对准数据
char navDataStr[720][7][20]; //导航数据
char navTemStr[120][5][20]; //导航时间
将数据绘制为曲线。
需要对试验温度、平台偏角及导航脉冲进行实时监控,并根据该型惯性导航系统精度要求对监控数据合格性进行判断并直观显示。曲线绘制流程如图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); //在异常处插入标签
由于监控数据波动范围较大,需要将当前坐标与坐标轴边界项进行比较,若超界,则自动更新坐标轴,由此可以更全面地观察监测数据的变化趋势和走向。部分程序如下。
每10 s 获取数组中温度、平台偏角和脉冲数最大值及最小值,用于设置曲线坐标上下限:
SetAxisScalingMode(panel,PANEL_GRAPH,VAL_LEFT_YAXIS,VAL_MANUAL,minTem,maxTem);//设置坐标上下限
为便于后期数据查看,软件除设计实时监控功能外,还实现了试验数据回放功能。
部分程序如下:
selFile=FileSelectPopup(fileDir,” *.tot” ,” *.tot” ,” 选择文本” ,VAL_SELECT_BUTTON,0,0,1,
0,getPath); //选择回放试验数据
strcpy(getpathname,getPath);//复制回放试验数据至数据分析路径
DeleteGraphPlot(panel,PANEL_GRAPH,-1,VAL_DELAYED_DRAW);//清空曲线
该软件已被成功应用于某型机载惯导地面静态试验、标定试验及环境试验中。实际界面如图4、图5、图6 所示。
图4 温度曲线绘制效果图
图5 平台偏角绘制效果图
图6 加速度计脉冲绘制效果图
利用该软件实现了对温度、平台偏角及加速度计脉冲数的实时监控,并且实现了对异常数据的直观呈现,此外数据回放功能可通过“载入数据”实现。实际使用证明,该软件可以有效、准确且全面监控试验数据,减少人工读数造成的工作量和差错率,提高生产效率和产品质量。