关于转播台机房“温度采集”的无线通信程序设计
【摘要】温度对于发射台机房来说,至关重要;下面简单介绍一种对机房内的温度进行采集并无线传输的系统,本系统最大的特点就是信息的无线传输,省去了传统有线传输的束缚,简化了系统的安装。选择合适的无线模块直接关系到信号传输的有效性及系统的可靠性。本课题设计的是一套无线多温度数据采集系统,主要用于对环境温度的采集与监控,系统采用基于无线网络的设计思想和温度采集技术。无线传输避免了远距离布线所带来的施工困难,成本高的缺点。本设计用AT89C52单片机和无线收发射模块NRF24L01为主要硬件,设计了包括温度采集,温度显示,系统控制,串口通信等外围电路。温度传感器使用DS18B20,它实现对温度的实时监控并传输数据给单片机,温度上下限通过程序进行设置。本设计是以Atmel公司的AT89C52单片机作为控制核心,提出以DS18B20的单总线分布式温度采集与控制系统,温度传感节点通过单总线与单片机相连。控制器通过温度传感器实时检测节点的温度变化,并在LCD1602上循环显示节点温度的变化。通过串口将检测到的温度信息回馈到上位机(PC机),从而远程实现对整个系统的检测。
【关键词】温度传感器;显示程序设计;无线收发模块
无线温度采集系统可被广泛应用于温度测量或相应的可转换为温度量或供电故障监控的工业、农业、环保、服务业、安全监控等工程中,例如:城市路灯故障检测和供电线路防盗监视、城市居民小区供热检测、大型仓库温度检测、工业生产测控、农业生产温度测控、环保工程、故障监控工程等。设计目标:
(1)能通过DS18B20实现对当前环境温度的检测实时传送给LCD1602循环显示;
(2)设置高温上限和低温下限,当前温度超过高温上限,警报器响、直流电机转动,低于温度下限,led灯亮,温度恢复正常范围,现象消除;
(3)通过无线模块NRF24L01传送当前温度值给接收单片机,通过LCD1602显示并通过串口传送给上位机(PC),以实现实时监测。
在本设计中主要模块是温度传感器,显示模块以及无线传输模块,所以选择好这三个模块是做好本设计的前提条件。
1.温度传感器模块的选择与论证
作为测量数据的直接来源,温度传感器的测量精度和工作稳定性直接影响到后续电路工作的精确性,可以说温度传感器是本设计的重中之重。整个系统的测量算法,无线数据传输协议都与温度传感器息息相关,选择合理的温度传感器将是本设计成功与否的关键。
方案一:
采用热敏电阻,可满足40摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的。
方案二:
采用单片模拟量的温度传感器,比如AD590,LM35等。但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使得测温装置的结构复杂化。
方案三:
采用数字温度传感器DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线性度较好。在0~100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89C52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单。
采用温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势,部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度,所以集成芯片的使用将成为电路发展的一种趋势。本方案应用这一温度芯片,也是顺应这一趋势。
方案对比及选择结果:方案一的设计成本低,但是其测量精度不够,方案二电路设计复杂,而方案三只需要一根传输线,大大简化了设计复杂度。所以本设计的温度传感器设计方案采用方案三。
1.1 显示模块的选择与论证
作为人机界面的一部分,显示模块主要功能是对测量得到的数据进行显示。显示模块的显示能力也影响到温度测量的精度。
方案一:
使用发光二极管显示器(简称LED),它配置灵活,使用方便,价格低廉,但显示内容有限,线路连接复杂,要有驱动电路。不但显示内容单一,而且使用功耗高。
方案二:
使用液晶显示器(LCD),它的功耗低,体积小,美观,方便,使用寿命长,且能显示图形、字母等,接口简单,可以直接与单片机进行连接,但成本较高,占用系统资源较大。LCD1602液晶原理图如图1所示。
图1 液晶显示模块
1602液晶模块内部的字符发生存储器已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。
因为1602识别的是ASCII码,可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如“A”。
方案对比及选择结果:方案二虽然编程复杂些,但是显示精度高可以达到0.0625度,且本设计显示信息较多,方案一显示简单,不能满足设计要求,所以本设计采用方案二。
1.2 无线通信模块的选择与论证
本系统最大的特点就是信息的无线传输,省去了传统有线传输的束缚,简化了系统的安装。选择合适的无线模块直接关系到信号传输的有效性及系统的可靠性。
方案一:
PTR2000是基于nRF401器件的无线数据传输模块,采用低发射频率、高灵敏度设计。该器件使用433 MHz频段,是真正的单片UHF无线收发一体器件,其工作模式包括工作频道的设置和发送、接收、待机状态,由TXEN、CS、PWM 3个引脚共同决定,其工作模式设置如表1所示。
表1 PTR2000工作模式设置
PTR2000利用串口进行数据传输,而单片机和PC机均带有串口,因此,可利用PTR2000作为单片机和PC机之间数据传输的无线接口。
方案二:
NRF24L01是一款工作在2.4-2.5GHZ世界通用ISM频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型SchockBurstTM模式控制器、功率放大器、晶体振荡器、调制器、解调器。输出功率、频道选择和协议的设置可以通过SPI接口进行设置。
极低的电流消耗:当工作在发射模式下发射功率为-6dBm是电流消耗为9mA,接收模式时为12.3mA。掉电模式和待机模式下电流消耗更低。表2所示为NRF24L01快速参考参数。
表2 NRF24LO1快速参考参数
方案对比及结果选择:PTR2000控制简单,利用串口进行数据传输,NRF24L01控制复杂,需要自己焊接电源电路,但是PTR2000成本太高,故本设计选择方案二。
2.温度传感器DS18B20程序设计
DS18B20采用单总线的通信方式,硬件结构十分简单,但是相应的它的软件开发部分就十分繁琐,想让其正常工作,必须要严格按照其时序图来编写程序。图2所示为DS18B20的复位时序图:
图2 DS18B20的复位时序
图3所示为DS18B20的读写时序:
图3 DS18B20的读写时序
图4所示为DS18B20程序流程图:
图4 DS18B20程序流程图
3.LCD1602显示程序设计
LCD1602的控制命令较多,要想使其正确的显示,就要对它的读写时序详细分析,按照其读写时序来进行读写。在本设计中,我们只需要对LCD1602进行写操作,使其显示我们设定的内容,所以我们暂时不考虑它的读操作。图5所示为LCD1602写操作时序及参考时间:
图5 LCD1602写操作时序及参考时间
4.无线收发模块NRF24L01程序设计
无线传输模块NRF24L01控制指令没有LCD1602多,但是它与单片机通信采用的是SPI总线方式,但是本设计中的单片机没有SPI总线,所以要用通用I/O端口来模拟SPI总线时序,操作时序及参考时间如图6-9所示:
图6 SPI读操作
图7 SPI写操作
图8 操作时序图
图9 SPI参考时间
图10所示为NRF24L01发送与接收程序流程图。
5.系统调试与性能测试
5.1 测试环境及工具
测试温度:0~100摄氏度。
测试仪器及软件:数字万用表,温度计0~100摄氏度,串口调试助手,protues仿真软件。
测试方法:目测。
5.2 系统硬件调试
使系统运行,观察系统硬件电路是否正常工作(包括单片机系统,键盘电路,显示电路,温度测试电路,喇叭及直流电机电路,无线模块电路等)。
采用温度传感器和温度计同时测量温度变化情况,目测显示电路是否正常。并记录各点温度值,与实际温度值比较,得出系统的温度指标。
5.3 系统软件调试
在keil51 uvison4中进行编译,如没有错误,下载到单片机中观察现象,如没有和设想的现象一致,通过硬件的现象来分析具体出错的原因,返回keil51中继续调试,直至成功,还可以在protues中进行仿真,直观的观看结果。
5.4 系统性能测试
通过DS18B20测试当前的温度,能通过LCD1602显示电路实时显示;
可以通过键盘来设置高温上限和低温下限,超过高温上限后喇叭以两种频率发声,同时直流电机转动,低于低温下限后,led灯亮(模拟加热),温度恢复正常范围后,现象消除;能通过无线模块NRF24L01进行数据传输与接收,能在LCD1602显示电路中显示,并能通过串口传送温度数据给上位机(PC)。
参考文献
[1]林伸茂.8051单片机彻底研究基础篇[M].北京:北京人民邮电出版社,2004.
[2]孙涵芳.MCS-51系列单片机原理及应用[M].北京:北京航空航天大学出版社,1996.
[3]饶庆和.MCS-51单片机实用技术[M].北京:电子工业出版社,2003.
[4]姜大源.单片机技术[M].北京:高等教育出版社,2005.
[5]刘娟.单片机C语言与PROTUES仿真技能实训[M].北京:中国电力出版社,2010.
作者简介:魏志东(1979—),男,山东临沂人,工程师,现供职于山东省新闻出版广电局大泽山转播台,从事广播电视发射转播方面的工作。
推荐访问: 转播台 无线通信 程序设计 机房 采集