В този проект ще направим Clapper верига, използвайки концепцията за ADC (аналогово към цифрово преобразуване) в ARDUINO UNO. Ще използваме MIC и Uno, за да усетим звука и да предизвика отговор. Този превключвател Clap ON Clap OFF основно включва или изключва устройството, като използва звука на клап като превключвател. Преди това сме изградили превключвател Clap и превключвател Clap ON Clap OFF, използвайки 555 IC Timer.
При пляскане ще има пиков сигнал на MIC, който е много по-висок от нормалното, този сигнал се подава към усилвателя, макар и високочестотен филтър. Този усилен сигнал за напрежение се подава към ADC, който преобразува това високо напрежение в число. Така че ще има пик в четенето на ADC на UNO. При това откриване на пик ще превключваме светодиод на дъската, при всяко пляскане. Този проект е обяснен подробно по-долу.
MIC или Microphone е преобразувател на звук, който основно преобразува звуковата енергия в електрическа енергия, така че с този сензор имаме звук като променящо се напрежение. Обикновено записваме или усещаме звук чрез това устройство. Този преобразувател се използва във всички мобилни телефони и лаптопи. Типичен MIC изглежда,
Определяне на полярността на кондензаторния микрофон:
MIC има два терминала, единият е положителен, а друг отрицателен. Полярността на микрофона може да бъде намерена с помощта на мултиметър. Вземете положителната сонда на Multi-Meter (поставете уреда в режим DIODE TESTING) и го свържете към единия терминал на MIC и отрицателната сонда към другия терминал на MIC. Ако получите показанията на екрана, тогава терминалът на положителния (MIC) е на отрицателния терминал на Multi-Meter. Или просто можете да намерите клемите, като го погледнете, отрицателният терминал има две или три запояващи линии, свързани към металния корпус на микрофона. Тази свързаност, от отрицателен извод до металния му корпус, може също да бъде тествана с помощта на тестер за непрекъснатост, за да се открие отрицателният извод.
Необходими компоненти:
Хардуер:
ARDUINO UNO, захранване (5v), кондензаторен микрофон (обяснено по-горе)
2N3904 NPN транзистор,
100nF кондензатори (2 броя), един 100uF кондензатор,
1K Ω резистор, 1MΩ резистор, 15KΩ резистор (2 броя), един светодиод,
И Breadboard & Свързващи проводници.
Софтуер: Arduino IDE - Arduino всяка вечер.
Електрическа схема и работно обяснение:
Схемата на веригата на клапера е показана на фигурата по-долу:
Разделихме работата на четири части, а именно: Филтрация, Усилване, Аналогово-цифрово преобразуване и програмиране за превключване на светодиода
Винаги, когато има звук, MIC го взима и го преобразува в напрежение, линейно спрямо степента на звука. Така че за по-висок звук имаме по-висока стойност, а за по-нисък звук имаме по-ниска стойност. Тази стойност първо се подава към високочестотния филтър за филтриране. След това тази филтрирана стойност се подава към транзистора за усилване и транзисторът осигурява усиления изход в колектора. Този колекторен сигнал се подава към ADC0 канала на UNO, за аналогово-цифрово преобразуване. И накрая, Arduino е програмиран да превключва светодиода, свързан с ПИН 7 на PORTD, всеки път, когато ADC канал A0 излиза извън определено ниво.
1. Филтрация:
На първо място ще говорим накратко за RC високочестотния филтър, който е използван за филтриране на шумовете. Лесно е да се проектира и се състои от един резистор и единичен кондензатор. За тази схема не ни трябват много подробности, така че ще я улесним. Високочестотният филтър позволява сигнали с високочестотен проход от вход към изход, с други думи входният сигнал се появява на изхода, ако честотата на сигнала е по-висока от предписаната честота на филтъра. Засега не трябва да се тревожим за тези стойности, защото тук не проектираме аудио усилвател. Високочестотен филтър е показан във веригата.
След този филтър, сигнал за напрежение се подава към транзистора за усилване.
2. Усилване:
Напрежението на MIC е много ниско и не може да се подава към UNO за ADC (аналогово към цифрово преобразуване), така че за това ние проектираме прост усилвател, използващ транзистор. Тук сме проектирали единичен транзисторен усилвател за усилване на MIC напреженията. Този усилен сигнал за напрежение се подава допълнително към ADC0 канала на Arduino.
3. Аналогово-цифрово преобразуване:
ARDUINO има 6 ADC канала. Сред тях всеки един или всички от тях могат да се използват като входове за аналогово напрежение. UNO ADC е с 10-битова разделителна способност (така че целочислените стойности от (0- (2 ^ 10) 1023)). Това означава, че ще преобразува входните напрежения между 0 и 5 волта в целочислени стойности между 0 и 1023. Така че за всеки (5/1024 = 4.9mV) за единица.
Сега, за да преобразува UNO аналоговия сигнал в цифров сигнал, трябва да използваме ADC канал на ARDUINO UNO, с помощта на функциите по-долу:
1. analogRead (щифт); 2. analogReference ();
UNO ADC каналите имат референтна стойност по подразбиране 5V. Това означава, че можем да дадем максимално входно напрежение от 5V за ADC преобразуване на всеки входен канал. Тъй като някои сензори осигуряват напрежение от 0-2,5V, така че с 5V референция получаваме по-малка точност, така че имаме инструкция, която ни позволява да променим тази референтна стойност. Така че за промяна на референтната стойност имаме “analogReference ();”
В нашата схема оставихме това референтно напрежение по подразбиране, така че можем да прочетем стойността от ADC канал 0, като директно извикаме функцията „analogRead (pin);“, тук „pin“ представлява щифт, към който сме свързали аналоговия сигнал, в в този случай това би било „A0“. Стойността от ADC може да бъде взета в цяло число като „int sensorValue = analogRead (A0); ”, Чрез тази инструкция стойността от ADC се съхранява в цялото число„ sensorValue ”. Сега имаме стойността на транзистора в цифров вид, в паметта на UNO.
4. Програмирайте Arduino да превключва светодиода на всеки клап:
При нормални случаи MIC предоставя нормални сигнали и така имаме нормални цифрови стойности в UNO, но при пляскане там пик, предоставен от MIC, с това имаме пикова цифрова стойност в UNO, можем да програмираме UNO да превключва светодиод ВКЛЮЧЕН и ИЗКЛЮЧЕН, когато има пик. Така че при първото пляскане светодиодът се включва и остава включен. При второ пляскане светодиодът се изключва и остава изключен до следващото пляскане. С това имаме клаперна верига. Проверете кода на програмата по-долу.