Cuprins:

Cum să emulați o telecomandă TV sau altfel cu Arduino Irlib: 3 pași (cu imagini)
Cum să emulați o telecomandă TV sau altfel cu Arduino Irlib: 3 pași (cu imagini)

Video: Cum să emulați o telecomandă TV sau altfel cu Arduino Irlib: 3 pași (cu imagini)

Video: Cum să emulați o telecomandă TV sau altfel cu Arduino Irlib: 3 pași (cu imagini)
Video: Construim un GPS tracker cu Python si Raspberry PI - Sesiune de programare live @ IT de weekend 2024, Noiembrie
Anonim
Cum să emulați o telecomandă TV sau altfel cu Arduino Irlib
Cum să emulați o telecomandă TV sau altfel cu Arduino Irlib

Introducere

Bună tuturor și bun venit la primul meu instructabil.

Astăzi vom învăța, după cum se spune în titlu, să emulăm telecomanda TV sau ceva similar care funcționează cu semnale infraroșii folosind Arduino (orice model).

Problema a fost: Cum pot transmite coduri către un obiect dacă nu știu codul?

Căutând pe internet nu am găsit răspunsul la întrebarea mea, așa că am început să mă gândesc și să inventez singură această metodă.

În acest tutorial vă voi arăta cum să faceți acest lucru.

P. S.:

Înainte de a începe, vă voi spune că comunicările Ir sunt foarte complexe și necesită mai întâi un pic de cunoștințe.

Pasul 1: Material

Material
Material

Aveți nevoie de mai puține componente decât credeți:

-Arduino (am folosit Leonardo)

-470ohm sau rezistor similar! ATENȚIE !: valoarea rezistorului se poate schimba în funcție de LED-ul IR

-IR led (am folosit SFH4546)

-Unii Jumpers

-Receptor IR (am folosit TSOP38238)

-Panoul

Aceasta este ceea ce am folosit pentru acest circuit simplu, dar esențial.

EDIT: Dacă utilizați același led, nu utilizați niciun rezistor între pinul Arduino și led, deoarece va scădea mult distanța de la care puteți utiliza telecomanda

Dacă nu utilizați același LED, vă recomand să puneți un aparat de tundere și să îl reglați după cum doriți

Pasul 2: Circuit și codare

Acum ne uităm la circuit.

Trebuie să construim 2 circuite:

-Primul circuit trebuie să capteze semnalul de pe telecomandă.

-Al doilea transmite semnalul pe care l-am capturat înainte.

Deci, luați arduino, panou de testare, fire și receptor și permiteți să începeți să lucrați

Conectați mai întâi 5v și GND la receptor (al meu are în ordine OUT, GND, 5V)

Pinul OUT trebuie conectat la pinul Arduino 2. (Cum arată circuitul)

Odată ce ați făcut acest lucru, trebuie să conectăm anodul ledului nostru la rezistor și catodul la masă.

De la rezistor ne vom conecta mai târziu la pinul care este definit de biblioteca Ir. (Cum arată circuitul)

Codul este foarte simplu:

Mai întâi trebuie să instalăm bibliotecile:

-Libreria IrLib2 pentru pasajul de primire

Apoi, trebuie să deschideți fișierul zip și să copiați folderele din fișierul respectiv în folderul bibliotecilor.

-Libreria IrRemote pentru trimiterea acestuia

După ce ați făcut-o, deschideți Arduino IDE și din meniul de exemple accesați folderul de exemple IrLib2, apoi încărcați schița „RawRecv.ino” pe placa dvs. Arduino.

Odată ce este încărcat pe placă, deschideți monitorul serial, luați telecomanda pe care doriți să o emulați, îndreptați-l către receptorul Ir și apăsați un buton pe el: veți vedea o ieșire (cod brut) pe monitor, deci copiați-l în clipboard.

Următorul pasaj este trimiterea codurilor pe care le-am achiziționat.

Fiecare model Arduino are propriul pin pentru clasa IRsend și nu îl puteți schimba din cauza unor restricții impuse de hardware.

Aici există o masă cu setarea pinilor unor plăci Arduino.

Aceasta este schița mea, trimite comanda channel_up către un televizor Samsung vechi:

#include

IRsend irsend; #define RAW_DATA_LEN 68 // ieșire RawRecv uint16_t rawData [RAW_DATA_LEN] = {4458, 4482, 546, 1698, 550, 1690, 554, 1690, 546, 606, 518, 610, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 1686, 550, 1694, 550, 602, 522, 606, 530, 598, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 598, 522, 606, 530, 1686, 554, 602, 518, 610, 522, 602, 522, 1694, 554, 602, 522, 1694, 550, 1690, 546, 610, 526, 1690, 546, 1694, 554, 1690, 546, 1000}; void setup () {} void loop () {irsend.sendRaw (rawData, RAW_DATA_LEN, 38); // trimite date brute la o întârziere de frecvență de 38KHz (1000); // 1 secundă întârziere între fiecare semnal de spargere}

Acordați atenție: copierea și lipirea acestuia pe IDE s-ar putea să nu funcționeze, dacă nu funcționează, trebuie să scrieți fiecare rând

Pasul 3: Testare și finisare

Este timpul pentru un test acum!

Îndreptați ledul către receptor în același mod în care îndreptați telecomanda și porniți Arduino, așteptați o secundă și veți vedea că dispozitivul de recepție va începe să facă ceea ce îi spunem să facă, așa este!

Dacă ceva nu este în regulă, vă rugăm să lăsați un comentariu mai jos.

Acesta este sfârșitul instructabilului nostru. Sper să vă fie de folos.

Comentează dacă dorești un videoclip al acestui tutorial și ……….

la următorul instructabil!

Recomandat: