便携式测温仪采用16位超低功耗单片机MSP430F435和热电阻传感器铂1000实现温度的信号处理和采集。采用MSP430系列单片机的一个最大优势是它具有低功耗和高集成度,非常适合于电池供电和空间受限的工作环境以及便携式应用场合。作为一个便携式应用系统,功耗是整个系统的功耗,不仅是处理器的功耗。比如处理器输入端口的漏电流对系统的耗电影响就较大,MSP430单片机输入端口的漏电流最大为50 nA,远低于其他系列单片机(一般为1 μA~10μA)。该测温仪适合高炉热负荷水温测量,或者需要连续测量多点温度和温差的测量场合。
1系统硬件设计
便携式测温仪主要由处理器、传感器接口、键盘、LCD(液晶显示器)、数据存储、打印和电源等模块组成。系统硬件组成框图如图1所示。
1.1处理器模块
MSP430F435是测温仪的控制中心,完成传感器数据结果处理、键盘的识别、串口通信的管理等。美国得州仪器(TI)公司的MSP430F435单片机是Flash类型单片机,内嵌16 kB Flash程序存储器和512 B数据存储器。其主要特点是:超低功耗、16位指令、内置A/D转换器、串行通信接口、硬件乘法器、LCD驱动器及高抗干扰能力等。因此,MSP430单片机特别适合应用在智能仪表、防盗系统、智能家电、电池供电便携式设备等产品中。该芯片性能特点如下:低工作电压(1.8 V~3.6 V);超低功耗(工作模式4下耗电仅为0.1μA);16位RISC(精简指令集计算机结构);150 ns指令周期。
1.2电源模块
整个电路由1个AA电池供电,通过电压转换芯片获得处理器和外围电路所需电源。为保证测温仪正常工作,电源电路中还配有电池电量检测装置,在电池电量比较低、可能会影响到测温仪正常工作的情况下及时报警,提醒更换电池。采用MSP430F435内置比较器模块,无须外加专门的电池检测芯片,只需2个电阻就可以完成此功能。
1.3传感器接口模块
传感器接口模块电路见图2。传感器输出毫伏级的应变信号,通过高稳定度电桥变换,经由运算放大器MAX492组成的减法放大电路,然后经调零、滤波处理后,送至NSP430F435的A/D转换接口ADC0,实现对温度信号的检测。单片机根据处理结果的值和范围进行查表,实现分段线性化,将传感器信号与温度对应。
1.4显示、键盘模块
LCD和键盘显示是进行人机交互的重要手段。MSP430内部有LCD驱动模块,最大可驱动160段的LCD。采用4位8段低功耗模块,这种LCD非常适合于要求功耗低的仪表(如电子水表、电表、煤气表等)以及便携式系统中。测温仪面板上设置有2个手动键,1个功能键,1个确认键,以完成实时显示、保存测量值和打印等功能。在按功能键的同时,LCD会有相应的数值显示,用户可以读出相关的信息,或者按确认键执行相应的功能。
1.5数据存储模块
MSP430F435外扩了2 kB的E2PROM,E2PROM通过I2C总线与单片机连接,用于保存采集的温度值,以备打印机打印。
1.6打印机模块
打印机选用北京炜煌科技的汉字微型打印机,与单片机串口直接相连,接口电路相对简单,通过用软件使其按指定的格式打印出温度值。 1.7键盘模块
便携式测温仪面板上设置了2个键,以完成实时显示测量值和打印等功能。使用按键与单片机的I/O口线直接连接的方法构成,采用查询方式获得按键值。
2系统软件设计
整个系统软件设计主要由温度采集、低功耗设计、LCD显示、读写E2PROM和打印处理5部分组成。本系统的工作流程图如图3所示。
2.1温度采集
温度数据采集采用单片机MSP430F435自带的A/D转换器,A/D转换的精度可达12位。MSP430单片机内部提供了方便的A/D转换器初始化寄存器,只需简单地设置几个A/D转换器控制寄存器,就可完成对A/D转换器的初始化。软件设计的重点是温度与热电势间非线性关系的线性化标度变换算法和关于传感器温度数据噪声干扰的滤波算法。其中标度变换采用分段(每10 ℃分段)线性化的方法,提高了系统的测温精度;而滤波采用中位值滤波算法。算法的具体实现过程是:首先连续采集15次,然后把15个温度数据按由小到大的顺序排列,取中位值作为本次采样值。中位值滤波能有效地克服因偶然因素引起的波动干扰。对温度、液位等缓慢变化的被测参数,采用此方法能收到良好的滤波效果。实际使用证明这样的滤波算法可保证小数点后1位数据保持稳定。
2.2低功耗
对于便携式设备,设计时应尽量降低功耗,使系统尽可能长时间停留在低功耗状态。因此,考虑设备在适当的时候自动关机。这里采用了一个定时器。当定时器大于0时,系统处于开机状态;当定时器倒数到0时,系统进入休眠状态并且关掉LCD模块和A/D模块。当处理器处于休眠状态时,键盘程序就不好用了,处理器不会主动去扫描键盘。而键盘接在P1口,P1口具有外部中断的功能,当处理器进入休眠状态时打开按键中断。当有按键按下时,CPU响应外部中断,系统被唤醒,回到正常工作模式。具体操作是:开机时,对定时器初始化一个大于0的值,并且在每按一次有效键时,系统重新初始化这个值。因此,当没有按任何有效键时,3 min后就会自动关机,从而实现降低功耗的目的。 2.3 LCD显示
LCD显示部分的实现要与键盘处理程序相配合,根据不同功能显示不同的信息。要实现LCD的正常显示至少需要下面几个重要步骤:选择LCD驱动模式、制定相应驱动模式下LCD的BCD码显示存储表、设置LCD时钟、设置通用I/O端口属性和更新LCD显示缓存区。本仪表选择静态LCD驱动模式,制定了0~F的BCD码显示存储表,采用1 024 Hz的时钟频率,设置通用I/O口属性为输出,根据不同功能实时更新LCD显示缓存区的内容。
2.4其他部分
E2PROM模块用于保存测量的温度值和测量点。串行通信模块用于实现测温仪与打印机连接,打印测量的温度值。这两部分程序较简单,这里不再叙述。 3测温仪功能及主要技术性能
测温仪功能如表1所示。当功能号为0、1时,用于确认保存当前测量点温度值,然后自动转到下一个测量点位置测量;当功能号为2时,用于显示和保存记录已经测量的测量点位置;当功能号为3时,用于显示已经测量的测量点位置和清除上次测量的记录;当功能号为4时,用于确认打印。
4结束语
本文研制的便携式低功耗便携式测温系统克服了传统测量系统存在的不足,具有结构简单、工作稳定可靠、测量精度高、功耗低、便携性好、功能齐全、适用场合广泛等优点。与其他测温仪的突出不同之处在于,本系统采用新型低功耗16位单片机MSP430 F435作为整个系统的控制核心。由于采用了功能强大的MSP430单片机,本系统设计的硬件电路与以往有较大差异。MSP430 F435有着丰富的外围模块,因此比较容易实现温度信号的采集、处理、显示、存储及打印,从而使整个硬件电路得到极大的简化。实际使用证明该测温仪完全符合工厂应用的需要,性能稳定,可靠性高,设备操作简单方便。