多路三轴光纤陀螺自动化测试系统设计与实现
扫描二维码
随时随地手机看文章
摘要 因三轴光纤陀螺的测试过程复杂、耗时长、测试效率低。提出了一种多路三轴光纤陀螺自动测试系统实现方案。叙述了测试系统的硬件设计思想并给出了完成自动化测试、软件设计方法及组建方案。测试结果表明,该系统能够实现三轴光纤陀螺测试全程自动化,节约了成本,提高了测试效率。
关键词 光纤陀螺;自动化测试系统;多通道;多线程
三轴光纤陀螺是基于Sagnac效应的光学角速率传感器,能同时敏感空间3个正交方向的角速率。具有灵敏度高、功耗小、精度高、体积小、质量轻及成本低等优点。因而被广泛应用于空对空导弹、卫星、飞机、轮船等方面。在国内,三轴光纤陀螺的研究已成熟;但由于三轴光纤陀螺的产量多、测试过程又相对复杂,因此快速可靠、机动灵活、高效低费的自动化测试设备,对提高测试效率有着重要意义。本设计介绍了测试设备的硬件平台的搭建、软件测试流程的编写;灵活运用LabWindows/CVI的消息传递机制和多线程技术,可以同时实现4套三轴光纤陀螺的自动化测试。
1 测试系统的设计要求与硬件组成
1.1 自动化测试系统的设计要求
(1)实现自动化。测试系统实现测试设备的自身检测和产品检测;其中,设备自动检测包括设备的供电电压检测和自动通断点检测;产品检测包括产品通断电压和电流的检测。如果电压电流超过正常范围,则切断相应通道产品的电源,防止产品损坏,并记录在案;自动进行各种环境实验,实现所有的测试流程无人值守。
(2)实现环境实验。自动控制温箱并且准确实现老练前、老练中、老练后、温循前、温循中和温循后等测试所需要的实验环境。
(3)实现系统参数设置及数据采集。可以设置PC与采集卡的通信协议、产品名、温度因子等。能够同步采集三轴光纤陀螺的422数据、电流和电压;能够实步显示采集到x轴、y轴和z轴零偏数据、温度、脉冲数和温箱的工作状态。
(4)实现数据自动处理及报表生成。实现对各路数据的自动处理,并显示处理结果,生成相应的报表。
1.2 自动化测试系统的硬件实现
三轴光纤陀螺在测试过程中,需要进行老练测试和温循测试;通过ESPEC公司的温箱模拟外部实验环境。测试设备的硬件组成主要包括:供电系统、工控机、数据采集卡、信号分离及通断电控制箱和温箱等。
系统硬件框架结构如图1所示。
(1)工控机,主要负责整个测试过程的监控,控制温箱,控制陀螺通断电,测试数据的接收、处理、存储,实现自动化控制等。
(2)数据采集部分,主要包括PCI数据采集控制卡和4串口Moxa卡(422信号)。其中PCI数据采集控制卡采集电流和电压,4串口Moxa卡传输三轴光纤陀螺产生的422信号。
(3)信号分离调理及通断电控制箱,处理4套三轴光纤陀螺的输出信号,实现各路产品通断电的自动化控制。
(4)ESPEC温箱,接收工控机串口发来的控制命令模拟所需的外部环境。
(5)供电系统,提供设备所需要的各种电压。
2 自动化测试程序设计实现
虚拟仪器技术为数据采集提供了便利条件,主要由数据采集的硬件部分和数据分析处理的软件部分组成。硬件部分将采集到的信号转换成计算机能处理的信号,然后输入到计算机中;计算机通过软件实现数据的读取及分析处理,并将处理结果反馈到用户界面。设计采用NI公司的LabWindows/CVI开发环境进行测试软件设计。LabWindows/CVI是交互式C语言开发环境,不仅提供丰富的界面资源和各种控件,方便软件开发者根据具体需要编辑用户界面;而且,LabWindows/CVI消息传递机制便于测试的自动化。另外,多线程技术用于实时多任务系统可以实现更高的效率,便于系统资源的调度与数据传输。可以使操作系统在完成多个任务时,均匀地分配系统时间,使应用程序获得更快的响应和最小的阻塞。
2.1 测试界面的设计实现
系统测试软件界面,如图2所示。测试界面主要包括:4通道实时xyz三轴脉冲曲线、温度曲线显示模块,xyz三轴实时脉冲值温度值显示框,数据处理模块、系统参数设置模块、各通道通信参数设置模块、测试状态显示模块;数据处理主要包括:曲线显示模块、处理数据显示模块、处理曲线选择模块等。
2.2 测试流程实现
主测试软件流程如图3所示。工控机需要与多个设备和板卡之间进行通信,产品测试前要确保各个模块正常工作。因此,主测试软件流程主要进行设备自身供电电压检测、产品电流检测、温箱工作状态的检测、通信参数的获取、产品信息的获取和存储目录的创建。测试的准备工作包括:温箱通信端口初始化、Moxa串口卡初始化、PCI数据采集控制卡通信端口初始化。
总测试线程如图4所示,总测试线程包括:创建工作目录及各通道的数据文件、分配各通道所需要的内存资源、设置温箱工作曲线、读取温箱状态、调用产品测试线程、调用电流测试线程、调用数据处理模块和设备的控制等。其中,产品测试线程主要是解析产品输出的422数据帧,并进行相应的数据处理;电流测试线程主要是测试各个产品的工作电流。
2.3 程序模块的实现
2.3.1 多线程多任务及自动化的实现
测试软件采用LabWindows/CVI的多线程技术,重新设置了线程池的属性;实现了6个线程同时运行,合理地分配了系统资源,提高了测试效率,解决了同时测试4套三轴光纤陀螺的问题。另外,在电流数据与422数据同步上可以采用线程之间的通信进行。自动通断电使用网口向通断电控制箱发送通断电指令。
LabWindows/CVI提供消息传递机制,通过CallCtrlCallback函数调用指定控件的回调函数,从而达到预期的自动化处理功能。本设计在数据自动化处理方面,应用了LabWindows/CVI的消息传递机制。采集完成后,首先向数据处理模块发送数据处理消息,数据处理模块接到消息后,执行数据处理功能;然后向存储、打印模块发送消息,模块接到消息后,生成相应的数据报表。
2.3.2 四通道RS422数据帧自动解析模块
三轴光纤陀螺在测试阶段输出RS422数据帧,数据帧的格式如表1所示。数据帧包括帧头(1 Byte)、陀螺x轴脉冲数(2 Byte)、陀螺y轴脉冲数(2 Bvte)、陀螺z轴脉冲数(2 Byte)、温度(2 Byte)和温度标志位(1Byte),数据帧每0.312 5 ms更新一次,其中温度数据采用分时复用的方式,根据温度标志的不同温度数据分别为x、y、z轴和电路板的温度。
由于最多可以4个陀螺同时测试,数据量为每秒12 800帧数据;采用961 200 bit·s-1的传输速率,接收帧数据然后处理并显示很费时且会丢失数据帧;设计采用扩大串口的接收缓存的方式,把接收缓存的大小设为32 000,这样可以利用下一组数据的接收时间来处理上一组接收的数据;从而为数据的处理、存储及显示提供更多可以利用的时间,这是完成数据传输的关键。实验验证了这种方法的处理效率,能满足实时数据采集的要求。
2.3.3 实时数据显示模块
在4个三轴光纤陀螺进行数据采集时,数据采集及实时显示占用大部分的时间资源,这对实时数据采集是不利的。减少数据显示占用的时间资源是首要解决的问题。软件采用TAB选项卡来进行多通道数据显示,用专门的回电函数控制数据显示,只显示当前处于激活状态的子TAB页对应通道的实时数据。具体实施步骤:(1)给TAB控件添加回调函数,重新显示当前TAB对应通道产品已经采集的数据;(2)在数据采集线程中,只显示处于激活状态子TAB页对应的数据。实际应用证明这种方法能很好地解决实时数据显示的问题。
2.3.4 温箱控制模块曲线实现
温箱采用ESPEC的温箱,其运行方式有两种:定值运行和程序运行。定值运行是设置一个温度点,温箱由当前温度按设置的参数向设置温度跟进。程序运行是编写温度曲线,温箱则按照温度曲线运行。设计采用程序运行方式,用程序通过串口控制编写温箱程序。温度曲线如图5所示。
3 测试结果及数据处理结果
(1)实时采集的数据如图5和图6所示,显示了实时采集后x、y和z轴脉冲和温度曲线。
(2)数据处理的结果如图6右侧所示,从上至下依次为x、y和z轴的零偏和零偏稳定性。
(3)系统可以同时采集4套三轴光纤陀螺。系统对陀螺工作电流的测试精度达到0.5mA。
4 结束语
多路自动化测试系统是降低测试成本、提高测试准确性和改善测效率的有效途径。设计是针对三轴光纤陀螺测试流程复杂且耗时长的特点而开发的自动化测试系统。实时多任务系统,使用LabWindows/CVI开发环境的多线程技术实现更高的效率,便于系统资源的调度与数据传输。满足自动化测试要求,并在某研究所得到了很好应用,提高了测试效率。