Inhoudsopgave:

Geluidsreactieve goedkope Ir Led Strip - Ajarnpa
Geluidsreactieve goedkope Ir Led Strip - Ajarnpa

Video: Geluidsreactieve goedkope Ir Led Strip - Ajarnpa

Video: Geluidsreactieve goedkope Ir Led Strip - Ajarnpa
Video: Секретная исцеляющая сила заземления! с Клинтом Оберо... 2024, Juli-
Anonim
Geluidsreactieve goedkope Ir Led-strip
Geluidsreactieve goedkope Ir Led-strip
Geluidsreactieve goedkope Ir Led-strip
Geluidsreactieve goedkope Ir Led-strip
Geluidsreactieve goedkope Ir Led Strip
Geluidsreactieve goedkope Ir Led Strip

Geluidsreactieve goedkope Ir Led-strip

Nou, het idee kwam nadat de ledstrip van AliExpress arriveerde en het waren geen neopixels maar RGB LED-strips met 44krys of 24 key remote types, Domme me lol, ik bestelde de verkeerde. Ik wilde ze voor een feestje, maar met afstandsbediening! !! Naaah. Dus vouwde ik mijn mouwen en googlede het.

Heb esp-gebaseerde IR-webserver die dezelfde afstandsbedieningsknoppen toewijst via de IR-emitterpin die is aangesloten op een IR-led.

maar ik wilde iets anders, zoals een reactief geluid, opnieuw kreeg ik veel tutorials met ws1811 of neopixels en sommige zelfs met MOSFET's en LED's, maar ik had geen tijd meer, dus ik probeerde een domme benadering van Mapping Audio via A0 Pin van esp en het in kaart brengen van de uitvoer in emmers om sommige combinaties van IR-afstandsbedieningsknoppen in te schakelen. Meestal alleen rgb, maar ik wed dat je het beter gaat maken dan ik.

Benodigdheden

1. een LED Strips uiteraard met voeding

2. esp8266 / node mcu

3. Ir-zender led

4. Een weerstand

5. Programmeerkabel

6. arduino-idee

7. een soldeerbout (wat basis soldeerwerk)

8. een 7805 ic (voor gebruik van led-voeding als esp-voeding)

9. Een microfoonmodule of aux y split voor geluidsinvoer

Stap 1: Esp. voorbereiden

  • Verbind allereerst de Nodemcu met computer of laptop.
  • Installeer nu de driver van nodemcu(google it).
  • Hierna opent u de Arduino IDE (u moet deze natuurlijk downloaden en installeren) Klik op "Tools" op de Arduino-werkbalk klik op "Board" Selecteer "Board Manager" en zoek naar esp8266 installeer het (zal even duren om te voltooien)
  • Selecteer nu "Sketch" in de Arduino-werkbalk selecteer "Bibliotheek opnemen" en selecteer daar "Bibliotheken beheren"Zoek naar "IRremoteESP8266" en installeer het
  • Nu wordt de configuratie alleen gedaan vanuit "Tools", we moeten naar "Boards" gaan. Selecteer "NodeMcu 1.0(ESP 12-E)" of een andere versie van ESP8266.

Stap 2: IR-LED voorbereiden en testen

IR LED voorbereiden en testen
IR LED voorbereiden en testen

Allereerst moeten we de irLED-bibliotheek installeren voor esp

Ga hier

Identificatie van uw ledstrip met afstandsbediening met 24 of 44 toetsen (grotere)

voor het verkrijgen van de afstandsbedieningscode ga HIER

Als de bibliotheek is geïnstalleerd, moeten we onze IR-LED voorbereiden door deze aan te sluiten zoals weergegeven in Afbeelding. Sluit daarop de IR-LED aan, upload vervolgens de volgende schets en richt de IR-LED op de controller. De LED-strip moet knipperen (gaat aan en uit). // werkt zowel met 24 en 44 toetsen Remote.

HIER is de code om dit te doen.

#define IR_OFF 0xF740BF //Resectieve ir-codes in 32 bits#define IR_ON 0xF7C0 #include<IRremoteESP8266.h IRsend irsend(4); // IR pin void setup() {irsend.begin(); } void loop() { irsend.sendNEC(IR_ON, 32); vertraging (5000); irsend.sendNEC(IR_OFF, 32); vertraging (5000); }

Stap 3: Bedrading en voorbereiding van de microfoon

Bedrading en voorbereiding van de microfoon
Bedrading en voorbereiding van de microfoon
Bedrading en voorbereiding van de microfoon
Bedrading en voorbereiding van de microfoon

We zullen alleen de analoge pin van Espe8266 A0 gebruiken om invoer als analoog signaal te nemen en deze te gebruiken om ir-led te activeren op basis van geluid

Sluit de pin aan op a0

Sluit 5V aan op Vin (AS-knooppunt mcu heeft geen 5v-uitgang)

dat is het, we zullen de IR-LED die is aangesloten op de D2-pin uitlijnen met de ontvanger van de LED-strip.

een

Stap 4: Upload de code en het is klaar om te rocken

Upload de code en het is klaar om te rocken
Upload de code en het is klaar om te rocken
Upload de code en het is klaar om te rocken
Upload de code en het is klaar om te rocken

#include #include#define microfoonPin A0 int geluid; int geluid1; const int irPin = 4; // d2IRsend irsend (irPin); void setup () {Serial.begin (9600); pinMode (microfoonPin, INPUT); pinMode(irPin, OUTPUT);} // ir led-codes #define IR_BPlus 0xFF3AC5 // #define IR_BMinus 0xFFBA45 // #define IR_ON 0xFF827D // #define IR_OFF 0xFF02FD // #define IR_R 0xFF1AE5 // #define FFIR // #define FFIR definieer IR_B 0xFFA25D // #define IR_W 0xFF22DD // #define IR_B1 0xFF2AD5 // #define IR_B2 0xFFAA55 // #define IR_B3 0xFF926D // #define IR_B4 0xFF12ED //B6 0FFIRAfine_A // #define FF0_B5 //define FF0_B5 0xFFB24D // #define IR_B8 0xFF32CD // #define IR_B9 0xFF38C7 // #define IR_B10 0xFFB847 // #define IR_B11 0xFF7887 // #define IR_B12 0xFFF807 // #define 0FFIR7/B / #define IR_B16 0xFFD827 // #define IR_UPR 0xFF28D7 // #define IR_UPG 0xFFA857 // #define IR_UPB 0xFF6897 // #define IR_QUICK 0xFFE817 // #define IR_DOWNR //Bdefine IR_DOWNR 0xFF08F7 //B definieer IR_SLOW 0xFFC837 // #define IR_DIY1 0xFF30CF // #define IR_DIY2 0xFFB04F // #define IR_DIY3 0xFF708F // #define IR_AUTO 0xFFF00F // #define IR_DIY4 0xFF10EF // #define IR_DIY5 0xFF906F // #define IR_DIY6 0xFF50AF // #define IR_FLASH 0xFFD02F // #define IR_JUMP3 0xFF20DF // #define 0FFA05 / void loop () { sound = analogRead (microphonePin); // het krijgen van input audiosignaal lezen Serial.print (geluid); // voer audiosignaaluitlezingen in op Serial display Serial.print (" "); if (geluid > 415) { geluid1 = kaart (geluid, 415, 750, 140, 255); // hogere frequentiewaarden die hoger zijn dan offset in kaart brengen op de schaal van 150 - 255 } else if (geluid > 340 && geluid < 415) // offsetwaarde op nul houden schaal..hier offsetwaarde in het bereik van 340 - 415(offsetwaarde bij 1.45v)..het hangt af van de componenten die in het circuit worden gebruikt. { sound1 = map (sound, 340, 415, 0, 9); } else if (geluid 240) { irsend.sendNEC(IR_FLASH, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); } else if ((geluid1) > 200) { irsend.sendNEC(IR_G, 32); irsend.sendNEC(IR_B, 32); vertraging (120);} else if (geluid1 > 160) { irsend.sendNEC(IR_R, 32); irsend.sendNEC(IR_B, 32); vertraging (120); } else if (geluid1 > 120) { irsend.sendNEC(IR_B, 32); vertraging (120); } else if (geluid1 > 80) { irsend.sendNEC(IR_B, 32); vertraging (120); } else if (geluid1 > 40) { irsend.sendNEC(IR_G, 32); vertraging (120); } else if (geluid1 > 10) { irsend.sendNEC(IR_R, 32); vertraging (120);} else { irsend.sendNEC(IR_FADE7, 32); vertraging (120); } Serieel.println(geluid1); vertraging (50); }

Aanbevolen: