环境温度监测的传感器网络设计毕业论文

上传人:痛*** 文档编号:149438069 上传时间:2022-09-07 格式:DOC 页数:56 大小:757.02KB
收藏 版权申诉 举报 下载
环境温度监测的传感器网络设计毕业论文_第1页
第1页 / 共56页
环境温度监测的传感器网络设计毕业论文_第2页
第2页 / 共56页
环境温度监测的传感器网络设计毕业论文_第3页
第3页 / 共56页
资源描述:

《环境温度监测的传感器网络设计毕业论文》由会员分享,可在线阅读,更多相关《环境温度监测的传感器网络设计毕业论文(56页珍藏版)》请在装配图网上搜索。

1、湖南第一师范学院毕业论文(设计)题目 环境温度监测的传感器网络设计学生姓名 学号 指导教师 系部名称 专业班级 完成时间湖南第一师范学院教务处制本科毕业论文(设计)环境温度监测的传感器网络设计学生姓名: 系部名称: 专业名称: 指导教师: 毕业论文(设计)作者声明1本人提交的毕业论文(设计)是本人在指导教师指导下独立进行研究取得的成果。除文中特别加以标注的地方外,本文不包含其他人或其它机构已经发表或撰写过的成果。对本文研究做出重要贡献的个人与集体均已在文中明确标明。2本人完全了解湖南第一师范学院有关保留、使用学位论文的规定,同意学院保留并向国家有关部门或机构送交本文的复印件和电子版,允许本文被

2、查阅、借阅或编入有关数据库进行检索。同意湖南第一师范学院可以采用影印、打印或扫描等复制手段保存和汇编本文,可以用不同方式在不同媒体上发表、传播本文的全部或部分内容。3湖南第一师范学院在组织专家对毕业论文(设计)进行复审时,如发现本文抄袭,一切后果均由本人承担,与学院和毕业论文指导教师无关。作者签名: 日期:二一 年 月 日摘 要 随着测量技术的不断发展,测量的方向也逐步变得复杂化、高难度化,针对布线困难,浪费资源,占用空间等问题,需要一个无线解决方案。无线传感器网络的基本硬件要考虑无线数据的收发距离和数据准确性等方面,本系统采用NRF24L01无线收发模块实现了检测端(发射端)至监测端(接收端

3、)的单工数据传输。检测端以单片机AT89C51为核心,使用DS18B20温度传感器进行数据的采集;AT89C51对采集到的温度进行处理,然后通过NRF24L01把温度数据发送给监测端。NRF24L01是一款工业级内置硬件链路层协议的低成本无线收发器,工作于2.4 GHz全球开放ISM频段。通过LCD1602液晶显示器来实现数据的显示;可以同时放置6个检测端(发射端)从而实现多点监测。关键词:AT89C51;NRF24L01;温度传感器DS18B20;无线ABSTRACTWith the development of measurement technology, measurement dir

4、ection has gradually become more and more complicated and difficult.To solve problems of the layout of wire,waste of resources and space and other issues,we urgently need a wireless solution.The basic hardware of wireless sensor network must take the distance of wireless data transceiver and data ac

5、curacy into consideration.This system adopts NRF24L01 wireless transceiver module to realize simplex data transmission from the detection end (transmitter) to the monitoring terminal (receiver) . Detection takes MCU AT89C51 as its core, uses DS18B20 temperature sensor to collect data; After processi

6、ng the collected temperature,AT89C51 send data to the monitoring end through the NRF24L01. NRF24L01 is a low-cost wireless transceiver of link layer protocol of industrial inserted hardware , works in the 2.4 GHz band global open ISM. It displays the data through the LCD1602 LCD and it can hold 6 de

7、tection ends (transmitter) in order to achieve multi-point monitoring.Key words: AT89C51;NRF24L01;temperature sensor DS18B20;wirelessIV目 录摘 要IAbstractII前言1第一章 系统方案分析与选择论证3 1.1 系统方案设计3 1.1.1 主要控制芯片方案3 1.1.2 无线通信模块方案3 1.1.3 温度传感器方案3 1.1.4 数据显示方案4 1.2 系统最终方案4第二章 主要硬件介绍和系统模块硬件设计5 2.1 AT89C515 2.1.1 单片机主

8、要控制模块7 2.2 nRF24L01无线模块8 2.2.1 Nrf24L01芯片概述8 2.2.2 引脚功能及描述8 2.2.3 工作模式10 2.2.4 工作原理10 2.2.5 寄存器配置11 2.3 温度传感器DS18B2012 2.3.1 DS18B20管脚配置和内部结构12 2.3.2 DS18B20的工作原理12 2.3.3 DS18B20的硬件设计13 2.4 数据显示模块13 2.4.1 检测端显示模块132.4.2 监测端显示模块14 2.5 报警电路14 2.6 无线模块电源设计电路14第三章 系统软件设计15 3.1 检测端软件设计15 3.2 监测端软件设计16第四章

9、 系统仿真17 4.1 检测端温度采集与显示仿真17 4.2 监测端LCD1602显示温度仿真18第五章 硬件电路板设计19 5.1 系统硬件原理图19 5.1.1 检测端原理图19 5.1.2 监测端原理图20 5.2 系统PCB图21 5.2.1 检测端PCB图21 5.2.2 监测端PCB图22 5.3 硬件制作23 5.4 硬件调试23 5.5 硬件调试结果23结束语24参考文献26附录27致谢49 前言随着社会的进步和生产的需要,利用无线通信进行温度等数据采集的方式应用已经渗透到生产、生活许多方面。短距离无线通信的应用图示在工业现场,存在生产环境恶劣,工作人员不能长时间停留在现场观察

10、设备是否运行正常的情况,就需要采集数据并传输数据到一个环境相对好的操控室内,这样就会产生数据传输问题。由于厂房大、需要传输数据多,使用传统的有线数据传输方式就需要铺设很多很长的通讯线,浪费资源,占用空间,可操作性差,出现错误换线困难。而且,如果存在当数据采集点处于运动状态、所处的环境不允许或无法铺设电缆的情况时,便需要利用无线传输的方式进行数据采集。在农业生产上,传统上都是采取分区取样的人工方法,工作量大,引起误差的因素增多。而且检测目标分散,测点较多,传统的方法已经不能满足当前农业发展的需要。当前的科技水平下,无线通信技术的发展使得温度采集测量更加精确,更加简便易行。在日常生活中,随着人们生

11、活水平的提高,居住条件也逐渐变得智能化。如今很多家庭都会安装室内温度采集控制系统,其原理就是利用无线通信技术采集室内温度数据,并根据室内温度情况进行遥控通风等操作,自动调节室内温度湿度,可以更好地改善人们的居住环境。以上几个简单的实例体现出,在现实生活中,这种无线温度采集系统已经被成功应用于工农业、环境监测、军事国防、机器人控制等许多重要领域,而且类似于这种采集系统的无线通信网络已经被广泛的应用到民用和军事领域。凡是布线繁杂或不允许布线的场合都希望能通过无线方案来解决。为此,需要设计相应的接口系统,控制这些射频芯片工作,完成可靠稳定的无线数据通信,这样的研究也变得更加有意义了。本系统的设计采用

12、了Nordic公司推出的nRF24L01射频芯片,由AT89C51单片机控制实现短距离无线数据通信。该接口设计具有成本低、传输速率高、软件设计简单以及通信稳定可靠等特点。整个系统有发送和接收二部分,通过nRF24L01无线数据通信收发模块来实现无线数据传输。检测部分以单片机AT89C51为核心,使用温度转换芯片DS18B20实时采集温度并通过nRF24l01将采集的温度无线传送给监测部分,然后在LCD1602上显示,通过蜂鸣器实现对温度过高进行报警。第一章 系统方案分析与选择论证1.1 系统方案设计1.1.1 主要控制芯片方案作为主要的控制芯片,需要能够在具有一定的效率基础上完成所需任务,并且

13、在操作和寿命等方面具有易操作、寿命长等优点。考虑到价格、操作、功耗等方面的因素,采用传统的AT89C51单片机作为主控芯片。此芯片价格便宜、操作简便,低功耗,比较经济实惠,完全能够满足设计需求。1.1.2 无线通信模块方案方案一:采用GSM模块进行通信,GSM模块需要借助手机卡,虽说能够远距离传输,但是其成本较大、且需要SIM卡进行通信,通信过程中需要收费,后期维护成本较高。方案二:采用NRF24L01无线射频模块进行通信,NRF24L01是一款高速低功耗的无线通信模块。他能传输较远的距离,而且价格较便宜,采用SPI总线通信模式电路简单,操作方便。考虑到系统的复杂性和程序的复杂度,采用方案二作

14、为本系统的通信模块。1.1.3 温度传感器方案方案一:采用AD590是美国ANALO G DEV ICES 公司的单片集成两端感温电流源。AD590测量热力学温度、摄氏温度、两点温度差、多点最低温度、多点平均温度的具体电路,广泛应用于不同的温度控制场合由于AD590精度高、价格低、不需辅助电源、线性好,常用于测温和热电偶的冷端补偿。但其需要用到差分放大器放大和A/D转换,需要原件多。方案二:采用美国DALLAS公司生产的 DS18B20可组网数字温度传感器芯片,具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域;并且在成本上相对便宜许多。使用DS18B20线

15、路简单,编程容易。考虑到电路的设计,成本,还有多点通信,我们选择方案二,用DS18B20作为本系统的温度传感器。1.1.4 数据显示方案方案一:采用字符液晶LCD1602显示信息,1602是一款比较通用的字符液晶模块,能显示字符和数字等信息,且价格相对便宜,容易控制。方案二:采用LED7段数码显示管显示,其成本低,容易显示控制,但不能显示字符,考虑到布线问题又有点复杂。综合以上方案,我们选择了经济实惠的字符液晶LCD1602来作为监测端的显示,检测端用四位一体7段数码管显示。1.2 系统最终方案检测端由温度传感器DS18B20,AT89C51单片机,nRF24L01无线射频模块,数码管显示模块

16、,LED灯和蜂鸣器组成。图1-1 检测端系统方框图监测端由AT89C51单片机,nRF24L01无线射频模块,LCD1602显示模块,LED灯和蜂鸣器组成。图1-2 监测端系统方框图第二章 主要硬件介绍和系统模块硬件设计2.1 AT89C51AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机1。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高

17、密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。其主要特性如下:与MCS-51 兼容、4K字节可编程闪烁存储器、寿命:1000写/擦循环、数据保留时间:10年、全静态工作:0Hz-24Hz、三级程序存储器锁定、128*8位内部RAM、32可编程I/O线、两个16位定时器/计数器、5个中断源、可编程串行通道、低功耗的闲置和掉电模式、片内振荡器和时钟电路。图2-1 A

18、T89C51管脚图管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为

19、第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3

20、口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。口管脚备选功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3口也可作为AT89C51的一些特殊功能口,如下表所示:表2-1 P3口管脚说明表 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平。 ALE/PROG:当访问外部存储器

21、时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效

22、的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。2.1.1 单片机主要控制模块单片机主要控制模块由AT89C51最小系统组成,其中包括单片机,晶振电路和复位电路。 晶振电路晶振电路由两个30pF电容和一个12MHz晶体振荡器构成,接入单片机的X1、X2

23、引脚。 复位电路单片机复位端(RESET)低电平使能。图2-2 单片机最小系统2.2 nRF24L01无线模块2.2.1 nRF24L01芯片概述 nRF24.L01是一款新型单片射频收发器件,工作于2.4 GHz2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。nRF24L01功耗低,在以-6 dBm的功率发射时,工作电流也只有9 mA;接收时,工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便2。 其主要特性有: GFSK调制; 硬件集成O

24、SI链路层; 具有自动应答和自动再发射功能; 片内自动生成报头和CRC校验码; 数据传输率为l Mb/s或2Mb/s; SPI速率为0 Mb/s10 Mb/s; 与其他nRF24系列射频器件相兼容; QFN20引脚4 mm4 mm封装; 供电电压为1.9 V3.6 V。2.2.2 引脚功能及描述 引脚说明: CE:使能发射或接收; CSN,SCK,MOSI,MISO:SPI引脚端,微处理器可通过此引脚配置nRF24L01; IRQ:中断标志位; VDD:电源输入端; VSS:电源地; XC2,XC1:晶体振荡器引脚;; VDD_PA:为功率放大器供电,输出为1.8 V; ANT1,ANT2:天

25、线接口; IREF:参考电流输入。 详细说明如下表:引脚名称引脚功能描述1CE数字输入RX或TX模式选择2CSN数字输入SPI片选信号3SCK数字输入SPI时钟4MOSI数字输入从SPI数据输入脚5MISO数字输出从SPI数据输出脚6IRQ数字输出可屏蔽中断脚7VDD电源电源(+3V)8VSS电源接地(0V)9XC2模拟输出晶体振荡器2脚10XC1模拟输入晶体振荡器1脚/外部时钟输入脚11VDD-PA电源输出给RF的功率放大器提供的+1.8V电源12ANT1天线天线接口113ANT2天线天线接口214VSS电源接地(0V)15VDD电源电源(+3V)16IREP模拟输入参考电流17VSS电源接

26、地(0V)18VDD电源电源(+3V)19DVDD电源输出去耦电路电源正极端20VSS电源接地(0V)表2-2 nRF24L01管脚详细说明表图2-3 nRF24L01引脚图2.2.3 工作模式 通过配置寄存器可将nRF241L01配置为发射、接收、空闲及掉电四种工作模式:模式PWR_UPPRIM_RXCEFIFO寄存器状态接收模式111-发射模式101数据在TX FIFO 寄存器中发射模式1010停留在发送模式,直至数据发送完待机模式2101TX FIFO 为空待机模式11-0无数据传输掉电0-表2-3 nRF24L01工作模式表 待机模式1:主要用于降低电流损耗,在该模式下晶体振荡器仍然是

27、工作的; 待机模式2:则是在当FIFO寄存器为空且CE=1时进入此模式; 待机模式下,所有配置字仍然保留。 在掉电模式下电流损耗最小,同时nRF24L01也不工作,但其所有配置寄存器的值仍然保留。2.2.4 工作原理 发射数据时,首先将nRF24L01配置为发射模式,接着把接收节点地址TX_ADDR和有效数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10s,延迟130s后发射数据;若自动应答开启,那么nRF24L01在发射数据后立即进入接收模式,接收应答信号(自动应答接收地

28、址应该与接收节点地址TX_ADDR一致)。如果收到应答,则认为此次通信成功,TX_DS置高,同时TX_PLD从TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC)达到上限,MAX_RT置高,TX FIFO中数据保留以便再次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,通知MCU。最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式23。 接收数据时,首先将nRF24L01配置为接收模式,接着延迟130s进入接收状态等待数据的到来。当接收

29、方检测到有效的地址和CRC时,就将数据包存储在RX FIFO中,同时中断标志位RX_DR置高,IRQ变低,产生中断,通知MCU去取数据。若此时自动应答开启,接收方则同时进入发射状态回传应答信号。最后接收成功时,若CE变低,则nRF24L01进入空闲模式1。2.2.5 寄存器配置 SPI口为同步串行通信接口,最大传输速率为10 Mb/s,传输时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI相关的指令共有8个,使用时这些控制指令由nRF24L01的MOSI输入。相应的状态和数据信息是从MISO输出给MCU。 nRF24L0l所有的配置字都由配置寄存器定义,这些配置

30、寄存器可通过SPI口访问。nRF24L01的配置寄存器共有25个,常用的配置寄存器如下表所示。地址(H)寄存器名称功能00CONFIG设置24L01工作模式01EN_AA设置接收通道及自动应答02EN_RXADDR使能接收通道地址03SETUP_AW设置地址宽度04SETUP_RETR设置自动重发数据时间和次数07STATUS状态寄存器,用来判定工作状态0A0FRX_ADDR_P0P5设置接收通道地址10TX_ADDR设置发送地址(先写低字节)1116RX_PW_P0P5设置接收通道的有效数据宽度表2-4 nRF24L01常用寄存器配置表2.3 温度传感器DS18B20 DS18B20数字温度

31、传感器接线方便,封装后可应用于多种场合,主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合4。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。独特的单线接口方式,使得DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯;其测温范围为-55+125;同时支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多能并联8个,实现多点测温。在使用中不需要任何外围元件。2.3.1 DS18B20管脚配置引脚定

32、义: (1)DQ为单数据总线,是数字信号输入/输出端; (2)GND为电源地; (3)VDD为外接供电电源输入端。图2-4 DS18B20引脚图2.3.2 DS18B20的工作原理 DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s 减为750ms5。元件中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给一个计数器。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为另一个计数器的脉冲输入。计数器和温度寄存器被预置在55所对应的一个基数值。计数器对低温度系数晶振产生的脉冲信号进行减法计数,当计

33、数器的预置值减到0时,温度寄存器的值将加1,计数器的预置将重新被装入,计数器重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到另一个计数器计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。元件中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器的预置值。2.3.3 DS18B20的硬件设计 DS18B20的硬件设计比较简单,三个引脚中分别将1、3号引脚接地和高电平,2号引脚直接接入单片机。基本如下所示:图2-5 DS18B20接线图2.4 数据显示模块2.4.1 检测端显示模块 检测端的显示需求比较小,只需要满足基本的温度显示,故可以使用四位一体

34、七段数码管显示,前三位为整数部分,第三位包含小数点显示,第四位为小数位,考虑到精度,一般只存在5和0两个数字。四位一体数码管可以直接与P0口进行数据传送,数码管需要连接一个上拉电阻保证亮度的性能;用P2口对数码管的各个显示位进行使能,循环显示各个数据位,利用眼睛的延时时间,可以做到四位数据同时显示。2.4.2 监测端显示模块监测端显示需要在温度显示的同时显示各个温度来源,以及报警标识,需要显示字母,所以监测端显示数据采用LCD1602可以满足双行显示,以及LCD1602的字符编码集可以班组字母的大小写。LCD1602数据位可以在有上拉电阻的情况下直接接受P0口的数据,可以由P2口使能三位使能控

35、制端口。2.5 报警电路 监测端报警电路采用蜂鸣器、LED和液晶显示3个信号,在温度达到特定条件后蜂鸣器和LED开始工作,液晶显示具体报警检测端,当有按键按下后报警解除; 检测端报警电路为LED一个信号,当温度在特定条件后开始工作,温度恢复正常后停止闪烁,不可人为解除警报。2.6 无线模块电源设计电路无线模块需要3.3V电源,该电路把5V电源经过低压差电压调节器lm1117转换为3.3V电源6。图2-6 5v3.3v转换原理图第三章 系统软件设计3.1 检测端软件设计检测端为温度实时采集(检测)模块,采用DS18B20为温度传感器,检测温度数据由AT89C51处理,在本地四位一体七段数码管实时

36、显示温度数据,然后判断温度是否在警报允许范围内,否则LED闪烁报警,该报警不可手动解除,需温度在警报允许范围内自动解除;每隔一定时间温度数据在判断后由nRF24L01发送至监测端,并保证发送完成7。流程图如下:图3-1 检测端流程图3.2 监测端软件设计 监测端为温度收集中心模块,采用nRF24L01实时接收来自各检测端发送过来的数据,由AT89C51处理,并在LCD1602上滚动显示各检测端的温度;然后判断是否在警报允许范围内,否则蜂鸣器报警,LED闪烁,LCD1602打印温度报警检测端编号。同时各温度数据接收不暂停,但是不打印在显示屏上。报警可以由按键解除,替代相应人工处理。流程图如下:图

37、3-2 检测端流程图第四章 系统仿真4.1 检测端温度采集与显示仿真使用proteus仿真8,其中包含DS18B20的模拟获取温度,由P3.0口接入,经过单片机处理后由四位一体数码管显示温度,包括3位整数显示、1位小数显示和以为小数点显示,由P0口输出数据以及由P2.0-2.3控制显示位;如图:图4-1 检测端温度及显示仿真图4.2 监测端LCD1602显示温度仿真使用proteus仿真,包括两行字符显示,由P0口输出数据,由P2.1-2.3分别控制RS、RW、E三个控制位;如图:图4-2 监测端数据显示仿真图第五章 硬件电路板设计5.1 系统硬件原理图5.1.1 检测端原理图图5-1 检测端

38、原理图5.1.2 监测端原理图图5-2 监测端原理图5.2 系统PCB图5.2.1 检测端PCB图图5-3 检测端PCB图5.2.2 监测端PCB图图5-4 监测端PCB图5.3 硬件制作PCB制版工艺使用的是腐蚀铜板,基本步骤:调和感光油墨,均匀覆盖镀铜母板,在烤箱中快速烤干,冷却后将打印了PCB布线图的菲林膜贴在油膜上曝光,调试显影液,将曝光后的母板完全浸入显影液,一段时间后去除多余油膜;前阶段预处理工作完成后将母板腐蚀,保留必要铜线;去掉所有的油膜,参照PCB布线图打孔9。完成PCB版制作后开始焊接元器件。(制作完成后的PCB母板图)图5-5 制作完成后的PCB母板图5.4 硬件调试在上

39、电之前,先用万用表检查线路的正确性,并核对元器件的型号、规格是否符合要求。特别注意电源的正负极以及电源之间是否有短路,并重点检查各总线是否存在相互间的短路或其他信号线的短路。在本系统中进行了仔细的检查,所以此步骤不会发生故障,这一步如果检查没有到位通电后可能会造成不可想象的后果,所以这一步也至关重要。通电后检查各器件引脚的电位,仔细测量各点电位是否正常,检查单片机的插座上的各点电位,若有高压,将有可能损坏单片机。同样,如果电压过低就没有能力驱动其负载。其中遇到的问题很多,如印制电路线过细,中间有些许断路。还有USB电源供电电压不足的问题,电源电压经过供电给负载,电压有所下降,致使单片机不工作的

40、问题。5.5 硬件调试结果(各显示结果图)结束语数据采集与处理是51单片机的常用领域,除了电信号以外,单片机还可以利用传感器实现对非电信号的采集。本设计介绍的数字温度计就是一个典型实例。本设计采用一种直接数字输入式的温度传感芯片DS18B20实现了单片机控制的数字温度计系统。基于DS18B20数字温度传感器构成的实时监控系统确实具有精度高、抗干扰能力强、电路简单等诸多优点,温度传感器得到电缆长度达到几十米都可以正常读取温度数据。相比之下,传统的温度检测系统采用热敏电阻等温度敏感元件,热敏电阻成本低,但需要后续信号调理、AD转换处理电路才能将温度信号转换成数字信号,不但电路复杂,而且热敏电阻的可

41、靠性相对较差,测量温度的精度差,很难保证热敏电阻的一致性和线性,在应用中需要很好的解决引线误差补偿问题、共模干扰问题和放大电路零点漂移误差等技术问题。另外本设计使用nRF24L01无线传输模块完成了无线传输的过程。通过无线传输模块可以省去有线带来的布线麻烦。在此次设计过程中也遇到一些问题,比如,在单片机对于RF24L01高频模块的读写、操作等比较复杂,查找的资料也很难理解。不过,通过这次的学习和实践,我学会了如何看待问题,解决问题。在郑老师的指导下,经过两个月的努力,本论文已经完成了预期的目标并且保存了完整的记录文档。进入21世纪后,智能温度控制器正朝着高精度、多功能、总线标准化、高可靠性及安

42、全性、开发虚拟温度控制器和网络温度控制器、研制单片测温控温系统等高科技的方向迅速发展。在20世纪90年代中期最早推出的智能温度控制器,采用的是8位A/D转换器,其测温精度较低,分辨力只能达到2C。目前,国外已相继推出多种高精度、高分辨力的智能温度传感器,所用的是912位A/D转换器,分辨力一般可达0.50.0625C。为了提高多通道智能温控器的转换速率,也有的芯片采用高速逐次逼近式A/D转换器。新型智能温度控制器的测试功能也在不断增强。例如,采用DS1629型单线智能温度传感器增加了实时日历时钟(RTC),使其功能更加完善。DS1624还增加了存储功能,利用芯片内部256字节的E2PROM存储

43、器,可存储用户的短信息。另外,智能温度控制器正从单通道向多通道的方向发展,这就为研制和开发多路温度测控系统创造了良好条件。智能温度控制器都具有多种工作模式可供选择,主要包括单次转换模式、连续转换模式、待机模式,有的还增加了低温极限扩展模式,操作非常简便。对某些智能温度控制器而言,主机(外部微处理器或单片机)还可通过相应的寄存器来设定其A/D转换速率,分辨力及最大转换时间。参考文献1 陈宏希,梁璐. 51单片机应用技术M. 北京:化学工业出版社,2012,12 李善仓,张克旺. 无线传感器网络与应用M. 北京:机械工业出版社,2008,33 宋思源,张莉明等. 无线电J. 北京:人民邮电出版社,

44、 2010,14 一线数据温度传感器资料M. 武汉:武汉力源电子有限公司, 19965 贾东耀,汪仁煌. 数字温度传感器在仓库检测系统的应用J. 传感器世界, 2001,126 邱关源. 电路M第五版. 北京:高等教育出版社, 2005,057 迪特尔,薛万鹏译. C程序设计教程M. 北京:机械工业出版社, 2003,28 胡启明,葛祥磊. Proteus从入门到精通M. 北京:电子工业出版社, 20129 丁明军. PCB制版与制图实训M. 浙江:浙江科学技术出版社, 2012,9附 录1、检测端代码#include#include/ SPI(nRF24L01) commands#defin

45、e WRITE_REG 0x20 / Define write command to register#define WR_TX_PLOAD 0xA0 / Define TX payload register address#define FLUSH_TX 0xE1 / Define flush TX register command/ SPI(nRF24L01) registers(addresses)#define CONFIG 0x00 / Config register address设置24L01工作模式#define EN_AA 0x01 / Enable Auto Acknowl

46、edgment register address设置接收通道及自动应答#define EN_RXADDR 0x02 / Enabled RX addresses register address使能接收通道地址#define SETUP_RETR 0x04 / Setup Auto. Retrans register address设置自动重发数据时间和次数#define RF_CH 0x05 / RF channel register address#define RF_SETUP 0x06 / RF setup register address#define STATUS 0x07 / S

47、tatus register address状态寄存器,用来判定工作状态#define RX_ADDR_P0 0x0A / RX address pipe0 register address设置接收通道地址#define TX_ADDR 0x10 / TX address register address设置接收接点地址#define TX_ADR_WIDTH 5 / 5字节宽度的发送地址#define TX_PLOAD_WIDTH 4 / 发送数据通道有效数据宽度#define uchar unsigned char#define uint unsigned int#define Disda

48、ta P0/四位管数据口#define discan P2/四位管控制口uchar bdata cack_sta;/sbit RX_DR = sta6;sbit TX_DS = cack_sta5;sbit MAX_RT = cack_sta4;sbit SEG1=P20;/四位管控制口sbit SEG2=P21;sbit SEG3=P22;sbit SEG4=P23;sbit DQ =P30;/温度传感器sbit LED =P31;/LED数据口sbit IRQ =P12;/无线传感器数据口sbit CE =P13;sbit CSN =P14;sbit SCK =P15;sbit MOSI=

49、P16;sbit MISO=P17;uchar code TX_ADDRESSTX_ADR_WIDTH = 0x34,0x43,0x10,0x10,0x01; / 定义一个静态发送地址uint temp;/温度uchar data temp_data2=0x00,0x00;/读取温度数据存放uchar data display4=0x00,0x00,0x00,0x00;/显示温度4位管uchar code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;/小数精度值u

50、char code ddata=/*0123456789*/ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,/*0.1.2.3.4.5.6.7.8.9.*/ 0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;/* 函数: delayms(uint t) 描述: 延时ms子程序/*/void delayms(uint t)uint i,j; for(i=0;it;i+) for(j=0;j0;t-);/* 函数: ow_reset() 描述: DS18B20复位函数/*/void ow_res

51、et()char presence=1;while(presence) while(presence) DQ=1;_nop_();_nop_();/从高拉倒低DQ=0; delay(50); /550 usDQ=1; delay(6); /66 uspresence=DQ; /presence=0 复位成功,继续下一步 delay(45); /延时500 us presence=DQ; DQ=1; /拉高电平/* 函数: write_byte(uchar val) 描述: DS18B20写命令,向总线上写1个字节/*/void write_byte(uchar val) uchar i;for

52、(i=8;i0;i-) DQ=1;_nop_();_nop_(); /从高拉倒低 DQ=0;_nop_();_nop_();_nop_();_nop_(); /5 us DQ=val&0x01; /最低位移出 delay(6); /66 us val=val/2; /右移1位 DQ=1; delay(1);/* 函数: read_byte() 描述: DS18B20读1字节,从总线上取1个字节/*/uchar read_byte()uchar i;uchar value=0;for(i=8;i0;i-) DQ=1;_nop_();_nop_(); value=1; DQ=0;_nop_();_

53、nop_();_nop_();_nop_(); /4 us DQ=1;_nop_();_nop_();_nop_();_nop_(); /4 us if(DQ)value|=0x80; delay(6); /66 usDQ=1;return(value);/* 函数: read_temp() 描述: 读出温度函数/*/uint read_temp() ow_reset(); /总线复位 delay(200); write_byte(0xcc); /发命令 write_byte(0x44); /发转换命令 ow_reset(); delay(1); write_byte(0xcc); /发命令 write_byte(0xbe); temp_data0=read_byte(); /读温度值的低字节 temp_data1=read_byte(); /读温度值的高字节 temp=temp_data1; temp4; / 取中间八位,即整数部分的值 display3=9; / 各目标板编号 display1=n%100; / 取后两位数据暂存 display2=display1/10; / 取十位数据暂存 display1=display1%10; /* 函数: init_io() 描述: 无线模块初

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!