- Vysielačka pomocou RF modulu nRF24L01
- Pre Walkie Talkie založené na Arduine je potrebný komponent
- Schéma zapojenia vysielačky Arduino
- Vysielačka Arduino Code
Žijeme v ére zariadení s podporou 5G a 5G; staré technológie ako systém vysielačky a vysokofrekvenčný komunikačný systém sú však stále prvoradé v scenároch, v ktorých sa vyžaduje vzdialená komunikácia na krátku vzdialenosť, lacná a lacná komunikácia. Napríklad ak máte stavebnú spoločnosť alebo spoločnosť zaoberajúcu sa výstavbou ťažkých ložísk, potom vaši pracovníci musia navzájom komunikovať, aby zaistili koordinovanú prácu. Pomocou vysielačky môžu navzájom komunikovať a šíriť krátku masáž alebo pokyny jednoduchým stlačením tlačidla „PTT“ na odovzdanie hlasu ostatným pracovníkom, aby ich mohli počúvať a postupovať podľa nich. Ďalšia aplikácia by mohla byť v inteligentných prilbáchna komunikáciu medzi skupinou jazdcov počas dlhej jazdy môže navrhovaný model komunikovať medzi šiestimi ľuďmi naraz. Ak sa chcete pozrieť na ďalšie typy bezdrôtových zvukových prenosov krátkeho dosahu, navštívte pomocou odkazov projekt bezdrôtového zvukového vysielača založený na IR a Li-Fi zvukový vysielač.
Vysielačka pomocou RF modulu nRF24L01
Hlavnou súčasťou tohto projektu je modul RF NRF24L01 a Arduino Uno, čo je mozog alebo procesor. Už sme sa naučili, ako prepojiť Nrf24L01 s Arduinom diaľkovým ovládaním servomotora. Pre tento projekt je zvolený RF modul NRF24L01, pretože má oproti digitálnemu komunikačnému médiu niekoľko výhod. Má 2,4 GHz veľmi vysokofrekvenčné pásmo ISM a dátový tok môže byť 250 kb / s, 1 Mb / s, 2 Mb / s. Má 125 možných kanálov medzi rozstupom 1 MHz, takže modul môže používať 125 rôznych kanálov, čo umožňuje mať na jednom mieste sieť 125 nezávisle pracujúcich modemov.
Najdôležitejšie je, že signály NRF24L01 sa neprekrývajú ani neprechádzajú cez iné systémy s vysielačkou, ako sú policajné vysielačky a železničné vysielačky, a neruší ostatné vysielačky. Jeden modul nrf24l01 môže komunikovať s ostatnými 6 modulmi nrf24l01 v čase, keď sú v prijímacom stave. Jedná sa tiež o modul s nízkou spotrebou energie, ktorý je ďalšou výhodou. Existujú dva typy modulov NRF24L01, ktoré sú široko dostupné a bežne používané, jeden je NRF24L01 + a druhý je NRF24L01 + PA + LNA (zobrazený nižšie) so zabudovanou anténou.
NRF24L01 + má palubný anténu a iba 100 metrov Rozsah. Je vhodný iba na vnútorné použitie a nie je vhodný na vonkajšiu diaľkovú komunikáciu. Navyše, ak je medzi vysielačom a prijímačom stena, prenos signálu je veľmi zlý. NRF24L01 + PA + LNA s externá anténa má PA, ktorý zvyšuje silu signálu pred prenosom. LNA je skratka pre Low Noise Amplifier. Je jasný, filtruje šum a zvyšuje extrémne slabú a neistú nízku úroveň signálu prijímaného z antény. Pomáha vytvárať užitočné úrovne signálu a má 2 dB externú anténu, cez ktorú môže vysielať 1 000 metrov pokrytia dosahom vo vzduchu, takže je ideálny pre naše vonkajšie komunikačné komunikačné projekty.
Pre Walkie Talkie založené na Arduine je potrebný komponent
- NRF24L01 + PA + LNA s externou 2DB anténou (2 ks)
- Arduino UNO alebo ľubovoľná verzia Arduina
- Audio zosilňovač (2ks)
- Obvod mikrofónu: Môžete si ho vyrobiť sami (diskutované neskôr) alebo si kúpiť modul zvukového senzora.
- Modul zosilňovača zosilnenia DC na DC (2ks)
- Modul regulátora napätia 3,3 V AMS1117
- Indikátor napájania LED (2ks)
- Odpor 470 ohmov (2ks)
- 4-palcový reproduktor (2ks)
- tlačidlo (pre tlačidlo PTT)
- 104 PF na výrobu tlačidla PTT (2ks)
- 100 NF kondenzátor pre NRF24L01 (2ks)
- Odpor 1k pre tlačidlo PTT (2ks)
- 2 sady lítium-iónovej batérie
- Li-ion batéria a ochranný modul batérie (2ks)
- Niektoré prepojovacie vodiče, kolík zástrčky, bodkovaná vero doska
Schéma zapojenia vysielačky Arduino
Kompletná schéma zapojenia pre vysielačku Arduino je zobrazená na obrázku nižšie. Schéma zapojenia zobrazuje všetky pripojenia vrátane tlačidla PTT, obvodu mikrofónu a stereofónneho zvukového výstupu.
Dôležité: Rozsah vstupného napätia modulu NRF24L01 je 1,9 V až maximálne 3,6 voltov a pre stabilitu napätia a prúdu musíte použiť kondenzátor 100nf do + VCC a - GND, ďalšie piny modulu nrf24l01 však môžu tolerovať 5-voltový signál. úrovniach.
Krok 1: Začal som s výrobou domácej vlastnej PCB a dosky Arduino Atmega328p. Dal som IC Atmega328p na programátor a blikal som ho a potom som nahral kód. Potom som pridal 16 MHz kryštál na Atmega328p IC na (PB6, PB7) kolíky 9 a 10. Obrázky môjho PCB na mieru a zostavenej dosky s programovaným IC sú uvedené nižšie.
Krok 2: Pripojil som moduly NRF24L01 podľa schémy zapojenia v nasledujúcom poradí. CE na digitálny pin číslo 7, CSN na pin číslo 8, SCK na digitálny pin 13, MOSI na digitálny pin 11, MISO na digitálny pin 12 a IRQ na digitálny pin 2.
Pri napájaní musíte pri dobrej stabilite prúdu najskôr znížiť napätie z 5 voltov na 3,3 V. Tiež musíte vložiť 100nF kondenzátor na VCC a uzemnenie modulu nrf24l01. Použil som teda AMS1117, čo je regulátor napätia 3,3 V, modul tiež zmenší veľkosť vášho projektu a urobí ho kompaktným.
Ak si chcete vyrobiť túto dosku regulátora napätia sami, môžete si kúpiť iba 3,3-voltový regulátor IC a môžete ju vyrobiť pridaním niektorých čiapočiek, odporu na vstupe a výstupe, pretože pre váš RF modul je to veľmi dôležité, pretože ide o citlivé zariadenie. Alebo môžete použiť regulátor variabilného napätia LM317 na zostavenie regulovaného obvodu 3,3 V, ako sme to urobili v projekte napájacieho zdroja Breadboard.
Krok 3: Môžete si kúpiť zvukový senzor alebo vytvoriť jednoduchý obvod mikrofónu, ako je znázornené na schéme zapojenia. Skladá sa iba z jedného tranzistora - tranzistor 2N3904 NPN. Na nasledujúcom obrázku je znázornený domáci obvod mikrofónu zabudovaný na doske Vero. Môžete tiež skontrolovať tento jednoduchý obvod predzosilňovača zvuku, kde získate ďalšie informácie.
Pre lepšie pochopenie som urobil ďalšie znázornenie celého spojenia s hodnotami komponentov, ako vidíte nižšie
Krok 4: Pre pripojenie digitálneho kolíka mikrokontroléra číslo 9 a 10 k zvukovému zosilňovaču som použil stereofónny zvukový zosilňovač PAM8403, pretože zvukový výstup Arduino je predvolene veľmi nízky (zvuk obvykle počujete iba pomocou slúchadiel., nie reproduktor, takže potrebujeme zosilňovací stupeň). Modul dokáže ľahko ovládať dva reproduktory notebooku a je k dispozícii za veľmi nízku cenu. Dodáva sa tiež s veľmi výkonným zvukovým zosilňovačom v balení SMD, ktoré vyžaduje veľmi málo miesta. Modul zosilňovača zvuku PAM8403 je uvedený nižšie.
Zloženie: 100% bavlna.Pripojenie je veľmi jednoduché, na napájanie zvukového zosilňovača je potrebný napájací zdroj 3,7 V až 5 V. Ľavý kanál a pravý kanál audio vstupu z pinov Arduino 9 a 10 spolu s uzemňovacím pinom by mali byť dané ako vstup pre tento zosilňovačový modul, ako je znázornené na schéme zapojenia. V mojom prípade som použil jeden 4 palcový 8 ohmový reproduktor a použil som iba výstup pravého kanálu. Ak chcete, môžete s týmto modulom použiť dva reproduktory.
Krok 5: Ďalej som pomocou jednoduchého tlačidla zostavil prepínač PTT. Pridal som kondenzátor 104PF alebo 0,1uf, aby som zabránil poskakovaniu spínača alebo chybným signálom pri stlačení spínača. Pin 4 je teraz priamo spojený s digitálnym pinom Arduino D3, pretože kódovaniu je priradený prerušený pin.
NRF24L01 + PA + LNA pri prenose zvukového signálu alebo DATA paketov spotrebuje viac energie, a preto spotrebuje viac prúdu. Ak náhle stlačíte tlačidlo PTT, zvyšuje sa spotreba energie. Na zvládnutie tohto náhle zvýšeného zaťaženia musíte použiť kondenzátor 100nF na + vcc a Ground pre stabilitu prenosu modulu NRF24L01 + PA + LNA.
Po stlačení spínača dostane doska Arduino na svojom kolíku D3 prerušenie Arduino. V programe budeme deklarovať digitálny pin 3 Arduina, ktorý neustále kontroluje svoje vstupné napätie. Ak je vstupné napätie nízke, udržuje vysielačku v prijímacom režime a ak je digitálny kolík číslo 3 vysoký, prepína vysielačku do režimu vysielania na vysielanie hlasového signálu zachyteného procesom mikrofónu cez mikrokontrolér a vysielanie cez NRF24L01 + PA + LNA s externou anténou.
Krok 6: Ako napájací zdroj som vybral túto lítium-iónovú batériu. Na napájanie všetkých komponentov, ako sú Arduino IC Atmega328p, NRF24L01 + PA + LNA, zvukový zosilňovač, tlačidlo PTT a obvod mikrofónu, som pre tento projekt použil 2 sady lítium-iónových batérií, ako je uvedené nižšie.
Dobrý článok má úroveň napätia 3,8 až 4,2 voltov a nabíjacie napätie je iba 4 až 4,2 voltov. Ak sa chcete dozvedieť viac informácií o lítiových batériách, môžete si prečítať prepojený článok. Tieto batérie sa veľmi populárne používajú v prenosných elektronických zariadeniach a elektrických vozidlách. Ale články Li-ion nie sú také robustné ako iné batérie, potrebujú ochranu pred príliš rýchlym prebitím a vybitím, čo znamená, že nabíjací / vybíjací prúd a napätie by sa mali udržiavať v bezpečných medziach. Preto som použil najviac vrtuľový Li-ion nabíjací modul batérie - TP4056. Tento modul sme v minulosti používali na zostavenie prenosnej powerbanky. Viac podrobností nájdete na tejto doske.
Krok 7: Použil som zosilňovací modul zosilňovača 2 A na DC, pretože Arduino atmega328p, zvukový zosilňovač, obvod mikrofónu, tlačidlo PTT všetko potrebuje 5 voltov, ale moja batéria môže dodávať iba 3,7 V až 4,2 V, takže potrebujem zosilňovač dosiahnuť 5 V s viac ako 1 A stabilného výstupného výkonu.
Po zostavení obvodu ho môžete zostaviť do malého krytu. Použil som plastovú skrinku a umiestnil som svoje obvody tak, ako je to znázornené na obrázku nižšie
Vysielačka Arduino Code
Kompletný program pre vašu vysielačku Arduino nájdete v spodnej časti tejto stránky. V tejto časti poďme diskutovať o tom, ako program funguje. Predtým, ako sa tam dostanete, musíte zahrnúť niektoré knižnice, ktoré sú uvedené nižšie.
- Knižnica nRF24
- Zvuková knižnica nRF24
- Knižnica Maniaxbug RF24
Programovanie začnite zahrnutím hlavičiek rozhlasovej a zvukovej knižnice, ako je uvedené nižšie
#include
Inicializujte RF rádio na pinoch 7 a 8 a nastavte číslo audio rádia na 0. Inicializujte tiež tlačidlo ppt na pin 3.
Rádio RF24 (7,8); // Nastavte rádio pomocou pinov 7 (CE) 8 (CS) RF24Audio rfAudio (radio, 0); // Nastavte zvuk pomocou rádia a nastavte na rádio číslo 0 int talkButton = 3;
Vo vnútri funkcie nastavenia začnite sériový monitor s ladením 115 200 baudov. Potom inicializujte pripojenie tlačidla ppt k pólu 3 ako prerušovacieho kolíka.
void setup () {Serial.begin (115200); printf_begin (); radio.begin (); radio.printDetails (); rfAudio.begin (); pinMode (talkButton, INPUT); // nastaví prerušenie na kontrolu tlačidiel talk abutton stlačte attachInterrupt (digitalPinToInterrupt (talkButton), talk, CHANGE); // nastaví predvolený stav pre každý modul na príjem rfAudio.receive (); }
Ďalej máme funkciu nazvanú talk (), ktorá sa volá ako reakcia na prerušenie. Program kontroluje stav tlačidla, ak je stlačené a podržané tlačidlo, čím sa prepne do režimu vysielania na odoslanie zvuku. Ak sa tlačidlo uvoľní, prepne sa do režimu príjmu.
void talk () {if (digitalRead (talkButton)) rfAudio.transmit (); else rfAudio.receive (); } void loop () {}
Kompletné fungovanie tohto projektu nájdete vo videu, na ktoré odkazujete nižšie. Vysielačka vysiela počas prevádzky určitý hluk, čo je hluk z nosnej frekvencie modulu nRF24L01. Dá sa to znížiť použitím dobrého zvukového senzora alebo modulu mikrofónu. Ak máte akékoľvek otázky týkajúce sa tohto projektu, môžete ich zanechať v sekcii komentárov nižšie. Môžete tiež použiť naše fóra na rýchle odpovede na vaše ďalšie technické dotazy.