Tranzistori za prijemnik sa frekvencijom od 433 MHz. Komplet za kućnu radio kontrolu na bazi telefonske slušalice (433 MHz)

Jednostavno rješenje za vaš zadatak!

Je dostupno

Kupujte na veliko

Specifikacije

Radna frekvencija (MHz) 433
Vrsta snage konstantan
Broj ulaza (kom) 1
Broj izlaza (kom) 1
Preporučena radna temperatura (°C) -15...+60
Napon napajanja prijemnika (V) 5
Napon napajanja predajnika (V) 12
Težina, ne više (g) 20
Potrošnja struje prijemnika (mA) 1,5
Potrošnja struje predajnika (mA) 10
Ulazna osjetljivost (µV) 1,5
Domet (m) 100
Dužina prijemnika (mm) 19
Dužina predajnika (mm) 30
Izlazna snaga predajnika (mW) 10
Nivo unosa podataka predajnika (V) 5
Nivo izlaza podataka prijemnika (V) 0,7
Širina predajnika (mm) 15
Visina predajnika (mm) 10
Širina prijemnika (mm) 19
Visina prijemnika (mm) 10
Težina 22

Šema

Korištenje kompleta bez korištenja mikrokontrolera.

Sadržaj isporuke

  • Ploča predajnika - 1 kom.
  • Prijemna ploča - 1 kom.
  • Uputstvo - 1 kom.

Šta je potrebno za montažu

  • Za povezivanje će vam trebati: žica, lemilo, bočni rezači.

pravila korištenja

  • Temperatura - -15C do +50C kom.
  • Relativna vlažnost - 20-80% bez kondenzacije kom.

Mere predostrožnosti

  • Nemojte prekoračiti maksimalno dozvoljeni napon napajanja za prijemnik i predajnik.
  • Nemojte brkati polaritet napajanja prijemnika i predajnika.
  • Nemojte prekoračiti maksimalnu struju izlaza prijemnika.
  • Nepoštivanje ovih zahtjeva rezultirat će kvarom uređaja.

Pitanja i odgovori

  • Da li je moguće kupiti više prijemnika za jedan predajnik? Ako u prostoriji ima nekoliko prijemnika, hoće li svi biti aktivirani jednim predajnikom?
    • 1. Možete. 2. Hoće.
  • Mogu li kontrolisati prijemnik pomoću jednog od ponuđenih daljinskih upravljača od 433 MHz?
    • Moguće je, ali da bi se izbjegli lažni rezultati, potrebno je iza prijemnika ugraditi mikrokontroler i programirati ga na kupljeni dodatni daljinski upravljač.
  • Dobar dan Da li je moguće na ovom uređaju smanjiti domet na 30 cm?
    • Nismo probali do 30 cm. Ali domet se prilagođava smanjenjem dužine antene na prijemniku i predajniku.
  • Dobar dan, molim vas da mi kažete da li se ovaj set prijemnika i predajnika može programirati ili su to analogni uređaji.
    • Ovo su analogni uređaji. Dizajniran da radi zajedno sa mikrokontrolerom.
  • Jednostavan za povezivanje. U pitanju su moduli, za razliku od nRF24L01+, napajani su naponom od 5 V.
  • Dostupnost. Radio module proizvode mnogi proizvođači, u različitim izvedbama i zamjenjivi su.
  • Nedostaci:

    • Na frekvenciji od 433,920 MHz rade i mnogi drugi uređaji (radio lusteri, radio utičnice, radio privjesci, radio modeli itd.), koji mogu "zaglaviti" prijenos podataka između radio modula.
    • Nedostatak povratnih informacija. Moduli su podijeljeni na prijemnik i predajnik. Dakle, za razliku od nRF24L01+ modula, prijemnik ne može poslati signal potvrde predajniku.
    • Mala brzina prenosa podataka, do 5 kbit/sec.
    • MX-RM-5V prijemnik je kritičan čak i za male talase na sabirnici napajanja. Ako Arduino kontroliše uređaje koji unose čak i male, ali konstantne talase u sabirnicu napajanja (servos, LED indikatori, PWM, itd.), tada prijemnik ove talase smatra signalom i ne reaguje na radio talase od predajnika. Učinak mreškanja na prijemnik može se smanjiti na jedan od sljedećih načina:
      • Koristite vanjski izvor za napajanje Arduino, a ne USB sabirnicu. Pošto je izlazni napon mnogih eksternih izvora napajanja kontrolisan ili uglađen. Za razliku od USB magistrale, gdje napon može značajno "opasti".
      • Instalirajte kondenzator za izravnavanje na magistralu napajanja prijemnika.
      • Koristite zasebno stabilizirano napajanje za prijemnik.
      • Koristite odvojeno napajanje za uređaje koji unose talase u sabirnicu napajanja.

    trebat će nam:

    • Radio moduli FS1000A i MX-RM-5V x 1 set.
    • Trema LED (crvena, narandžasta, zelena, plava ili bijela) x 1 kom.
    • Set ženskih žica za povezivanje radio modula x 1 set.

    Za realizaciju projekta potrebno je da instaliramo biblioteke:

    • Biblioteka iarduino_RF433 (za rad sa radio modulima FS1000A i MX-RM-5V).
    • Biblioteka iarduino_4LED, (za rad sa Trema četvorocifrenim LED indikatorom).

    Možete saznati kako instalirati biblioteke na Wiki stranici - Instaliranje biblioteka u Arduino IDE.

    antena:

    Prvo pojačalo svakog prijemnika i posljednje pojačalo bilo kojeg predajnika je antena. Najjednostavnija antena je bičasta antena (komad žice određene dužine). Dužina antene (i prijemnika i predajnika) mora biti višestruka od četvrtine talasne dužine frekvencije nosioca. Odnosno, bičaste antene mogu biti četvrttalasne (L/4), polutalasne (L/2) i jednake talasnoj dužini (1L).

    Dužina radio talasa se izračunava tako što se brzina svetlosti (299"792"458 m/s) podeli sa frekvencijom (u našem slučaju 433"920"000 Hz).

    L = 299"792"458 / 433"920"000 = 0,6909 m = 691 mm.

    Dakle, dužina antena za radio module na 433.920 MHz može biti: 691 mm(1L), 345 mm(L/2), ili 173 mm(L/4). Antene su zalemljene na kontaktne pločice, kao što je prikazano na dijagramu povezivanja.

    Video:

    Dijagram povezivanja:

    Prijemnik:

    Kada se pokrene (u kodu za podešavanje), skica konfiguriše rad radio prijemnika, ukazujući na iste parametre kao i predajnik, a takođe pokreće rad sa LED indikatorom. Nakon toga on konstantno (u kodu petlje) provjerava da li postoje podaci koje je radio prijemnik primio u baferu. Ako postoje podaci, onda se oni učitavaju u niz podataka, nakon čega se na LED indikatoru prikazuje vrijednost elementa 0 (očitavanje Trema klizača), a vrijednost elementa 1 (očitavanja Trema potenciometra) se pretvara i koristi za postavljanje LED-a. osvetljenost.

    Programski kod:

    predajnik:
    #include // Povežite biblioteku za rad sa FS1000A predajnikom iarduino_RF433_Transmitter radio(12); // Kreirajte radio objekat za rad sa bibliotekom iarduino_RF433, koji ukazuje na pin broj na koji je predajnik povezan int data; // Kreirajte niz za prijenos podataka void setup())( radio.begin(); // Pokrenite rad odašiljača FS1000A (možete odrediti brzinu od NUMBER bita/sek kao parametar, tada nemate za pozivanje funkcije setDataRate) radio.setDataRate (i433_1KBPS) // Odredite brzinu prijenosa podataka (i433_5KBPS, i433_4KBPS, i433_3KBPS, i433_2KBPS, i433_1KBPS, i433_500BPS, i433_500BPS, i433_500BPS, i433_5KBPS, i433_4KBPS); ingPipe (5); Otvorite cijev 5 za prijenos podataka (predajnik može prenositi podatke samo jedan po jedan iz cijevi: 0...7) ) // Ako ponovo pozovete funkciju openWritingPipe navođenjem drugog broja cijevi, predajnik će započeti prijenos); podatke kroz novo specificiranu cijev void loop())(data = analogRead(A1); // čitanje Trema klizača očitavanja sa pina A1 i zapisivanje u 0 element niza podataka data = analogRead(A2); // čitanje očitavanja Trema potenciometra sa pina A2 i zapisati ih u 1 element niza podataka radio.write(&data, sizeof(data) // poslati podatke iz niza podataka koji označavaju koliko bajtova polja želimo kašnjenje slanja(10); // pauza između paketa)
    Prijemnik:
    #include // Povežite biblioteku za rad sa MX-RM-5V prijemnikom #include // Povežite biblioteku za rad sa četvorocifrenim LED indikatorom iarduino_RF433_Receiver radio(2); // Kreirajte radio objekat za rad sa bibliotekom iarduino_RF433, koji označava broj pina na koji je prijemnik povezan (može se povezati samo na pinove koji koriste eksterne prekide) iarduino_4LED dispLED(6,7); // Kreirajte dispLED objekat za rad sa funkcijama biblioteke iarduino_4LED, ukazujući na pinove prikaza (CLK, DIO) int podataka; // Kreirajte niz za primanje podataka const uint8_t pinLED=11; // Kreirajte konstantu koja pokazuje PWM izlaz na koji je LED spojen void setup())( dispLED.begin(); // Pokreni rad LED indikatora radio.begin(); // Pokreni rad MX -RM-5V prijemnik (možete ga koristiti kao parametar navedite brzinu BROJ bitova/s, tada ne morate pozvati funkciju setDataRate) radio.setDataRate (i433_1KBPS) // Odredite brzinu prijema podataka (i433_5KBPS); , i433_4KBPS, i433_3KBPS, i433_1KBPS, i433_500BPS, i433_1KBPS - 1kbit/sec radio openReadingPipe (5 // ako otvorite cijev 5 za prijem podataka.); jednom, od 0 do 7) // radio.openReadingPipe (2) // Otvorite cev 2 za prijem podataka (na ovaj način možete slušati nekoliko cijevi odjednom) // radio.closeReadingPipe(2); od prijema podataka (ako pozovete funkciju bez parametra, sve cijevi će biti zatvorene odjednom, od 0 do 7) radio.startListening ( // Uključite prijemnik, počnite slušati otvorenu cijev // radio.stopListening); (); // Isključite prijemnik ako je potrebno ) void loop())( if(radio.available())( // Ako postoje primljeni podaci u međuspremniku radio.read(&data, sizeof(data)); // Pročitajte podatke u niz podataka i odredite koliko bajtova treba pročitati dispLED.print(data) // Izbacite očitanja trema klizača na indikator analogWrite(pinLED, map(data,0,1023,0,255)); LED diode u skladu sa kutom rotacije Trema potenciometra) // Ako dostupnu funkciju pozovemo s parametrom u obliku reference na varijablu tipa uint8_t, tada ćemo dobiti broj cijevi kroz koju se podaci su došli (vidi lekciju 26.5)

    U ovoj lekciji ćemo riješiti problem prijenosa radio signala između dva Arduino kontrolera pomoću popularnog primopredajnika od 433 MHz. U stvari, uređaj za prijenos podataka sastoji se od dva modula: prijemnika i predajnika. Podaci se mogu prenositi samo u jednom smjeru. Ovo je važno razumjeti kada koristite ove module. Na primjer, možete napraviti daljinsko upravljanje bilo kojim elektronskim uređajem, bilo da je to mobilni robot ili, na primjer, TV. U tom slučaju podaci će se prenijeti sa kontrolne ploče na uređaj. Druga opcija je prijenos signala sa bežičnih senzora na sistem za prikupljanje podataka. Ovdje se ruta mijenja, sada je predajnik na strani senzora, a prijemnik na strani sistema prikupljanja. Moduli mogu imati različite nazive: MX-05V, XD-RF-5V, XY-FST, XY-MK-5V, itd., ali svi imaju približno isti izgled i broj pinova. Također, uobičajene su dvije frekvencije radio modula: 433 MHz i 315 MHz.

    1. Povezivanje

    Predajnik ima samo tri pina: Gnd, Vcc i Data.
    Povezujemo ih na prvu Arduino ploču prema sljedećem dijagramu: Sastavljamo oba uređaja na matičnu ploču i počinjemo pisati programe.

    2. Program za predajnik

    Za rad s radio modulima koristit ćemo biblioteku RCSwitch. Napišimo program koji će slati dvije različite poruke svake sekunde. #include RCSwitch mySwitch = RCSwitch(); void setup() ( mySwitch.enableTransmit(2); ) void loop() ( mySwitch.send(B0100, 4); delay(1000); mySwitch.send(B1000, 4); kašnjenje (1000); ) Analizirajmo program. Prvo što smo uradili je deklarisali objekat za rad sa predajnikom i nazvali ga mySwitch. RCSwitch mySwitch = RCSwitch(); Zatim, unutar standardne funkcije postaviti uključio predajnik i odredio pin na koji je povezan: mySwitch.enableTransmit(2); Konačno, u glavnoj petlji programske petlje šaljemo prvo jednu poruku, a zatim drugu pomoću funkcije poslati : mySwitch.send(B1000, 4); Funkcija poslati ima dva argumenta. Prva je poslana poruka, koja će biti poslana u zraku u obliku rafala impulsa. Drugi argument je veličina paketa koji se šalje. U našem programu smo specificirali poruke u formatu binarnog broja. Ovo je označeno engleskim slovom “B” na početku koda B1000. U decimalnom zapisu ovaj broj postaje osmica. Tako da možemo pozvati funkciju poslati ovako: mySwitch.send(8, 4); Send također može prihvatiti binarne nizove: mySwitch.send("1000", 4);

    3. Program za prijemnik

    Sada napišimo program za prijemnik. Da bismo demonstrirali činjenicu prijenosa, upalit ćemo LED spojenu na pin br. 3 na Arduino ploči. Ako je prijemnik uhvatio kod B1000, upalite LED, a ako je B0100, isključite ga. #include RCSwitch mySwitch = RCSwitch(); void setup() ( pinMode(3, OUTPUT); mySwitch.enableReceive(0); ) void loop() ( if(mySwitch.available())(int value = mySwitch.getReceivedValue(); if(value == B1000) digitalWrite(3, HIGH) if(value == B0100) digitalWrite(3, LOW.resetAvailable); dostupan vraća true ako je predajnik primio barem neke podatke: funkcija mySwitch.available(). getReceivedValue izdvaja jedan paket iz toka podataka i dekodira ga u broj. U programu dodjeljujemo rezultirajući broj varijabli vrijednost : int vrijednost = mySwitch.getReceivedValue();

    Zadaci

    Sada možete pokušati vježbati i napraviti razne korisne sprave. Evo nekoliko ideja.
    1. Daljinski upravljač za lampu. Na strani prijemnika, spojen na strujni krug lampe (pažljivo, 220 volti!). Na strani predajnika: . Napišite programe za prijemnik i predajnik koji će pritiskom na dugme uključiti daljinski relej. Kada ponovo pritisnete dugme, relej će se isključiti.
    2. Vanjski termometar sa radio kanalom. Stavite na stranu predajnika. Obezbedite autonomno napajanje iz baterija. Na strani prijemnika: . Napišite programe za prijemnik i predajnik koji će vam omogućiti da na displeju prikažete očitanja temperature sa daljinskog senzora.

    Zaključak

    Dakle, sada znamo jednostavan i jeftin način za prijenos podataka na daljinu. Nažalost, brzina prijenosa i udaljenost kod ovakvih radio modula su vrlo ograničeni, pa nećemo moći u potpunosti kontrolirati, na primjer, kvadrokopter. Međutim, možemo napraviti daljinski upravljač za upravljanje jednostavnim kućanskim aparatom: lampom, ventilatorom ili televizorom. Većina kontrolnih panela radio kanala radi na bazi primopredajnika sa frekvencijom od 433 MHz i 315 MHz. Uz Arduino i prijemnik, možemo dekodirati kontrolne signale i ponoviti ih. Pisaćemo više o tome kako to učiniti u jednoj od narednih lekcija!

    433/315 MHz, saznaćete u ovom kratkom pregledu. Ovi radio moduli se obično prodaju u paru - sa jednim predajnikom i jednim prijemnikom. Možete kupiti par na eBayu za 4 USD, ili čak 2 USD po paru ako kupite 10 odjednom.

    Većina informacija na Internetu je fragmentarna i nije baš jasna. Stoga smo odlučili testirati ove module i pokazati kako postići pouzdanu USART -> USART komunikaciju s njima.

    Pinout radio modula

    Generalno, svi ovi radio moduli imaju vezu od 3 glavna kontakta (plus antena);

    Predajnik

    • Napon vcc (napajanje +) 3V do 12V (radi na 5V)
    • GND (uzemljenje -)
    • Prijem digitalnih podataka.

    Prijemnik

    • Napon vcc (napajanje +) 5V (neki mogu raditi na 3.3V)
    • GND (uzemljenje -)
    • Izlaz primljenih digitalnih podataka.

    Prijenos podataka

    Kada predajnik ne primi podatke na ulazu, oscilator predajnika se isključuje i troši oko nekoliko mikroampera u stanju pripravnosti. Tokom testiranja, 0,2 µA je izašlo iz napajanja od 5 V u isključenom stanju. Kada predajnik primi neke ulazne podatke, emituje na 433 ili 315 MHz nosaču, a sa napajanjem od 5V troši oko 12 mA.

    Predajnik se može napajati i sa višeg napona (na primjer, 12 V), što povećava snagu predajnika i, shodno tome, domet. Testovi su pokazali napajanje od 5V do 20m kroz nekoliko zidova unutar kuće.

    Prijemnik će kada je uključen, čak i ako predajnik ne radi, primiti neke statičke signale i šum. Ako se signal primi na radnoj frekvenciji nosioca, prijemnik će automatski smanjiti pojačanje kako bi uklonio slabije signale, a idealno će izolirati modulirane digitalne podatke.

    Važno je znati da prijemnik troši neko vrijeme na podešavanje pojačanja, tako da nema "rafala" podataka! Prijenos bi trebao početi s "uvodom" prije glavnih podataka i tada će prijemnik imati vremena da automatski podesi pojačanje prije nego što primi važne podatke.

    Testiranje RF modula

    Prilikom testiranja oba modula sa +5V DC izvora, kao i sa 173 mm vertikalnom antenom. (za frekvenciju od 433,92 MHz ovo je "1/4 talas"), kroz zidove je dobijeno pravih 20 metara, a tip modula ne utiče mnogo na ove testove. Stoga možemo pretpostaviti da su ovi rezultati tipični za većinu blokova. Za modulaciju podataka predajnika korišten je digitalni izvor signala sa preciznom frekvencijom i radnim ciklusom 50/50.

    Napominjemo da svi ovi moduli, u pravilu, pouzdano rade samo do 1200 baudova ili maksimalno 2400 baud serijskog prijenosa, osim naravno ako su uvjeti komunikacije idealni (visoka snaga signala).

    Gore je prikazana jednostavna verzija bloka za serijski prijenos informacija do mikrokontrolera koji će biti primljeni od računara. Jedina promjena je dodavanje 25V 10uF tantalskog kondenzatora na pinove napajanja (Vcc i GND) na oba modula.

    Zaključak

    Mnogi ljudi koriste ove radio uređaje u kombinaciji sa Arduino kontrolerima i sličnim, jer je to najlakši način za bežičnu komunikaciju od mikrokontrolera do drugog mikrokontrolera ili od mikrokontrolera do računara.

    Diskutujte o članku RF RADIO MODULI NA 433 MHz