Så la oss komme i gang. Først må du bestemme deg for komponenter og kretsløp. Prinsippet for betjening av kretsen er enkelt: et svakt signal fra mikrofonen forsterkes og sendes til den Arduino analoge stiften. Som forsterker vil jeg bruke en operasjonsforsterker (komparator). Det gir en mye høyere forsterkning sammenlignet med en konvensjonell transistor. I mitt tilfelle vil LM358-brikken fungere som denne komparatoren, den kan finnes bokstavelig talt hvor som helst. Og det koster ganske billig.
Hvis du ikke kunne finne LM358, kan du på sin plass sette hvilken som helst annen passende driftsforsterker. For eksempel sto komparatoren som er vist på bildet på forsterkertavlen til det infrarøde mottakersignalet i TV-en.
La oss se på sensorkretsen.
I tillegg til driftsforsterkeren, trenger vi noen få lettere tilgjengelige komponenter.
Den mest vanlige mikrofonen. Hvis mikrofonens polaritet ikke er indikert, er det bare å se på kontaktene. Minusen en går alltid til saken, og i kretsen er den følgelig koblet til "bakken".
Deretter trenger vi en 1 kΩ motstand.
Tre motstander på 10 kΩ.
Og ytterligere 100 kΩ motstand er 1 MΩ.
I mitt tilfelle brukes en 620 kOhm motstand som det "gylne middelverdien".
Men ideelt sett må du bruke en variabel motstand med riktig karakter. Som vist ved eksperimenter øker en større karakter bare enhetens følsomhet, men mer "støy" vises.
Den neste komponenten er en 0,1 uF kondensator. Det er merket "104".
Og en annen kondensator, på 4,7 uF.
Nå går vi over til samling. Jeg monterte kretsen med en montert installasjon.
Montering fullført.Jeg installerte kretsen i et etui som jeg laget av et lite stykke plastrør.
Vi fortsetter med å teste enheten. Jeg vil koble den til styret Arduino UNO. Vi beveger oss inn i Arduino-utviklingsmiljøet og åpner AnalogReadSerial-eksemplet i Basics-delen.
ugyldig oppsett () {
Serial.begin (9600); // koble seriekoblingen på 9600 baud
}
void loop () {
int sensorValue = analogRead (A0); / * lese verdien fra den analoge nålen og lagre den i variabelen sensorValue * /
Serial.println (sensorValue); // sende verdien til porten
forsinkelse (1); // vent ett millisekund på stabilisering
}
Før vi laster inn i brettet, endrer vi forsinkelsen med 50 millisekunder og laster den inn. Etter det lager vi en test bomull og følger indikasjonene. På klappetidspunktet hopper de, prøver å huske denne verdien omtrent og går tilbake til skissen.
Legg til et par linjer i skissen.
if (sensorValue> X) {
Serial.print ("CLAP");
forsinkelse (1000);
}
I stedet for "X", sett inn den samme verdien, last inn og klapp igjen. Så fortsett til du finner den optimale responsverdien. Med en overvurdert verdi vil betingelsen bare være oppfylt med bomull på veldig nær avstand. Med en lavere verdi vil tilstanden være tilfredsstilt ved minste lyd eller lyden av trinn.
Med riktig valg av motstand R5 kan denne sensoren også bli en digital en og kan brukes i maskinvareavbrudd. Potensialet med denne designen er stort, på grunnlag av dette kan du sette sammen en rekke forskjellige prosjekter, og dens enkelhet gjør enheten tilgjengelig for alle.
Avslutningsvis foreslår jeg å se en video der alt vises tydelig. Kalibreringsprosessen og monteringen av den enkleste bomullsbryteren er også forklart i mer detalj.
Jeg håper du likte det. Jeg ønsker deg en vellykket forsamling!