基于单片机的无线温度检测器的设计要点.docx
- 文档编号:3196202
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:79
- 大小:770.68KB
基于单片机的无线温度检测器的设计要点.docx
《基于单片机的无线温度检测器的设计要点.docx》由会员分享,可在线阅读,更多相关《基于单片机的无线温度检测器的设计要点.docx(79页珍藏版)》请在冰点文库上搜索。
基于单片机的无线温度检测器的设计要点
ANYANGINSTITUTEOFTECHNOLOGY
本科毕业论文
基于单片机的无线温度检测器的设计
TheDesignofWirelessTemperatureDetectorBasedonMCU
院(部)名称:
电子信息与电气工程学院
专业班级:
自动化2009级2班
学生姓名:
******
学号:
200902020005
指导教师姓名:
******
指导教师职称:
讲师
2013年5月
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得安阳工学院及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解安阳工学院关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
基于单片机的无线温度检测器的设计
摘要:
无线温度检测器是一种用于仓库和蔬菜大棚等具有温度检测、无线传输、温度显示和超限报警功能的仪器。
系统由发送端和接收端两部分组成。
发送端将温度传感器检测到的温度值经单片机进行数据处理后,通过无线收发模块无线发送,接收端将接收到的数据信息显示在液晶屏上,并附加温度限设置和超限报警功能。
本设计利用软件Keil进行系统程序设计,利用单片机学习板进行硬件仿真,待仿真成功后进行了实物制作和调试,最终成功设计出了无线温度检测器。
文中详细介绍了温度采集模块、无线传输模块、显示模块、温度限设置模块和报警电路的设计方法和过程。
当采样点的温度值超出规定值时,系统通过报警电路提醒监测人员。
同时,检测人员可以通过键盘对具体报警点的温度值进行设置。
另外,该系统温度检测具有较高的精度,无线数据传输稳定,而且传输距离较远。
关键词:
温度检测;单片机;无线传输
TheDesignofWirelessTemperatureDetectorBasedonMCU
Abstract:
wirelesstemperaturedetectorisakindoftemperaturedetectionusedforwarehouseandvegetablescanopy,ithasthefunctionofdisplayandwirelesstransmissionandtemperatureoverrunalarm.Systemconsistsoftwoparts,thesenderandthereceiver.Thesenderwillbedetectedbytemperaturesensortemperatureaftersingle-chipmicrocomputerfordataprocessing,throughthewirelesstransceivermodules,wirelesssendingandreceivingendreceivesthedataandinformationdisplayedontheLCDscreen,andtheadditionaltemperaturelimitsettingandtransfinitealarmfunction.ThisdesignusingthesoftwareofKeiltowritesystemprogram,andusingthemicrocontrollerboardtosimulationhardware,weshallcarryoutphysicalproductionanddebuggingafterthesuccessofthesimulation,andwedesignedthewirelesstemperaturedetectorsuccessfullyintheend.Thispaperintroducedthetemperatureacquisitionmodule,wirelesstransmissionmodule,displaymodule,temperaturelimitsettingmoduleandalarmcircuitdesignmethodandprocess.Thesystemthroughthealarmcircuittoremindmonitoringpersonnelwhenthedataoftemperaturebeyondthesetvalue.Atthesametime,thetestingpersonnelcanthroughthekeyboardtosetspecificalarmpointtemperature.Inaddition,thetemperaturedetectionsystemhashighprecision,stablewirelessdatatransmission,andthetransmissiondistanceisfar.
Keywords:
temperaturedetection;Singlechipmicrocomputer;Wirelesstransmission
第一章绪论
1.1课题的背景和意义
随着微电子技术、传感器技术、嵌入式技术以及通信技术的飞速发展,数据采集和检测系统得到了广泛的应用,用于检测各种参数的仪表也越来越多。
这些仪表种类繁杂,分布往往比较分散,这些仪表实时采集数据的工作量也越来越大。
如何高效率、低成本地采集这些离散的数据是迫切需要解决的科技难题。
对于许多检测现场,由于需要检测的范围广,检测的对象种类繁多,需要投入大量的人力、物力进行设备的维护和检测工作。
同时,受现场环境和应用对象的限制,存在着各种各样的恶劣条件,使人们不易到现场长时间的检查采集一些数据,如果这时进行大量的布线工作则是不经济、不合理的。
传统的检测系统造价昂贵,体积庞大,在电源供给困难的区域不易部署,同时布置一旦完毕,就很难根据检测现场灵活改变布局,重新布置会带来巨大的成本消耗,系统重用性差。
因此,采用无线检测的方式来实现有很大的优势,也是目前研究的热点。
为了适应这种客观需要,逐步出现了无线检测技术,应用无线通信技术对离散的、不易布线区域的参数信息进行监视,以实现信息的远程测量、传输和调节等各项功能。
无线检测系统实现参数信息的实时、快速和有效检测,向人们提供了一个更高效、更全面,更快捷的服务模式,本论文以改变当前滞后的检测技术,解决检测中遇到的困难和难题为目标,利用无线检测网络的优势,突破传统检测方法和思路,以高科技、新技术、低成本提高科学检测水平,为检测提供可靠科学的检测数据,使用无线检测网络,一些布线和管理的难点都将迎刃而解,人力、物力、资金的使用也大幅减少。
无线检测系统具有不借助外部网络、快速安装、抗毁性强等特点,可以使人们在任何时间、地点和任何环境条件下获取大量的、可靠的数据信息。
1.2本课题的研究内容以及所完成的工作
1.2.1本课题的研究内容
本课题研究的内容是针对检测领域的现状,以及组建无线检测系统的实际需要,提出了一种基于射频通信技术的解决方案。
研究和开发一种新型无线检测系统来实现传感器的温度数据采集和无线数据传输,从而达到检测的目的。
该系统可以快速、准确地完成数据采集和管理,为智能化检测提供了便利的条件。
1.2.2本课题所完成的具体工作
本课题的研究内容是通过无线传输实现对检测现场的温度参数的实时采集。
本课题所完成的具体工作:
(1)完成系统的总体设计,并根据设计要求选取系统的主要功能模块器件。
(2)完成无线检测系统的发射端和接收端的电路设计,根据系统设计要求完成电源模块、传感器数据采集模块、无线数据通信模块、报警电路、键盘电路、时钟振荡电路和复位电路设计。
(3)完成无线检测系统程序设计,程序设计采用C语言编程。
(4)完成无线检测系统的系统调试,对系统的数据可靠性、抗干扰能力、通信距离等方面进行测试。
第二章无线温度检测系统总体设计
2.1系统设计要求
根据本系统的应用环境,总结系统的设计要求如下:
(1)体积小。
与传统的温度计相比,本课题设计的测温系统的体积要尽可能的小,从而减少占用空间,而且更便于安装和更换。
(2)可靠性高。
为了保证系统能够正常工作,并且尽可能减少测温误差,要求接收端与发送端之间的无线通信可靠。
而系统环境的影响可能会有不确定的电磁干扰等,因此,系统要有一定的抗干扰能力。
(3)低成本。
无线测温系统应充分考虑其成本,在满足系统要求的前提下,应尽量降低成本,从而提高与同类产品的竞争力。
2.2系统总体设计方案的确定
本课题的研究内容是通过无线传输实现对检测现场的温度参数的实时采集。
主要实现温度采集、无线传输、超温报警和温度实时显示功能。
整个系统由温度采集端和温度接收端两个部份组成,两者之间通过无线信道通信。
数据采集端负责数据的采集和发送,数据接收端负责数据的接收和处理。
系统整体结构框图如图2.1和图2.2所示。
图2.1温度采集端
图2.2温度接收端
2.2.1数字温度传感器的选择
随着温度传感器智能化、集成化技术的进步,数字式温度传感器也得到了快速发展,世界上许多公司推出了新型的数字温度传感器系列。
这些产品的出现极大的丰富了设计工程师的选择对象。
在如此众多的产品中选择出合适的器件,应该把握以下几点:
外围电路应该尽量简单;测温的精度、分辨率要合适,以便减少不必要的电路和软件开发成本;占用单片机的I/O引脚数情况如何;与单片机的通信协议应尽量简单,温度测量的软件开发难度、成本要尽量小。
DSl8B20是美国Dallas半导体公司继DSl820之后最新推出的一种改进型智能温度传感器。
与传统的热敏电阻相比,它能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
可以分别在93.75ms和750ms内完成9位和12位的数字量读取。
它采用独特的单总线接口方式,即允许在一条信号线上挂接数十甚至上百个数字式传感器,从而使测温装置与各传感器的接口变得十分简单,克服了模拟式传感器与微机接口时需要的A/D转换器及其它复杂外围电路的缺点,而且,可以通过总线供电,温度变换功率来源于数据总线,总线本身也可以向所挂接的DSl8B20供电,而无需额外电源,由它组成的温度测控系统非常方便,而且成本低、体积小、可靠性高。
DSl8B20的测温范围-55℃~+125℃,最高分辨率可达0.0625℃,由于每一个DSl8B20出厂时都刻有唯一的一个序列号并存入其ROM中,因此CPU可用简单的通信协议就可以识别,从而节省了大量的引线和逻辑电路。
由于DSl8B20具有独特的单总线接口方式在测温时有明显的优势,占用单片机的I/O引脚资源少,和单片机的通信协议比较简单,成本较低,而且具有负压特性(电源极性接反时,温度计不会因发热而烧毁,只是不能正常工作),和其他数字温度传感器相比,它更适合本系统。
所以,选用DSl8B20作为温度测量的传感器。
2.2.2控制器的选择
目前使用最为广泛的是51系列单片机,其中STC89C52系列单片机是宏晶科技推出的新一代超强抗干扰/高速/低功耗的单片机,是一款增强型51单片机,完全兼容8051单片机,增加了新的功能,新增两级中断优先级,多一个外中断,内置EEPROM,看门狗,具有掉电模式,512B内存,支持ISP在线编程,不用编程器,程序可擦写10万次,管脚完全兼容,性能更好,驱动能力更强,超强抗干扰能力,价格也比传统的89系列低。
考虑到快速开发以及本系统的应用要求,最后采用了最常用的STC89C52单片机。
STC89C52单片机主要性能:
(1)高速:
1个时钟/机器周期,增强型8051内核,速度比普通8051快8到12倍。
(2)宽电压:
5.5—4.IV/3.7V,3.6V—2.4V/2.lV。
(3)低功耗设计:
空闲模式(可由任意一个中断唤醒)和掉电模式(可由任意一个外部中断唤醒,可支持下降沿/低电远程唤醒)。
(4)工作频率:
0—35MHz,普通8051:
0—420MHz。
(5)时钟:
外部晶体或内部RC振荡器可选,在ISP下载编程用户程序时设置。
(6)芯片内EEPROM功能,擦写次数10万以上。
(7)ISP/IAP,在系统可编程/在应用可编程,无需编程器/仿真器。
(8)2个16位定时器,兼容普通8051的定时器T0/T1。
(9)硬件看门狗(WDT)。
(10)全双工异步串行口(UART),兼容普通8051,可当2个串口使用。
(11)先进的指令集结构,兼容普通8051指令集,有硬件乘法/除法指令。
2.2.3无线收发模块的选择
现在有很多射频芯片可以用来完成无线数据传输。
所有高频元件包括电感、振荡器等已经全部集成在芯片内部,一致性良好,且性能不受外界干扰。
通信模块一般包含简单透明的数据传输协议或使用简单的加密协议,发射功率、工作频率等,所有工作参数全部通过软件设置完成,用户不用对无线通信原理和工作机制有较深的了解,只要依据命令字进行操作即可实现基本的数据无线传输功能。
新一代短距离无线数据通信系统具有体积小、功耗低、稳定性好、抗干扰能力强等优点,而且开发简单快速,可以方便地嵌入到各种设备中,实现设备间的无线连接,因此,适合搭建小型网络,在工业、民用领域得到较为广泛的应用。
由于无线收发芯片的种类和数量比较多,如何设计中选择所需要的芯片是非常关键的,正确的选择可以少走弯路,降低成本。
下面是选择无线收发芯片的原则:
(1)收发芯片的数据传输是否需要进行曼彻斯特编码
采用曼彻斯特编码的芯片,在编程上会需要较高的技巧和经验,需要更多的内存和程序容量,并且曼彻斯特编码大大降低数据传输的效率,一般仅能达到标称速率的1/3。
而采用串口传输的芯片,应用及编程非常简单,传送的效率很高,标称速率就是实际速率,因为串口对大家来说是再熟悉不过的了,编程也很方便。
(2)收发芯片所需的外围元件数量
芯片外围元件的数量直接决定你的产品的成本,因此应该选择外围元件少的收发芯片。
有些芯片似乎比较便宜,可是外围元件使用很多昂贵的元件如变容管以及声表滤波器等;有些芯片收发分别需要两根天线,会大大加大成本。
(3)功耗
大多数无线收发芯片是应用在便携式产品上的,因此功耗也非常重要,应该根据需要选择综合功耗较小的产品。
(4)发射功率
在同等条件下,为了保证有效和可靠的通信,应该选用发射功率较高的产品。
但是也应该注意,有些产品号称的发射功率虽然较高,但是由于其外围元件多,调试复杂,往往实际的发射功率远远达不到标称值。
(5)收发芯片的封装和管脚数
较少的管脚以及较小的封装,有利于减少PCB面积降低成本,适合便携式产品的设计,也有利于开发和生产。
综合考虑以上五个原则,本课题中无线收发通信采用NRF24L01模块。
NRF24L01是NORDIC公司最近生产的一款无线通信芯片,采用FSK调制,内部集成NORDIC自己的EnhancedShortBurst协议。
可以实现点对点或是1对6的无线通信。
无线通信速度可以达到2Mbps。
NORDIC公司提供通信模块的GERBER文件,可以直接加工生产。
嵌入式工程师或是单片机爱好者只需要为单片机系统预留5个GPIO,1个中断输入引脚,就可以很容易实现无线通信的功能,非常适合用来为MCU系统构建无线通信功能。
第三章硬件电路设计
3.1发射端
无线温度检测器的温度采集端由电源模块、STC89C52单片机、温度采集电路、无线发送模块NRF24L01、时钟电路及复位电路组成。
温度采集端硬件框图如图3.1所示。
图3.1温度采集端硬件框图
3.1.1温度采集模块
1.DSl8B20内部结构
DSl8B20芯片的内部结构如图3.2所示。
图3.2DS18B20内部结构图
2.DSl8B20有4个主要的数据部件:
(1)64位激光ROM。
64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)。
(2)温度灵敏元件。
(3)非易失性温度报警触发器TH和TL。
可通过软件写入用户报警上下限值。
(4)配置寄存器。
配置寄存器为高速暂存存储器中的第五个字节。
DSl8B20在工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如表3.1所示。
表3.1DS18B20配置寄存器模式设置表
TM
R1
R0
1
1
1
1
1
其中,TM:
测试模式标志位,出厂时被写入0,不能改变;R0、Rl:
温度计分辨率设置位,其对应四种分辨率表3.2所列,出厂时R0、Rl置为缺省值:
R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。
配置寄存器与分辨率关系如表3.2所示。
表3.2配置寄存器与分辨率关系表
R0
R1
温度计分辨率/bit
最大转换时间/us
0
0
9
93.75
0
1
10
187.5
1
0
11
375
1
1
12
750
3.高速暂存存储器
高速暂存存储器由9个字节组成,其分配如表3.3所示。
当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第1和第2个字节。
单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表3.3所示。
对应的温度计算:
当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。
表3.3DS18B20存储器映像表
温度低位
温度高位
TH
TL
配置
保留
保留
保留
8位CRC
4.对DSl8B20的设计,需要注意以下问题:
(1)对硬件结构简单的单线数字温度传感器DSl8B20进行操作,需要用较为复杂的程序完成。
编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写程序要严格按要求编写。
尤其在使用DSl8B20的高测温分辨力时,对时序及电气特性参数要求更高。
(2)测温电缆线建议采用屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。
DSl8B20在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND接在一起,焊接牢固。
若VCC脱开未接,传感器只送85.0℃的温度值。
5.DSl8B20与STC89C52的连接电路图如图3.3所示。
DSl8B20与单片机的P3.0口相连。
图3.3DSl8B20与STC89C52连接电路原理图
3.1.2控制单元STC89C52单片机
1.STC89C52单片机的特点
单片机是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。
STC89C52单片机的基本结构如图3.4所示。
图3.4STC89C52单片机的基本结构
2.STC89C52单片机的引脚及功能
STC89C52单片机的管脚分布如图3.5所示。
图3.5STC89C52单片机的管脚图
STC89C52的I/O端口:
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。
在flash编程和校验时,P1口接收低8位地址字节。
引脚第二功能
P1.0/T2(定时器/计数器T2的外部计数输入)
P1.1/T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
P1.5/MOSI(在系统编程用)
P1.6/MISO(在系统编程用)
P1.7/SCK(在系统编程用)
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
在访问外部程序存储器或用16位地址读取外部数据存储器时,P2口送出高8位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
P3口亦作为STC89C52特殊功能(第二功能)使用。
在flash编程和校验时,P3口也接收一些控制信号。
引脚第二功能
P3.0/RXD(串行输入口)
P3.1/TXD(串行输出口)
P3.2/INT0(外中断0)
P3.3/INT1(外中断1)
P3.4/T0(定时/计数器0)
P3.5/T1(定时/计数器1)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
此外,P3口还接收一些用于flash闪存编程和程序校验的控制信号。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意每当访问外部数据存储器时将跳过一个ALE脉冲。
对flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 无线 温度 检测器 设计 要点
![提示](https://static.bingdoc.com/images/bang_tan.gif)