Search Code

Управувајте AC сијалица со ракоплескање, глас или звук

Управувајте AC сијалица со ракоплескање, глас или звук

Во ова упатство, ќе научите како да контролирате AC сијалица користејќи звучен модул кој детектира ракоплескање или гласовни команди. Со користење на оваа поставка, лесно можете да ја вклучите или исклучите светлината врз основа на звучен влез. Овој проект користи реле за префрлување на напојувањето на AC сијалицата, овозможувајќи безбедна контрола на уреди со висок напон со едноставни звучни команди. Резултатот е функционална светлина која реагира на вашиот глас или ракоплескање, што го прави забавен и практичен проект. Модулот исто така се нарекува KY-037 модул за гласовна детекција или детекција на звук.

Sound detection microphone blue red

Пред да навлеземе во спецификите, важно е да ги разбереме компонентите вклучени во овој проект. Звучниот модул детектира аудио сигнали и испраќа соодветен сигнал до Arduino. Arduino го обработува овој сигнал и контролира реле, кое пак ја напојува AC сијалицата. Овој систем може да реагира на различни нивоа на звук, овозможувајќи флексибилност во тоа како ќе одберете да ја активирате светлината (во видео на 00:30).

Објаснување на хардверот

За оваа изработка, ќе ви бидат потребни следниве компоненти:

  • Arduino плоча: Делува како централен контролер кој го обработува влезот од звучниот модул и го контролира релето.
  • Звучен модул: Овој модул детектира звучни влезови (како ракоплескање или гласовни команди) и испраќа сигнал до Arduino. Обично вклучува микрофон и оп-засилувач за засилување на звукот.
  • Реле модул: Релето ви овозможува да контролирате уреди со повисок напон како AC сијалица. Делува како прекинувач кој може да се вклучи или исклучи од Arduino.
  • AC сијалица: Изворот на светлина што ќе го контролирате. Осигурете се дека е безбедно поврзана преку релето.

Звучниот модул работи така што ги претвора звучните бранови во електрични сигнали кои Arduino може да ги чита. Реле модулот користи низок напонски влез од Arduino за да го префрли високонапонскиот AC струја вклучен или исклучен, што го прави критична компонента за безбедна работа.

Детали од техничката спецификација

ПроизводителГенерички
Број на делМодул за детекција на звук
Логички/IO напон5 V
Напон на напојување5 V
Излезна струја (по канал)20 mA
Врвна струја (по канал)50 mA
Насоки за PWM фреквенцијаН/П
Прагови на влезна логикаКомпатибилен со TTL
Пад на напон / RDS(on) / заситување0.1 V макс.
Термички граници85 °C
ПакетМодул
Белешки / варијантиЧесто користен во разни DIY проекти

  • Осигурете соодветно одведување на топлина за реле модулот.
  • Користете раздвојни кондензатори во близина на напојувањето за стабилизирање на напонот.
  • Чувајте го жичањето организирано за да спречите случајни кратки споеви.
  • Бидете внимателни со AC напонот; осигурете се дека сите врски се безбедни.
  • Прилагодете ја чувствителноста на звучниот модул на вашата околина.

Инструкции за жичање

Arduino wiring of Sound detection microphone with relay
Arduino wiring of Sound detection microphone with relay

Започнете со поврзување на звучниот модул со Arduino. Поврзете го DO (излез на податоци) пинот на звучниот модул со пин 2 на Arduino. VCC пинот треба да се поврзе со 5V излезот на Arduino, а GND пинот треба да се поврзе со еден од земјените пинови на Arduino.

Следно, поврзете го реле модулот. Поврзете го VCC пинот на релето со 5V пинот на Arduino и GND пинот со земја. Влезниот пин на релето треба да се поврзе со пин 10 на Arduino. Конечно, поврзете ја AC сијалицата со заедничкиот и нормално отворениот терминал на релето, осигурувајќи се дека колото е правилно изолирано од било кои изложени контакти.

Примери на код и објаснување

Следниот извадок од код покажува како да ги поставите пиновите и да го читате звучниот влез:

int SOUND = 2; // поврзете го излезот со DO на звучниот модул
int relayPin = 10; // Поврзан со релето (LED)

void setup() {
  Serial.begin(9600);
  pinMode(SOUND, INPUT_PULLUP); 
  pinMode(relayPin, OUTPUT);
}

Во оваа поставка, излезот на звучниот модул е поврзан со пин 2, кој е конфигуриран како влез со отпорник за повлекување нагоре. Пинот на релето е поставен како излез за контрола на релето.

Wirig relay module to AC load

Следно, главната јамка проверува за звучен влез и го контролира релето врз основа на детектираниот звук:

void loop() {
  val = digitalRead(SOUND);
  if(val == HIGH && lightON == LOW){
    heard = 1 - heard;
    delay(100);
  }    
  lightON = val;

  if(heard == HIGH){
    Serial.println("Светлината е ВКЛУЧЕНА");
    digitalWrite(relayPin, LOW); 
  }else{
    Serial.println("Светлината е ИСКЛУЧЕНА");
    digitalWrite(relayPin, HIGH);
  } 
  delay(100);
}

Оваа јамка континуирано го чита звучниот влез. Ако се детектира звук (кога val е HIGH), ја префрла состојбата на светлината. Променливата heard следи дали е детектиран звук, и релето се активира соодветно.

Демонстрација / Што да очекувате

Откако сè е поврзано и кодот е поставен, можете да ја тестирате функционалноста со ракоплескање или зборување во близина на звучниот модул. Светлината треба да се вклучи со првото ракоплескање или звук и да се исклучи со следното. Бидете внимателни на растојанието и јачината на вашиот глас, бидејќи тие можат да влијаат на детекцијата (во видео на 05:00).

Вообичаени грешки вклучуваат неправилно жичање, особено со релето, што може да доведе до небезбедни услови. Осигурете се дека релето е правилно поврзано и дека AC сијалицата е правилно жичана за да избегнете било какви електрични опасности.

Временски ознаки на видеото

  • 00:00 - Вовед во проектот
  • 01:00 - Преглед на користените компоненти
  • 02:30 - Инструкции за поврзување
  • 04:15 - Објаснување на кодот
  • 05:00 - Демонстрација на функционалноста

Images

Wirig relay module to AC load
Wirig relay module to AC load
Sound detection microphone
KY-037-Voice-Sound-Detection-Sensor-Module-2
Sound detection microphone
KY-037-Voice-Sound-Detection-Sensor-Module-3
Sound detection microphone
KY-037-Voice-Sound-Detection-Sensor-Module-4
Arduino wiring of Sound detection microphone with relay
Arduino wiring of Sound detection microphone with relay
Sound detection microphone blue red
Sound detection microphone blue red
KY-037-Voice-Sound-Detection-Sensor-Module-1
KY-037-Voice-Sound-Detection-Sensor-Module-1
77-Control AC bulb with a hand clap or voice (basic digital)
Language: C++
/*
 * This is the Arduino code for a sound module for Arduino (basic).
This video shows you how to turn an AC light on 
with a clap or your voice and turn it off with another clap
or shout. This code is a basic version where 
the digital output of the module is used.
Please see the other version where actual analog sound values are 
used to control the light.


 * 
 // written by Ahmad Shamshiri for Robojax.com on 
 February 17, 2018 at 13:28 in Ajax, Ontario, Canada


 * Watch the video for details: https://youtu.be/1szA8CKWuZY
 * Code is available at: http://robojax.com/learn/arduino
 */
 
int SOUND = 2;// connect output to Sound module DO
int relayPin = 10;// Connected to relay (LED)

// do not change values below
int val = 0; // light value from pin 2
int lightON = 0;//light status
int heard = 0;//sound heard status


void setup() {
   // SOUND Sensor Code by Robojax.com 20180217
  Serial.begin(9600);
  pinMode(SOUND, INPUT_PULLUP); 
  pinMode(relayPin, OUTPUT);

}

void loop() {
 // SOUND Sensor Code by Robojax.com 20180217
  val = digitalRead(SOUND);

  if(val == HIGH && lightON == LOW){

    heard = 1-heard;
    delay(100);
  }    
 // SOUND Sensor Code by Robojax.com 20180217
  lightON = val;

      if(heard == HIGH){
        Serial.println("Light ON");
        digitalWrite(relayPin, LOW); 
       
      }else{
        Serial.println("Light OFF");
        digitalWrite(relayPin, HIGH);
   
      }     


 // SOUND Sensor Code by Robojax.com 20180217
  delay(100);
}

Things you might need

Resources & references

No resources yet.

Files📁

Fritzing File