Kako podesiti pametne telefone i računare. Informativni portal

Žičani daljinski upravljač ballu na arduinu. Arduino: infracrveni daljinski upravljač i prijemnik

Infracrveni daljinski upravljač daljinski upravljač- jedan od mnogih jednostavne načine interakcija sa elektronskih uređaja. Dakle, u gotovo svakom domu postoji nekoliko takvih uređaja: TV, muzički centar, video plejer, klima. Ali najviše zanimljiva aplikacija infracrveni daljinski upravljač - daljinsko upravljanje robotom. Zapravo, u ovoj lekciji ćemo pokušati implementirati ovu metodu upravljanja koristeći popularni Arduino Uno kontroler.

1. IR daljinski upravljač

Šta je potrebno da se robot nauči da sluša infracrveni (IR) daljinski upravljač? Prvo nam je potreban sam daljinski upravljač. Možete koristiti običan daljinski upravljač za TV ili možete kupiti minijaturni daljinski upravljač za auto radio. Ove vrste daljinskih upravljača se često koriste za upravljanje robotima.

Ovaj daljinski upravljač ima 10 digitalna dugmad i 11 dugmadi za upravljanje muzikom: jačina zvuka, premotavanje unazad, reprodukcija, zaustavljanje itd. Više nego dovoljno za naše potrebe.

2. IR senzor

Drugo, za prijem signala sa daljinskog upravljača potreban nam je poseban IR senzor. Općenito, infracrveno zračenje možemo otkriti konvencionalnom fotodiodom/fototranzistorom, ali za razliku od njega, naš IR senzor percipira infracrveni signal samo na frekvenciji od 38 kHz (ponekad 40 kHz). Upravo ovo svojstvo omogućava senzoru da ignoriše mnogo stranog svetlosnog šuma od lampi i sunca.

Za ovaj tutorijal ćemo koristiti popularni IR senzor VS1838B, koji ima sledeće karakteristike:

  • noseća frekvencija: 38 kHz;
  • napon napajanja: 2,7 - 5,5 V;
  • strujna potrošnja: 50 µA.

Mogu se koristiti i drugi senzori, na primjer: TSOP4838, TSOP1736, SFH506.

3. Povezivanje

Senzor ima tri izvoda (tri kraka). Ako senzor pogledate sa strane prijemnika IR signala, kao što je prikazano na slici,

  • tada će na lijevoj strani biti izlaz za kontroler,
  • u sredini - negativni kontakt napajanja (uzemljenje),
  • a desno - pozitivni kontakt za napajanje (2,7 - 5,5V).

Šematski dijagram povezivanja

Izgled rasporeda

4. Program

Nakon povezivanja IR senzora, napisat ćemo program za Arduino Uno. Da bismo to učinili, koristit ćemo standardnu ​​biblioteku IRremote, koji je posebno dizajniran da pojednostavi rad sa prijemom i odašiljanjem IC signala. Koristeći ovu biblioteku prihvatit ćemo komande sa daljinskog upravljača i za početak jednostavno ih prikazati u prozoru monitora serijski port. Ovaj program će nam biti od koristi kako bismo razumjeli koji kod daje svako dugme.

#include "IRremote.h" IRrecv irrecv(2); // označava pin na koji je prijemnik povezan decode_results results; void setup() ( Serial.begin(9600); // postavlja brzinu COM porta irrecv.enableIRIn(); // počinje primanje ) void loop() ( if (irrecv.decode(&results)) ( // if podaci su stigli Serial .println(results.value, HEX); // ispiši podatke irrecv.resume(); // prihvati sljedeću naredbu ) )

Učitajte program na Arduino. Nakon toga pokušavamo primati komande sa daljinskog upravljača. Otvorite monitor serijskog porta (Ctrl+Shift+M), uzmite daljinski upravljač i usmjerite ga prema senzoru. Pritiskom na različite tipke, u prozoru monitora promatramo kodove koji odgovaraju ovim dugmadima.

Problem pri učitavanju programa

U nekim slučajevima, kada pokušavate učitati program u kontroler, može se pojaviti greška:

TDK2 nije deklarisan u svom opsegu

Da biste to popravili, samo izbrišite dvije datoteke iz foldera biblioteke. Idemo do istraživača. Idite u fasciklu u kojoj je aplikacija instalirana Arduino IDE(najvjerovatnije je ovo “C:\Program Files (x86)\Arduino”). Zatim u folder biblioteke:

…\Arduino\biblioteke\RobotIRremote

I izbrišite fajlove: IRremoteTools.cpp I IRremoteTools.h. Zatim ponovo pokrećemo Arduino IDE i pokušavamo ponovo učitati program na kontroler.

5. Kontrolirajte LED pomoću IR daljinskog upravljača

Sada kada znamo koji kodovi odgovaraju tipkama daljinskog upravljača, pokušavamo programirati kontroler da se uključi i isključi LED kada se pritisnu tipke za jačinu zvuka. Za to su nam potrebni kodovi (mogu se razlikovati ovisno o daljinskom upravljaču):

  • FFA857 - povećanje jačine zvuka;
  • FFE01F - smanjenje jačine zvuka.

Kao LED, koristimo ugrađenu LED diodu na pinu br. 13, tako da će dijagram povezivanja ostati isti. Dakle, program:

#include "IRremote.h" IRrecv irrecv(2); // označava pin na koji je prijemnik povezan decode_results results; void setup() ( irrecv.enableIRIn(); // počinje primati ) void loop() ( if (irrecv.decode(&results)) ( // ako su podaci stigli prekidač (results.value) (slučaj 0xFFA857: digitalWrite( 13, HIGH); break; case 0xFFE01F: digitalWrite(13, LOW); break; ) irrecv.resume(); // prihvati sljedeću naredbu ) )

Učitavamo ga na Arduino i testiramo. Kliknite vol+— LED svijetli. Kliknite vol-- izlazi. Sada, znajući kako sve to funkcionira, umjesto LED-a možete kontrolirati robotske motore ili druge mikroelektronske uređaje domaće izrade!

Obično, daljinski upravljači za TV, kablovsku kutiju, Blu-ray plejer i stereo sistemi ne samo da zauzimaju prostor, već i otežavaju upravljanje svim tim uređajima. Možda ćete razmisliti o kupovini univerzalnog daljinskog upravljača, ali oni su obično skupi i ponekad ne pružaju nivo kontrole ili interfejsa koji vam je potreban. Ovaj projekat kreira uređaj koji može slati i primati kodove za daljinsko upravljanje sa standardne web stranice. Možete programirati potrebnu funkcionalnost sa bilo kojeg pametnog telefona ili računara!

Ovaj projekat koristi Arduino modul Yún, koji je posebno dizajniran za upravljanje uređajima koji podržavaju mrežna veza. Yún ima dva procesora, od kojih prvi radi operativni sistem Linux i može se povezati na žičani ili bežičnu mrežu. Drugi procesor obavlja iste funkcije kao i procesor u Arduino Leonardo modulu. Stoga, pruža dobru kompatibilnost sa Arduino bibliotekama i hardverom.

Ovaj projekat koristi infracrvenu LED diodu i prijemnik za slanje i primanje signala daljinskog upravljanja. Infracrveno svjetlo je nevidljivo ljudskom oku, ali ga elektronski senzori lako detektuju. Za pouzdaniji prijenos signala, uređaji koriste modulirano infracrveno svjetlo, što eliminira mogućnost prijema lažnih signala. Infracrveni prijemnik je mali uređaj, koji prima infracrvene signale modulirane na određenoj frekvenciji, obično 38 kHz. Koristeći ovaj prijemnik, Arduino modul određuje bitove informacija koje se šalju sa kontrolne ploče.

Slanje komandi vašem multimedijalni centarće se vršiti korištenjem jednostavan web interfejs, koji radi lokalno na Yún modulu i dostupan je za većinu modernih web pretraživača. Web stranica olakšava rad menadžmenta infracrveni uređaj i omogućava vam da obrađujete čak nekoliko komandi istovremeno. Na primjer, pritiskom na dugme 'Pogledaj film' može se poslati signal za uključivanje TV-a, Blu-ray plejera i povezivanje na TV ulaz.

Ovaj projekt zahtijeva određeno iskustvo u pokretanju Arduino skica i korištenju alata komandne linije. Elektronske komponente projekat se može instalirati na matičnu ploču.

Korak #1: Povezivanje komponenti

  • Povežite infracrvenu LED diodu sa Yún modulom tako što ćete provući žicu od LED anode (dugi vod) do digitalni izlaz 13 Yún modula.
  • Koristeći otpornik od 100 oma, povežite LED katodu (kraći vod) na pin uzemljenja IR senzora (srednji vod senzora).
  • Povežite pin za otkrivanje infracrvenog senzora (krajnji lijevi pin kada se gleda s prednje strane senzora) na digitalni pin 11 Yún modula.
  • Povežite pin za uzemljenje infracrvenog senzora (srednji pin) na pin za uzemljenje Yún modula.
  • Konačno, povežite napojni vod senzora (krajnji desni pin kada se gleda s prednje strane senzora) na pin od 5 volti Yún modula.

Korak #2: Instalirajte ovisnosti o softveru

  • Kada se umetne MicroSD kartica u Yún modul, uključite Yún povezivanjem USB Micro B kabl za Yún modul i USB adapter ishrana.
  • Provjerite je li Yún postavljen i povezan na vašu bežičnu mrežu. Konfigurisanje Yún modula je naznačeno na ovoj stranici.
  • Povežite se na komandna linija Yún koristeći SSH. Ovaj proces opisano na ovoj stranici.
  • Kada se povežete na komandnu liniju, vidjet ćete verziju firmvera. Ovaj projekat testirano sa BusyBox v1.19.4 verzijom od 2014-04-10 i novijim. Ako koristite više stara verzija, zatim slijedite sljedeća uputstva.
  • Na komandnoj liniji pokrenite sljedeće naredbe da ažurirate upravitelja paketa:
opkg ažuriranje
  • Zatim instalirajte PIP, Python menadžer paketa:
opkg install distribuira && opkg install python-openssl && opkg install python-expat && easy_install pip

Ovaj proces traje nekoliko minuta. Možda ćete vidjeti neke poruke upozorenja, ali ih možete zanemariti.

  • Kreirajte direktorij na svojoj SD kartici za spremanje Python paketa:
mkdir /mnt/sda1/python-packages
  • Instalirajte Flask Python framework:
pip install --target /mnt/sda1/python-packages flask

Možda ćete vidjeti neke poruke upozorenja, ali ih možete zanemariti.

  • Ažurirajte putanju za pretragu za datoteke Python paketa:
echo "export PYTHONPATH=/mnt/sda1/python-packages" >> /etc/profile
  • Kreirajte direktorije u koje će Arduino IDE učitavati datoteke web servera:
mkdir /mnt/sda1/Arduino mkdir /mnt/sda1/arduino/www
  • Ponovo pokrenite Arduino Yún da ažurirate putanju pretraživanja Python datoteka.

  • Preuzmite IR biblioteku. (Arduino IRremote, biblioteka koju je kreirao Ken Shirriff.)
    Raspakujte arhivu, preimenujte fasciklu sa Arduino_ IRremote- majstor on Arduino_ IRremote, i uvezite Arduino_IRremote folder kao biblioteku u okruženje Arduino razvoj IDE. detaljne informacije naznačeno
  • Otpremite svoju skicu Smart Remote Kontrolirajte Arduino iz zip arhiva odavde.
    Raspakujte arhivu i prevucite fasciklu SmartRemoteControl u fasciklu sa Arduino skica. Otvorite skicu u Arduino IDE.
  • Sastavite skicu i otpremite je na Yún modul putem WiFi-a odabirom odgovarajuće opcije na listi Arduino Yún portova. Obavezno otpremite skicu preko WiFi-a tako da se potrebne python skripte kopiraju u Yún modul! Nakon preuzimanja skice, otvorite serijski monitor Arduino okruženje IDE (ovo može potrajati nekoliko minuta).
  • Usmjerite daljinski upravljač na infracrveni senzor i pritisnite nekoliko dugmadi na daljinskom. Trebali biste vidjeti kod na serijskom monitoru. Ako kod nije prikazan, provjerite spojeve kruga senzora.

Korak #4: Konfigurirajte kodove za daljinsko upravljanje

  • Sada možete konfigurirati aktivnosti i kodove daljinskog upravljanja povezujući ih s njima XML fajl konfiguracije. Koristeći uređivač teksta, otvorite datoteku aktivnosti. xml u poddirektorijumu www skicirajte foldere na vašem računaru. (Iz Arduino IDE, kliknite na meni Sketch i odaberite "Prikaži mapu skica").
  • Razmotrite format primjera operacija u datoteci. Svaki operativni blok definira naziv atributa koji će se pojaviti kao gumb na web stranici daljinskog upravljača. Unutar svake operacije, kodni blok sadrži niz infracrvenih kodova koji se moraju izvršiti. U primjeru, Sony A90 komanda (uključivanje/isključivanje) prvo se izvršava za uključivanje TV-a, zatim Panasonic naredba (uključivanje/isključivanje) za uključivanje Blu-ray playera. Svaki kod ima parametar stringa koji je direktni izlaz podataka otkrivenog udaljenog koda iz Arduino skice.
  • Dodajte svoje komande u datoteku kopiranjem primjera i promjenom naziva i kodova. Kada je daljinski upravljač usmjeren na infracrveni senzor, pritisnite dugmad i pažljivo zapišite određeni niz infracrvenih kodova. Kopirajte sekvencu u konfiguraciju koda operacije.
  • Čim primite potreban fajl konfiguraciju, sačuvajte datoteku i ponovo učitajte skicu u Yún modul putem WiFi mreže. Da biste ažurirali konfiguracijsku datoteku, uredite datoteku i prenesite skicu preko WiFi-a koristeći Arduino IDE.

Korak #5: Pokretanje servera sa web interfejsom

  • Da biste pokrenuli server, povežite Yún modul preko SSH-a. Da pokrenete server, pokrenite sljedeću naredbu:
python /mnt/sda1/arduino/www/SmartRemoteControl/server.py
  • Kada se server uspješno pokrene, vidjet ćete poruku:
* Pokreće se na http://0.0.0.0:5000/ * Ponovo se pokreće sa reloaderom
  • Ako vidite grešku, provjerite sve ovisnosti instalirane u prethodnim koracima.
  • U vašem web pretraživaču unesite http://arduino.local:5000/. Ako pretraživač ne podržava mDNS URL (kao što su Windows, Android i neki Linux distribucije) unesite http:// arduino_ ip_ adresa:5000/, gdje arduino_ ip_ adresa je IP adresa vašeg Arduino Yún-a. IP adresa se nalazi na dnu Arduino IDE kada povezujete Yún (slika 2).
  • Kada se stranica učita, vidjet ćete listu konfiguriranih radnji gumba. Ako vidite grešku, provjerite da li su ovisnosti ispravno instalirane, da je skica učitana i da server radi bez grešaka.
  • Da zaustavite server, kliknite kombinacija Ctrl-C u komandnom prozoru u kojem je server pokrenut.

Korak #6: Korištenje web sučelja

  • Za upotrebu pametni daljinski upravljač usmjerite LED u elektronskih uređaja i kliknite na jednu od aktivnim dugmadima. Ako se traženi uređaj ne uključi, pokušajte da pomaknete LED diodu bliže potrebnim uređajima. Raspon LED dioda je mali, oko 6 stopa. Potrebno je dodati tranzistor za povećanje dometa LED diode. Date su detaljne informacije Evo.
  • Takođe možete testirati infracrvene kodove tako što ćete otvoriti Yún Serial Monitor u Arduino IDE i poslati infracrveni kod kao komandu. Na primjer, slanje koda "SONY: C A90" (bez navodnika) će uzrokovati da hardver pošalje komandu uključiti Sony A90. ("C" predstavlja bit dužine komande, 12, pretvoren u heksadecimalni).
  • Za automatski start server prilikom učitavanja, uredite datoteku / itd/ rc. lokalni u Yún modulu (koristeći nano ili vi editor) i dodajte sljedeći red prije sa linijom "izlaz 0" na kraju:
PYTHONPATH=/mnt/sda1/python-packages python /mnt/sda1/arduino/www/SmartRemoteControl/server.py
  • Za prepoznavanje govora, pokrenite pretraživač google chrome. Kliknite na dugme "Govori" i Chrome pretraživačće tražiti dozvolu za korištenje mikrofona. Zatim izgovorite naziv aktivne operacije i pričekajte dok se ne prepozna. Na primjer, da biste izvršili operaciju filma "Filmovi", pritisnite dugme "Govori" i izgovorite riječ "Filmovi" u mikrofon. Fraze kao što su "Play Movies" ili "Run Movies" nisu podržane - prepoznaje se samo jasan naziv aktivne operacije.

U ovoj lekciji ćemo pogledati povezivanje IR prijemnika na Arduino. Reći ćemo vam koju biblioteku treba koristiti za IR prijemnik i demonstrirati skicu za testiranje rada infracrveni prijemnik sa daljinskog upravljača i analizirajte komande u C++ da biste primili signal. Odmah napominjemo da Arduino IR senzor nije prikladan za svaki daljinski upravljač; frekvencija signala može se razlikovati.

IR prijemnik. Princip rada

Prijemnici infracrvenog zračenja sada se široko koriste kućanskih aparata, Hvala za pristupačna cijena, jednostavnost i lakoća upotrebe. Ovi uređaji vam omogućavaju upravljanje uređajima pomoću daljinskog upravljača i mogu se naći u gotovo svakoj vrsti opreme. Ali uprkos tome, Bluetooth modul postepeno dobija sve veću popularnost.

Princip rada IR prijemnika. Obrada signala sa daljinskog upravljača

IR prijemnik na Arduinu je sposoban da prima i obrađuje infracrveni signal u obliku impulsa datog trajanja i frekvencije. Koristi se u proizvodnji senzora prepreka i daljinomjera za Arduino. Obično IR prijemnik ima tri noge i sastoji se od sledeće elemente: PIN fotodioda, pojačalo, propusni filter, detektor amplitude, integrirajući filter i izlazni tranzistor.

Pod uticajem infracrvenog zračenja u fotodiodi, koja ima između str I n regioni su stvorili dodatnu oblast poluprovodnika ( i-regija), struja počinje da teče. Signal ide u pojačalo, a zatim u propusni filter, koji je podešen na fiksnu frekvenciju: 30; 33; 36; 38; 40 i 56 kiloherca i štiti prijemnik od smetnji. Smetnje može izazvati bilo koji kućni aparat.

Da bi Arduino IR prijemnik primio signal sa daljinskog upravljača, daljinski upravljač mora biti na istoj frekvenciji na koju je podešen filter u IR prijemniku. Stoga, neće svaki daljinski upravljač raditi. Trebali biste odabrati IR prijemnik i IR predajnik sa istom frekvencijom. Nakon filtera, signal ide do detektora amplitude koji integrira filter i izlazni tranzistor.

Kako spojiti IR prijemnik na Arduino

Kućišta infracrvenih prijemnika sadrže optički filter za zaštitu uređaja od vanjskih elektromagnetnih polja, izrađeni su od posebnog oblika za fokusiranje primljenog zračenja na fotodiodu. Za spajanje IR prijemnika na Arduino UNO koriste se tri noge koje su spojene na - GND, 5V i A0. Preporučujemo korištenje 3,3 volta za početak kako ne biste spalili IR senzor tokom podešavanja.

Za ovu lekciju trebat će nam sljedeći detalji:

  • Arduino Uno / Arduino Nano / Arduino Mega ploča;
  • ploča za kruh;
  • IR prijemnik;
  • daljinski upravljač;
  • 1 LED i 220 Ohm otpornik;
  • muško-muške i muško-ženske žice.

Dijagram povezivanja IR prijemnika na Arduino analogni port

Povežite IR prijemnik prema dijagramu prikazanom iznad i povežite LED diode na pinove 12 i 13. Prije preuzimanja programa, morat ćete instalirati biblioteku IRremote.h, ako već nije instalirana. Ova biblioteka ne odnosi se na standardne biblioteke okruženje Arduino programiranje IDE. Možete preuzeti biblioteku IRremote.h i gotovu skicu u jednoj arhivi Google Drive veza .

Skica za Arduino IR prijemnik:

#include // povezivanje biblioteke za IR prijemnik IRrecv irrecv(A0); // označava pin na koji je spojen IR prijemnik decode_results rezultati; void setup () // postavljanje procedure ( irrecv.enableIRIn (); // početi primati infracrveni signal pinMode(13, OUTPUT); // pin 13 će biti izlaz pinMode(12, IZLAZ); // pin 12 će biti izlaz pinMode(A0, INPUT); // pin A0 će biti ulaz (eng. “intput”) Serial.begin(9600); // povezivanje monitora porta) void loop () // petlja procedure ( if (irrecv.decode (&results)) // ako su podaci stigli, izvršimo naredbe( Serijski .println(results.value); // šalje primljene podatke na port // uključivanje i isključivanje LED dioda, ovisno o primljenom signalu if (results.value == 16754775) ( digitalWrite (13, HIGH); ) if (results.value == 16769055) ( digitalWrite (13, LOW); ) if (results.value == 16718055) ( digitalWrite (12 VISOKO); ) if (results.value == 16724175) ( digitalWrite (12, LOW); ) irrecv.resume (); // prihvatiti sledeći signal na IC prijemniku } }

Objašnjenja za kod:

  1. Biblioteka IRremote.h sadrži skup naredbi i omogućava vam da pojednostavite skicu;
  2. Naredba decode_results dodjeljuje rezultate imena varijable primljenim signalima s daljinskog upravljača.

IR senzor se može koristiti u mnogim uređajima na Arduino mikrokontroleru, uključujući daljinsko upravljanje servo pogonom na Arduinu sa IR prijemnika. Prilikom postavljanja, trebali biste uključiti monitor Arduino IDE porta i saznati koji signal šalje ovo ili ono dugme na daljinskom upravljaču. Rezultirajuće kodove treba koristiti u skici nakon znaka dvostruke jednakosti u uslovima if().

Takođe često čitajte:

Prilikom kreiranja uređaja za rad sa IC daljinskim upravljačima, alat kojim možete snimati i analizirati IR signale je vrlo potreban. Takav alat bi, u idealnom slučaju, mogao biti digitalni osciloskop ili logički analizator, ali nemaju svi te uređaje, a njihova namjerna kupovina je skupa. Kako biti? Postoji vrlo jednostavno rješenje - zvučna kartica računara! Pomoću njega ćemo snimiti signal.

Pored zvučne kartice (koja je, nadam se, u vašem računaru), trebat će nam i prijemnik IR signala. Bilo bi ispravnije sastaviti punopravni krug prijemnika s TSOP-om, ali mi ćemo to učiniti što jednostavnije - uzet ćemo najobičniji IR LED (isti onaj koji je u vašem daljinskom upravljaču) kao IR prijemnik. Možete, naravno, uzeti IR fotodiodu, ali IR LED je lakše nabaviti. IR LED mora biti povezan direktno na ulaz mikrofona zvučne kartice. Da biste to uradili, potreban vam je utikač od 3,5 mm i komad zaštićene žice (prerezao sam kabl sa konektorom od starog mikrofona koji ne radi).

LED dioda se povezuje na sljedeći način:

Kao rezultat, dobijamo sljedeći uređaj:

Umetnite utikač u ulaz za mikrofon (it Pink color). U postavkama zvučne kartice odaberite mikrofon kao ulazni uređaj, okrenite kontrolu pojačanja na maksimum i označite polje dodatnog pojačanja. Za provjeru, usmjerite daljinski upravljač prema LED prijemniku (morate ga približiti što je moguće bliže daljinskom upravljaču), pritisnite tipku - u zvučnicima bi se trebali čuti klikovi.

Ako iz nekog razloga nemate ulaz za mikrofon (na primjer, na laptopu), povežite prijemnik na linijski unos zvučna kartica - sve će raditi isto, samo će amplituda snimljenog signala postati mnogo manja.


Sada nam je potreban program za snimanje zvuka.
Svaki program koji imate bit će prikladan za ove svrhe. Ako nemate omiljeni program za rad sa zvukom, predlažem mali i besplatni program— Wavosaur (http://www.wavosaur.com/) Program radi bez instalacije i ima mala velicina- kako volim :).

Program za rad sa zvukom.

Nakon pokretanja programa, uključite indikator nivoa (ravnalo na desnoj strani prozora) i provjerite odziv na signale daljinskog upravljača. Prema zadanim postavkama, sve bi trebalo raditi - ravnalo će otići izvan skale od primljenih signala (ako nema reakcije, idite na postavke Audio konfiguracija/Audio ulaz). Zatim pritisnite ikonu za snimanje, približite daljinski upravljač što je moguće bliže prijemnoj LED diodi, pritisnite dugme na daljinskom upravljaču i držite nekoliko sekundi. Isključite snimanje - Gotovo! U prozoru ćemo vidjeti skeniranje primljenog IR signala. Ono što je interesantno je da će signal već biti detektovan - nećemo vidjeti noseću frekvenciju, već samo korisni signal. To se događa zato što ulazni kapaciteti mikrofonskog ulaza nemaju vremena da se napune.

Primljeni signal se može skalirati po vremenu, amplitudi i, što je vrlo zgodno, označavanjem određenog perioda, odmah možete vidjeti njegovo trajanje. Primljeni signal se može sačuvati (po mogućnosti u wav formatu - neće biti izobličenja) ili eksportovati u MP3, tekst, binarni fajl(korisna stvar!).

Na primjer, signal s mog daljinskog upravljača za TV (NEC format):

Svi vremenski intervali su vidljivi sa slike, čak možete izračunati adresu daljinskog upravljača i komandni kod dugmeta - sve je jasno i razumljivo.

P.S.
Veliki zahtjev! Ako sastavite takav prijemnik, sačuvajte pakete svojih daljinskih upravljača i pošaljite mi ih e-poštom (u kartici "o projektu") - to će uvelike pomoći u poboljšanju algoritma univerzalnog prijemnika. U nazivu datoteke navedite od čega je daljinski upravljač i proizvođača (na primjer: tv-sony.wav).


Više o radu sa IR daljinskim upravljačima!
Predložio sam najjednostavniju opciju da se "osjeti" signal sa IC daljinskog upravljača, ali postoji mnogo rješenja koja mogu učiniti mnogo više! Primite IR signal, analizirajte, sačuvajte, reprodukujte, programirajte svoje daljinske upravljače, upravljajte računarom... Ovaj odeljak će sadržati linkove do ovakvih rešenja.

1. DvzRcEditor
Program će ići prvi DvzRcEditor, koju sam bacio mobi. Program je neko napravio Dvz 2010(za njega nažalost ne postoje koordinate, možda neko zna?).


- Program za analizu i ponavljanje IC signala.
Program vam omogućava da snimate i reprodukujete IR poruke koristeći mikrofonski ulaz i audio izlaz. Postoje alati za analizu IC poruka i kreiranje baze podataka poruka daljinskog upravljača (postoji mala baza podataka za razne daljinske upravljače). Zanimljivo rješenje je podrška za vaš vlastiti daljinski upravljač napravljen na ATtiny2313.


Daljinski upravljač ima 7 tipki pomoću kojih možete podesiti bilo koju komandu od analiziranih, a sam program može snimiti signale za ove tipke u mikrokontroler (pod uslovom da tamo prvi put flešujete bootloader).

Sve je jednostavno i jasno - svidjelo mi se!


2. SlyControl.
http://slydiman.narod.ru/scr/index.htm
To čak nije ni program – jeste cijeli internet resurs posvećen IR daljinskim upravljačima. Sadrži mnogo korisne informacije, hardver i softverska rješenja za sve prilike. Evo šta autori pišu o SlyControl-u:
- Ovo univerzalni program da kontroliše bilo šta pomoću računara.

Za šta se ovo može koristiti:
— kontrola bilo kojeg programa s bilo kojeg daljinskog upravljača (daljinskog upravljača), s multimedijske tastature pomoću tipki ili džojstika
— emulacija tastature i miša sa bilo kog daljinskog upravljača
— planer (ne samo da pokrene program prema vremenu, već i izvrši neke radnje s njim)
- isključivanje računara pomoću tajmera ili događaja
— možete upaliti svjetla u stanu i sa daljinskog upravljača, samo trebate dodati odgovarajući plugin 😉

Na resursu postoji i program RCExplorer 2.1— baza podataka IR daljinskih upravljača (baza podataka sadrži više od 200 unosa).


Program Vam omogućava da:
— Primajte signale sa daljinskih upravljača pomoću zvučna kartica, COM port, IgorPlug-USB ili IgorPlug2
- Analizirajte signal detaljno - (modulacija, vremenske karakteristike, karakteristike kodiranja, kodovi ponavljanja, itd., svi meni poznati su podržani ovog trenutka protokola, program može raditi i sa nepoznatim protokolima.
— Grafički prikaz signala u realnom vremenu i prema podacima iz baze podataka
— Potražite sličan daljinski upravljač u bazi podataka
— Reproducirajte komandu daljinskog upravljača koristeći podatke iz baze podataka preko COM porta

Općenito, svakako posjetite resurs - bit će zanimljivo.

(Posjećeno 20,417 puta, 9 posjeta danas)

Najbolji članci na ovu temu