无人机温度巡检信号调理电路
目前无人飞行器主要飞行于大气对流层和平流层低层区间。该区间大气温度变化复杂,大气环境的温度过低或过高都将直接影响无人飞行器控制系统的正常工作。由于无人飞行器机身需要检测温度的部位较多,监测目标比较分散,使用单一结构的温度传感器或结冰探测仪表难以实时、全面地掌握整个机身表而温度状况,因此,本设计结合已有的民用多路测温技术,提出一种基于FPGA的适用于无人飞行器机身各部位温度检测和功能事务管理的多路温度巡检系统。该系统可在无人飞行器飞行过程中,根据需要循环监测各部位的温度状况,以便能够及早测出机身可能出现的结冰低温并向系统发出报警信号使飞机及时飞离结冰区域或开启除冰设计,从而达到保障飞行安全的目的。
设计方案的总体结构
无人飞行器温度巡检装置的结构框图如图1所示。
本设计采用FPGA作为核心芯片,电源电路供电后,信号调理电路通过铂电阻传感器PT100将采集的电压信号通过放大器放大后送给A/D采样电路,A/D采样电路通过采样把模拟信号转换为数字信号后送给FPGA进行处理,处理数据后FPGA自动把处理结果送出,通过液晶显示并且与键盘电路设定的值进行比对,如果超出设定值范围,FPGA送出信号,使得蜂鸣器电路报警,继电器电路响应,启动加热装置,图1给出了系统的整体框图。按照系统的功能要求,装置的硬件电路依据其功能划分为信号调理模块、A/D采样模块、FPGA最小系统模块等部分。
信号调理模块
系统采用惠斯通电桥接入铂电阻传感器PT100信号,如图2所示。
图2中INA、INB之差与PT100阻值变化呈线性关系,通过将INA、INB变化值采样再对应铂电阻传感器P100刻度表即可换算得到实测温度。考虑到铂电阻传感器PT100探头产生的信号非常微弱,很容易受到噪声干扰,所以放大电路选择单运放构成的仪表放大器。仪表放大器拥有差分式结构,对共模噪声有很强的抑制作用,同时拥有较高的输入阻抗和较小的输出阻抗,非常适合对微弱信号的放大。图2中R3,R4,R5,R6,R7,R8均采用低温漂的精密电阻,R2为多圈精密可调电阻。通过电路可以计算出:
A/D采样模块
系统选用AD7476作为采样芯片。该芯片是12位低功耗逐次逼近型ADC,采用单电源工作,电源电压为2.35V至5.25V,最高吞吐速率可达 1MSPS,完全满足本系统的采样精度和速度的要求。该芯片内置一个低噪声、宽带宽采样保持放大器,可处理6MHz以上的输入频率。AD转换过程和数据采集过程通过CS和串行时钟SCLK进行控制,从而为器件与FPGA接口创造了条件。输入信号在CS的下降沿进行采样,而转换同时在此处启动,转换速率取决于SCLK的时钟频率。图3为AD7476的典型接线电路。
软件设计
温度巡检装置的软件以VHDL语言为基础,采样模块化的设计思路编程,分为液晶显示模块、AD采样模块、键盘输入模块、报警模块和PWM控制模块模块。图4给出了各模块之间的关系图。
系统首先通过AD采样模块对温度进行采样,将采样的数据送入温度检测模块进行处理。温度检测模块的任务是计算将采样来的温度值与系统的预设值之间的差值,利用差值的大小来控制PWM模块输出脉冲宽度不同的脉冲波,通过脉冲波开控制继电器的通断,从而达到温度的恒定控制。
系统的定标
首先用高精度电阻箱代替铂电阻传感器Pt100对测量系统进行定标。根据式1所示的铂电阻传感器Pt100电阻和输出电压之间的关系,通过改变电阻箱的取值来设定相对应的测试温度点标称值,经过测量系统、A/D采样的计算,得到测量温度显示值。根据初测数据对测量电路、补偿电压进行校准后,完成对系统的定标工作。
系统实测
将铂电阻传感器Pt100接入测量系统,并置入高精度恒温箱中(温控精度0.01℃)进行整个温度测量系统定标测量。测量时要注意恒温箱的密封,以提高环境温度稳定性;恒温箱温度稳定后,每隔1min对同一温度点进行20次测量。由表1中数据可见,测量系统的最大误差为0.009℃,说明Pt100 铂电阻传感器的定标误差较小,精度也较高,能满足高精度温度测量系统的测量要求,但温度高端误差较大,可能与恒温箱温度控制精度有关,有待于进一步定标。
本文提出了基于FPGA的无人飞行器温度巡检装置的设计方案,该方案中所设计的无人飞行器温度巡检装置利用FPGA快速性、可并行性、延时固定性等特点,能够快速,准确的检测无人机的各部件温度。通过实验验证,系统的最大误差不超过0.01度,完全满足无人飞行器对温度采集的要求。
对于在室外环境工作的移动机器人通常使用惯导/卫星组合导航方式。惯性导航系统具有完全自主、抗干扰强、隐蔽能力好和输出参数全面等优点,但它的鲁棒性极低,误差会不断随时间累积发散。卫星导航系统具有精度高、定位范围广和误差不随时间累积等优点,但其自主性差、易受外界遮挡和干扰、接收机数据更新频率低等缺点。因此工程上常常将两者互补结合使用,组成卫星/惯性组合导航系统。
本文以低功耗MSP430F149为核心,设计了能够同时实现卫星导航(GNSS)接收机、惯性测量单元(IMU)、气压高度等导航信息的高速采集与高速合路传输,并进行初步导航定位信息融合的导航系统,即可为室外移动机器人提供直接的导航服务,也可作为高精度组合导航系统的原始测量信息高速采集系统。系统设计的关键是利用单片机有限的接口资源实现了多传感器信息并行采集,设计了有效的数据同步方法,解决了气压传感器数据手册疏漏导致的无法接入问题,给出了机器人组合定位的基本方法。系统充分利用了MSP430F149单片机的能力,具有结构简单、低功耗、对传感器具有普适性等优点。
本系统由电源、气压计接口、IMU接口、GNSS接收机接口、SPI转UART模块及MSP430F149构成。系统组成如图1所示。组合导航系统的功能实现分为IMU数据接收与解析、GNSS数据接收与解析、气压计数据接收与解析、组合导航解算以及数据输出五个部分。IMU数据接收与解析功能用来获取导航解算中需要的加速度和角速度信息;GNSS数据接收与解析功能用来获取导航解算中需要的位置和速度信息(松耦合组合)或者 GNSS伪距和伪距率(紧耦合组合);气压计数据接收与解析功能用来获取高度信息;组合导航解算功能为系统核心,用来进行组合导航解算;数据的输出包括原始数据包的整合输出和解算结果的输出。
图1 系统组成结构图
本文所使用的惯性器件和GNSS接收机都是RS-232电平的UART接口,具有通用性,用户可根据成本考虑不同精度的设备。气压计选用美国MEAS公司生产的MS5803-02BA,已经固化在电路中。
微控制器接口
整个组合导航定位系统需要三个UART接口和两个SPI接口。其中两个UART接口由430单片机自带的UART资源提供,另外一个UART接口由 GPIO模拟SPI通过MAX3111E芯片转化得到;两个SPI接口由GPIO模拟得到。另外需要一个外部中断引脚捕获秒脉冲信号(PPS)、一个外部中断引脚捕获MAX3111E中断信号。MSP430F149管脚资源分配如表1所示。
电源电路
本系统供电需求为3.3V供电,因此采用AMS1117稳压芯片,接入5V电源即可输出3.3V稳定电压,可提供1A电流,满足系统供电需求。电路设计如图2所示。
图2 电源电路
IMU器件及GNSS接收机接口电路
IMU器件及GNSS接收机都采用UART接口方式接入,采用RS232协议。因此可使用430单片机上自带的两个UART接口,但是需要进行TTL电平与RS232电平转换。这里采用常见的MAX3232芯片,电路设计如图3所示。
图3 IMU及GNSS接口电路
气压计MS5803-02BA接口电路
MS5803-02BA[3]是由MEAS公司生产的数字压力传感器,分辨率达10cm。芯片内部包含一个高线性的压力传感器和一个内部工厂标定系数的超低功耗24位ΔΣ型ADC。该款芯片有SPI和I2C两种接口方式,通过芯片的PS引脚配置了选择不同的接口方式(PS置低时,采用SPI工作模式;PS置高时,采用I2C工作模式)。本文所阐述的定位系统将气压计配置为SPI工作模式。MS5803-02BA与微控制器间的接口电路设计如图4所示。
图4 MS5803-02BA接口电路
MS5803-02BA的控制命令包括复位命令、温度ADC命令、气压ADC命令、ADC读取命令、PROM读取命令。控制命令如表2所示。控制命令通过SDI口移位输入,响应结果从SDO移位输出。输入的电平判定在时钟信号的上升沿,输出的电平判定在时钟信号的下降沿。输出的气压值可以进行温度补偿,需要利用芯片内部PROM中的系数来补偿。ADC读取命令输入之后,输出24位ADC结果;PROM读取命令输入之后,输出16位补偿系数。
本文基于MSP430F149单片机设计的室外移动机器人组合导航定位系统,通过接口的扩展使得该款定位系统能够接入IMU、GNSS接收机、气压计三路信息,完成初步导航定位服务功能,同时可作为多路数据采集设备,将多路数据整合到一路高速输出接口,用于进一步的高精度导航解算。该系统根据使用者的需求不同,可接入不同成本和精度的设备,只要满足RS-232协议即可。笔者将其实际运用,整个系统充分利用该款单片机的资源,结构简单、功耗低、适用范围广,不仅可作为初步导航定位服务的设备,还可作为多路数据采集设备。
相关文章
发表评论