V tomto příspěvku se chystáme postavit bezdrátový kancelářský volací zvon, který může být použit pro volání 6 různých pracovníků ze stolu vedoucího / šéfa nebo jiného zábavného projektu volajícího zvonku pro váš domov.
Použití modulu 2,4 GHz nRF24L01
Budujeme konstrukci jednoduchého bezdrátového volacího zvonku využívajícího Arduino a nRF24L01 2,4 GHz modul, který může pracovat kolem vašeho domova nebo kanceláře bez jakýchkoli problémů a problémů s pokrytím.
Navrhovaný obvod může být napájen z 5V adaptéru pro smartphone nebo z levného 5V adaptéru, který udržuje váš obvod naživu a připraven slyšet vaše volání.
Podívejme se na přehled Modul nRF24L01 2,4 GHz .
Výše uvedený čip se nazývá modul nRF24L01. Jedná se o duplexní (obousměrný) komunikační obvod navržený pro mikrokontroléry a jednodeskové počítače, jako je Raspberry Pi.
Využívá frekvenci 2,4 GHz, což je pásmo ISM (průmyslové, vědecké a lékařské pásmo), což je stejná frekvence používaná při Wi-Fi komunikaci.
Může přenášet nebo přijímat data rychlostí 2 Mb / s, ale v tomto projektu je přenos a příjem omezen na 250 kb / s kvůli nižším požadavkům na data a snížení datové rychlosti povede ke zvýšení celkového rozsahu.
Při špičkovém přenosu dat spotřebovává pouze 12,3 mA, což činí zařízení přátelské k baterii. Pro komunikaci s mikrokontrolérem využívá protokol SPI.
Má dosah vysílání / příjmu 100 metrů bez překážek a dosah přibližně 30 metrů s nějakou překážkou.
Tento modul najdete na populárních stránkách elektronického obchodování, také ve vašem místním obchodě s elektronikou.
Poznámka: Modul může pracovat od 1,9 do 3,6 V, palubní regulátor na Arduinu může poskytnout 3,3 V pro modul. Pokud připojíte terminál Vcc nRF24L01 k 5V výstupu Arduino, bude to mít za následek poruchu modulu. Je tedy třeba postupovat opatrně.
To je krátký úvod do modulu nRF24L01.
Prozkoumejme podrobnosti schématu zapojení:
Obvod dálkového ovládání:
Dálkové ovládání bude u šéfa nebo vedoucího kanceláře.
Dálkový ovladač se skládá z Arduino nano, mimochodem, můžete použít libovolnou desku Arduino, 6 tlačítek pro vyzvánění šesti různých přijímačů, modul nRF24L01 a LED pro potvrzení stisknutí tlačítka.
Můžete jej napájet z 9V baterie nebo z 5V adaptéru. V případě baterie byste měli tento dálkový ovladač po hovoru vypnout.
Nyní se podívejme na kód. Než si budete muset stáhnout soubor knihovny, pak se kód kompiluje.
Odkaz: github.com/nRF24/RF24.git
Kód pro dálkové ovládání:
// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//
#include
#include
RF24 radio(9, 10)
const byte address_1[6] = '00001'
const byte address_2[6] = '00002'
const byte address_3[6] = '00003'
const byte address_4[6] = '00004'
const byte address_5[6] = '00005'
const byte address_6[6] = '00006'
const int input_1 = A0
const int input_2 = A1
const int input_3 = A2
const int input_4 = A3
const int input_5 = A4
const int input_6 = A5
const int LED = 2
const char text[] = 'call'
void setup()
{
pinMode(input_1, INPUT)
pinMode(input_2, INPUT)
pinMode(input_3, INPUT)
pinMode(input_4, INPUT)
pinMode(input_5, INPUT)
pinMode(input_6, INPUT)
pinMode(LED, OUTPUT)
digitalWrite(input_1, HIGH)
digitalWrite(input_2, HIGH)
digitalWrite(input_3, HIGH)
digitalWrite(input_4, HIGH)
digitalWrite(input_5, HIGH)
digitalWrite(input_6, HIGH)
radio.begin()
radio.setChannel(100)
radio.setDataRate(RF24_250KBPS)
radio.setPALevel(RF24_PA_MAX)
radio.stopListening()
}
void loop()
{
if (digitalRead(input_1) == LOW)
{
radio.openWritingPipe(address_1)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_2) == LOW)
{
radio.openWritingPipe(address_2)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_3) == LOW)
{
radio.openWritingPipe(address_3)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_4) == LOW)
{
radio.openWritingPipe(address_4)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_5) == LOW)
{
radio.openWritingPipe(address_5)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_6) == LOW)
{
radio.openWritingPipe(address_6)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
}
// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//
Tím je dálkový ovladač / vysílač ukončen.
Nyní se podívejme na přijímač.
Obvod přijímače:
POZNÁMKA: Podle svých potřeb můžete vyrobit jeden nebo šest přijímačů.
Přijímač se skládá z desky Arduino, modulu nRF24L01 a bzučáku. Na rozdíl od dálkového ovladače by měl být přijímač napájen z 5V adaptéru, abyste nebyli závislí na bateriích, které se vybijí během několika dní.
Nyní se podívejme na kód pro přijímač:
Programový kód pro přijímač
// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//
#include
#include
RF24 radio(9, 10)
const int buzzer = 2
char text[32] = ''
// ------- Change this ------- //
const byte address[6] = '00001'
// ------------- ------------ //
void setup()
{
Serial.begin(9600)
pinMode(buzzer, OUTPUT)
radio.begin()
radio.openReadingPipe(0, address)
radio.setChannel(100)
radio.setDataRate(RF24_250KBPS)
radio.setPALevel(RF24_PA_MAX)
radio.startListening()
}
void loop()
{
if (radio.available())
{
radio.read(&text, sizeof(text))
digitalWrite(buzzer, HIGH)
delay(1000)
digitalWrite(buzzer, LOW)
}
}
// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//
POZNÁMKA:
Pokud se chystáte vytvořit více než jeden přijímač pro tento zvonkový systém pro kancelářské volání, měli byste změnit zmíněnou hodnotu na postupném sestavení přijímače a nahrát kód.
U prvního přijímače (není třeba nic měnit):
// ------- Změnit toto ------- //
const byte adresa [6] = '00001' a nahrát kód.
// ------------- ------------ //
U druhého přijímače (musíte změnit):
const byte adresa [6] = '00002' a nahrát kód.
U třetího přijímače (musíte změnit):
const byte adresa [6] = '00003' a nahrát kód.
A tak dále …… .. až „00006“ nebo šestý přijímač.
Když stisknete „S1“ na dálkovém ovladači, přijímač s adresou „00001“ bude reagovat / bzučet.
Když stisknete „S2“ na dálkovém ovladači, přijímač s adresou „00002“ bude reagovat / bzučet.
A tak dále……
Tím jsou uzavřeny podrobnosti obvodu přijímače.
Pokud máte více otázek, neváhejte je vyjádřit v sekci komentářů, pokusíme se vám brzy odpovědět s odpovědí
Předchozí: Obvod testeru dálkového ovládání Další: Jak vyrobit obvody převaděče Simple Boost