基于MSP430F149单片机的炮兵气象仪设计
扫描二维码
随时随地手机看文章
针对目前采用的简易气象综合观测仪,存在着实时性差、精度不够、作业时间长以及不能直接计算射击条件修正量和地面风修正量等诸多问题,本文提出基于MSP430F149单片机设计一种炮兵气象仪,以满足炮兵分队射击时的简易气象条件和火箭炮地面风修正的需要。
气象仪的功能和基本工作原理
气象仪的功能包括:①实时测定风向、风速、气温和气压等气象条件,为炮兵射击提供简易气象条件修正量;②实时测定火箭炮阵地的地面风向和风速,为火箭炮分队提供地面风修正量。
炮兵气象仪用于实现地面气象条件风向、风速、气温、气压的自动测量和射击条件修正量及火箭炮地面风修正量的自动计算。其基本工作原理是:将气象仪与处理机通过数据线相连,通过升降杆将气象仪升至要求的高度后,风的作用使风标指向风吹来的方向,磁方位传感器即感应出风向磁方位角;风速叶轮随风速以不同的转速旋转,每转一圈即产生一个脉冲信号,通过单位时间内计数即可计算出风速;气温、气压传感器感应出当时的气温和气压。以上数据经气象仪数据处理后传输给处理机,处理机按要求以固定格式显示。气象仪组成如图1所示。
图1 气象仪组成框图
气象仪硬件设计
气象仪的任务是实现大气压力、温度、风向和风速的实时测量,由压力传感器、温度传感器、风速传感器、磁方位风向传感器、数据采集与处理电路、风标、连接座等组成,其基本设计思想是在满足精度和使用环境要求的前提下,体积小、重量轻,便于野战条件下使用。
传感器的选型
(1)压力、温度传感器
压力和温度传感器采用带预处理电路的模拟输出传感器,以简化后续电路的设计。
压力传感器选用美国Honeywell公司的ASDX015绝压传感器。
温度传感器选用美国Dallas公司推出的基于单总线技术的数字温度计芯片DS1820,便于调整传感器的位置和方向,使其能有效感应外界温度。
(2)风速传感器
对于风速的测量,可以选用的传感器种类很多。综合比较后,选用叶轮式风速传感器,利用霍尔效应测量风速。该方式与光电编码相比更可以做到气象仪整体小巧、结构紧凑,携带使用方便。
(3)风向传感器
磁方位传感器,也就是通常所说的电子罗盘,军用、民用产品比较多。本文选用由平面电子罗盘XW3200和风标组成磁方位风向传感器。
该传感器通过两轴磁阻传感器测量平面地磁场,双轴倾角补偿,内置微处理器计算传感器与磁北夹角,两轴磁阻传感器的方向受风标的带动,始终指向风吹来的方向,则其输出的角度即为风向磁方位角。整个测量过程无需定向,操作简便灵活。
电路设计
气象仪的电路设计的任务是对风速传感器输出的脉冲序列进行单位时间计数,对压力传感器输出的模拟信号进行A/D转换,基于单总线技术读温度数据,接收风向磁方位传感器通过RS-232S输出的数据及与处理机互传数据等。
主控芯片简介
数据处理部分采用MSP430F149作为系统的主芯片,该芯片是美国TI公司推出的超低功耗微处理器。MSP430F149有60KB+256字节FLASH,2KB RAM,包括以下模块:
①基本时钟模块:包括1个数控振荡器(DCO)和2个晶体振荡器。
②看门狗定时器Watchdog Timer,可用作通用定时器。
③带3个捕获/比较寄存器和PWM输出的16位定时器Timer A。
④带7个捕获/比较寄存器和PWM输出的16位定时器Timer B。
⑤2个具有中断功能的8位并行端口:P1和P2。
⑥4个8位并行端口:P3、P4、P5和P6。
⑦模拟比较器Comparator A。
⑧12位A/D转换器ADC 12。
⑨2个串行通信接口USART0与USART1。
电源电路设计
该气象仪为电池供电系统,因此对系统的总体功耗有较高的要求,为了降低功耗,选用MSP430系列的单片机,该系列的单片机工作电压为1.8V~3.6V,并且具有休眠功能,耗电电流在0.1µA~400µA之间,具有极低的功耗。
主控芯片MSP430单片机电源电压为3.3V,外围传感器的工作电压要求为5V,两节7号充电电池电压为2.4V,因此电源电路的设计采用升压DC-DC芯片NCP1400ASN30T1和NCP1400ASN50T1,可将0.8V~3V的电压升至3.3V和5V,分别为单片机和外围器件供电,同时设计有电源关断功能,当无需外围器件工作时,将外围器件的供电全部切断,减少了整体功耗,电源电路原理见图2。
图2 电源电路原理图
主控电路设计
主控电路可以分为温度测量电路,压力测量电路,风速测量电路,风向测量电路和通信电路等。
(1)温度测量电路
温度测量电路如图3所示,测量时采用数字温度传感器DS1820,将采集到的温度数据通过主芯片MSP430F149的P6.5引脚传送给主芯片。根据系统的需要和实际情况,采用外接电源供电方式,主芯片的P6.5脚用于DS1820的数据输入/输出引脚。
图3 温度测量电路图
(2)压力测量电路
压力测量电路如图4所示。压力的测量采用绝压传感器ASDX015,其采集模拟信号,并将模拟电压传入主芯片,通过主芯片的A/D转换模块将模拟信号转化为数字信号,所以必须连接在主芯片具有A/D转换功能的引脚上。MSP430F149的P6口具有8路A/D转换通道,压力传感器连接于主芯片的P6.4引脚。在实现A/D转换功能时,使用内部参考电压2.5V作为A/D转换的电压基准,但是压力传感器的输出范围为0~4V,所以在压力传感器的输出端需设计有分压电路。
图4 压力测量电路图
(3)风速测量电路
风速测量电路如图5所示,风速的测量是采用叶轮式风速传感器,风速传感器与主芯片的连接只需要普通I/O接口,其连接于P1.0引脚,主芯片的P1.0引脚接收霍尔传感器产生的电磁脉冲。
图5 风速测量电路图
(4)风向测量电路
风向测量电路如图6所示。系统采用由平面电子罗盘XW3200和风标组成的磁方位风向传感器来进行风向测量,采用集成电路转换芯片MAX3232来实现电平转换,MAX3232芯片能实现电平的双向转换。该芯片包含两路接收器和驱动器IC芯片,内部有一个电源转换器,可以把输入的+5V电压变换成为RS232输出电平所需要的-10V~+10V电压。
图6 风向测量电路图
(5)通信电路
气象仪通过RS485实现与数据处理系统通信,RS485是一种多点通信标准,采用差分信号进行传输,具有较高的抗共模干扰能力;能够检测到200mV电压,具有较高的灵敏度;数据最高传输速率为10Mb/s。MAX485连接主芯片的USART0,P3.3连接MAX485的控制引脚,当P3.3为低电平时接收数据,为高电平时发送数据,C1为电源滤波电容,A、B端连接有120Ω的电阻,通信电路如图7所示。
图7 通信电路图
(6)晶振电路和复位电路
MSP430F149可接入2个外部振荡器,一个为低速晶体振荡器,经过XIN和XOUT两个引脚相连,另一个为高速晶体振荡器,经过XT2IN和XT2OUT两个引脚,根据需要外接电容,范围可以为450KHz~8MHz。外部晶振频率的选择与系统供电电压有着密切关系,根据气象仪的实际需要,选择了4M外部有源晶振,输出直接接入晶振的XT2IN引脚,XT2OUT空。
复位电路的设计要能使系统可靠复位,并在各种复杂情况下稳定工作,在MSP430F149单片机中有一RST复位管脚,它与不可屏蔽中断功能管脚复用,可由软件选择其功能,正常情况下为复位功能。系统采用外接芯片复位,在复位脚上连接复位芯片HT7027。
气象仪软件设计
气象仪的软件设计共有以下任务:
(1)完成硬件系统如特殊功能寄存器和I/O口等的初始化。
(2)具有温度、压力、风速和风向传感器初始化和检查功能。
(3)具有对温度传感器采集的温度数字信号接收和存储功能。
(4)具有对压力传感器采集模拟信号实施A/D转换并存储功能。
(5)具有对风速传感器产生的脉冲信号实施计数、计算和存储功能。
(6)完成通信接口的初始化功能,实现与风向传感器以及数据处理系统的数据传输。
(7)具有电源检测,转换低功耗状态的功能。
(8)具有数据滤波功能,剔除采集到的误差较大的数据。
气象仪软件包含主程序模块、温度数据采集模块、压力数据采集模块、风速数据采集模块、风向数据采集模块、通信模块以及数据滤波模块等。
主程序的基本流程为气象仪在接收到处理机的命令后,通过各传感器采集数据,并将数据存放到指定寄存器中,进行数据滤波,将采集到的数据通过RS485传送给处理机,其流程如图8所示。
图8 气象仪主程序流程图
从风向、风速、温度和压力传感器采集到的数据,因受多种因素的影响,可能存在不符合条件或测量误差较大的数据,为了保证测量的精确性,必须对所得到的数据进行筛选,剔除精确性较差的数据。为此,对采集到的数据,采用每十个求取平均值,剔除与平均值差值较大的数据,再将剩余的精确数据求平均值,其平均值即为测量所需的风速、风向、压力和温度数据。
结束语
本文基于MSP430系列超低功耗单片机设计了一种高效、高精度、自动化炮兵气象仪,用以满足炮兵部队训练所需。本文根据系统要求,选择了合适的压力传感器、温度传感器、风速传感器和风向传感器,并完成了气象仪硬件和软件设计。该气象仪性能可靠、工作稳定,能够满足部队训练使用精度和技术性能指标要求。