基于nrf905的无线温度采集系统的设计_毕业论文(编辑修改稿)内容摘要:

8B20 会拉低总线,外部供电的 DS18B20 会继续保持总线高电平。 基于 nRF905 的无线温度采集系统的设计 14 6 nRF905 无线数传芯片简介 挪威 NORDIC 公司推出 了一种单片射频芯片是本次系统设计的核心 , 此芯片工作 于 ~ 电压范围内 , 使用 433MHz/868MHz/915MHz 的 ISM 频段,频道转换时间小于 650μs,数据传输速率 最大 为 100Kb/s。 nRF905 的内部结构是 频率合成器、接收解调器、功率放大器、晶体振荡器和 GFSK 调制器等组成。 此外,功耗较低。 由于其收发可靠,使用方便,所以在工业控制、消费电子各领域都具有广阔的应用前景。 芯片内部结构与封装 nRF905 片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器和功率放大器等模块,曼彻斯特编码 /解码有片内硬件完成,用户无须对数据进行曼彻斯特编码,因而使用方便。 其内部结构如图 所示 【 7】。 图 nRF905 的内部结构 基于 nRF905 的无线温度采集系统的设计 15 nRF905 采用 32 引脚的 QFN 5mm*5mm 小封装( 32L QFN 5mm*5mm) ,体积小,节省印制板面积。 图 是 nRF905 的封装和引脚分布 【 7】。 图 nRF905 的封装和引脚分布 工作模式 nRF905 有两种工作模式和两种节电模式。 两种工作模式分别是 ShockBurstTM接收模式和 ShockBurstTM 发送模式 ,两种节电模式分别是掉电模式和待机模式。 nRF905 的工作模式由 TRX_CE,TX_EN 和 PWR_UP 三 引脚决定,详见表。 基于 nRF905 的无线温度采集系统的设计 16 表 nRF905 工作模式 PWR_UP TRX_CE TX_EN 工作模式 0 X X 掉电和 SPI 编程 1 0 X 待机和 SPI 编程 1 1 0 接收 1 1 1 发射 ShockBurstTM 模式 与射频数据包有关的高速信号处理都在 nRF905 片内进行,数据速率由微控制器配置的 SPI 接口决定,数据在微控制器中低速处理,但在 nRF905 中高速发送,因此中间有很长时间的空闲,这很有利于节能。 由于 nRF905 工作于 ShockBurstTM模式,因此使用 低速的微控制器也能得到很高的射频数据发射速率。 在ShockBurstTM 接收模式下,当一个包含正确地址和数据的数据包被接收到后,地址匹配 (AM)和数据准备好 (DR)两引脚通知微控制器。 在 ShockBurstTM发送模式,nRF905 自动产生字头和 CRC 校验码,当发送过程完成后,数据准备好引脚通知微处理器数据发射完毕。 由以上分析可知, nRF905 的 ShockBurstTM收发模式有利于节约存储器和微控制器资源,同时也减小了编写程序的时间。 下面具体详细分析 nRF905 的发送流程和接收流程。 典型的 nRF905 发送流程是 【 2】 : ( 1) 当 MCU 要发送 数据时 ,把 接收机的地址和要发送的数据 通过 SPI 总线送传给 nRF905, 在通信协议和器件配置时确定 SPI 接口速率。 ( 2) TRX_CE 和 TX_EN 被 MCU 置高, ShockBurstTM发送 模式被 激发。 基于 nRF905 的无线温度采集系统的设计 17 ( 3) 在 ShockBurstTM 发送模式 中,射频配置寄存器自动开启并完成以下动作: 打包 数据、发送数据包和当数据发送完成,数据准备好引脚 DR 被置高。 ( 4) 置高 AUTO_RETRAN, nRF905 发送 , TRX_CE 变成低电平时停止。 ( 5) 当 TRX_CE 变低时 , 完成 nRF905 发送过程,进入 待机 模式。 典型的 nRF905 接收流程: ( 1) 当 TRX_CE 是高电平 、 TX_EN 是低电平时 , nRF905 进入 ShockBurstTM的 接收模式。 ( 2) 经过 650us 之后 , 不断监测 nRF905,等待接收数据。 ( 3) 当 同一频段的载波 被 nRF905 检测到时, 置高 载波检测引脚 CD。 ( 4) 当 一个相匹配的地址 被 接收到 时 , 置高 地址匹配引脚 AM。 ( 5) 当一个正确的数据包接收完毕, nRF905 自动移去 前导码 、地址和 CRC校验位,然后 置高 引脚 DR。 ( 6) MCU 置 TRX_CE 为低电平时 , nRF905 进入 待机 模式。 ( 7) MCU 通过 SPI 口,以一定的速率把数据移到 MCU 内。 ( 8) 当 接收完 所有的数据 时 , nRF905 把引脚 DR 和地址匹配引脚 AM 置 为低 电平。 ( 9) 此时 nRF905 可以进入 ShockBurstTM接收模式、 ShockBurstTM 发送模式或 掉电 模式 基于 nRF905 的无线温度采集系统的设计 18 节能模式 nRF905 的 节能模式包括掉电模式和待机模式。 在掉电模式时, nRF905 工作电流最小,为。 待机模式有利于减小工作电流。 从待机模式到发送模式或接收模式的启动时间较短。 在待机模式时, nRF905 内部的部分晶体振荡器处于工作状态。 nRF905 在待机模式下工作电流与外部晶体振荡器频率有关。 nRF905 的配置 nRF905 内部有若干寄存器,这些寄存器必须经过适当配置,才能使其正常工作。 这些寄存器的配置字都是通过 nRF905 内部的 SPI 接口传送的。 SPI 接口的工作可通过 SPI 指令执行。 只有当 nRF905 处于掉电或待机模式 时, nRF905 的 SPI接口才可以进入工作状态。 nRF905 内部 的 SPI 接口连接有 5 个寄存器,分别是状态寄存器、射频配置寄存器、发送地址寄存器( TX_ADDRESS)、发送数据寄存器( TX_PAYLOAD)和接收数据寄存器( RX_PAYLOAD)。 nRF905 的 SPI 接口有一 组指令用来对 nRF905 内部 的各寄存器进行配置。 只有在 SPI 的片选引脚 CSN 为低时, nRF905 才能 接收一条 SPI 指令,当引脚 CSN 发生由高到低的跳变时, nRF905 才开始接收 一条新的 SPI 指令。 nRF905 硬件电路 在 nRF905 的使用中 ,根据不同要求,其电路图不尽相同,图 为 50Ω 单端天线输出的应用原理图。 该电路的输出,通过一个差分到单端的匹配网络连接到50Ω 的单端天线。 在电路中,电感电容的值是使电路工作在 433MHz 的数据。 基于 nRF905 的无线温度采集系统的设计 19 图 nRF905 应用电路图 基于 nRF905 的无线温度采集系统的设计 20 7 系统的硬件结构 nRF905 无线收发模块 PTR8000 无线收发模块是一款以 nRF905 为核心的无线收发模块,体积小,使用方便。 此模块通过一个 14 引脚的插针为用户提供一个方便的接口, 各引脚功能如图 所示。 此接口与单片机相连,组成使用的无线数传系统这些引脚功能分为3 组。 模式控制信号。 PTR8000 工作模式由 TRX_CE,TX_EN, PWR_UP 来设置。 SPI 接口信号。 由 SCK,MISO,MOSI 和 CSN 信号线组成。 在配置模式时,单片机通过 SPI 接口配置 PTR8000 的工作寄存器;在发射 /接收模式下,单片机通过SPI 接口发送和接收。 状态输出信号。 在发送模式下,地址匹配( AM)和数据准备就绪( DR)信号通知单片机,一个有效地地址和数据包已经接收完成。 在发送模式下, PTR8000自动产生前导码 和 CRC 码, DR 信号通知单片机数据传输已经完成。 PTR8000 中uCLK 引 线就是 nRF905 芯片中的引脚 uPCLK 时钟输出。 图 无线收发模块用户接口 基于 nRF905 的无线温度采集系统的设计 21 系统的硬件电路图 本系统由两套 PTR8000 无线收发模块组成。 在发送的模块上增加了一片DS18B20 数字温度传感器。 由于 nRF905 工作电压在 3V 左右,所以加上 AMS1117稳压芯片使模块输入电压稳定在。 如图 所示。 图 发送部分电路原理图 基于 nRF905 的无线温度采集系统的设计 22 在接收的一套模块上增加了一片由 MAX232 组成的 RS232 串口接口电路,通过此电路与上位机相连。 图 为该部分原理图。 图 接收部分电路原理图 基于 nRF905 的无线温度采集系统的设计 23 8 系统软件设计 前几章完成了该系统的硬件设计,本章将在前几章硬件基础上完成相应的软件设计,实现系统功能。 系统软件 是在 KEIL 开发环境下 采用 C51 语言编写,整个系统软件由初始化模块程序、 温度采集、发送、接收程序 、 上位机显示程序 等构成。 单片机编程 两套模块中,一套用于温度采集,并将温度数据通过无线数传模块发送,另一套负责接收数据并通过串口将数据送入上位机处理。 发送和接收部分的程序流程图分别如图 ( a)和 ( b)所示。 ( a)发送流程 ( b)接收流程 图 系统工作流程图 nRF905 初始化,配置射频寄存器 DS18B20 初始化 读温度数据 写发送地址和数据 发送数据 完成。 NO YES nRF905 初始化,配置射频寄存器 等待接收数据 完成。 发送数据 给上位机 NO YES 基于 nRF905 的无线温度采集系统的设计 24 上位机编程 MSComm 控件 是 Microsoft 提供的 ActiveX 控件,目的是简化 Windows 下串行通信编程。 提供两种处理通信方式,分别是事件驱动方式和查询方式。 在串口通信过程中,当发送数据、收到数据或产生传输错误时,触发 MSComm 控件 OnComm事件,然后通过判断 CommEvent 属性值获得事件类型,根据事件类型进行相应的数据处理。 故用 MSComm 控件实现微机串口的数据通信相当简单 【 8】。 接收部分的单片机通过串口测量数据发给上位机,上位机使用 VB 编的应用程序来处理这些数据,同时将数据显示在上位机屏幕上供用户查看。 VB 应用程序界面如图 所示。 图 上位机 VB 程序界面 程序主要包括四个部分,即温度曲线的显示 、温度数值显示、统计计算和四个按钮处理程序。 实验后的上位机显示数据如图 所示。 基于 nRF905 的无线温度采集系统的设计 25 图 上位机实验显 示 基于 nRF905 的无线温度采集系统的设计 26 9 总结 本文是大棚温度 数据采集 系统,核心的部分就是远程传输温度数据 和实时显示温度变化。 最后实验表明此设计能稳定、高效、直观的显示出温度数据和实时变化,而且使用起来简单方便。 本设计中存在的不足是没有采取多点测量取得平均值的方法,单看一点的温度也许不会精确的显示大棚的温度的实际情况。 在上位机显示温度实时变化的曲线图不够完善,有待改进。 基于射频收发器 nRF905 进行无线通信 , 实现近距离微控制器的无线组网,进行多个大棚温度 数据 采集 、传输与显示 ,这些都是后序可以做的项目。 本设计中, 我不仅学习了 DS18B20 单总线器件的使用、远程传输模块的编程、上位机编程,同时设计了并实现了上述功能。 本设计能较好的测量温度以及在上位机上显示温度变化和历史温度统计数据。 这是我在大学里做的最重要的一个设计,多 达 几个月的思考、学习和制作,导师和同学的帮助都很大。 这不仅使我学习到了硬件电路的设计,还学习了怎么样去调试系统 和软件设计。 这些都是我宝贵的经验和回忆。 基于 nRF905 的无线温度采集系统的设计 27 致谢 此次毕业设计的制作,凝聚了我辛勤的汗水,也注入了老师和同学热情的帮助和无私的奉献。 首先,我要特别感谢我的指导老师 —— 赵波 老师,感谢老师给予我的大力支持和帮助。 从毕业设计的选题、资料的收集、参考书目的推荐到实物的调试和完成直到最后的论文定稿, 赵 老师总是循循善诱的给我指出不足并提出中肯的改善意见。 整个毕业设计期间 赵 老师 对我孜孜不倦的教。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。