NRF24L01 : Arduino 용 무선 통신용 모듈

NRF24L01.

반드시 Arduino 또는 기타 요소를 사용하여 DIY 프로젝트를 만들어야하며 무선 통신. 그리고 그것은 IR, RF, Bluetooth, WiFi 등을 사용하여 전송할 수있는 일종의 모듈 또는 장치를 보유함으로써 발생합니다. 즉, 어떤 유형의 신호가 귀하의 경우에 가장 적합한 지 알아야 할 필요성을 명확히해야합니다.

이 경우 우리는 NRF24L01 가이드 당신을 위해. 신호를 송수신하는 데 필요한 것을 제공하는 무선 통신 칩입니다. 처리하는 신호 유형은 RF 또는 무선 주파수, 즉 파장이 큰 파동이므로 전자기 스펙트럼에서 3Hz에서 300Ghz 사이의 주파수입니다.

NRF24L01은 무엇입니까?

NRF24L01.

El NRF24L01은 Nordic Semiconductor에서 제조 한 칩입니다.. 그 경우 제품이 없습니다., 칩은 필요한 보조 요소와 함께 작은 PCB에 장착되어 모듈을 구성합니다. 나중에 보여 드리 겠지만 Adruino에 연결하는 등 여러 가지 방법으로 사용할 수 있습니다.

이름에서 추론 할 수있는 NRF24L01은 RF 또는 무선 주파수를 사용하는 무선 통신 장치입니다. 2,4Ghz-2,5Ghz. 그것은 무료로 사용할 수있는 무료 밴드입니다. 다른 대역이 예약되어 있다는 것을 이미 알고 있으며 정보를 전송하는 데 사용하려면 비용을 지불해야합니다. 또한 송신기 + 수신기를 통합합니다.

특히 사용할 수있는 주파수 대역은 2.400Mhz ~ 2.525Mhz이며, 125 채널 그들 사이에 1Mhz 공간이 있습니다. 그러나 WiFi 네트워크,이 주파수로 작동하는 드론 등을 사용하거나 간섭이있을 경우 2.4Ghz 주파수를 사용하지 않는 것이 좋습니다. 그렇기 때문에 2.501Mhz 이상에서 사용하는 것이 좋습니다.

그 특성에 관해서는 1.9 ~ 3.6v에서 작동합니다. 따라서 3.3 연결, 배터리 사용 및 해당 전압이있는 전원 공급 장치를 사용하여 Arduino 보드 자체로 쉽게 전원을 공급할 수 있습니다. 또한 250Kbps, 1Mbps 및 최대 2Mbps 사이에서 전송 속도를 구성 할 수 있습니다.

방출 및 수신에있는 칩은 동시에 작동 할 수 있습니다 최대 6 개 연결 다양한 장치의. 이를 통해 문제없이 다른 지점에서 방송하거나 수신 할 수 있습니다. 그리고 통신의 견고성 또는 신뢰성이 염려되는 경우 칩 자체에 데이터 오류를 수정하고 필요한 경우 정보를 전달하는 논리 회로가 있습니다. 따라서이 작업에서 프로세서를 해제합니다.

그것을 제어하기 위해 사용할 수 있습니다 SPI 버스, 그래서 Arduino를 사용한 제어는 매우 간단합니다. 또한 NRF24L01의 데이터 핀은 문제없이 최대 5v를 지원합니다. Stand By의 전력 소비는 매우 낮기 때문에 걱정할 필요가 없으며, 작동 중일 때는 데이터 송수신에 15mA 만 필요하기 때문에 가장 비용이 많이 드는 것은 아닙니다.

시장에서 당신은 몇 가지를 찾을 수 있습니다 NRF24L01 칩을 장착하는 다양한 모듈, 그들은 그들이 가진 보조 요소 또는 일부 세부 사항에서만 변경됩니다. 예를 들어 안테나 유형. 일부는 PCB에 안테나가 약 20-30 미터 범위의 지그재그 모양으로 인쇄되어 있습니다. 다른 사람들은 700m에서 1km까지가는 증폭기가있는 다소 더 강력한 외부 안테나를 인정합니다.

그러나, 실제 범위는 몇 가지 요인에 의해 제한됩니다.도로 장애물, 존재하는 다른 요소 또는 신호의 소음 또는 간섭, 전송 속도, 공급 전압 (높은 전압, 더 먼 거리) 등 예를 들어 2Mbps의 최대 속도로 전송하려는 경우 거리에서 큰 불이익을 받게되며 최대 2 미터 또는 3 미터에 불과합니다. 저속에서는 그 거리를 오를 수 있습니다.

ESP8266
관련 기사 :
ESP8266 : Arduino 용 WIFI 모듈

구매하기 전에 무엇을 알아야합니까?

NRF40L01 안테나

El NRF24L01은 매우 저렴한 칩입니다. 다양한 프로젝트에서 사용할 수 있습니다. 예를 들어, 외부 안테나가없는 경우 최대 € 0.65에 구입할 수 있으며, 외부 안테나 모델은이 모델보다 약간 비싸지 만 여전히 매우 저렴하고 일반적으로 € 1.7을 초과하지 않습니다.

다른 방출 또는 수신 요소가없는 경우, 두 개의 NRF24L01 모듈을 구입해야한다는 것을 이미 알고 있습니다. 그들은 둘 다처럼 행동 할 것입니다 발신자 또는 수신자 원하는대로.

NRF24L01의 핀 배치 및 장착

핀아웃 NRF40L01

조립은 아주 간단합니다. 그만큼 NRF24L01에는 8 개의 핀이 있으므로 핀아웃이 매우 쉽습니다. 이 이미지에서 내가 당신에게 남기는 것을 어떻게 볼 수 있는지 이해합니다. 오른쪽에서 보드의 핀 다이어그램을 볼 수 있습니다. Arduino UNO 그리고 각 모듈의 핀이 어떻게 연결되는지.

추론 할 수 있듯이 접시 NRF24L01은 GND 및 3.3v 핀을 사용하여 전원이 공급됩니다. Arduino에서. 5v 신호로 수행하지 마십시오. 그렇지 않으면 모듈이 손상됩니다.

Arduino와 통합

Arduino (회로)가있는 2 개의 NRF24L01

NRF24L01이 무엇인지, 어떻게 연결하고 전원을 공급할 수 있는지 알게되면,이 저렴한 장치 몇 개로 수행 할 수있는 프로젝트 수 외에도 다음 단계를 보여줍니다. 프로그래밍 예 그래서 Arduino IDE로 실험을 시작할 수 있습니다. 전송할 수있는 데이터 형식은 소스 코드에서 수정할 수 있습니다.

l298n
관련 기사 :
L298N : Arduino 용 모터 제어 모듈

문자열, 정수, 부동 소수점 데이터 등을 보내고 받도록 선택할 수 있습니다. 나는 당신을 추천합니다 Arduino 프로그래밍 가이드 시작하는 경우. 그것으로 첫 번째 프로젝트를 만들 수 있습니다. 그리고 NRF24L01의 구체적인 예로서 여기에 문자열에 필요한 코드.

Arduino IDE에 작성하고 할당하려는 NRF24L01에 연결된 Arduino 보드를 프로그래밍해야하는 코드 송신기:

#include <nRF24L01.h>
#include <RF24.h>
#include <RF24_config.h>
#include <SPI.h>
 
const int pinCE = 9;
const int pinCSN = 10;
RF24 radio(pinCE, pinCSN);
 
// Single radio pipe address for the 2 nodes to communicate.
const uint64_t pipe = 0xE8E8F0F0E1LL;
 
char data[16]="Aquí tu mensaje" ;
 
void setup(void)
{
   radio.begin();
   radio.openWritingPipe(pipe);
}
 
void loop(void)
{
   radio.write(data, sizeof data);
   delay(1000);
}

여기 Arduino IDE에 입력하고 전용 NRF24L01에 연결 한 보드에 기록해야하는 코드는 다음과 같습니다. 리시버:

#포함 <nRF24L01.h>
#포함 <RF24.h>
#include <rf24_config.h>
#include <SPI.h>

const int pince = 9;
const int cencsn = 10;
RF24 라디오 (pinCE, pinCSN);

// 두 노드가 통신 할 단일 무선 파이프 주소입니다.
const uint64_t 파이프 = 0xE8E8F0F0E1LL;

char 데이터 [16];

무효 설정 (무효)
{
Serial.begin (9600);
radio.begin ();
radio.openReadingPipe (1, 파이프);
radio.startListening ();
}

무효 루프 (무효)
{
if (radio.available ())
{
int done = radio.read (데이터, 데이터 크기);
Serial.println (데이터);
}
}

그것으로 당신은 당신이 필요로하는 모든 것을 갖게 될 것이고 당신은 하나의 단어 나 문자열을 보내고 다른 사람이 어떻게 받는지 볼 수 있습니다.. USB로 Arduino 보드에 연결된 두 대의 컴퓨터를 사용하여 데이터를 보는 수단으로 콘솔을 사용합니다. 가지고있는 모듈 또는 제공 한 구성에 따라 신중한 거리를 분리하면 다른 컴퓨터의 화면에서 첫 번째 코드에 입력 한 문자가 표시되기 시작합니다.


코멘트를 남겨주세요

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   스테판

    안녕 아이작
    arduino, rasberry 또는 다른 것으로 프로젝트를 완료하고 싶습니다.
    설명 할 이메일 연락처를 줄 수 있습니까?
    광산- a01b02@abv.bg.
    감사합니다