收藏 分享(赏)

区域温湿度环境特性采集系统设计.doc

上传人:ddeeee 文档编号:16098882 上传时间:2023-09-15 格式:DOC 页数:46 大小:12.51MB
下载 相关 举报
区域温湿度环境特性采集系统设计.doc_第1页
第1页 / 共46页
区域温湿度环境特性采集系统设计.doc_第2页
第2页 / 共46页
区域温湿度环境特性采集系统设计.doc_第3页
第3页 / 共46页
区域温湿度环境特性采集系统设计.doc_第4页
第4页 / 共46页
区域温湿度环境特性采集系统设计.doc_第5页
第5页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、1. 绪论1.1 引言1.1.1 测控技术简介 测控技术是研究信息的获取和处理,以及对相关要素进行控制的理论与技术;是电子、光学、精密机械、计算机、信息与控制技术多学科相互渗透而形成的一门高新技术密集型综合学科;是在自动化系统上的将信号加以采集、处理、而后进行显示或者发出控制信号的过程。测控技术分为以下两个专业方向:方向一以集电子技术、先进控制理论、计算机控制技术、自动检测技术、光电技术以及网络技术于一体为特色,以生产过程的机电装备运行状态及其信息为研究对象。方向二以光机电仪器计算机技术一体化为特色,以传感器技术、信息获取与处理技术、自动化精密机械以及智能仪器仪表为主要研究对象。1.1.2 测

2、控技术的发展 测控技术在现在的科学技术和国防科学技术等许多领域中都应用十分广泛,它的发展被认为是科学技术、国防科技现代化的重要的条件和明显的标志。在以往的工业现场各种数据都是采用人工读数和记录,无法做到对大量的实验数据的实时采集和实时分析。随着现代计算机和微电子等技术的高速发展,结合高精度、高性能的数据采集传感器的应用,使得多路数据采集实现了人工智能化,大量数据采集和分析都由计算机自动完成,大大的提高了测量精度和测量速度。1.2 温湿度采集系统的发展背景1.2.1 温湿度采集系统的发展 随着计算机技术的快速发展,数据采集与处理系统在工业生产中迅速地得到应用。数据采集与处理技术是信息科学的重要分

3、支之一,它研究数据的采集、存储、处理等问题。温湿度采集系统以传感器信号的测量与处理、微型计算机为基础形成的一门综合性技术。其任务是对生产现场各种参数进行采集,然后送入计算机,根据不同的需要由计算机进行相应的计算和处理,得到所需的数据。与此同时,将计算机得到的数据按要求进行显示,以便实现地对某些物理量的观察。数据采集系统一般需要长时间、高速度地进行数据采集,将会产生大量的数据,需要组织、存储、处理数据,并对生产进行有效的控制,提高生产效率1。温度作为一个重要的物理量,是工业生产过程中最普遍、最重要的工艺参数之一。随着工业的不断发展,对温度测量的要求越来越高,而且测量的范围也越来越广,对温度的检测

4、技术要求也越来越高。因此,温度测量和温度测量技术的研究也是一个重要的课题2。在冶金、化工、电力、机械和食品生产中都需要对温度进行测量和控制。尤其是在炼钢的过程中,温度更是一个至关重要的参数,合理的钢水温度范围以及准确地测量生产过程中的钢水温度对提高产品的质量、产量、降低消耗和实现冶金自动化,具有较大的积极作用3。湿度被定义为气体中水蒸汽的含量,是一个重要的环境参数。湿度测量和控制广泛应用于电力、航空航天、微电子、原子能、石油化工、气象、仓储等领域。气体湿度的精确测量对烟草、制药、火电厂的汽轮机等都具有重要意义4。常规电站中大型冷凝式蒸汽透平的末几级和核电站中透平的全部级都在湿蒸汽状态下工作。蒸

5、汽湿度的大小直接影响汽轮机运行的安全性和经济性,蒸汽湿度增加,一方面会对汽轮机叶片产生强烈的侵蚀与冲击,使叶片变的粗糙,出现凹坑,甚至造成叶片扭曲断裂,严重威胁汽轮机的安全运行,同时还会使汽轮机的热效率降低5。因此在工业生产中要重视对湿度的检测与控制。20世纪80年代后期,数据采集系统发生了极大的变化。工业计算机、单片机和大规模集成电路的组合,用软件管理,使系统的成本降低,体积减小,功能成倍增加,数据处理能力大大增强。数据采集系统简称DAS系统,是对工业过程数据进行显示、储存、运算及各种管理的装置。在冶炼、食品生产、气象、核电站等行业应用较广。该系统利用温度传感器、湿度传感器、单片机系统、PC

6、终端、EIA RS-232C总线等构成数据采集与处理设计。过程对象需要把检测参数经转换元件转换成可测信号,再经变送器变换成420mA或15V信号送入系统的I/O模块。I/O模块也可设计成直接接收现场来的电压、电流或脉冲信号,经过A/D转换器转换成数字信号由CPU处理。数据采集系统在硬件配置上的独特要求,在进行具体结构设计时应综合考虑各种因素以满足用户的需求为目的。20世纪90年代至今,由于集成电路制造技术的不断提高,出现了高性能、高可靠性的单片机控制的数据采集系统。数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用,数据采集系统采用更先进的模块式结构,根据不同的应用要求,通过简单的

7、增加和更改模块,并结合系统编程,就可扩展或修改系统,迅速地调节系统的设置,因此通用性好。温度采集系统所采集的温度通常通过RS485、CAN总线通信方式传输至上位机,但这种方式维护较困难,不利于工业现场生产;而无线通信GPRS技术传输距离长,通信可靠稳定,但设计复杂、成本昂贵。这里采用工业级内置硬件链路层协议的低成本单芯片nRF24L01型无线收发器件实现系统间的无线通信6,完成无线信号的接收、显示及报警功能。该数据采集系统应用于工业现场的数据采集与处理,系统运行稳定、可靠,使用简便,成本经济。1.2.2 国内外温湿度采集系统发展现状随着工业的日益发展,温度和湿度测量技术不断发展,目前国内外的温

8、度和湿度测量的测量元件种类繁多、应用范围也很广泛。温度测量大致包括以下几种方法:利用物体的热胀冷缩原理制成的温度计,如玻璃温度计、双金属温度计、压力式温度计等;利用热电效应技术制成的温度测量装置元件,如热电偶等;利用热阻效应技术制成的温度测量装置元件,如电子测温元件等;利用红外测温技术制成的温度测量装置元件;利用热辐射原理制成的高温计;利用声学原理进行温度测量等等7。该设计使用的DS18B20传感器利用的是红外线测温的原理。湿度测量大致包括以下几种方法:热力学法,热力学湿度探针在测量时几乎都采用的是抽汽采样法,即从汽轮机的排汽中抽取部分汽样引向测量段进行处理,可以分为节流法、加热法、凝结法、空

9、气-蒸汽混合法等8;光学法,当光线通过含有细微颗粒或雾滴的介质时将产生散射现象,若入射光波波长已知,则散射光的光强分布、偏振状态与消光系统与水滴直径有关,光学法湿度测量就是依据这一原理设计的,可以分为角散射法和全散射法。该设计使用的HS1101传感器利用的是它的电容值随着湿度的变化而变化的原理。数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统;另一类是工业现场数据采集系统。就使用的总线来说,实验室数据采集系统一般采用并行数据总线,并行数据总线传输数据的速度快;工业现场数据采集系统一般采用串行数据总线,串行总线传输数据的距离长9。由于目前局域网技术的发展,一个工厂管理层局域网,车间层

10、的局域网和底层的设备网已经可以有效地连接在一起,可以有效地把多台数据采集设备连在一起,以实现生产环节的在线实时数据采集与处理。1.3 系统的组成及其功能描述在工业现场以及实际生产过程中经常会需要采集现场数据,如温度、湿度、光强等等,以便于实现生产过程的实时控制和生产监督管理。本系统就是基于现场的数据采集系统,主要包括温度数据采集模块、相对湿度数据采集模块、电机驱动控制模块、无线数据传输模块、LED显示模块等部分。其中主单片机控制无线收发模块与LED显示模块,从单片机控制温度数据采集模块、相对湿度数据采集模块、LED显示模块、无线发射模块与无线接收模块。系统的结构框图如图1.1所示。 温度数据采

11、集模块相对湿度数据采集模块 从单片机 LED显示 模块 无线发 射模块无线收发模块主单片机 LED显示 模块步进电机驱动器ULN2003无线接收模块从单片机 图1.1 区域温湿度环境特性采集系统框图1.4 该系统要完成的主要工作 基于AT89C52RC单片机和无线收发系统的数据采集和监控系统在设计时需要解决如下主要问题:A. 现场与远程控制在工业现场由温度传感器DS18B20组成的温度采集电路和湿度传感器HS1101组成的相对湿度采集电路采集到数据后,通过无线收发模块传至主单片机以及通过LED显示模块显示出来,便于实时监控。小车在指定区域要通过主单片机和无线收发模块来控制小车的前进、后退、左转

12、、右转等。B. 无线收发模块的编程与调试作为发送方:射频芯片nRF24L01经从单片机启动工作后,将来自于从单片机的数据打包(加字头、CRC 校验码)后高速发射。作为接收方:射频芯片将接收到的正确的数据包除去字头和CRC 校验码,由主单片机把数据从nRF24L01 中移出。C. 电机驱动模块的编程通过程序控制小车的前进、后退、右转、左转等。2. 数字温度传感器DS18B20的测量原理2.1 数字温度传感器DSl8B20的特点 本设计采用DALLAS半导体公司生产的单线数字温度传感器DS18B20,该温度传感器的特点: A. “一线总线”接口的温度传感器,用户可以组建传感器网络,现场温度直接以“

13、一线总线”的数字方式传输,大大提高了系统的抗干扰性,适合在恶劣环境现场的温度测量; B. 测量温度范围为-55至+125,在-10至85范围内,精度为0.5; C. DS18B20可以程序设定912位的分辨率,精度为0.5; D. 可选更小的封装方式,电压适用范围3V至5.5V,使系统设计更加灵活、方便;E. 分辨率的设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存;F. 测量温度需要很少的外部电路;G. 负压特性:当电源极性接反时,温度传感器不会因过度发热而烧毁,但是不能正常工作。DS18B20传感器封装结构如图2.1所示: 图2.1 DS18B20的封装结构2.2 DSl8B

14、20的结构主要由四部分组成:64位光刻ROM、温度传感器、非易失性的温度报警触发器TH和TL、配置寄存器10。其中,VDD为电源输入端,DQ为数字信号输入/输出端,GND为电源地。2.2.1 64位光刻ROM光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DSl8B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DSl8B20自身的序列号,最后8位是前面56位的循环冗余校验码。光刻ROM的作用是使每一个DSl8B20都各不相同,这样就可以实现一根总线上挂接多个DSl8B20的目的11。2.2.2 温度传感器 DS18B20中的温度传感器

15、可完成对温度的测量,当从外界接收到温度后,可以直接在芯片内部进行A/D转换,温度传感器DS18B20上要加一个5V的电源12。以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达。测试的温度转化后得到的12位数据,存储在DSl8B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于O,这5位为O,只要将测到的数值乘于O.0625即可得到实际温度;如果温度小于0,这5位为l,测到的数值需要取反加l再乘于0.0625即可得到实际温度。DSl8B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放

16、高温度和低温度触发器TH、TL和结构寄存器。2.2.3 非易失性的温度报警触发器TH和TL 一条控制操作命令指示DS18B20完成一次温度测量之后,测量结果存放在DS18B20的暂存器里,用一条读暂存器内容的存储器操作命令可以把暂存器中的数据读出。温度报警触发器TH和TL各由一个EEPROM字节构成。如果没有对DS18B20使用报警搜索命令,这些寄存器可以作为一般用途的用户存储器使用。可以用一条存储器操作命令对TH和TL进行写入,对这些寄存器的读出需要通过暂存器。所有数据都是以最低有效位在前的方式进行读写。2.2.4 配置寄存器 暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个

17、字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节。字节各位的意义如表2.1。 表2.1 检验字节含义 TM R1 R0 1 1 1 1 1TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DSl8B20出厂时该位被设置为O,用户不要去改动。Rl和R0用来设置分辨率,如表2.2所示。 表2.2 DS18B20分辨率的设置 R1 R0 分辨率(bit) 温度最大转换时间(ms) 0 0 9 93.75

18、 0 1 10 187.5 1 0 11 375 1 1 12 7502.3 DSl8B20测温原理2.3.1 DS18B20测温原理概述DS18B20传感器用一个高温度系数的振荡器确定一个门周期,内部计数器l在这个门周期内对一个低温度系数的振荡器的脉冲进行计数来得到温度值。低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器l。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器l和温度寄存器被预置在-55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器l的预置值减到0时,温度寄存器的值将加l,计数器l的

19、预置将重新被装入,计数器l重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。DS18B20测温原理图如图2.2所示。 斜率累加器 计数器1 预置 低温度系 数振荡器 高温度系 数振荡器 =0 计数器2 =0 比较 预置温度寄存器 加1 停止 图2.2 DS18B20测温原理图2.3.2 DS18B20测温的分辨力和计算公式斜坡式累加器用来补偿感温振荡器的非线性,以保证在测量温度时获得比较高的分辨力,这是通过改变计数器对温度每增加一

20、度所需计数的值来实现的。因此要想获得所需的分辨力,必须同时知道在给定温度下计数器的值和每一度的计数值。DS18B20内部对此计算的结果可提供0.5的分辨力。温度以16 bit带符号位扩展的二进制补码形式读出,表2.3给出了温度值与输出数据的关系。 表2.3 温度值与输出数据的关系 温度 数据输出(二进制) 数据输出(十六进制)+125 00FA+25 0032+0.5 00010 0000-0.5 FFFF-25 FFCE-55 FF92 数据通过单线接口以串口方式传输。DS18B20测量温度的范围为-55+125,以0.5递增。DS18B20 内温度表示值为0.5LSB,如下所示9 bit格

21、式: MSB LSB110011101=-25最高有效(符号)位被复制到存储器中两个字节温度寄存器的高MSB 位,由这种“符号位扩展”产生出了如表2-3的16 bit温度读数。可用下述方法获得更高的分辨力。首先,读取温度值,将0.5位(LSB)从读取的值截去,这个值叫做TEMP_READ。然后,读取计数器中剩余的值,这个值是门周期结束后保留下来的值COUNT_REMAIN。最后,用到在这个温度下每度的计数值COUNT_PER_C。可以用下面的公式计算实际温度值:2.4 DS18B20传感器测温的时序图通过单线总线的所有ROM操作,都是从一个初始化序列开始的。初始化就是由单片机首先拉低总线一段时

22、间,至少480us,然后拉高总线,等待一段时间,读取总线上的电平值,若为“1”则无器件在线,为“0”则存在器件。若为“0”,则延迟一段时间,一般为200us,然后继续下面的操作。其初始化时序图如图2.3所示。图2.3 DS18B20初始化时序图DS18B20温度传感器还有许多与温度转换、温度值读取、匹配序列号等相关的指令,这些指令都是建立在对寄存器的操作的基础上的,而这些寄存器操作都是通过DS18B20传感器的读/写操作实现的,每一个指令都是八个字节,而由于DS18B20是单总线器件,所以每发出一条指令,都需要进行8次数据发送,所以对器件的读/写操作的程序是以for循环为主体的,而且都需要判断

23、发送或接收的比特值是“1”还是“0”,其写时序图如图2.4所示。图2.4 DS18B20写时序图由时序图2-4可以看出,单片机在写“0”或“1”时,首先要将总线拉低,然后根据是“0”或者“1”来确定是保持高电平还是低电平,DS18B20根据显示的电平进行采样,获得总线上写入的数据。高低电平的保持时间是有限制的,这就要求软件实现是要特别注意高低电平的保持时间。其写时序图如图2.5所示。 图2.5 DS18B20读时序图与写入相同,读取传感器的值时,也要进行“0”、“1”的判断。首先要将总线拉低,然后将总线拉高,再根据总线是高电平还是低电平来判断是“1”还是“0”,从而使单片机获取总线上的数据。高

24、低电平的保持时间是有限制的,这就要求软件实现是要特别注意高低电平的保持时间。2.5 DS18B20温度读取的流程图使用DS18B20 进行温度测量的步骤为:复位DS18B20跳过ROM操作命令启动温度转换命令等待转换完成初始化跳过ROM操作命令读取温度寄存器命令,这样就可以读出被测量的温度的数据了。因此温度传感器DS18B20读取温度的流程图如图2.6所示。 执行温度转换命令 初始化DS18B20 执行跳过ROM命令 读存储器 读DS18B20温度 结束 执行跳过ROM命令 复位DS18B20 开始 延迟温度转换需要的时间 图2.6 DS18B20 测量温度的程序流程图3. 湿度传感器HS11

25、01的测量原理3.1 湿度的定义 湿度指的是相对湿度,用RH%表示。即气体中(通常为空气中)所含水蒸气量(水蒸气压)与其空气在相同情况下饱和水蒸气量(饱和水蒸气压)的百分比。测量环境空气的湿度原理是根据某种物质从其周围的空气中吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容式元件是根据其高分子材料吸湿后的介电常数随之发生变化而进行湿度测量的。3.2 湿度传感器HSll01的特点 不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,有顶端接触(HSll00)和侧面接触(HSll01)两种封装产品,适用于线性电压输出和频率输出两种

26、电路。相对湿度在0%100%RH范围内;电容量由162pF变到200pF,其误差不大于2%RH;响应时间小于5s,温度系数为0.04pF/。可见精度是较高的。湿度与电容响应曲线如图3.1所示。 图3.1 湿度电容响应曲线3.3 湿度传感器HSll01的测量电路 HSllOl电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。如何将电容的变化量准确地转变为计算机易于接受的信号,方案就是把该湿敏电容置于555振荡电路中,将电容值的变化转为与之呈反比的电压频率信号13,可直接被单片机所采集。HS1101传感器如图3.2所示。 图3.2 HS1101传感器555测量频率输

27、出的振荡电路如图3.3所示。 图3.3 湿度传感器测量振荡电路图电容充电时间电容放电时间因此湿度传感器测量振荡电路输出的频率为由此可见,湿度传感器通过555测量振荡电路就转变为与之成反比的频率信号,典型的测试值如表3.1所示。 表3.1 相对湿度与输出频率数据对应表相对湿度0102030405060708090100对应频率73517224710069766853672866006468633061866033 实际的相对湿度采集电路图如图3.4所示。 图3.4 相对湿度采集电路图 电容传感器HS1101经振荡电路变换后的脉冲频率信号,送入单片机的定时/计数器TO,T0工作于方式l为16位计数

28、器14,定时记录脉冲数并存入内存缓冲区。由于采用了性能优良的HSll01电容式湿度传感器及其振荡测量电路,获得了频率信号与湿度值的近似线性关系,通过校准补偿频率、漂移以及元器件的误差15,因而所构成的湿度测量电路具有结构简单、成本低、测量精度高、响应时间快、性能稳定的优点。3.4 HS1101测量相对湿度的程序流程图使用HS1101 测量相对湿度的程序过程为:先把AT89C52RC单片机的两个定时器/计数器初始化,T0初始化为计数器模式,T1初始化为定时器模式,定时器T1定时为1s,然后启动定时器T1定时和计数器T0计数,这样就可以测量出相对湿度的值了。湿度传感器HS1101测量相对湿度的程序

29、流程图如图3.5所示。 开始初始化:T0初始化计数器模式,T1初始化定时器模式 定时器T1初始化定时1s启动定时器T1与计数器T0 计数器T0在1s内计数 值送至LED显示定时器T1定时1s到 定时器T1初始化定时1s N Y 图3.5 HS1101测量相对湿度的程序流程图4. nRF24L01无线收发模块的简介4.1 nRF24L01无线收发模块概述无线收发模块nRF24L01是挪威NordicVLSI公司生产的一款新型射频收发器件,采用4mm4mm QFN20封装;nRF24L01工作在ISM频段:2.42.514GHz。并且内置频率合成器、功率放大器、晶体振荡器、调制器等功能,还融合增强

30、型ShockBurst 技术,其中地址、输出功率和通信频道可通过程序进行配置,适合用于多机通信。nRF24L01 功耗低,在以-6dBm的功率发射时,工作电流也只有9mA;而对应接收机的工作电流只有12.3mA,多种低功耗工作模式(掉电模式和空闲模式)使节能设计更方便。可通过SPI写入数据,最高可达10Mb/s,数据传输率最快可达2 Mb/s,并且有自动应答和自动再发射功能16。nRF24L01 内部结构如图4.1所示。 图4.1 nRF24L01 内部结构4.1,1 nRF24L01 的特点17(1)2.4GHz全球开放ISM 频段免许可证使用;(2) 最高工作速率2Mbps,高效GFSK

31、调制,抗干扰能力强;(3) 125个频道,满足多点通信和调频通信的需要;(4) 内置硬件CRC 检错和点对多点通信地址控制;(5) 低功耗1.9至3.6V 工作,适合电池供电应用;(6) 待机模式下状态为22uA,掉电模式下为900nA;(7) 模块可软件设置地址,只有收到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便;(8) 具有自动应答机制和CRC 校验,数据通信稳定可靠。4.1.2 nRF24L01 的引脚功能介绍 nRF24L01共有20个引脚,各个引脚的功能如表4.1所示。 表4.1 nRF24L01引脚功能介绍管脚 名称 引脚功能 备注说明1 CE

32、 数字输入 RX或TX模式选择2 CSN 数字输入 SPI片选信号3 SCK 数字输入 SPI时钟4 MOSI 数字输入 SPI数据输入脚5 MISO 数字输出 SPI数据输出脚6 IRQ 数字输出 可屏蔽中断脚7 VDD 电源 电源(+3V)8 VSS 电源 接地(0V)9 XC2 模拟输出 晶体振荡器210 XC1 模拟输入 晶体振荡器1/外部时钟输入脚11 VDD_PA 电源输出 给RF的功率放大器提供+1.8V 电源12 ANT1 天线 天线接口113 ANT2 天线 天线接口214 VSS 电源 接地(0V)15 VDD 电源 电源(+3V)16 IREF 模拟输入 参考电流17 V

33、SS 电源 接地(0V)18 VDD 电源 电源(+3V)19 DVDD 电源输出 去藕电路电源正极端20 VSS 电源 接地(0V)4.2 nRF24L01的工作模式 nRF24L01的工作模式有发送模式、接收模式、待机模式、关机模式,这四种工作模式由PWR_UP register、PRIM_RX register和CE三者组合状态决定18,见表4.2所示。 表4.2 工作模式选择 模式PWR_UP registerPRIM_RX registerCEFIFO状态接收模式111发送模式101数据已经在发射堆栈里发送模式101 0当CE有下降沿跳变时,数据已经发出待命状态2111发射堆栈空待命

34、状态110此时没有数据要发射掉电04.2.1 增强型ShockBurstTM收发模式 增强型ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(2Mbps)发射时,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用;数据在空中停留时间短,抗干扰性高。增强型ShockBurstTM技术同时也减小了整个系统的平均工作电流。增强型ShockBurstTM收发模式下,nRF24L01自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移

35、去。在发送数据时,自动加上字头和CRC校验码,在发送模式下,置CE 为高,至少10us,持续到发送过程完成后。4.2.2 增强型ShockBurstTM数据发送流程A. 把接收机的地址和要发送的数据按时序送入nRF24L01;B. 配置CONFIG寄存器,使之进入发送模式;C. 微控制器把CE置高(至少10us),激发nRF24L01进行增强型ShockBurstTM发射;D. nRF24L01的ShockBurstTM发射包括(1)给射频前端供电;(2)射频数据打包(加字头、CRC校验码);(3)高速发射数据包;(4)发射完成以后,nRF24L01进入空闲状态。4.2.3 增强型ShockB

36、urstTM数据接收流程A.配置本机地址和要接收的数据包大小;B.配置CONFIG寄存器,使之进入接收模式,把CE置高;C.130us后,nRF24L01进入监视状态,等待数据包的到来;D.当接收到正确的数据包(正确的地址和CRC校验码),nRF24L01 自动把字头、地址和CRC校验码移去;E.nRF24L01 通过把STATUS寄存器的RX_DR置位通知微控制器;F.微控制器把数据从nRF24L01 读出;G.所有数据读取完毕后,可以清除STATUS寄存器。nRF24L01 可以进入四种主要的模式之一。4.2.4 空闲模式nRF24L01 的空闲模式是为了减小平均工作电流而设计,其最大的优

37、点是,实现节能的同时,缩短芯片的启动时间。在空闲模式下,部分片内晶振仍在工作,此时的工作电流跟外部晶振的频率有关。4.2.5 关机模式在关机模式下,为了得到最小的工作电流,一般此时的工作电流为900nA左右。关机模式下,配置字的内容也会被保持在nRF24L01 片内,这是该模式与断电状态最大的区别。4.3 nRF24L01 模块参数设置nRF24L01的所有配置工作都是微控制器通过SPI接口读写操作完成,共有30字节的配置字。工作于增强型ShockBurstTM收发模式,这种工作模式下,系统的程序编程简单,而且稳定性也会更高。ShockBurstTM的配置字使nRF24L01 能够自动处理射频

38、协议,在配置完成后,在NewMsg_RF24L01 工作的过程中,只需改变其最低一个字节的内容,以实现接收模式和发送模式之间的切换。主要的参数设置如下:A. 数据宽度:声明射频数据包中数据占用的位数,这使nRF24L01 能够区分接收数据包中的数据和CRC 校验码;B. 地址宽度:声明射频数据包地址占用的位数,这使nRF24L01 能够区分地址和数据;C. 接收通道:接收数据的地址,有通道0到通道5的地址;D. CRC校验:使nRF24L01 能够生成CRC校验码和解码,当使用nRF24L01 片内的CRC技术时,要确保在配置子中CRC校验被使能,并且发送和接收使用相同的协议;E. 工作频率:

39、可以设置在2.4-2.524GHz之间,间隔为1MHz;F. 发射功率:发射功率的大小决定了通信距离和整体功耗;G. 通信速率:1Mbps、2Mbps通信速率可选择设置。4.4 nRF24L01的指令结构 nRF24L01所有的配置字都由配置寄存器来定义,这些配置寄存器可通过SPI口19访问。4.4.1 SPI接口设置SPI接口由SCK,MOSI,MISO及CSN组成。在配置模式下单片机通过SPI接口配置nRF24L01的工作参数。在发射或接收模式下单片机通过SPI接口发送或接收数据。与SPI接口有关的指令共有8个,使用每个指令时必须使CSN变低电平,用完后再将其变高电平。单片机的控制指令从n

40、RF24L01的MOSI引脚输入,而nRF24L01的状态信息和数据信息是从其MISO引脚输出并送给单片机的。利用SPI接口传输数据时,它是先传低位字节,再传高位字节,并且在传每个字节时是从高位字节传起的。指令分别是;读寄存器指令,格式是000A AAAA;写寄存器指令,格式是001AAAAA(A AAAA代表寄存器在内存中的地址);读Payload指令;写Payload指令;清发射堆栈指令;清接收堆栈指令;发射数。4.4.2 nRF24L01的中断当nRF24L01的中断源(TX_DS,RX_DR,MAX_RT)被置高电平时(TX_DS为发送数据成功标志位,RX_DR为接收数据成功标志位,M

41、AX_RT为自动重发次数超上限标志位),就会使IRQ引脚置低电平20。这时可以向状态寄存器写1来清除这些中断标志位。通过设置CONFIG寄存器的某些位来屏蔽掉这些中断源,在默认的情况下,这三个中断源都是允许中断的。4.5 nRF24L01的软件设置4.5.1 nRF24L01的SPI总线接口的实现由于AT89C52RC单片机无标准的SPI总线接口,因此需要采用软件模拟实现SPI总线。要严格按照SPI的时序的要求编写C语言程序21,否则会导致对nRF24L01的操作失败。nRF24L01的各种命令字都只有一个字节,分为读寄存器、写寄存器、读数据接收缓冲区、写发送数据缓冲区等22。在输入任意命令字的同时,MISO输出STATUS寄存器的内容。nRF24L01无线收发模块如图4.2所示。 图4.2 nRF24L01无线收发模块4.5.2 nRF24L01的时序图nRF24L01无线收发模块的SPI读操作时序图如图4.3所示。 图4.3 SPI的读操作时序图nRF24L01无线收发模块的SPI写操作时序图如图4.4所示。 图4.4 SPI的写操作时序图4.6 nRF24L01数据发射流程系统上电时,AT89C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报