Stap 1: Hoe het werkt!
De elektronische hardware is zeer beperkt, dat is geweldig, zoals de meesten van ons niet een ton van het geld te besteden aan de projecten van onze kant hebben. Ik ben erg trots op dit feit. Ik heb nooit gezien dat een willekeurige versie van de klepel waarmee een ADC steekproef voor lawaai. Alle van mijn vorige clap-circuits, en de andere klap circuit varianten die ik heb gezien vereist actieve of passieve versterking. Het duurde een beetje tijd om de programmering recht... Ik had veel wijzigingen aanbrengen door verschillende timing registers voordat ik tevreden met het resultaat was.
De Schematische CIRCUIT op de volgende pagina bevat een diepgaande analyse van de eenvoudige circuits betrokken. U moet geen probleem volgorde te volgen. Voor nu, laten we praten over de basistheorie achter het circuit. Ook, als je de video hebt bekeken, zult u hebben gezien een schematische verdeling van mijzelf persoonlijk.
Stap voor stap:
1) zodra de devive is aangesloten op de USB-poort van de computer, wordt het actief. Door actief, ik bedoel dat is voortdurend scannen voor luide geluiden, zoals een klap.
2) zodra het apparaat een luid genoeg lawaai detecteert, begint het een countdown-reeks. Het apparaat is in deze zeer korte tijd, voortdurend scannen voor een tweede lawaai. De duur van de countdown-reeks is onder 600 milliseconden.
3) indien binnen de termijn van de reeks van de countdown een tweede lawaai wordt gedetecteerd, de microprocessor activeert een relais, die is aangesloten op een AC stroombron, en een lading waarvoor AC (een lamp, ventilator, LCD, enz). Als de volgorde van de countdown zonder een ander lawaai wordt gedetecteerd verstrijkt, vervolgens het programma opnieuw gestart en zoekt naar een eerste lawaai. Dit is om ervoor te zorgen dat twee klapt vereist voor de activering, niet slechts een zijn.
4) als het apparaat gedetecteerd twee klapt, uw Relais is nu geactiveerd en uw AC-apparaat wordt aangedreven. Het programma gaat nu in een zeer vergelijkbaar gebied van het programma dat in principe het eerste deel van het programma imiteert. Hij wacht op een andere set van klapt, alleen dit keer die het Relais deactiveren zal als twee klapt worden gedetecteerd.
5) als twee meer klapt worden gedetecteerd binnen de countdown-reeks, wordt het Relais gedeactiveerd, en het AC-apparaat wordt uitgeschakeld. Het programma begint dan opnieuw.
Het is een zeer eenvoudige programmering algoritme. Ik besloot om de PIC10F222 -Microprocessor (MCU), die zeer goedkoop - minder dan $1 is als gekocht in bulk gebruiken). Het probleem met de PIC10-serie, is dat het een archiac MCU, en het gaat zonder de BTG (Bit wisselknop) en vergelijk opdrachten. Dit maakte de MCU een vrij grote pijn in de kont te programmeren. Het vereist veel meer code, en een TON meer geduld. Ik heb de voorwaarde dat de code in de SOFTWARE stap, dus eens een kijkje op het. Ik heb mijn best gedaan om commentaar van de code, dus probeer te volgen samen met het!
GEEN VERSTERKER???
Dat klopt! Geen versterker! Het gekoppelde signaal vanuit de microfoon is zo klein dat het meestal vereist versterking verenigbaar zijn met de PIC. Wat ik hier heb gedaan is, via programmering, lezingen ontleend aan de ADC, en keek voor signalen in het bereik van 20-40 millivolt (0.02-0.04 volt). Als het geluid luid genoeg is, vermag de ADC pikken dat kleine signaal, en zet hem in een hexadecimale waarde, die vervolgens wordt vergeleken met een vooraf geladen waarde. Als het signaal sterker dan 20mv is, wordt vervolgens aanvaard door de programmering als een "CLAP".
DE ADC:
De PIC10F222 heeft een interne ADC mogelijkheid waarmee de gebruiker om te proeven van een analoog signaal tussen 0v en 5v. Deze analoge waarde wordt vervolgens omgezet in een HEX-waarde op basis van een binair getal. Dit is een 8-bit HEX waarde.
Als er 5v op onze analoge ingang, en we een monster genomen, zal de waarde in het ADC register "1111 1111, die gelijk is aan FF in HEX" worden
Als er 0v op onze analoge ingang, en we een monster genomen, zal de waarde in het ADC register "0000 0000, die gelijk is aan 00 in HEX" worden
In de programmering, uitgevoerd ik een routine die monsters van de spanning aan de ADC-input, en als de waarde 0000 0001 (01 H is) of hoger, deze wordt herkend door het programma als een "Clap".
Overzicht van de onderdelen (met behulp van USB als de stroomvoorziening):
* Electret/condensator microfoon
* PIC10F222 MCU 8-pins DIP IC
* USB-kabel
* Aansluitblok
* 5v Relais
* NPN kleine signaal transistor, zoals 2N2222, 2N4401 of S9013
* De dollaropslag macht bar
* Weerstanden: 470R / 100k / 2 x 10 k
* Rode LED
* N4004 diode
* Condensatoren: 2 x 0.1uf / 10uf
* Prototyping PCB (5cm / 7cm)
GEREEDSCHAP:
1) Soldering Iron
2) lijmpistool
3) de veiligheidsbril
4) geduld
5) sommige solderen ervaring