Sommario:
- Forniture
- Passaggio 1: scegli il tuo telecomando
- Passaggio 2: prima costruiscilo su un tagliere (non necessario ma consigliato)
- Passaggio 3: il codice
- Passaggio 4: finitura
- Passaggio 5: PROVA
Video: LED RGB con controllo IR basato su Arduino Nano: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
in questo piccolo progetto voglio mostrarti come ho costruito un LED RGB basato su Arduino che è controllato da un telecomando IR e alimentato da un cavo USB.
Forniture
1. LED RGB
2. Ricevitore IR
3. Cavo USB
4. Arduino nano
5. Telecomando IR
6. alcuni cavi
7. Resistori da 50-100 ohm (sto usando resistori da 47 ohm ma non c'è molta differenza)
Passaggio 1: scegli il tuo telecomando
Quindi quale telecomando usi è una tua decisione, ma il tuo telecomando dovrebbe avere 6 chiavi che vuoi usare. 2 di questi sono per il rosso, 2 per il verde e 2 per il blu.
Passaggio 2: prima costruiscilo su un tagliere (non necessario ma consigliato)
Ora, costruisci il circuito su una breadboard
connessioni:
LED RGB GND > Arduino nano GND
LED RGB Rosso > Arduino nano Pin digitale 5
LED RGB Verde > Arduino nano Pin digitale 6
LED RGB Blu > Arduino nano Pin digitale 9
USB GND > Arduino nano GND
USB 5v > Arduino nano 5v
Ricevitore IR pin 1 > Arduino nano Digital pin 4
Pin 2 ricevitore IR > Arduino nano GND
Pin 3 ricevitore IR > Arduino nano 5v
(tutti i collegamenti sono mostrati sopra)
(ogni pin di colore del LED RGB è collegato in serie ai resistori)
Passaggio 3: il codice
il codice è il seguente:
Ecco la libreria che ho usato.
#includere
int IR_Recv = 4; //pin ricevitore IR
int Rval = 0; int Valval = 0; int Bval = 0; int RvalDemo = 0; int GvalDemo = 0; int BvalDemo = 0; intR = 5; //pin rosso int G = 6; //pin verde int B = 9; // Pin blu #define Rup1 1976685926 // aumenta la luminosità del rosso #define Rup2 3772818013 // aumenta la luminosità del rosso #define Rdown1 3843765582 // fa diminuire la luminosità del rosso #define Rdown2 3772813933 // diminuisce la luminosità del rosso #define Gup1 3772797613 //fa aumentare la luminosità del verde #define Gup2 3774104872 //fa aumentare la luminosità del verde #define Gdown1 3772834333 //fa diminuire la luminosità del verde #define Gdown2 1784778242 //fa diminuire la luminosità del verde #define Bup1 3980777284 //rende il blu la luminosità aumenta #define Bup2 3772781293 //fa aumentare la luminosità del blu #define Bdown1 3772801693 //fa diminuire la luminosità del blu #define Bdown2 3361986248 //fa diminuire la luminosità del blu //NOTA: DEVI CAMBIARE I NUMERI DEL TUO TELECOMANDO!!! ! //Ho 2 chiavi duplicate per esempio Rup1 e Rup2. perché // il mio telecomando emette 2 numeri quando si preme un tasto. //nel tuo caso puoi inserire gli stessi numeri in Rup1 e Rup2, Gup1 e Gup2 e così uno. //Quando premi un tasto, il numero dovrebbe apparire nel monitor seriale, //Questo è quello che dovresti digitare nella sezione "#define". IRrecv irrecv(IR_Recv); decode_results risultati; void setup(){ TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM21) | _BV(WGM20); TCCR2B = _BV(CS22); irrecv.enableIRIn(); pinMode(R, USCITA); pinMode(G, USCITA); pinMode(B, USCITA); Serial.begin(9600); } void loop(){ if (irrecv.decode(&results)){ long int decCode = results.value; switch (results.value){ ///////////RED case Rup1: Rval = Rval + 10; rottura; caso Rup2: Rval = Rval + 10; rottura; caso Rdown1: Rval = Rval - 10; rottura; caso Rdown2: Rval = Rval - 10; rottura; ////////////VERDE caso Gup1: Gval = Gval + 10; rottura; caso Gup2: Val = Val + 10; rottura; caso Gdown1: Gval = Gval - 10; rottura; caso Gdown2: Gval = Gval - 10; rottura; /////////////BLUE case Bup1: Bval = Bval + 10; rottura; caso Bup2: Bval = Bval + 10; rottura; caso Bdown1: Bval = Bval - 10; rottura; caso Bdown2: Bval = Bval - 10; rottura; /////////////////////////////////////// } irrecv.resume(); } if (Rval > 255) (Rval = 255); if (Rval 255) (Gval = 255); if (Gval 255) (Bval = 255); if (Bval < 0) (Bval = 0); analogWrite(R, Rval); analogWrite(G, Gval); analogWrite(B, Bval); Serial.println(results.value); ritardoMicrosecondi(1); }
Passaggio 4: finitura
Il cielo non ha fatto un buon lavoro di custodia. tutto quello che ho fatto è stato registrarlo, ma ho cercato di renderlo il più piccolo possibile.
Se hai domande o errori assicurati di dirmelo, farò del mio meglio per aiutarti a correggere l'errore. grazie per aver letto.
Consigliato:
Telecomando IR automatico basato su Arduino basato sulla temperatura: 7 passaggi
Telecomando IR automatico basato su Arduino basato sulla temperatura: Ehi, come va, ragazzi! Akarsh qui da CETech. Stanco di svegliarti nel bel mezzo di un sonno profondo solo perché la temperatura della tua stanza è troppo bassa o troppo alta a causa del tuo stupido condizionatore. Allora questo progetto è per te. In questo progetto, faremo il nostro
Controllo della luminosità Controllo LED basato su PWM tramite pulsanti, Raspberry Pi e Scratch: 8 passaggi (con immagini)
Controllo della luminosità Controllo LED basato su PWM tramite pulsanti, Raspberry Pi e Scratch: stavo cercando di trovare un modo per spiegare come funzionava il PWM ai miei studenti, quindi mi sono posto il compito di provare a controllare la luminosità di un LED utilizzando 2 pulsanti - un pulsante aumenta la luminosità di un LED e l'altro lo attenua. Per programmare
ESP8266 RGB LED STRIP Controllo WIFI - NODEMCU Come telecomando IR per strisce LED controllate tramite Wi-Fi - STRIP LED RGB Controllo smartphone: 4 passaggi
ESP8266 RGB LED STRIP Controllo WIFI | NODEMCU Come telecomando IR per strisce LED controllate tramite Wi-Fi | Controllo Smartphone STRIP LED RGB: Ciao ragazzi in questo tutorial impareremo come utilizzare nodemcu o esp8266 come telecomando IR per controllare una striscia LED RGB e Nodemcu sarà controllato dallo smartphone tramite wifi. Quindi in pratica puoi controllare la STRISCIA LED RGB con il tuo smartphone
Generatore musicale basato sulle condizioni meteorologiche (generatore MIDI basato su ESP8266): 4 passaggi (con immagini)
Generatore di musica basato sul tempo (Generatore MIDI basato su ESP8266): Ciao, oggi spiegherò come creare il tuo piccolo generatore di musica basato sul tempo. È basato su un ESP8266, che è un po' come un Arduino, e risponde alla temperatura, alla pioggia e l'intensità della luce. Non aspettarti che produca intere canzoni o programmi di accordi
Orologio con animazione LED SMART connesso al Web con pannello di controllo basato sul Web, server dell'ora sincronizzato: 11 passaggi (con immagini)
Orologio con animazione LED SMART connesso al Web con pannello di controllo basato sul Web, server dell'ora sincronizzato: la storia di questo orologio risale a molto tempo fa, più di 30 anni. Mio padre è stato il pioniere di questa idea quando avevo solo 10 anni, molto prima della rivoluzione dei LED, quando i LED erano 1/1000 della luminosità della loro attuale brillantezza accecante. Un vero