基于单片机与无线技术的仓库温度采集系统

上传人:陈** 文档编号:102174731 上传时间:2022-06-06 格式:DOCX 页数:46 大小:254.18KB
收藏 版权申诉 举报 下载
基于单片机与无线技术的仓库温度采集系统_第1页
第1页 / 共46页
基于单片机与无线技术的仓库温度采集系统_第2页
第2页 / 共46页
基于单片机与无线技术的仓库温度采集系统_第3页
第3页 / 共46页
资源描述:

《基于单片机与无线技术的仓库温度采集系统》由会员分享,可在线阅读,更多相关《基于单片机与无线技术的仓库温度采集系统(46页珍藏版)》请在装配图网上搜索。

1、目录摘要IAbstractII第一章 绪论4第二章 系统总体设计方案52.1单片机主模块52.1.1 AT89S51单片机特点62.1.2最小单片机系统72.2温度传感器72.2.1温度传感器简介82.2.2 DS18B20性能特点与内部结构92.3 无线通信模块介绍142.3.1 NewMsg-RF905工作模式172.3.2 NewMsg-RF905寄存器配置182.4 键盘模块192.5 显示报警模块202.6 其它模块23第三章 软件设计243.1 主程序流程243.1.1系统温度采集终端主程序实现243.1.2系统主机终端主程序实现253.2 温度的采集及数据的处理263.2.1 D

2、S18B20初始化273.2.2数据的读取与处理283.3 无线通信子程序313.3.1 NewMsg-NRF905初始化313.3.2寄存器的配置323.3.3数据的发送与接收343.4 温度的显示模块363.5 按键子程序37第四章 总结与展望39参考文献40II摘要随着社会主义现代化的发展,在科学技术突飞猛进的今天,人工智能起不不可忽视的作用。尤其是各种智能化的仪器、仪表在农、工业的广泛应用给社会带来了极大的便利。本文就是一个利用温度来实现简单智能控制的例子。它完成了从温度的采集、转换、显示以及控制的一系列任务。由于时间关系,本文并未深入探讨温度的具体实例。例如根据温度来控制热水器、电风

3、扇等与温度有关的设备。但是它提供了一个通过温度来控制设备的基本思想和原理。相信能在实际应用中为我们的生活带来更大的便利。本课题提出一种基于单片机的无线温度采集系统方案,该方案是利用单片机控制DS18B20温度传感器采集温度、控制LED数码管实时显示温度值、控制NewMsg-NRF905进行数据的无线传输。本系统中所用到的器件是AT89S51单片机、数字温度传感器DS18B20和无线芯片NewMsg-NRF905,数据接收后由单片机AT89S51作为核心控制部件译码,由MAX7219驱动的LED数码管显示当前的温度值,外加执行电路来完成系统的报警等预期任务。关键词:单片机;温度采集;NewMsg

4、-NRF905;DS18B20;LED数码管显示;AbstractWith the development of socialistic modernization, make a spurt of progress in science and technology today, artificial intelligence does not play a role can not be ignored. Especially various kinds of intelligent instruments, instrument in the agricultural, industri

5、al application has brought great convenience. This paper is the use of temperature to a simple example of intelligent control. It completes the temperature from the acquisition, conversion, display and control of a series of tasks. Because of the time, this did not discuss specific examples of tempe

6、rature. For example, according to the temperature control water heater, electric fan and temperature related equipment. I believe that in the practical application for our lives more convenient.This paper puts forward a wireless temperature collection system based on MCU program, the program is the

7、use of microcomputer control of DS18B20 temperature sensor temperature collection, control LED digital tube display real-time temperature value, control of NewMsg-NRF905wireless data transmission. The system used in the device is the AT89S51 microcontroller, digital temperature sensor DS18B20and New

8、Msg-NRF905wireless chip, data received by AT89S51 microcontroller as core control component decoding, driven by MAX7219LED digital tube displays the current temperature value, and the executive circuit to complete the system alarm expected task.Key words: single chip microcomputer; temperature acqui

9、sition; NewMsg-NRF905; DS18B20; LED digital tube display;编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第43页 共46页第一章 绪论21世纪的今天,科学技术的发展日新月异,科学技术的进步同时也带动了测量技术的发展,现代控制设备不同于以前,它们在性能和结构发生了翻天覆地的变化。我们已经进入了高速发展的信息时代,测量技术是当今社会的主流,广泛地深入到应用工程的各个领域。温度是工业、农业生产中常见的和最基本的参数之一,在生产过程中常需对温度进行检测和监控,采用微型机进行温度检测、数字显示、信息存储及实时控制,对于提高生产效

10、率和产品质量、节约能源等都有重要的作用。伴随工业科技、农业科技的发展,温度测量需求越来越多,也越来越重要。多路无线温度采集系统可被广泛应用于温度测量或相应的可转换为温度量或供电故障监控的工业、农业、环保、服务业、安全监控等工程中,例如:城市路灯故障检测和供电线路防盗监视、城市居民小区供热检测、大型仓库温度检测、工业生产测控、农业生产温度测控、环保工程、故障监控工程等。考虑到许多工业环境中对多点温度进行监控,一般需要测量几十个点以上。本设计是以AT89S51单片机作为控制核心,提出以DS18B20的单总线分布式温度采集与控制系统。多个温度传感节点通过单总线与单片机相连形成分布式系统。控制器通过温

11、度传感器实时检测各节点的温度变化由智能数字温度传感器DS18B20完成对仓库现场温度的多点采集,并由NRF905完成数据的无线通信,数据接收后由单片机AT89S51作为核心控制部件译为码,由MAX7219驱动的LED数码管显示当前的温度值,外加一定的执行电路来完成系统的报警等预期任务。因为采用微型机进行温度检测、数字显示、信息存储及实时控制,对于提高生产效率和产品质量、节约能源等都有重要的作用,并且温度参数对工业生产的重要性,所以温度测量系统的精确度和智能化一直受到企业的重视。所以学习并研究温度测量及相关知识可做为一个较为实用的课题的方向,能获得较实用的知识和方法。同时它应用的领域也相当广泛,

12、可以应用到消防电气的非破坏性温度检测,电力、电讯设备的过热故障预知检测,各类运输工具之组件的过热检测,保全与监视系统之应用,医疗与健诊的温度测试,化工、机械等设备温度过热检测。因此前景是相当的可观。第二章 系统总体设计方案此系统是基于AT89S51单片机并由智能数字温度传感器DS18B20完成对仓库现场温度的多点采集,用NewMsg-NRF905作为无线模块进行无线数据传输,数据接收后由单片机AT89S51作为核心控制部件译码,并由MAX7219驱动的LED数码管显示当前的温度值,外加执行电路来完成系统的报警等预期任务。系统整体结构: ISM频道数据采集系统键盘显示单片机单片机无线发射无线接收

13、 图2.1 系统整体结构工作流程:1.数据采集设备采集现场数据参数,并由单片机控制提取。2.单片机将有用数据加入数据位置编码通过无线射频模块发射。3.无线射频模块发射接收数据。4.单片机控制提取接收到的数据并送至显示模块适时显示当前温度值,并根据键盘预先设定上限温度值报警。2.1单片机主模块主控单片机采用一片ATMEL AT89S51。根据题目要求,充分利用了单片机灵活控制的优点,发挥其优势功能,采用单片机控制显示信号灯,提高了系统的灵活性,设置方便。AT89S51芯片本身集成了看门狗(WDT)电路,这是为了系统更加的稳定可靠,避免了系统因为死机而停止工作的情况发生这种做法对于实际上长时间运行

14、在恶劣状况的交通灯控制系统来说是十分必要的。它可以完成自动加载复位,省去人工调整的麻烦,可以做到无人职守。2.1.1 AT89S51单片机特点AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,51系列单片机还具有省电耐用,可多次编程,性能稳定,物美价廉的优点,其次单片机软件编程的自由度大,可通过编程实

15、现各种各样的算术算法和逻辑控制。而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信.运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统,实现远程控制。另外AT89C51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。AT89S51总结具有如下特点: 与MCS-51单片机产品兼容 4K字节在系统可编程Flash存储器 1000次擦写周期 全静态工作:0Hz33MHz 32个可编程I/O口线 2个16位定时器/计数器 6个中断源 全双工UART串行通道 低功

16、耗空闲和掉电模式 掉电后中断可唤醒 看门狗定时器 双数据指针 灵活的ISP编程(字或字节模式) 4.0-5.5V电压工作范围2.1.2最小单片机系统下图是本设计中用到的单片机最小系统:图2.2单片机最小系统系统采用12MHZ晶振,由于系统对晶振要求不高,可以根据情况适当改变晶振频率;另外系统的复位可上电复位,也可手动复位。2.2温度传感器温度的测量是从金属(物质)的热胀冷缩开始。水银温度计至今仍是各种温度测量的计量标准。可是它的缺点是只能近距离观测,而且水银有毒,玻璃管易碎。代替水银的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度很低,只能作为一个概略指示。不过在居民住宅中使用已可

17、满足要求。在工业生产和实验研究中为了配合远传仪表指示,出现了许多不同的温度检测方法,常用的有电阻式、热电偶式、PN结型、辐射型、光纤式及石英谐振型等。它们都是基于温度变化引起其物理参数(如电阻值,热电势等)的变化的原理。随着大规模集成电路工艺的提高,出现了多种集成的数字化温度传感器。本设计将要用到的是DS18B20温度传感器。2.2.1温度传感器简介测量温度的关键是温度传感器,温度传感器的发展主要经过了三个阶段:(1)传统的分立式温度传感器(含敏感元件)(2)模拟集成温度传感器控制器(3)智能温度传感器。模拟集成传感器是采用硅半导体集成工艺而制成的,因此亦称硅传感器或单片集成温度传感器。模拟集

18、成温度传感器是在20 世纪80 年代问世的,它是将温度传感器集成在一个芯片上,可完成温度测量及模拟信号输出功能的专用IC。模拟集成温度传感器的主要特点是功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。它是目前在国内外应用最为普遍的一种集成传感器,典型产品有AD590、AD592、TMP17、LM135 等。模拟集成温度控制器主要包括温控开关和可编程温度控制器,典型产品有LM56、AD22105 和MAX6509。某些增强型集成温度控制器例如(TC652/653)中还包含了刀转换器以及固化好的程序,这

19、与智能温度传感器有某些相似之处。但它自成系统,工作时并不受微处理器的控制,这是二者的主要区别。智能温度传感器(亦称数字温度传感器)是在20 世纪90 年代中期问世的。它是微电子技术、计算机技术和自动测试技术(ATE)的结晶。目前,国际上已开发出多种智能温度传感器系列产品。智能温度传感器内部都包含温度传感器、A/D 转换器、信号处理器、存储器(或寄存器)和接口电路。有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化

20、程度也取决于软件的开发水平。目前,国际上新型温度传感器正从模拟式向数字式、从集成化向智能化和网络化的方向飞速发展。数字式温度传感器DS18B20 正是朝着高精度、多功能、总线标准化、高可性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。因此,智能温度传感器DS18B20 作为温度测量装置己广泛应用于人民的日常生活和工农业生产中。采用温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势。部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。所以集成芯片的使用将成为电路发展的一种趋势。本方

21、案应用这一温度芯片,也是顺应这一趋势。根据其时序特点给出了DS1820和AT89S51单片机构成的温度测控系统的应用电路如下:图2.3 DS18B20典型应用DS18B20采集到的模拟信号通过内部转换为数字信号,通过一总线DQ与单片机直接通信,无需A/D转换,单片机从其寄存器中直接提取数据再做相应处理后,交由无线模块发射。2.2.2 DS18B20性能特点与内部结构1、 DS18B20的性能特点如下:1) 独特的单线接口仅需要一个端口引脚进行通信;2) 多个DS18B20可以并联在惟一的三线上,实现多点组网功能;3) 无须外部器件;4) 可通过数据线供电,电压范围为3.05.5V;5) 零待机

22、功耗;6) 温度以3位数字显示;7) 用户可定义报警设置;8) 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;9) 负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 2、 DS18B20的外形及管脚排列如下图2-4: 图2.4 DS18B20封装3、DS18B20内部结构主要由六分组成:1) 64位光刻ROM。开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因。64位闪速ROM的结构如下:8b检验CRC48b序列号8b工厂代码(10H) MSB LSB MSB

23、 LSB MSB LSB图2.5 DS18B20内部结构2) 非挥发的温度报警触发器TH和TL,可通过软件写入用户报警上下限值。3) 高速暂存存储,可以设置DS18B20温度转换的精度。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PRAM。高速暂存RAM的结构为8字节的存储器,结构如图2-5所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。它的内部存储器结构和字节定义如图2

24、.2所示。低5位一直为,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式。Bye0温度测量值LSB(50H)Byte1温度测量值MSB(50H)E2PROMByte2TH高温寄存器-TH高温寄存器Byte3TL低温寄存器-TL 低温寄存器Byte4配位寄存器-配位寄存器Byte5预留(FFH)Byte6预留(0CH)Byte7预留(IOH)Byte8循环冗余码校验(CRC)图2.6 DS18B20内部存储器结构DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。TM R1R0 1 1 1 1 1图2.7 DS18B20字节定义由表2

25、.1可见,分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625LSB形式表示。当符号位S0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S1时,表示测得的温度值为负值,要先将补

26、码变成原码,再计算十进制数值。表2.2是一部分温度值对应的二进制温度数据。表2.1 DS18B20温度转换时间表R1R0分辨率/位温度最大转向时间/ms00993.750110187.510113751112750表2.2一部分温度对应值表温度/二进制表示十六进制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 1000

27、0000H-0.51111 1111 1111 0000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FE6FH-551111 1100 1001 0000FC90H4) CRC的产生在64 b ROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,并和存入DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作按协议进行。操作协议为:初使化D

28、S18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。5)寄生电源寄生电源有二极管VD1、VD2、寄生电容C和电源检测电路组成,如图所示。电源检测电路用于判定供电方式。DS18B20有两种供电方式:3.05.5V的电源供电方式和寄生电源供电方式(直接从数据线获取电源)。若采用外部电源给器件供电,外部电源接VCC引脚通过VD2向器件供电,如图所示。寄生电源供电时,VCC端接地,器件从单线总线上获取电源,如图所示。在I/O线呈低电平时,改由电容C上的典雅继续向器件供电。该寄生电源的优点:第一,检测远程温度时无需本地电源;第二、缺少正常电源时也能读ROM。外部电源供电图2.8外部电源供

29、电寄生电源供电图2.9寄生电源供电2.3 无线通信模块介绍随着我国国际地位和科研水平的不断提高,无需导线连接的无线数据系统对用户有着极大的吸引力。无线数据系统采用了能在局域范围内无线传输信息的数字网络,在不改动原有设施的前提下,将有效的数据信息准确、快速和安全地传送给与会者。因此,无线数据系统设备的设计得到了国内外相关领域厂商的广泛关注,未来,无线数据系统很有可能代替现有的有线数据系统,成为今后数据传输的主流。要了解无线数据传输, 就得先了解无线传输技术。 下面大概介绍一下几种常见的无线传输技术:1.U段无线传输技术超高频(UHF -Ultra High Frequency)。UHF波段则是指

30、频率为3003000MHz的特高频无线电波。具有特点是:1)稳定性高2)写距离远3)讯速率较高但U段技术由于频段多、使用范围广,容易串频和被听,保密性较差。2.红外线技术红外通讯技术的特点:1)它是目前在世界范围内被广泛使用的一种无线连接技术,被众多的硬件和软件平台所支持;2)通过数据电脉冲和红外光脉冲之间的相互转换实现无线的数据收发。3)主要是用来取代点对点的线缆连接;4)具有不能穿透障碍物的特性,有效保障了会议信息的安全与保密;5)安装方便快捷,成本低;当然我们还是需要注意一下红外线技术的一些局限性。在进行系统安装时,设备距离红外信号收发器的距离通常比较短,大都在10米内,且应远离其它红外

31、光源(如日光灯,等离子屏等),以避免干扰。3.WAP技术 WAP是Wireless Application Protocol(即无线应用协议)的缩写。无线应用协议也称为无线应用程序协议,目前应用广泛,是在数字移动电话、Internet及其他个人数字助理机PDA、计算机应用之间进行通信的开放性全球标准。在工作方面,对于日理万机、经常与时间竞赛的商务人士,WAP更能为用户提供市场上最新的第一手信息,完全配合用户的业务和工作需要。在生活方面,无论用户身在何处,都可以通过WAP上网,进行各项线上银行服务,在娱乐方面,WAP也为用户提供了崭新的消费模式,无论您走到那里,都可以随心所欲地与朋友甚至其他WA

32、P用户,一起上网、玩游戏,一起分享WAP的乐趣。BOSCH的DCN无线讨论系统采用的就是该无线技术。 通过倍受赞誉的无线介入点能够为方圆40米(164英尺)左右的空间提供稳固如一的强大连接。WAP既可部署在会议室中心以获得最佳的覆盖率,也可以移动到会议室中最适合的位置。尽管WAP有其强大的优势,但是也必须指出WAP在技术角度上的局限性,主要存在于两个方面:1)WAP设备和WAP承载网络: 2)WAP设备受CPU、随机访问存储器(RAM)、只读存储器(ROM)和处理速度的限制。3)WAP承载网络是低功率的网络,一般在办公环境中的带宽多为11M,。WAP承载网络的固有特性是可靠性不高、稳定性不高和

33、不可。4.2.4G频射技术2.4G无线技术,其频段处于2.405GHz-2.485GHz之间。所以简称为2.4G无线技术。这个频段里是国际规定的免费频段,是不需要向国际相关组织缴纳任何费用的。这就为2.4G无线技术可发展性提供了必要的有利条件。而且2.4G无线技术不同于之前的27MHz无线技术,它的工作方式是全双工模式传输,在抗干扰性能上要比27MHz有着绝对的优势。这个优势决定了它的超强抗干扰性以及最大可达10米的传输距离。此外2.4G无线技术还拥有理论上2M的数据传输速率,比蓝牙的1M理论传输速率提高了一倍。这就为以后的应用层提高了可靠的保障。2.4G有着自己独到的优势所在。相比蓝牙它的产

34、品制造成本更低,提供的数据传输速率更高。相比同样免费的27MHz无线技术它的抗干扰性、最大传输距离以及功耗都远远超出。据上介绍,因此这里就运用了无线通信模块(NewMsg-RF905)。NewMsg-RF905芯片是挪威Nordic 公司推出的的单片射频收发器。芯片工作电压DC1.93.6V,32 引脚QFN 封装,内置硬件CRC 检错和点对多点通信地址控制, 工作在433/868/915MHz 三个ISM 频段,频段之间收发模式切换时间650us。其引脚说明如表1所示:表2.3引脚说明针号功能说明缩写1电源3.3V3.6VDCVCC2TX_EN1为TX模式,TX_EN0为RX模式TX_EN3

35、发送或接收数据使能TRX_CE4芯片上电PWR_UP5时钟输出(不用)uCLK6载波检测CD7地址匹配AM8接收或发送数据完成DR9SPI输出MISO10SPI输入MOSI11SPI时钟SCK12SPI使能CSN13接地GND14接地GND2.3.1 NewMsg-RF905工作模式NewMsg-RF905由 PWR 、TRX_CE、TX_EN组成控制四种工作模式:两种活动RX/TX模式和两种节电模式。(1)ShockBurst 模式ShockBurstTM收发模式下,使用片内的先放先出堆栈区,数据低速从微控制器送入,但高速发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据

36、发射速率,与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用;数据在空中停留的时间短,抗干扰性高。在ShockBurstTM收发模式下,RF905自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移去。在发送数据时自动加上字头和CRC校验码,当发送完成后,DR引脚通知微处理器数据发送完毕。(2) 节能模式RF905的节能模式包括关机模式和节能模式。在关机模式,RF905的工作电流最小,一般为2.5uA。进入关机模式后,RF905保持配置字中的内容,但不会接收或发送任何数据。空闲模式有利于减小工作电流,其从空闲模式到发送模式或接收模式的启动时

37、间也比较短。在空闲模式下,RF905内部的部分晶体振荡器处于工作状态。2.3.2 NewMsg-RF905寄存器配置NewMsg-RF905的所有配置都通过SPI接口进行。SPI接口由5个寄存器组成,一条SPI指令用来决定进行什么操作。SPI接口只有在掉电模式和Standby模式是激活的。1)、状态寄存器(Status-Register)寄存器包含数据就绪DR和地址匹配AM状态。2)、RF配置寄存器(RF-Configuration Register)寄存器包含收发器的频率、输出功率等配置信息。3)、发送地址(TX-Address)寄存器包含目标器件地址,字节长度由配置寄存器设置。4)、发送有

38、效数据(TX-Payload)寄存器包含发送的有效ShockBurst数据包数据,字节长度由配置寄存器设置。5)、接收有效数据(TX-Payload)寄存器包含接收到的有效ShockBurst数据包数据,字节长度由配置寄存器设置。在寄存器中的有效数据由数据准备就绪DR指示。射频寄存器的各位的长度是固定的。然而,在ShockBurstTM收发过程中,TX_PAYLOAD、RX_PAYLOAD、TX_ADDRESS和RX_ADDRESS 4个寄存器使用字节数由配置字决定。RF905进入关机模式或空闲模式时,寄存器中的内容保持不变。NewMsg-RF905与AT89S51单片机构成的温度测控系统的应

39、用电路如下:图2.10 NewMsg-NRF905发射与接收电路它采用SPI接口与ATS89S51串行通信,ATS89S51可以用一般I/O口来SPI 接口,只需添加代码模拟SPI时序即可。本设计就是采用普通I/O口模拟SPI接口的。2.4 键盘模块基于本系统按键较少,采用矩阵式键盘,电路复杂且会加大编程难度。所以这里采用独立式按键电路,每个按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。电路设计简单,且编程极其容易采用独立式按键电路。按键硬件设计本设计中,按键基本有两种功能,一是完成温度上限的设定,二是完成测量点的选择,二者工作不冲突,故为节省资源

40、,可利用中断的不同让按键工作于两种模式下,即采用按键复用。这样并能实现按键功能实时性的要求。其硬件电路如下所示:图2.11 按键电路如图中所示,K0为按键模式1(上限温度设定)的中断触发信号:K5为按键模式2(温度显示点选择)的中断触发信号,K1、K2、K3、K4为复用键,在模式1时分别为调节位选上调下调完成功能;在模式2时分别为显示1号、2号、3号测量点温度及模式结束键。这样便完成了按键预期功能。2.5 显示报警模块本系统中要求显示数据简单且亮度较大, 采用LCD显示价格较高,且在强光下亮度一般不足。而采用LED显示器在亮度、可视角度和刷新速率等方面,都更具优势。在强光下也可以照看不误,并且

41、对温度适应性较强。由于单片机的I/O有限,为了更好的分配资源,显示模块要求用串行传输。MAX7219 是MAXIM 公司的7 段共阴极LED 数码管专用驱动器,每一片MAX7219 最多可驱动8 位LED,完全满足本设计的要求,且集BCD 码译码器、多路扫描器、段驱动和位驱动电路于一体,内含88位双口静态SRAM,可保存8 位LED 数据,不仅使用方便,连线简单,而且还可串联,大大简化了硬件电路设计,减少软件的工作量。MAX7219直接与单片机相连如下图所示:图2.12 MAX7219显示驱动电路MAX7219 具有典型的三线串行接口, 命令与数据组成16位字串,从DOUT 引脚输出,当每一个

42、CLK 脉冲上升沿到来时,串行数据从DIN 引脚进入MAX7219 内部移位寄存器,最先收到的是高位。在第16个CLK 上升沿,LOAD 引脚若变为高电平,则数据就会被锁存到内部寄存器中。下图为MAX7219 的时序图。图2.13 MAX7219时序图如图所示,DIN 为串行数据输入端,当CLK 为上升沿时,数据载入16位内部移位寄存器;CLK 为串行时钟输入端,最大工作频率为10 MHz;LOAD为片选端,当LOAD 为低电平时,该器件接收来自DIN的数据,接收完毕,LOAD 返回高电平时,接收的数据将锁定;DIG0DIG7 为吸收显示器共阴极电流的位驱动线,其最大值。可达500 mA,在关

43、闭状态时,输出V;SEGASEGG 和DP 为驱动显示器7 段及小数点的输出电流,约40 mA,可软件调整,关闭状态时,接入GND;DOUT 为串行数据输出端,通常直接接入下一片MAX7219 的DIN 端。本设计中未用到DOUT端。通过V+ 引脚和ISET 引脚之间所接的外部电阻RSET控制MAX7219,RSET越大,段电流越小,但是其为9 530 。此时为典型段电流37 mA。为了减少外界干扰,在MAX7219 的V+引脚与GND 引脚之间接一个0.1 F的涤纶电容和一只10 F 的钽电容。MAX7219 所能直接驱动的是共阴极小电流LED 显示器,它不能直接驱动共阳极LED 显示器,否

44、则会损坏器件。为了报警达到目的,直到工作人员采用相应措施改善温度条件,故采用了蜂鸣器置的方法报警。其硬件电路如下所示:图2.14 报警电路当温度超过上限时,置位P37使报警电路工作,可通过开关S0关掉报警,但当报警作用起到后,为了不让它在处理温度问题同时不继续报警,故加上一个单刀双掷开关和一个反指示灯,可人工先择报警状态,或为蜂鸣器或为指示灯工作。2.6 其它模块电源模块本系统中除了NRF905使用3.3V电压外,其它均采用5V电压。主要是因为NRF905电源电压是3.3V 3.6VDC ,而在3.3V时性能最佳。考虑到系统的特点,采用220V交流供电,故需要以下电压变换:图2.15 220V

45、交流变5V直流电源电路图2.16 5V直流变3.3V直流第三章 软件设计本章主要介绍单片机通过NRF905模块及DS18B20检测温度的软件实现方法,包括温度的采集,采样点的识别,数据的处理及发射与接收,以及温度的显示的控制。3.1 主程序流程设计中要完成按键设定温度报警上限值(按键模式1),按键更改显示不同测量点的温度(按键模式2),但单片机不能一直处于查询状态,那样太浪费单片机资源,又不利于系统整体流程的复杂程度,故采用了中断方式。考虑到本系统的开关机次数不会太多,为了节省成本,未对单片机ROM区的资源进行扩展,而温度的上下限值保存于RAM区没定的变量中,系统开机或重启时要首先对温度上下限

46、进行设定。主要包括发射端与接收端主程序如下:3.1.1系统温度采集终端主程序实现发射端的主要任务就是温度采集,并通过无线模块发送出去,并对读取的温度值了相应处理,分离出小数、整数,加入了测量点代码。具体流程如下:图3.1 温度采集端主程序流程图3.1.2系统主机终端主程序实现接收端主要完成把发送端发送的数据接收,并送到MAX7219显示出来,中途接收按键中断,设定温度报警上限值(按键模式1),更改显示不同测量点温度(按键模式2),模式的切换通过不同的外部中断来区别。图3 .2 系统主机终端主程序流程图3.2 温度的采集及数据的处理在本设计中采用DS18B20作为温度采集设备,它与单片机通过一总

47、线通信,有严格的时序要求,为了方便接收端数据的处理,温度采集后并对其数据进行了处理,并加入测量点识别码;故其软件设计过程主要包括温度的读取与数的处理,具体流程如下所示:3.2.1 DS18B20初始化图3.3 温度采集初始化流程图如上图所示 DS18B20的初始化要完成以下工作:(1) 先设置好初始化成功标志,将数据线置高电平“1”。(2) 延时(该时间要求的不是很严格,但是尽可能的短)(3) 数据线拉到低电平“0”。(4) 延时750微秒(该时间的时间范围可以从480到960微秒)产生复位脉冲。(5) 数据线拉到高电平“1”,释放总线。(6) 延时等待(如果初始化成功则在15到60毫秒时间之

48、内产生一个由DS18B20所返回的低电平“0”。据该状态可以来确定初始化成功与否。)3.2.2数据的读取与处理由于设计中选用的的温度传感器芯片要写入命令字来控制相应的动作,且有严格的时序要求,当然需要有相应的子程序;由于本设计中要求对不同的温度点加以区别,并显示出来,故采用自行给编码比较容易实现,这里的编码必须由温度采集点给出,才能达到区别的目的,所以在发射击的温度值中直接加入相应编码,与温度值一同发出,并在接收端解码、显示出其编码信息,与其温度值相对应的出现在LED显示屏上。本文此处介绍DS18B20读一字节子程序,写一字节子程序,和读取温度值及数据处理子程序。以下是用于向DS18B20写写

49、一字节子程序流程: 图3.4 DS18B20写命令字的写字节子程序流程图如上图所示,DS18B20的写时序有严格的要求DS18B20的写操作。(1) 数据线先置低电平“0”,写时序开始。(2) 延时确定的时间为15微秒。(3) 把要写入的数据按从低位到高位的顺序按位发送字节。(4) 延时时间为60到120微秒,使写时间片结束。(5) 将数据线拉到高电平释放总线。(6) 重复上(1)到(6)的操作到所有的字节全部发送完。(7) 最后将数据线拉高,返回。下是从DS18B20中读取一个字节子程序: 图3.5 DS18B20中读取一个字节子程序流程图如上图所示,读操作同样也有严格的时序要求DS18B2

50、0的读操作(1)将数据线拉低“0”,读时间片开始。(2)在1到15微秒内,数据线拉高,释放总线,读走数据。(3)按先低位后高位的顺序依次读入8位。(4)将数据线拉高“1”。(5)延时至60微秒使读时间片结束。(6)拉高返回。以下是读取温度值及数据处理子程序图3.6 读取温度值及数据处理子程序流程图如上图所示,读取温度值及数据处理应包括以下过程:(1)对DS18B20初始化。(2)跳过读序列号,并启动温度转换。(3)再对DS18B20初始化。(4)跳过读序列号,并写入读取温度命令字。(5)立刻读取温度值。(6)数据处量,包括分离出小数部分,整数部分,以及加入编码部分。3.3 无线通信子程序本设计

51、中采用了NewMsg-NRF905射频模块完成数据传输。单片机通过SPI接口与NewMsg-NRF905相接,并完成对其控制。故软件设计中主要包括NewMsg-NRF905初始化,寄存器的配置,发射与接收程序,其具体流程分别如下所示:3.3.1 NewMsg-NRF905初始化初始化的过程就是对无线模块进配置的过程,其中相关配置的参数见附录。以下是无线模块的初始化流程:图3.7 无线模块的初始化流程图由于无线模块是通过SPI与单片机进行通信的,所以要先打开SPI接口,在循环写入相关的十字节的配置信息,写入完成后,关闭SPI,以便其它操作。3.3.2寄存器的配置如上所述,无线模块是通过SPI与单

52、片机进行通信的,所有配置字都是通过SPI接口送给RF905。必须进行SPI读写才能完成对无线模块的相关配置,以及数据的读取。下面要先介绍SPI的读写操作,再介绍相关配置字的选择。配置字都是通过SPI接口送给RF905。下面是SPI的写子程序流程图:图3.8 SPI的写子程序流程图步骤一:MOSI线准备好需要发送的数据位。 步骤二:SCK置高,器件读取MOSI线上的数据。 步骤三:SCK置低,准备发送数据的下一位。 以上步骤循环执行8次,通过SPI向器件发送数据完成。单片机也是通过SPI接口从RF905中读取数据的,下面是SPI的读子程序流程图:图3.9 SPI的读子程序流程图步骤一:MISO线

53、准备好需要读取的数据位。步骤二:SCK置高,主机读取MISO线上的数据。步骤三:SCK置低,准备接收数据的下一位。以上步骤循环执行8次,通过SPI向器件发送数据完成!3.3.3数据的发送与接收 所有的SPI操作都是为了数据的接收与发送,这里介绍数据通过无线模块发送接收的软件实现。下面是通过无线模块接收两个字节的子程序流程图:图3.10 无线模块接收两个字节的子程序流程图步骤一:TRX_CE=0; 必须将此引脚置低,使905进入standby模式。步骤二:发送RRP指令。 步骤三:循环调用SpiRead函数,读取接收到的数据。 步骤四:等待DR和AM引脚复位为低电平。 (中间夹有CSN电平变化)

54、。数据包接收完成! 下面是通过无线模块发送两个字节的子程序流程图:图3.11 无线模块发送两个字节的子程序流程图步骤一:通过SpiWrite 函数发送WTP命令,准备写入TX有效数据。步骤二:循环调用SpiWrite向TX-Payload寄存器写入TX有效数据。(中间夹有CSN电平变化)步骤三:延时。步骤四:通过SpiWrite函数发送WTA命令,准备写入TX地址。步骤五:循环调用SpiWrite向TX-Address寄存器写入TX地址。步骤六:TRX_CE=1; 开始发送数据。延时,nRF905数据发送完成。3.4 温度的显示模块同样节省了I/O接口资源,MAX7219 和AT89s51 采

55、用串行方式传输数据, 数据格式为16 位,发送到DIN 端的串行数据在每个CLK 的上升沿移至内部16 位移位寄存器中,然后在LOAD 的上升沿,将数据锁存到数字或控制寄存器中。通过移位寄存器传送DIN 端的数据, D8D11 是寄存器地址;D0D7 为数据;D12D15为无关位;MAX7219 接收的第1 位为D15。MAX7219 中共有14个数据和控制寄存器。MAX7219 与AT89s51 的编程, 主要为初始化子程序。程序流程如下:图3.12 MAX7219初始化子程序流程图如上图所示,所有向MAX7219中写的数据都是DIN准备好,在CLK上升沿时送入相应寄存器。数据送到相应寄存器

56、后,其输出就会有相应动作。3.5 按键子程序另外通过中断来设定温度报警上限值(按键模式1);通过按键复用更改显示不同测量点的温度(按键模式2);其软件设计流程如下:按键模式1:图3.13 按键设定温度报警上限值子程序流程图为了利用外部中断的不同来区别不同的模式,故采用了单独的触发按键,本模式由外部中断0(INT0)端触发,另外,为了调节的需要,设置了上调、下调改变调节位按键,另外为了系统使用的方便,专门增加的中断结束按键。按键模式2:图314 温度检测点选择子程序流程图同样为了利用外部中断的不同来区别不同的模式,采用了单独的触发按键,本模式由外部中断1(INT1)端触发,另外,为了多点检测的需

57、要,设置了1号、2号、3号温度检测终端选择按键,为节省资源,以上4键分别为上调、下调、改变调节位与中断返回按键的复用;另外为了系统使用的方便,专门增加的中断结束按键。第四章 总结与展望本文采用单片机和无线处理技术,分析研究了智能仓库温度监控系统中总线技术和无线传输技术完成数据的采集和监控。对其中的一些难点问题进行了重点研究,并设计出了稳定可靠智能的温度监控系统,在实验过程中取得了良好的效果。为此,本文研究所取得的创新性成果有:(l)研究了国内仓库温度采集系统的发展现状,分析了国内对此系统的需求方向。根据单片机和无线处理技术,分析了系统使用的软件硬件平台特点,针对功能需求设计了仓库温度采集系统的

58、硬件和软件组成。(3)研究设计了功能齐全、简单有效、易于操作的温度采集控制系统的应用程序。本文虽然对仓库温度采集系统做了相关的研究,但由于时间和本人知识水平有限,仍然有许多问题需要深入的研究以及进一步的改进和完善,主要有以下几个方面:(1)在进行系统安装时,设备距离红外信号收发器的距离通常比较短,大都在10米内,而且容易被其它红外光源干扰。因此在这一方面还待加强。(2)由于本系统的开关机次数不会太多,为了节省成本,未对单片机ROM区的资源进行扩展。随着单片机和无线控制技术的快速发展,国内外的相关研究学者将会对基于单片机和无线的智能控制系统进行更加深入的研究,使其技术也越来越成熟,并在工业生产中

59、发挥越来越重要的作用。参考文献1 51单片机C语言常用模块与综合系统设计.电子工业出版社,20072 孙育才.MCS-51系列单片微型计算机及其应用.第4版,东南大学出版社,20043 于永.51单片机C语言常用模块与综合系统设计实例精讲.电子工业出版社,20074 刘军.单片机原理与接口技术.华东理工大学出版社,20065 赵亮.单片机C语言编程与实例.人民邮电出版社,20036 模拟电子技术基础. 高等教育出版社,20067 先锋工作室.单片机程序设计实例M.清华大学出版社,2002.8 冯建华.赵亮.单片机应用系统设计与产品开发M.人民邮电出社,2004.119 谢维成,杨加国,董秀成.

60、单片机原理与应用及C51 程序设计M.清华大学出版社,2006.810 沈兰荪.数据采集与处理M北京:能源出版社,1987.111 徐玮,徐富军,沈建良.C51 单片机高效入门M.机械工业出版社,2001.312 徐玲.小信号数据采集及处理N.广东民族学院学报,1995(4).13 何立民.MCS51 系列单片机应用系统设计.北京:北京航空航天大学出版,2003.714 张毓芬.数据采集器同计算机的一种接口方法.声学与电子工程15 石东海.单片机数据通信技术从入门到精通M.西安西安电子科技大学出版社,200216 刘和平.单片机原理及应用M.重庆大学出版社17 李华.MCS51 系例单片机实用

61、接口技术M.北京航空航天大学出版社18 李兰友.单片机开发应用十例M.电子工业出版社,1994.223 Richardc.Dorf.modern conctrol systerm.BEIJING Science Publishing House,2002.24 Donald A. Neamen. Electronic circuit analysis and design.Tsinghua University Press and Springer Verlag.2002.致 谢在此要非常感谢李老师对我的无限督促,从2011年12月份开会后开始!李老师经常调查论文进度,并且要求我们把准备好的资料,源程序等都得发有两给他批阅,这对我来说,无疑非常重要,因为我是那种读书不是很自觉的人。短短的五个多月论文设计,在李老师的要求下,上报论文进度不下于二十次。在李老师的督促下!我在网上找了很多相关的论文资料进行阅读。从去年12月到现在让我对单片机以及无线串口通信有了很重要的了解。就因为我一直以来单片机学得很差无线通信也学得不是很好,所以做这篇论文很费劲。一直找不到出发点。后来李老师通过邮件向我提一些问题(温度怎么采集、监控距离怎么办、怎么连接)我根据所看资料去解决

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