基于AT91SAM7S64的无线温湿度监控系统设计毕业设计论文.docx
《基于AT91SAM7S64的无线温湿度监控系统设计毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于AT91SAM7S64的无线温湿度监控系统设计毕业设计论文.docx(38页珍藏版)》请在冰豆网上搜索。
基于AT91SAM7S64的无线温湿度监控系统设计毕业设计论文
学号:
常州大学
毕业设计(论文)
题目基于AT91SAM7S64的无线温湿度监控系统设计
学院信息科学与工程学院专业班级通信工程091
二○一三年六月
学位论文独创性声明
本人郑重声明:
所提交的学位论文是本人在导师的指导下,独立进行研究工作所取得的成果。
除文中已经注明引用的内容外,本论文不含其他个人或集体已经发表或撰写过的研究成果,也不含为获得常州大学或其它教育机构的学位证书而使用过的材料。
对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。
本人承担本声明的法律责任。
签名:
日期:
说明:
本页签名及日期均为手签。
基于AT91SAM7S64的无线温湿度监控系统设计
摘要:
在现代科技发展过程中,嵌入式系统在诞生之初就有着独特的地位,进入信息时代,在更多的新技术支持下,走向一个新的发展时代,即从普遍的低端应用进入到一个高、低端并行发展的时代,其主要标志是32位MCU的大范围应用。
随着众多嵌入式系统厂家的参与,基于ARM系列处理器的应用技术广泛的应用到各个领域,更加的方便了人们的生活和工作。
温湿度的自动测量和现实在生活和生产中具有非常重要的意义。
以往的人工采集数据不仅占用人力资源,而且可靠性低,容易发生差错,不能满足现代化的需求。
一般的温湿度采集系统数据显示单调,而且需要在复杂的地区布线,十分的不便。
本文采用应用广泛的ARM系列微处理器AT91SAM7S64作为平台的核心构建系统。
主机负责数据的采集和发送功能,使用51单片机负责数据的接收功能,在计算机上显示数据参数。
温湿度采集模块采用温湿度传感器芯片DHT11,无线收发模块采用无线数传模块nRF24L01。
本项目能够实时采集周围环境的温度和湿度,且不受布线的约束,是适应现代社会的高价值研究。
关键字:
AT91SAM7S64;温湿度监测;无线数传模块;温湿度传感器
DesignofEnvironmentalMonitoringNodeonSingle-chipAT91SAM7S64basedwirelesstemperatureandhumiditymonitoringsystemdesign
ABSTRACT:
Intheprocessofdevelopmentofmodernscienceandtechnology,embeddedsystemhasauniquepositionnearthebeginningofthebirth,intotheinformationage,morenewtechnologysupport,towardaneweraofdevelopment,fromthecommonlow-endapplicationsintoahighandlowendoftheeraofparalleldevelopment,themainsignisthewidespreadapplicationof32-bitMCU.Asmanyembeddedsystemsmanufacturersparticipatein,basedonARMseriesprocessorapplicationtechnologyiswidelyappliedtovariousfields,moreconvenientpeople'slifeandwork.Temperatureandhumidityautomaticmeasurementandpracticalinlifeandproductionhasveryimportantsignificance.Previousartificialdatanotonlytakesuphumanresources,andlowreliability,pronetoerror,cannotmeettheneedsofmodernization.Normaltemperatureandhumiditydataacquisitionsystemshowdrab,andneedsinareasofcomplexwiring,veryinconvenient.
BasedonthewidelyusedARMseriesmicroprocessorAT91SAM7S64atthecoreofplatformbuildsystem.Hostisresponsiblefordatacollectionandsendfunction,using51MCUisresponsibleforthereceivingfunctionofdata,dataparametersdisplayedonthecomputer.TemperatureandhumidityacquisitionmoduleusingDHT11temperatureandhumiditysensorchip,nRF24L01wirelesstransceivermoduleUSESthewirelessdatatransmissionmodule.Thisprojectcancollectreal-timetemperatureandhumidityofthesurroundings,andisnotboundbywiring,thehighvalueofresearchistoadapttothemodernsociety.
显示对应的拉丁字符的拼音Keywords:
AT91SAM7S64;Temperatureandhumiditymonitoring;Wirelessdatatransmissionmodule;Temperatureandhumiditysensor
1引言
1.1课题背景及研究的意义
温湿度的测量在仓储管理、生产制造、科学研究以及日常生活中得到广泛的应用。
传统的温湿度测量采用有线测控系统,必须实施网络布线工程,铺设光纤或者电缆,大大增加了系统的成本,同时降低了系统的灵活性、可维护性以及可扩展性。
把无线通信技术应用到温湿度测量系统中,通过传感器实时采集各节点处温湿度的信息,经过处理后再通过无线数据采集系统将温湿度信息传输到监控终端,从而达到集成化、低成本和易操作的目的。
目前,这种微功率短距离无线数据传输技术在民用、工业等领域得到了广泛应用。
1.2课题研究的目的
基于AT91SAM7S64开发平台,使用无线数传模块,与PC机进行网络通信,具体完成如下工作:
(1)设计ARM与温度、湿度传感器以及无线接口电路等;
(2)设计ARM的无线通信程序,能采用中断方式实现数据的收发;
(3)完成上位机程序,设计ARM与上位机的无线通信协议,ARM根据接收的通信命令采集温度或湿度数据发送到上位机,显示到界面上。
1.3国内外现状及发展趋势
现有的温湿度采集系统主要基于有线传输,有线传输需要现场布线,因此需要大量的人力物力,在遇到一些相对封闭或不便现场驻点的环境,将对有线温湿度采集有着极强的制约力,有线传输的维护也是不容易实现的。
伴随着智能化、信息化、网络化的发展,温湿度采集开始向着无线传输的方向发展,无线采集有着以下优点:
1、可实时采集温度、湿度数据,采集间隔可调。
2、产品能全程跟踪记录展柜,恒温恒湿室/箱、药品仓库、冷库、机房、车间、库房、实验室等环境温湿度变化;
3、用户可以通过数据管理软件对所取数据进行查看、分析并可将图表或报表存档、打印出来;
4、液晶显示,在线同时显示温度、湿度数据,时钟,报警等信息,现场实时温湿度环境一目了然;
5、数字信号输出,采用无线数据传输方式,将信号传输到指定的接收设备或数据集中器,然后通过温湿度系统软件进行监控。
6、设备本身具有数据存储功能,在电脑关闭或温湿度监测软件没有开的情况下,温湿度采集器仍然自动保存数据,在需要时可以通过温湿度监测软件下载调取设备内部存储的数据到电脑。
(软件未开温湿度数据不会丢失)
7、用户可以根据实际需要任意设置报警的上下限,软件会识别显示记录超限数值;
8、可根据需要扩展输出控制功能;
9、稳定性高可24小时不间断工作,是替代传统温湿度记录仪的新式产品。
10、整机采用防雷设计,在雷雨多的地方不易受损坏。
11、提供数据即读取信号通讯协议(或dll链接库),可根据工程应用进行二次开发,大大减少开发时间及成本。
ARM是AdvancedRISCMachines的缩写,它具有体积小、功耗低、成本低、性能好等优点,并且具有16位和32位双指令集。
它被广泛应用在16位和32位嵌入式RISC解决方案中,嵌入式RISC微处理器市场份额的75%被它占有。
ARM公司是业内公认的领先的半导体知识产权提供商,该公司本身并不生产芯片,主要靠转让其技术通过许可的合作伙伴来生产不同的芯片,从而引领全球嵌入式电子技术研究的潮流。
ARM的片上系统解决方案也推动了当今嵌入式市场中一系列终端产品的技术发展。
1.4论文结构安排
本文基于本次毕业设计的过程与要求,将论文分为五章。
具体内容如下:
第1章引言。
本章简单介绍了课题的研究背景、目的和意义,温湿度采集系统的国内外发展现状和相关领域中已有的研究结果,该设计的预期结果和意义。
第2章系统硬件设计。
本章介绍本课题硬件系统各部分电路的设计、实现,讲述了芯片的工作原理及各模块的基本功能。
第3章系统软件设计。
本章根据系统的总方案,设计出程序的总流程图,并利用C语言编写相应的程序。
第4章系统调试。
本章根据已有的软硬件,进行调试,得到的相应成果。
第5章结论。
本章主要讲述了设计的实际结果,以及得出相关结论。
2系统硬件设计
2.1硬件总体设计
本系统硬件部分主要为数据采集端与数据接收端两部分。
数据采集端主要包括AT91SAM7S64控制系统、数据采集模块和数据发送模块。
ARM控制系统是整个系统的控制核心,数据采集模块采集环境的温湿度,再利用数据发送模块将采集到的温湿度数据发送到数据接收端进行相应的处理。
数据接收端主要包括51单片机控制系统、数据接收模块和串行通信模块。
数据接收模块接收到采集方的数据后,将数据传送给单片机控制系统,再通过RS一232串行通信将数据传送给计算机,实现实时监测。
硬件总体结构:
图2.1湿湿度发送模块的结构框图
图2.2温湿度接收模块的结构框图
2.2ARM系统板介绍
ARM7是整个系统的主控模块,它负责整个系统的控制和管理。
本设计采用微处理器为AT91SAM7S64,AT91SAM7S64是Atmel32位ARMRISC处理器小引脚数Flash微处理器家族的一员。
它拥有64K字节的高速Flash和16K字节的SRAM,丰富的外设资源,包括一个USB2.0设备,使外部器件数目减至最低的完整系统功能集。
这个芯片是那些正在寻求额外处理能力和更大存储器的8位处理器用户的理想选择。
Flash存储器可以通过JTAG-ICE进行编程,或者是在贴装之前利用编程器的并行接口进行编程。
锁定位可以防止固件不小心被改写,而安全锁定位则可以保护固件的安全。
AT91SAM7S64的复位控制器可以管理芯片的上电顺序以及整个系统。
BOD和看门狗则可以监控器件是否正确工作。
AT91SAM7S64是一个通用处理器。
它集成了USB设备端口,使得它成为连接PC或手机的外设应用的理想芯片。
极具竞争力的性价比进一步拓展了它在低成本、大产量的消费类产品中的应用。
图2.3AT91SAM7S64的系统结构框图
电源:
AT91SAM7S64有6种类型的电源输入引脚以及一个集成的电源调节器,使得器件可以工作于单一电压。
这6种电源引脚类型为:
•VDDIN:
电压调节器的电源输入。
输入电压范围是3.0V到3.6V,标称值为3.3V。
如果不用电压调节器,则VDDIN应该连接到GND。
•VDDOUT:
电压调节器的输出,1.8V。
•VDDIO:
I/O及USB的电源。
支持电压范围为3.0V到3.6V,标称值为3.3V。
•VDDFLASH:
为Flash部分地提供电源,而且是Flash正确工作的先决条件。
电压范围为3.0V到3.6V,标称值为3.3V。
•VDDCORE:
芯片逻辑部分的电源。
电压范围从1.65V到1.95V,典型值为1.8V。
可以通过解耦电容连接到VDDOUT引脚。
VDDCORE是器件内核,包括Flash正确
工作的前提。
•VDDPLL:
振荡器和PLL的电源。
可以直接连接到VDDOUT。
各个输入电源并没有独立的地回路引脚。
因此GND与系统地平面的连接应尽可能短。
功耗:
在25°C时,VDDCORE的静态电流小于60μA,包括RC振荡器、电压调节器和上电复位。
使能掉电复位BOD将额外增加20μA的静态电流。
全速工作且运行不基于Flash时VDDCORE的动态功耗小于50mA。
若程序在Flash上运行则VDDFLASH的电流不超过10mA。
电压调节器:
AT91SAM7S64有一个由系统控制器管理的电压调节器。
在正常模式下,电压调节器消耗的静态电流还不到100μA,而输出电流则高达100mA。
电压调节器支持低功耗模式。
在此模式下它只消耗不到20μA的静态电流,输出电流可达1mA。
VDDOUT必须有足够的解耦电容以减少纹波和防止振荡。
最好的方法是并联两个电容于VDDOUT和GND之间:
一个470pF(或1nF)NPO材质的电容,尽量靠近芯片;另一个是2.2μF(或3.3μF)X7R材质的电容。
VDDIN也需要足够的解耦来提高启动稳定性以及减少电压降。
输入电容也需要尽量靠近芯片。
例如可以将两个电容并联在一起:
100nF的NPO电容和4.7μF的X7R电容。
AT91SAM7S64支持3.3V单电源模式。
片内电压调节器连接到3.3V,输出则连接到VDDCORE和VDDPLL。
图2.3出了通过USB总线供电的线路图。
图2.43.3V单电源供电系统
2.3温湿度采集模块设计
数据采集模块采用温湿度传感器DHT11,。
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
每个DHT11传感器都在极为精确的湿度校验室中进行校准。
校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。
单线制串行接口,使系统集成变得简易快捷。
超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。
产品为4针单排引脚封装。
连接方便,特殊封装形式可根据用户需求而提供。
接口说明:
建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻
DHT11引脚说明,如表2.1所示:
表2.1DHT11引脚说明
图2.5ARM7与DHT11的硬件接口
DHT11的供电电压为3-5.5V。
传感器上电后,要等待1s以越过不稳定状态在此期间无需发送任何指令。
电源引脚(VDD,GND)之间可增加一个100nF的电容,用以去耦滤波。
测量分辨率分别为8bit(温度)、8bit(湿度)。
DHT11是用单总线传输数据,在ARM7发送起始信号,DHT11返回应答信号还有发送数据,起始阶段都需要将总线置为低电平,然后再拉为高电平,所以同样需要上拉电阻,阻值大约为5KΩ。
DHT11也采用外部电源方式供电,在外部电源供电方式下,整个电路工作稳定可靠,抗干扰能力强,电路也比较简单,同时总线上可以挂接多个DHT11传感器,组成多点测量温湿度系统。
此时,DHT11的3引脚悬空,4引脚要接地或者电源的负极。
2.4无线收发模块设计
2.4.1数据发送模块设计
数据发送模块选用无线数传nRF24L01,由RAM平台控制发送数据。
nRF24L01是一款工作在2.4~2.5GHz的单片无线收发器芯片。
其无线收发器包括:
频率发生器、增强型SchockBurstTM模式控制器、功率放大器、晶体振荡器、调制器和解调器。
频道选择和协议的设置可以通过SPI接口进行设置。
其供电电压范围为1.9—3.3V,最大发射功率为1mW。
它采用SPI的通信方式进行数据的交互。
该模块在通信时SCK高电平有效,在一个跳变沿采样,高位在前。
此外模块的引脚数据传输的速率采用1MHZ。
模块数据的收发速率选择1Mbps。
表2.2NRF24L01模块引脚功能
管脚
功能
VDD
电源1.9-3.6V输入
CE
工作模式选择,RX或TX模式选择
CSN
SPI片选使能,低电平使能
SCK
SPI时钟
MOSI
SPI输入
MISO
SPI输出
IRQ
中断输出
GND
电源地
说明:
(1)VCC脚接电压范围为1.9V~3.6V之间,不能在这个区间之外,超过3.6V将会烧毁模块。
推荐电压3.3V左右。
(2)除电源VCC和接地端,其余脚都可以直接和普通的5V单片机IO口直接相连,无需电平转换。
当然对3V左右的单片机更加适用。
(3)硬件上面没有SPI的单片机也可以控制本模块,用普通单片机IO口模拟SPI不需要单片机真正的串口介入,只需要普通的单片机IO口就可以了,当然用串口也可以了。
(4)9脚接地脚,需要和母板的逻辑地连接起来;2脚和9脚悬空。
(5)排针间距为100mil,标准DIP插针
图2.6nRF24L01引脚排列
图2.7nRF24L01及外部接口
图2.8nRF24L01电路原理图
图2.9ARM7与nRF24L01的硬件接口
nRF24L01有工作模式有四种:
收发模式
配置模式
空闲模式
关机模式
工作模式由PWR_UPregister、PRIM_RXregister和CE决定,详见表2.3
表2.3nRF24L01工作模式
2.4.2数据接收模块设计
数据接收模块采用51单片机作为控制系统。
51系列单片机是大家非常熟悉的微处理器,是最早由美国Intel公司生产的一种单片机。
其具有的特点主要有:
体积小、集成度高、运算快、经济等。
其应用范围为工业自动化、信息采集、家电控制等。
在很多现场操作中需要对大量的数据进行采集和处理,对于单片机本身的数据存储器以及在外部扩展的数据存储器而言,这些数据是十分庞大的,其容量远远满足不了需要采集的数据,于是要将数据传输到上位机进行处理和分析。
有线通信的布线、组网等局限性,满足不了技术的发展和需要,而无线通信有很多方法可以解决,如红外脉冲传输、蓝牙技术、雷达波等,以RS232为标准的无线射频通讯方式具有很多优点,如可工作于ISM频段,并有内置UART接口,其应用广泛,价格低廉。
随着集成电路工业的发展,51系列单片机作为一个微控制器的内核,被集成到各种片上系统(英文缩写为SoC)中。
它只须占用很小的硅片上的面积,成本非常低,然后同其他程序存储器、外围电路等,组合成一个低功耗、低成本的片上系统。
这些采用51微处理器内核的片上系统,一方面能继续使用51微处理器几十年来积累的各种应用软件资源,另一方面具有更多的功能、更快的速度、更小的体积、更低的功耗,因此,具有更广阔的市场和发展空间。
本设计采用AT89系列单片机内部资源就能满足数据接收模块硬件设计的需求。
不需扩展外部存储器或I/O接口等器件,通过程序,就能达到对单片机的控制。
图2.10无线接收流程图
单片机最小系统电路原理图如图2.2所示:
图2.11单片机最小系统原理图
STC89C52的性能特点:
(1)与51系列单片机指令系统完全兼容
(2)8K字节程序存储器,512字节数据存储器
(3)32个可编程I/O口线,3个16位定时/计数器
(4)8个中断源,真正的看门狗,可放心省去外部看门狗
(5)用户程序用ISP/IAP机制写入,一边校验一边写无读出命令,彻底无法解密
图2.12STC89C52RC引脚图
STC89C52单片机有40个引脚,共分为电源线,端口线和控制线。
电源线:
GND(20脚),接地引脚,VCC(40引脚),正电源引脚,正常工作时,接+5V电源。
端口线:
STC89C52片内有4个8位并行I/O接口P0,P1,P2,P3。
32-39脚位、为P0口输入输出引脚。
P0口既可以作为I/O口,又可作为低8位地址总线的分时复用口。
1-8脚为P1口输入输出引脚。
P1口为8位准双向I/O口,可作通用I/O使用。
21-28脚为P2口输入输出引脚。
P2口既可以作为I/O口,又可作为高8位地址总线的分时复用口。
10-17脚为P3口。
P3口为8为准双向口,同时具有第二功能。
RST/VPD脚(9脚)是复位信号/备用电源线引脚。
ALE是地址锁存允许/编程引脚。
EA/VPP是允许访问片外程序存储器/编程电源线。
XTAL1和XTAL2脚是片内振荡电路的输入、输出端。
PSEN是片外ROM选通线。
图2.13STC89C52与nRF24L01电路连接图
3软件的设计与实现
3.1系统总体软件设计
同硬件设计一样,软件设计分成数据采集端与数据接收端两部分。
采集系统软件部分利用ARM7配套的开发环境KEIL开发,它同时支持汇编语言和C语言编写程序,本系统采用C语言来开发采集系统。
数据收发主程序分为数据发送部分和数据接收部分,设计流程图如图3.1所示:
数据发送流程数据接收流程
图3.1数据收发程序流程
3.2温湿度采集模块程序设计
本设计温湿度采集模块采用温湿度传感器DHT11,由ARM平台控制。
串行接口(单线双向):
DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,一次
通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数
部分用于以后扩展,现读出为零.操作流程如下:
一次完整的数据传输为40bit,高位先出。
数据格式:
8bit湿度整数数据+8bit湿度小数数据
+8bi温度整数数据+8bit温度小数数据
+8bit校验和
数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据
+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。
用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后
转换到低速模式。
通讯过程如图3.2所示
图3.2通讯