基于嵌入式计算机PC/104的某火箭弹自动测试仪应用
扫描二维码
随时随地手机看文章
1 引言
变滚转速率火箭弹中的陀螺是敏感元件,它的作用是测出火箭弹飞行过程中出现的偏航角,这个偏航角经过解算模块的计算由控制器启动执行机构进行姿态控制,从而达到修正偏航的目的。但陀螺是一次性产品,在研制和测试过程中它是不工作的,因此需要对陀螺信号进行模拟。对于偏航修正的结果也要进行判定,看它是否与理想的控制效果一致,是否存在超前或滞后现象。因此有必要研制一台自动测试仪进行测试,除了以上两个重要方面外,根据研制要求和测试要求本测试仪需要检测的内容还有二次电源、控制器时序、主发动机内阻测试、姿态控制发动机内阻测试.
本测试系统采用嵌入式计算机PC/104,PC/104与PC/AT体系结构完全兼容,大小只有90mmX96mm,但它几乎集成了普通台式PC机的所有功能,并与之兼容,因此在PC机上开发的程序可以直接在PC/104 CPU模块上运行,与单片机系统相比省去了专用的开发工具,而且维护方便。PC/104采用模块化设计,硬件电路设计简单,减少了开发周期。因此在本测试系统中我们采用嵌入式计算机PC/104。
2 系统设计
2.1硬件框图,如图1所示:
图1 硬件框图
系统中中心模块采用盛博公司的SCM-6456,它采用增强型80486DX的CPU,32M的RAM;两个串口,波特率可由软件控制,其中COM2可设置为RS-485方式;一个并口;VGA支持彩色和单色LCD、EL平板显示器和模拟CRT;在板IDE和Floppy接口;采集模块选用盛博公司的ADT650,此模块具有12位的分辨率,最大100KHz的采样率,模拟输入共有16通道,最大 10V输入;4通道模拟输出;24通道TTL/CMOS兼容I/O;3个16位、最大10MHz的定时/计数器;信号条理部分主要是将待测试信号变换成适合ADT650采集的信号;人机界面中,因为要求输入字符很少,自行设计了4X4的矩阵键盘,显示结果既可在显示器上显示,也可以用打印机打印。
2.1.1 定时/计数器的配置
本测试仪要求输出频率为5-13Hz的信号,则周期为200ms到80ms左右,如果采取1ms定时进行D/A转换的办法,最小的一个周期输出80个点,经过实际测试,能够满足测试对象对模拟激励信号的要求;另外在采集测试对象执行机构的控制信号时采用1ms定时采集的办法,也能满足最后数据判断的要求,因此定时器定时时间为1ms(即定时器的输出时钟为1KHz)。而采集模块ADT650上三个定时器的输入时钟都为10MHz,不能满足要求,可以用级连的方法即将COUNTRT0的OUT与COUNTRT1的CLK输入端、COUNTRT1的OUT与COUNTRT2的CLK端相连,其编程设置如下:(Base表示ADT650模块的基地址,为0x330,下同)
outportb(Base+15,0x35); /* 定时器0 方波发生器 */
outportb(Base +12,00); /* 计数值低字节送计数器0*/
outportb(Base +12,10); /*计数值低字节送计数器0*/
outportb(Base +15,0x75); /* 定时器1 方波发生器 */
outportb(Base +13,10); /* 计数值低字节送计数器1*/
outportb(Base +13,0); /* 计数值低字节送计数器1*/
即10MHz的时钟经1000分频和10分频后得到1KHz的时钟;
2.1.2 模拟陀螺信号的设计
在火箭弹的研制和测试过程中,陀螺不工作,所以要求提供能够模拟陀螺的激励信号,有两路:一路是偏航信号,一路是俯仰信号;这两路信号经过试验相位相差90度,频率由5Hz到13Hz逐渐变大,幅值由1V逐渐变小。ADT650上的模拟输出范围是-5V到+5V,D/A转换的分辨率是12位,则-5V~+5V对应的数据是0—4095,输出0V对应2048;设周期为T,则通过程序计算
2048+(409-40*step)*sin(2*pi*i/T)[!--empirenews.page--]
再计算DA数据的底8位(LSB)和高4位(MSB),分别写入通道Base+1、Base+2,则数据被送到DA转换器,并且每1ms输出,就可以得到要求的信号;启使时step=0,其中409表示输出的幅值为1V,即1/5*2048=409;随时间变化step加1,就能使幅值逐渐变小。当输出一定周期数后,使频率加1,这样就达到频率逐渐增大的要求,相应的T就变小。另一路与它的相位相差90度,其计算函数为
2048+(409-40*step)*sin(2*pi*(I+4/T)/T)。
2.1.3 偏航修正的测试
火箭弹测试中的最重要内容就是看执行偏航修正的结果是否与理论的控制结果一致。火箭弹中执行偏航修正的是通过两对电磁阀的开关来改变姿态控制发动机的喷火方向,所以该测试仪就必须采集4路电磁阀的开关信号。ADT650集成了uPD71055可编程外围接口,用PA0~3来采集电磁阀的开关信号,采用1ms中断采集一次信号,最后将采集的控制信号与标准的控制信号进行比较,找出在切换时是否存在超前或滞后问题,以此来决定火箭弹性能的好坏。
2. 1. 4 模拟量采集
除了以上两项重要的测试内容外,还需测试的有二次电源,主发动内阻,姿态发机内阻
测试。二次电源主要有 5V和 12V,而ADT650的最大输入范围是 10V,因此要分压衰减后才能输入到A/D输入端;对于内阻的测试,采用转换为测电压的方法,最后在程序中转换为所需实际电阻值;
对ADT650的A/D转换利用直接编程的方法,首先写Base+3来选择输入通道,对于多通道采集只需设置一次,下一次A/D转换会自动转如下一通道。设置完成后写入Base+0任何值便启动A/D转换,等待Base+5的位0变为0时(即A/D转换完成),就可以读取数据并转换为有意义的数据。
2.1.5 RS-485通信
本测试系统要与测试对象进行通信,为保证数据传输的可靠性,我们采用RS-485通信。SCM-6456模块中有两个串口COM1和COM2,其中COM2可通过跳线设置为RS485方式,其应用电路如图2:
图2 485通讯
2.2 软件设计
根据PC/104的特点,本系统采用DOS6.22操作系统,TC2.0环境编程,模块化设计,并将程序固化在电子盘中,启动时也从电子盘启动。主要包括初使化模块、串行通讯模块、数据采集模块、数据处理模块等,程序流程图如图3:
图3 程序流程图
3 结束语
采用PC/104计算机设计自动测试系统,具有体积小、功耗低的特点,适宜做成便携式设备,方便野外应用。本测试仪还可在研制阶段中代替信号发生器、示波器,方便数据分析。实际应用表明,该测试仪稳定、可靠。