Obsah:

Bezdrátový přenos NRF24L01 mezi Arduino: 10 kroků
Bezdrátový přenos NRF24L01 mezi Arduino: 10 kroků

Video: Bezdrátový přenos NRF24L01 mezi Arduino: 10 kroků

Video: Bezdrátový přenos NRF24L01 mezi Arduino: 10 kroků
Video: Sítě - 3 Bezdrátové sítě 2024, Červenec
Anonim
Bezdrátový přenos NRF24L01 mezi Arduino
Bezdrátový přenos NRF24L01 mezi Arduino

NRF24L01 je nízkoenergetický bezdrátový RF modul 2,4 GHz od společnosti Nordic Semiconductors. Může pracovat s přenosovými rychlostmi od 250 kbps do 2 Mbps. Pokud je provozován v otevřeném prostoru s nižší přenosovou rychlostí, může dosáhnout až 300 stop. Používá se tedy v aplikacích krátkého dosahu, jako je domácí automatizace, hračky, herní ovladače a další.

Modul NRF24L01 může data přenášet i přijímat. Pro komunikaci s mikrokontroléry používá protokol SPI. Proto můžete modul používat s Arduino na komunikačních pinech SPI. Uvidíme, jak propojit tento modul s Arduinem a ovládat LED z jiného Arduina. S rozestupem 1 Mhz v provozním rozsahu 2400 Mhz - 2525 Mhz (2,40 GHz - 2,525 GHz) může poskytnout možnost mít síť 125 nezávisle pracujících modemů ve stejné oblasti. Každý kanál může mít až 6 adres a může komunikovat až s 6 dalšími jednotkami současně.

Krok 1: Vlastnosti NRF24L01

Funkce:

  • Provozní napětí: 9V až 3,6V
  • Napájecí napětí: 3V
  • Pin napětí: 5V tolerantní (není potřeba pro převodníky úrovní)
  • Levný jednočipový 2,4GHz RF transceiver IC GFSK
  • Provozní dosah (otevřený prostor): 300 stop (pomocí externí antény se může zvýšit až na 3000 stop)

V tomto tutoriálu budeme odesílat a přijímat data pomocí dvou nastavení modulu NRF24L01. Jedno nastavení je pro stranu vysílače a druhé pro stranu přijímače. Příkazy odesíláme jako řetězec „ON“(jakákoli zpráva, kterou chcete odeslat) na straně vysílače, na straně přijímače vytiskneme stejnou zprávu na sériový monitor, která byla odeslána z druhé strany.

Chcete -li se dozvědět, jak vytvořit projekt hlídání dětí pomocí NRF24L01 - navštivte zde

Krok 2: Předpoklady

Požadované součásti:

  • Arduino Uno - 2 nos. (Lze použít i Nano)
  • Bezdrátový RF modul NRF24L01 - 2 nosné propojovací vodiče

Knihovny:

  • Knihovna RF24 -
  • Knihovna SPI

Krok 3: Připnutí podrobností

Podrobnosti o pinu
Podrobnosti o pinu
  1. GND - Ground
  2. VCC - napájecí zdroj 3,3 V (1,9 V až 3,6 V)
  3. CE - Chip Enable
  4. CSN - Chip Select Not
  5. SCK - Sériové hodiny pro sběrnici SPI
  6. MOSI - Master Out Slave In
  7. MISO - Master in Slave Out
  8. IRQ - Interrupt Pin (aktivní low)

Modul spotřebovává 1,9 V až 3,6 V, ale kolíky zvládají tolerovat až 5 V.

Krok 4: SPI připojení pro různé desky

Pokud používáte Arduino Uno, Pro Mini, Nano nebo Pro Micro, pak jsou piny SPI stejné jako následující schéma zapojení. Pokud používáte Arduino Mega, zkontrolujte piny SPI, které jsou mapovány odlišně podle hardwarového designu. Zde se podívejte na referenční stránku knihovny SPI, kde najdete různé piny SPI na různých typech desek. Desky Arduino mají navíc samostatné ICSP záhlaví kompatibilní s Sheilds.

Krok 5: Obvod na straně vysílače a na straně přijímače je pro tento příklad stejný

Obvod na straně vysílače a na straně přijímače je pro tento příklad stejný
Obvod na straně vysílače a na straně přijímače je pro tento příklad stejný

Obvod na straně vysílače a na straně přijímače je v tomto příkladu stejný.

Krok 6: Kód - strana vysílače:

Krok 7: Přijímač

Obvod přijímače je stejný jako obvod našeho vysílače v našem projektu. Proveďte připojení podle obvodu vysílače a nezapomeňte nahrát správný kód pro přijímač.

Krok 8: Kód přijímače:

Krok 9: Vysvětlení:

Popis:

NRF24l01 může fungovat jako vysílač a přijímač. Ve výše uvedeném kódu na straně vysílače odešleme text „ZAPNUTO“a to samé se zobrazí na straně přijímače prostřednictvím sériového monitoru a rozsvítí LED připojenou na pinu 4. NRF24l01 lze identifikovat podle jeho adresy. Je uvedeno v číselném řetězci. Použili jsme

adresa konstantního bajtu [6] = "00001";

Zde jsme jako adresu použili „00001“. K nastavení adresy můžete přiřadit libovolný řetězec čísel. Data jsou odesílána prostřednictvím čtecího/zapisovacího kanálu na NRF24l01. Jedná se o dočasnou vyrovnávací paměť, která uchovává data k odeslání nebo přijetí.

Vysílač - zápis dat do potrubí:

radio.openWritingPipe (adresa);

Přijímač - čtení dat z potrubí:

radio.openReadingPipe (0, adresa);

Toto je jednoduché nastavení vysílání a příjmu pro modul NRF. Alternativně můžete odesílat data senzorů ze strany vysílače a podle hodnot senzorů můžete provádět některé akce na straně přijímače.

Krok 10: Projekt sledování dítěte pomocí NRF24L01

Rozšířená verze tohoto tutoriálu je popsána v našem blogu. Vytvořte projekt hlídání dětí pomocí modulu NRF24L01.

Navštivte náš blog s názvem „Projekt sledování dítěte pomocí tohoto modulu NRF24L01“.

Další návody najdete na blogu FactoryForward

Nakupujte online v FactoryForward India (Raspberry Pi, Arduino, Senzory, Robotické díly, Sady pro kutily) a dalších.

Doporučuje: