风筝
发表于: 2020-2-24 15:03:34 | 显示全部楼层

在本篇文章中,我们将主要介绍如何使用nRF24L01收发器模块在Arduino开发板和NodeMCU ESP8266模块之间进行无线通信,然后将数据上传到Thingspeak服务器,也就是实现ESP8266 nRF24L01 Wifi网关和Arduino nRF24L01节点。


在发送器端,我们将DHT11湿度和温度传感器连接到Arduino开发板,同时连接nRF24L01收发器模块。在接收器端,我们将NodeMCU ESP8266-12E开发板与nRF24L01收发器模块连接,以实现无线显示温度和湿度数据。传感器的湿度和温度数据将上传到Thingspeak服务器上。


所需的组件:

●    Arduino Uno开发板

●    DHT11湿度和温度传感器

●    nRF24L01模块

●    NodeMCU的ESP8266-12E

●    连接跳线

●    面包板


nRF24L01 – 2.4GHz射频收发器模块:

nrf24l01-module.jpg

这些RF模块在Arduino创客中非常受欢迎。 nRF24L01模块可用于需要无线控制的各种应用中。它们是收发器,这意味着每个模块都可以发送和接收数据。这些模块非常便宜,您可以将它们与任何微控制器(MCU)一起使用。


nRF24L01模块的规格:

●    低成本单芯片2.4GHz GFSK RF收发器IC

●    带天线的范围:250Kb速率(开放区域)> 1000米

●    功耗:超低功耗

●    输入电压:3.3V

●    引脚:5V耐压


nRF24L01模块的引脚排列:

NRF24L01-Pinouts.jpg


nRF24L01模块的工作过程:

该模块使用2.4 GHz频段,并且可以以250 kbps至最高2 Mbps的波特率运行。如果在开放空间中使用且波特率较低,则其范围可达1000米。

NRF24L01-Working-Principles-of-Channels-and-Addresses.png


该模块可以使用125个不同的通道,这使在一个地方拥有125个独立工作的调制解调器的网络成为可能。每个通道最多可以有6个地址,或者说每个单元可以同时与最多6个其他单元通信。


电路原理图和硬件连接:

在本文中,我们需要组装两个电路,以使用nRF24L01收发器模块在Arduino板和NodeMCU之间进行无线通信,并将数据上传到Thingspeak服务器上。下面显示的第一个电路图是发送器端部。如下图所示组装电路。它由Arduino Uno、nRF24L01和DHT11湿度和温度传感器组成。


以下是Arduino与NRF24L01的引脚连接:

●    MISO连接到Arduino UNO的引脚12

●    MOSI连接到Arduino UNO的引脚11

●    SCK连接到Arduino UNO的引脚13

●    CE连接到Arduino UNO的引脚8

●    CSN连接到Arduino UNO的引脚9

●    NRF24L01的GND和VCC分别连接到Arduino UNO的GND和3.3V

RX-Circuit.jpg


下面显示的第二个电路图是接收器端部分。如下图所示组装电路。它由NodeMCU ESP8266-12E WiFi模块和nRF24L01组成。

TX-Circuit.jpg


源代码/程序:

首先下载这些库并添加到Arduino IDE开发环境中:

1.  Radiohead NRF24L01库

2.  iDHT11库


发送器代码:Arduino NRF24L01节点

Arduino-DHT11-NRF24L01.jpg

接收器代码:ESP8266 NRF24L01网关

interface-nrf24l01-with-NodeMCU.jpg


Thingspeak设置和数据上传:

1.  访问https://thingspeak.com/,如果没有账户请先创建。登录到您的帐户。

2.  创建一个新频道。使用温度和湿度作为参数。输入频道的基本详细信息。然后向下滚动并保存频道。

3.  然后转到API密钥,将此密钥复制并粘贴到NodeMCU代码中。


因此,代码上传后,您就可以在Thingspeak频道上看到湿度和温度数据。

2.png

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 700 | 回复: 1480



手机版|

GMT+8, 2024-4-26 21:21 , Processed in 0.055864 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表