Control de ieșire prin telecomandă IR
Vom face o priză care se activează și se oprește cu ajutorul unei telecomenzi în infraroșu.
Trebuie să spun imediat dacă ceva nu este clar, voi explica totul în comentarii.
Tensiune de avertizare 220 V
De ce avem nevoie:
- Arduino
- Receptor IR
- Telecomanda IR
- Jumperi ca tata mama și tata tata
- Releu în stare solidă de 220 V
- Priză cu un fir sfâșiat
- bord prototipuri
- Bec cu suport pentru bec
Pune totul la un loc
Pentru a începe, vom lua priza, deșurubați cele 2 șuruburi și o vom deschide.
Apoi fixăm 2 fire în două terminale cu o șurubelniță și tăiem un fir în jumătate. Așa că se dovedește ca în imagine.
În continuare, introduceți cele două fire pe care le-am tăiat într-un releu cu stare solidă pentru 220 V, așa cum se arată în imagine, exact invers!
Acum conectăm totul ca în imagine.
Senzor IR:
- GND piciorul stâng
- piciorul mijlociu 5V
- piciorul drept A0
Releu în stare solidă de 220 V
- vcc - 5V
- gnd - GND
- IN - D9
Și iată schița în sine
#include // conectați biblioteca pentru a lucra cu receptorul IR
IRrecv irrecv (A0); // indicați pinul la care este conectat receptorul IR
rezultate decode_results;
void setup () // procedura de configurare
{
irrecv.enableIRIn (); // începeți să primiți semnalul infraroșu
pinMode (9, OUTPUT); // pinul 9 va fi ieșirea (eng. "output")
pinMode (A0, INPUT); // pin A0 va fi o intrare (engleza „intput”)
Serial.begin (9600); // conectați monitor port
}
void loop () // procedura buclei
{
if (irrecv.decode (& rezultate)) // dacă au ajuns datele, executați comenzile
{
Serial.println (results.value); // trimiteți datele primite în port
// porniți și stingeți ledurile, în funcție de semnalul primit
if (results.value == 16754775) {
digitalWrite (9, HIGH); // stinge lumina
}
if (results.value == 16775175) {
digitalWrite (9, LOW); // aprinde lumina
}
irrecv.resume (); // primiți următorul semnal pe receptorul IR
}
}
Descărcați schița
După încărcarea schiței, deschideți monitorul portului și apăsați butonul de pe telecomandă IR. În schimb, se scrie rezultatul unei singure prese
if (results.value == 16775175) {
digitalWrite (9, LOW);
}
Acum din nou puteți completa schița și folosiți-o!
Folosiți cu atenție! Nu sunt responsabil pentru rănile tale!