Bygg din egen (billigt!) multi-function Trådlös kamera controller. (18 / 22 steg)
Steg 18: sensorer
När du använder läget för att gå igenom alternativ som du vill bli förevisat med en mer - utlöst skytte. De första skärmen visar en realtid avläsning av vad ADC "se", detta ger dig en grundläggande uppfattning om vilken typ av värden du är "slå" och hur du ändrar miljön påverkas dem. Att trycka på knappen skjuta låter dig ange vad registeransvarige utlöser på. ADC går upp till 1024, är det högsta du kan ange 1024. Till vänster om siffrorna är operatören - du kan ställa in den > (större än), < (mindre än) eller = (lika med). Detta tillåter stor flexibilitet med skytte, kan du välja för att ta en bild när en ljus aktiverar eller inaktiverar eller om du använder en exakt kontrollerad sensor (till exempel säga en termometer, Gud vet varför) du kan utlösa från en exakt avläsning.
Jag satte i två lysdioder på min styrenhet för att visa om utlösaren är för närvarande producerar en match. Detta har två fördelar. En, du kan testa din sensorer innan du gör fotograferingen och för det andra kan du undvika tvetydiga villkor. Till exempel mikrofoner ofta varierar runt några centrala värde (eftersom ljud är i praktiken en överlagring av sinusvågor - se fourier-analys). Detta värde är normalt 512 ish på min ADC (som väntat). Om du har två lampor visas, kan du vara säker på att när du skjuter, det kommer att utlösa. Om du har ett rött ljus bara, då kan du vara mer säker på att du inte kommer att få en falsk bild. Och naturligtvis, ett grönt ljus betyder att villkoret är uppfyllt så du bör justera därefter. Med en sund sensor, att lägga till en pott låter dig ändra förstärkningen av mikrofonen så att du kan "filter" (du vill ändra förstärkningen av opamp) ut tystare ljud.
Tråd upp en LED till pin 24 och en annan till stift 23 med en reisistor i serie för att begränsa strömmen. Gå så svagt som du känner att du behöver, låg effekt är viktigt. Jag valde att ha grön på PC1 (23), röd på PC2 (24.
Pressning skjuta igen kan du ställa in en fördröjning, upp till 999ms (men du kan alltid lägga till stöd för mer information). Detta är praktiskt för att ta bilder av effekterna några millisekunder efter händelsen inträffar - kreativ kontroll, kan man säga.
Att trycka på skjuta en sista gång kommer att ställa in enheten kommer. ADC kommer att uppdatera lite oftare och när sensorn blir en villkora match, förinställd fördröjning startar och bilden är tagen efter det (med bekräftelse på skärmen).
Sensorer
Det finns två huvudsakliga sensorer kan vi använda. Först är ljus. Detta är fruktansvärt enkel:
Ansluta en ljus beroende motstånd eller fotodiod (snabbare reaktion tid allmänt) upp till VCC och sedan i serie med ett motstånd till jord. Anslut en tråd kommer från mellan LDR och motståndet till ingångsstiftet ADC. Plocka en resistor som matchar din LDR (du kan testa det med en multimeter) maximalt motstånd. Du bör sluta med ett värde som varierar från nästan 1024 till noll beroende på ljusstyrkan i ljuset. Om du sätter den LDR och motstånd på rätt sätt runda, bör värdet noll när du täcker komponenten och stora när du lysa ett starkt ljus - en laser ger ett mycket högt värde som är ungefär konstant.
Några tillämpningar av detta inkluderar saker exploderar, laser tripwires eller (det roligaste) lightning.
Ljud tar lite mer mygel. För ljud sensorn använde jag en Elektret mikrofon. Elektret kondensatormikrofoner finns i bara om något som har poster ljud. De plockar upp ett brett frekvensområde så är ganska bra för detta. Det enda problemet är att de vanligtvis producerar en utsignal som är alldeles för liten att upptäcka genom ADC (minst 5mV). Så, vi måste förstärka det.
Det finns en hel del kretsar online behandlar Elektret förstärkning, men den metod som jag funnit vara mest tillförlitliga var med en Op-förstärkare. Den idealiska opamp har obegränsad vinst, så oroa dig inte om det inte skulle kunna förstärka nog (den genomsnittliga opamp har en open loop vinst om någonstans runt 10 till 8)! Jag byggde en riktigt enkel icke-invertering förstärkare med en TL072 (visas i schematiskt). Motståndet kommer från utdata till icke-vända-ingången styr vinsten. Jag försökte en vinst om 100 - liten eller ingen effekt. Upping detta med en 470 k resistor (vinst på 470) fick jag något bättre resultat, klappar ganska högljutt utlöst sensorn. Upping detta till 1MOhm gav utmärkt (om kanske lite för känslig) resultat.
Kom ihåg att vinst är Vout/Vin, kontrolleras av förhållandet mellan GAIN_CONTROL/R1, så 1M / 1k ger en vinst på 1000.
Vad jag rekommenderar är att köpa en 1M potentiometer och en 100K motstånd. Sätta in dessa i serie mellan produktionen och icke-invertering indata. Detta är gain-kontrollen. 100 k minsta motstånd ger en bra utgångspunkt, utlöser på höga ljud. Genom upping det till 1.1M, får du en mycket högre känslighet - utlösande från Viskningar och minsta ljud (du kan hitta att det är svårt att faktiskt utlösa på hög känslighet om inte har du ett riktigt tyst rum - min dator fans var tillräckligt för att sätta min). Med alla medel fiol tills du får ett anständigt motstånd utbud. Tyvärr är det ganska svårt att få potentiometrar över 1 M billigt, men du kan köpa upp till 5M om du verkligen vill driva det.
Opamp kan drivas från den + 5 v järnväg (som kan Elektret) eller från ett separat 9V batteri. Power Elektret från 5V linje, kan du använda mer men se till att kolla databladet för din opamp till se vad den maximala spänningen blir - du vill inte någonsin ge indata till AVR av mer än 6 volt - och det är ett slöseri att ge något över 5 ändå (eftersom sensorn är bara 10-bitars). OPAMPs har vad som kallas en swing spänning, spänna över vilka de ska producera en utgång. Detta är normalt inspänningen minus ett par volt ände. Så, för mig med en 5V power järnväg, sluta jag utlöser på runt 600-700-opamp helt enkelt inte producera en större produktion. Det är där justerbar vinst kommer in i den.
Du bör justera känsligheten så att villkoret LED du vill bara stänger av/på (säga du vill > 600, du vill ändra potten långsamt så att den gröna lysdioden släcks bara). Detta säkerställer att du har en god chans att utlösa korrekt.
Glöm inte att sätta ett motstånd i serie med den positiva mic pin (mellan VCC). Om du inte, ska du blåsa.
Du kan helt enkelt kopiera design nedan, visas som både Schematisk och bakbord. Andra webbplatser har rapporterat mycket bättre resultat med mycket mindre vinst, så ta mina resultat med en nypa salt (jag kan saknas något uppenbart). Fiol och se hur du får på, kretsen är en välkänd opamp krets och Känn dig fri att experimentera, detta är bara en snabb och smutsig förstärkare.
Diagrammen som nedan för båda sensorerna. Ersätt GAIN_CONTROL motståndet med ett variabelt motstånd eller en potentiometer idealiskt. Opamp drivs av 5 v järnväg.
C2 är lite svårt att se, men det är 100n.
Om du vill testa ADC separat, finns det källkoden för det - men - ADC kommer att visa dig dess aktuella värde när du laddar upp menyn trigger ändå.