基于单片机的气压式高度计设计
摘要:采用集成度高的压阻式硅气压传感器,运用模块化设计方法完成了基于C8051F353单片机的数字式气压高度计的设计。通过仿真软件采用分段插值方法优化提高测量精度,实现了数字式气压高度计的智能化。实验表明,本文设计的气压式高度计能够显著提高测量精度,非常适合对体积和功耗有要求的小型飞行器上使用,也可使用在地面仪表上,进行大气数据采集。
关键词:气压传感器;误差补偿;C8051F353;非线性校正
高度是载体到某一基准水平面的垂直距离,是导航的一个重要依据。气压传感器是气压式高度计的重要器件。传统的气压传感器信号调理电路校准和补偿电路复杂,稳定性差,不能直接用于计算机数字化处理,也不便于在便携式设备中集成。本气压式高度测量系统使用微型压阻式传感器,通过对静压的测量,经过模/数变换后由单片机进行数字滤波,函数解算出载体当前的绝对高度,具有较高精度和抗干扰能力。
1 高度测量系统的设计
大气压力在数值上等于所在海拔高度往上直到大气上界整个空气柱的重量,因此理想情况下,大气压力与海拔高度具有一一对应的关系。在海平面附近,海拔高度每升高100 m,气压下降大约0.7 kPa。由于空气具有可压缩性,大气压力与海拔高度具有非线性关系。
高度和气压之间的函数关系较为复杂。如果照搬气压公式来制作电路,电路将变得十分复杂,现实起来非常困难。因此,设计该高度计时,可以将高度按区段划分,分别进行数据的解算。
1.1 气压高度计设计的理论基础
气压与高程的关系模型:H=T0/L×(P/P0)∧(1/(N-1))(近似公式)。以标准海平面为基准:T0=288.15K;P0=101.325kPa;N=5.2558 8;L=-0.006 5℃/m,通过计算结果可见表1。从表中数据可以看出,传感器的漂移等引起的误差对高端和低端的影响是不同的。为提高测量精度,设计时要考虑这一点。根据气压公式可以得出0~6 000 m量程内的压力变化范围在47.18~101.325 kPa。据此可确定硅压阻式传感器量程。为充分利用传感器的精度,选择硅压阻式传感器量程要尽量接近测量范围。
1.2 高度计的硬件设计
硬件结构由微型硅压阻式传感器、单片机、A/D转换、精密参考电压、显示驱动模块、串口通信模块、电源模块等几部分组成。元器件选取主要考虑设计精度和体积功耗,并留有一定的余量。
1.2.1 单片机
数据处理要求体积小功耗低,内部带有16位ADC和温度传感器。此处选用C8051F353型单片机,是美国Silicon Labs公司最新推出的一款混合信号片上系统型单片机芯片,可以工作在-40~+85℃温度范围,28引脚LQFP封装,带有最大放大倍数128的可编程增益放大器(PGA)。非常适用于多路模拟数据采集系统。
1.2.2 压阻式传感器
气压传感器在气压计中占据核心位置。设计时可根据测量精度、测量范围、温度补偿、测量绝对气压值等几个性能指标来选取气压传感器。选用传感器量程要尽量与测量的范围相符,以利于同样的精度条件下减小误差。传感器选用体积较小的飞思卡尔公司的MPX2100D型绝压传感器,量程为100~0 kPa。线性度为±0.25%FS。满量程输出为40 mV(10 V供电)。它用单个由离子注入工艺形成并经激光修整的X型电阻代替一般用4个电阻构成的惠斯登电桥,避免了由4个电阻的不匹配而引起的误差。
1.2.3 ADC芯片
根据量程和分辨率选择A/D转换器位数和精度。ADC芯片的位数N根据公式N≥log2(1+Umax/Umin)计算(式中:Umax为ADC芯片的满度输入电压;Umin为ADC芯片最小能分辨出的电压),为达到1 m以上的气压高度分辨率,A/D转换器的位数要在15位以上。为简化电路,缩小体积,这里A/D转换器采用C8051F353自带的16位ADC0。参考电压使用单片机内部自带的2.5 V基准。通过将寄存器ADCOMD中的ADOEN位置“1”和将寄存器ADCOCF中的ADOVREF位清“0”来使能内部电压基准。使用时应在VREF和AGND之间接入0.1μF和4.7μF的旁路电容。
1.2.4 显示通信电路
由于使用4个单个LED进行显示的连线比较复杂,同时单片机的端口驱动能力也难以保证,此处选用专门的驱动芯片。显示驱动选用可编程8位SPI串行LED接口的MAX7219。串口通信电路主要用来实现该系统与上位计算机的通信,利用C8051F353型单片机的UART串口总线通过SP3 232芯片的电平转换与上位计算机进行通信。工作于9 600 b/s,1个起始位,8个数据位,1个停止位,奇校验。
1.2.5 电源与抗干扰设计
使用了低压差稳压器LM1117A分别为微处理器和为其余电路供电。采用了基准电压源MAX6350来稳定对压力传感器的供电,以保证传感器输出的稳定性。将基准电压分压后作为C8051F353型单片机的电压参考。PCB板设计时每个芯片有电源退耦电路。模拟数字分开布线。为了避免传感器产生的信号在进入A/D采样前发生失真并减少传感器的功耗,在ADC的输入端连接了滤波器,降低噪声并作为缓冲器隔离前后级,避免其他电路对ADC采样的影响。仪器采用干电池供电不存在电源或电网干扰问题。但现场使用不可避免地会受到自然放电干扰和其他电气设备的放电干扰。为不增加过多的硬件屏蔽措施,设计采用软件采用了采用了改进的平均值滤波算法。
1.3 高度计的软件件设计
软件设计流程如图1所示,采用模块化结构,方便调试。包括初始化子程序、采样数据处理、A/D转换子程序、压力补偿子程序、数据处理子程序、高度计算子程序、通信子程序、显示子程序等部分组成。
- 基于FPGA的DSP设计方法(08-26)
- 电力电子装置控制系统的DSP设计方案(04-08)
- 基于DSP Builder的VGA接口设计(04-10)
- 基于DSP和USB的高速数据采集与处理系统设计(05-01)
- 数字信号处理(DSP)应用系统中的低功耗设计(05-02)
- 基于DSP的嵌入式显微图像处理系统的设计(06-28)