微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于MSP430F149单片机的多路无线温度检测系统

基于MSP430F149单片机的多路无线温度检测系统

时间:11-10 来源:互联网 点击:

温度在人类日常生活中扮演着极其重要的角色,同时在工农业生产过程中,温度检测具有十分重要的意义。现阶段温度检测主要是有线定点温度检测,其温度检测原理为单片机利用温度传感器检测温度,并在数码管或LCD 上进行温度显示。同时由于系统没有报警功能,故需要人为来判断是否需要进行升温或者降温,这使系统的检测丧失了实时性。另外,在某些环境恶劣的工业环境,以人工方式直接操作设置仪表测量温度也不现实,因此采用无线方式进行温度检测尤为必要。

目前有些设计能够实现无线温度采集,但功耗过高是其最大的缺点。在实际温度控制过程中既要求系统具有稳定性、实时性,又需要使系统功耗低及保证温度的均匀性,因此设计一种低功耗的多点无线温度检测系统很有意义。本文提出一种采用低功耗单片机MSP430F149 单片机实现的多点无线温度测量系统,解决了上述问题。该系统能实现对温度智能化的检测,能够同时进行多点温度检测,是可以实现远程控制的无线温度检测系统。低功耗、实时性的无线温度检测是该设计的最大特点。

1 系统构成

系统分为下位机、上位机和PC 机三部分。PC 机是整个系统的最上层,负责对下位机的控制和管理,并对收集到的各个节点的数据进行存储和处理。由于下位机无法直接与PC 机通信,这就需要使用上位机作为中间媒介。上位机与下位机通过无线模块通信,与PC机采用有线连接。

  该设计采用MSP430F149 单片机作为核心控制模块,其最主要特点为低功耗。MSP430F149 具有双串口的特点,利用其中的一个串行口与PC 机进行通讯时,两者之间必须通过RS 232 电平转换芯片。单片机与无线发射模块nRF24L01 通讯时可通过通用I/ O口模拟串口通讯。现场温度数据的采集是利用NT C100 热敏电阻和MSP430F149 单片机部带有的12 位A/ D转换器来实现的。这里不需要外加ADC,可以简化电路,提高系统的稳定性。将按键作为输入模块,用来改变温度报警的上下限。由于设计要求不需要太多内容的显示,考虑到功耗及性价比,可以自制一个简易段码液晶用于显示。下位机设计方案和系统整体构成框图分别如图1,图2 所示。


图1 下位机设计方案


图2 系统的整体构成

  2 硬件设计

  2. 1 无线通信模块设计

  nRF24L01 是一款新型单片射频收发器件,工作于2. 4~ 2. 5 GHz ISM 频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst 技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01 功耗低,有多种低功率工作模式( 掉电模式和空闲模式) 使节能设计更方便,图3 为它的应用电路。


图3 NRF24L01 应用电路

  从单片机控制的角度来看,只需要将图3 中左边的6 个控制和数据信号与单片机通用I/ O 口相连。

  2. 2 温度采集电路

  为了使整个系统的功耗更低,采用低功耗的热敏电阻NT C100 和MSP430149 内部自带的12 位A/ D 转换器实现温度的采集功能。其理论分析与计算电阻值和温度变化之间的关系。



  式中: RT 为温度T( 单位: K) 时的NTC 热敏电阻阻值;RN为额定温度T N ( 单位: K) 时的NTC 热敏电阻阻值;T 为规定温度( 单位: K) ;B 为NTC 热敏电阻的材料常数,又叫热敏指数。

  常温环境中,温度为28℃,换算成开氏温度为273. 15+ 28= 301. 15 K。通过多次测28℃及30℃环境下的数据,如表1 所示,取平均值,尽量减小误差,算得B 值。

表1 测量NTC100 热敏电阻B 值


  通过式( 1) 可得,将T ,T N 都转化成开尔文温度进行计算得B = 4 064. 34。经过比较发现,求得的阻值与测得的阻值很相近。

  图4 为温度采集模块,其中R 1 为热敏电阻,R3 为200 kΩ电阻,R2 为0~ 20 kΩ 的可调电阻,用来调整温度计的准确性。U0 为检测到的电压,将U0 接到单片机管脚,通过A/ D 转换,将得到的电压值转换成温度值,在LCD 上显示出来。


图4 温度采集模块

  2. 3 显示模块

  本次设计采用自制的16 位段码液晶进行显示。利用液晶驱动IC( HT 1621) 以及配套的液晶LCD 玻璃片,自制16 位段码液晶。另外,驱动IC 上装有两种频率的蜂鸣驱动电路,可以实现报警功能。

  2. 4 串口通信模块

  在温度采集过程中,由于系统随时需要将采集到的温度数值通过PC 机上的VC 界面进行显示,因此需要在PC 机和单片机之间进行相互通信。由于PC 机的RS 232电平与单片机的TTL 电平不同,因此用MAX3232 芯片实现电平的相互转换,这样就可以实现单片机与PC 机之间的相互通信。

  3 软件设计

系统的软件设计采用模块化设计方法。下位机利用定时中断发送温度数据,利用端口中断设置温度报警的上下限,其他时间处于低功耗模式3 的

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top