文献标识码: A
文章编号: 0258-7998(2010)10-0117-03
光纤陀螺(FOG)是以Sagnac效应为基础发展起来的新型全固态陀螺仪,是一种无机械转动部件的惯性测量元件,具有无运动和磨损部件、启动快、寿命长、体积小、质量轻、耐冲击、精度高、动态范围大等优越性能,广泛用于军事和民用工业等领域[1]。光纤陀螺的性能受众多环境因素的影响,供电电压、电流及环境温度的变化是影响光纤陀螺性能的重要因素。对于这些影响光纤陀螺性能的因素进行有效的监测,有助于系统的故障检测和提高陀螺的使用精度,更重要的是对系统起到了一种实时保护作用。本文采用基于DSP的数字自动监测电路,分别对电源电压、电流以及环境温度进行实时监测,并且将监测到的数据通过接口电路发送到PC和温控系统以及LCD显示装置。
1 系统设计
系统工作原理:通过对系统工作时的电源电压、电流及环境温度信号进行调理、A/D采样、滤波算法、待测值计算算法等处理后得出系统的工作状态。电压信号通过信号调理电路后可以直接进行A/D采样;电流信号先通过电流/电压转换电路,再通过信号调理电路,最后经A/D采样;温度信号由温度传感器AD590获得,根据流过器件的电流(μA)等于器件所处环境的热力学温度(开尔文)度数:I/T=1即1 μA/K,串联一个电阻将电流信号转换成电压信号,A/D采样后,由电压与温度的关系得到温度值。NTC热敏电阻测温时,主要原理是通过测得电阻值后,根据热敏电阻阻值与温度的关系转换成温度值,所以,本系统采用四臂电桥法[2]来测量热敏电阻的阻值。通过在高低温试验箱里实际测得的几组实验值, 使用MATLAB进行曲线拟合得到电阻值与温度的关系。系统结构框图如图1所示。整个系统是以DSP为核心建立起来的,由于设计中涉及与FPGA温控系统通信、多路A/D同时采样以及大量浮点型运算,如果使用传统的MCU设计很难满足项目要求,因此选用DSP作为系统的主处理器,DSP不仅具有高速信号处理能力,同时也提供了丰富的片内外设资源和I/O端口,有助于提高系统集成度,降低硬件电路的设计难度。
4路信号首先经过信号调理电路,经A/D转换后由DMA传输至DSP,处理器可以同时进行A/D采样以及对数据的综合计算,计算结果通过串口返回上位机,温度信息通过FPGA接口电路传送到温控系统,同时各种状态信息通过 LCD 显示。
2 硬件电路设计
实验电路需要选取合适的处理器以及传感器单元,同时由于传感器及各功能模块需要的工作电压各不相同,因此需要设计专门的电源模块为系统供电。此外,还需要设计各个接口电路。
2.1 DSP处理器选择
根据系统设计需要,选择TI公司最新推出的TMS320F28335浮点型数字信号控制器作为主处理器,该芯片既集成了控制系统所需要的丰富外设资源,又具有强大的数据处理能力和优秀的C编译效率。与以往的顶点DSP相比,该芯片的计算精度高,成本低,功耗小,性能高,同时它的A/D转换更精确快速,并且主频高达150 MHz。
2.2 传感器电路
电源电流检测采用Maxim公司生产的双向、精密电流传感放大器MAX471来实现。MAX471内置35 mΩ精密传感电阻,可测量电流的上下限为±3 A,通过外接2 kΩ电阻将被测电流转化为对地的电压。
本系统设计了两路温度测量电路,一路为由AD590温度传感器构成的温度测量系统;另一路为由负系数热敏电阻构成的温度测量系统。AD590温度传感器测温范围为:-55℃~+150℃,具有精度高,供电范围广等优点。负系数热敏电阻的测温范围为-40℃~+70℃,规定在25℃时,它的电阻值约为10 kΩ,通过高低温实验,测得不同温度下电阻值。在MATLAB中拟合阻值与温度关系曲线如图2所示。
2.3 DSP与FPGA通信电路
本系统测量的温度值可作为光纤陀螺温控系统的参考值,因此需要设计两个系统的通信电路,以便有效及时准确地将温度信号传送到FPGA温控系统中。系统设计的FPGA与DSP之间的无缝接口通过FPGA内部的异步FIFO数据缓冲器[3]来实现,如图3所示。
其工作原理:当DSP有数据输出时,通过WR选通FIFO数据缓冲器并开始数据传输,当FIFO数据缓冲器中接收的数据达到其容量的一半时,由FULL发出半满“中断”信号到FPGA的INTx,FPGA相应“中断”将一批数据取走;当FPGA有数据输出时,同样是先将数据暂存在FIFO中,当数据量达到其容量的一半时,由FULL发出半满信号至DSP的INTx,DSP响应"中断"将一批数据取走,等待下一次中断的到来。在这期间,DSP可以继续执行原来的算法程序,只需要在响应下一次中断时将数据取走即可,大大地提高了DSP的工作效率,更大程度上发挥了DSP和FPGA的性能,而且电路体积很小。
2.4 电源管理单元
本设计中,各个功能模块需要多种不同的电压:+5 V为LCD显示供电,+3.3 V为DSP的I/O端口供电,+1.9 V为DSP内核供电,+15 V和-15 V为运放供电,+15 V为AD590供电,另外需要精密电源+5 V为热敏电阻供电。所以,设计了专门的电路来产生系统所需的多种电压,本系统外部输入电压为±15 V和+5 V。
热敏电阻所需要的精密+5 V电压源选用REF02芯片,该芯片可以提供+5 V的精密参考电压。由于DSP是有次序地上电,因此选用TI公司的专用供电芯片TPS767D301来产生DSP需要的+3.3 V和+1.9 V电压。
2.5 其他电路设计
串口通信单元主要完成电平转换,协助DSP与上位机系统完成实时通信。此部分按照全双工模式设计,应用Maxim公司的全双工RS485收发器MAX349,工作电压为3.3 V,通信速率高达10 Mb/s。
液晶显示部分的主要功能为:显示测量的正负电压值、正负电流值、两路温度值以及系统提示、报警提示信息。本系统使用192×64点阵式液晶显示器,8位并行的数据接口。但是要注意的是:这款LCD没有内置字库,需要自行建立。
3 系统软件设计
系统软件流程图如图4所示,初始化后接收A/D转换的数据结果,然后对转换的数据进行滤波算法处理,最后计算相应的电压、电流温度值,并且将温度值传送给FPGA,所有的计算结果传回PC并经LCD显示。
软件主要包括初始化程序、A/D采样转换、滤波算法、待测值计算算法、LCD显示、串口通信等主要模块。各模块说明如下:
(1) 初始化程序
DSP上电初始化的主要工作有:配置看门狗定时器的初始化;配置锁相环设计系统时钟频率;配置高速外设时钟寄存器和低速外设时钟寄存器,使能相应外设的驱动时钟;初始化外设中断扩展控制器,使能部分外设的中断请求;初始化PIE中断向量表,使得中断向量指向用户编写的中断服务函数。
(2) A/D转换模块
DSP的A/D采样模块可配置为双排序器同时采样模式[4],这样可以对几路模拟信号同时进行采样。连续采样N次,经算术平均滤波算法处理后达到滤去随机干扰信号的目的。
(3) 待测值计算算法
算法中要进行求指数、对数等运算,使直接调用库函数中的相关运算的执行速度很慢,因此,在软件开发中针对系统所需要的指数、对数函数都重新编写了运算函数,采用查表和泰勒展开式结合的算法[5],在满足精度要求的前提下尽量缩短运算时间。所采用的措施是用一些特殊点将所需计算的数值范围划分为不同区域,区域内的值可用低阶数的泰勒展开式获得较高精度近似值,计算特殊点的值并且存储为表格。这样结合展开式和查表即可快速得到任意值的高精度近似值。
(4) 串口通信
上位机与下位机采用异步串口传输,波特率为115 200 b/s。上位机使用VB语言编写串口通信及用户界面。上位机程序软件的作用是存储采样数据。
(5) LCD显示模块
LCD显示模块程序算法如下:
InitLCD(); //LCD初始化;
ResetLCD(); //LCD复位;
Clr_Screen(); //LCD清屏;
SetStartLine(0x00); //LCD起始行;
If(ReadStatus()!=1)
WriteInstru (uchar instruc);
If(ReadStatus()!=1) ;
WriteData (uchar Data);
Display(uchar Data,uchar Row,uchar Col);
While(Ready==0);
AD590测试结果如表1所示,NTC热敏电阻测试结果如表2所示。
本系统监测电源电压的误差为±0.002 V,监测电源电流的误差为±0.006 A,AD590的测温电路的相对精度小于2.5%,热敏电阻的测量精度也满足系统设计要求。因此,本系统具有精度高、实时、可靠等特点,可将光纤陀螺系统的运行状态实时准确并且直观地显示出来,和以往光纤陀螺系统相比,大大提高了光纤陀螺系统使用的可靠性和准确性。
参考文献
[1] 于昌龙.基于均匀设计的光纤陀螺温度建模实验方案研究[J].红外与激光工程,2009,38(2):330-331.
[2] 杜克铭,姚燕,李景勇.基于STC89C52的多路温度传感器标定系统[J].电子技术应用,2009,35(4):152-155.
[3] 张晓峰,张桂才.光纤陀螺信号处理电路中FPGA与DSP 的接口方法研究[J].红外与激光工程,2006(35):243-247.
[4] 苏奎峰,吕强,常天庆,等.TMS320X281XDSP原理及C程序开发[M].北京:北京航空航天大学出版社,2008.
[5] 冯池,张海东.基于DSP的压力测深系统设计[J]. 应用科技,2009,36(11):24-26.