Reginald: en UDP-övervakning bot; kontroll via Internet (13 / 26 steg)
Steg 13: Gränssnitt Dream Cheeky torn
Hur fungerar dessa torn exakt?
Inom varje torn är en switch och en liten likströmsmotor. Detta är allt du behöver till brand tornet. DC-motor vevar en kolv på baksidan av tornet och vid en viss punkt, mekanik inom tornet släpp kolven. Detta är fjäderbelastade så att kolven då lanserar framåt, skjuta en missil. Vid denna punkt, resor kolven en switch. DC-motor fortsätter att dra kolven tillbaka igen. Mekaniken i tornet Rotera automatiskt tunnan; prepping nästa missil som switch utgåvor. Processen börjar om igen.
Designen i denna produkt är ganska imponerande. Mekaniken i tornet hand ta om så mycket för dig. Det enda du har att kontrollera att avfyra tornet korrekt är växeln och DC-motor.
Hur man bygger kretsen för torn:
I gamla mikrokontroller som vi skär från tornet: det används växeln för att upptäcka när tornet sparken exakt. Det därefter uppsättningar en timer för att köra DC-motor bara lite längre tid att dra kolven tillbaka lite. I den ursprungliga designen, när du skjuter tornet, kör det DC-motor för en bra andra innan det faktiskt sparken. Detta var inte tillfredsställande för mig, jag ville tornet att avfyra det ögonblick jag tryckte min mellanslagstangenten på tangentbordet.
Senare, vi kommer att ändra torn att samverka med vår styrelse, men för nu, vi bygger endast styrelsen.
Så här fungerar transistor kretsen:
Positiva trådarna av likströmsmotorer i tornet är anslutna direkt till 7 volt, de negativa kablarna är anslutna till transistorn "Collector" stift. "Sändare" på transistorn går till marken. När transistorn "bas" är låg, inga aktuella flöden genom "Samlaren" till "Emitter". När jag vill skjuta en missil, ställer jag "Basen" hög med Arduino. Strömmen sedan börjar flöda och vänder DC motor på. Medan "Basen" är inställd på hög, kontrollerar Arduino ständigt dess ingångsstift (in PIN-koden är den ansluten till växeln) med en "Medan" loop. Eftersom DC-motor är igång, kommer så småningom tornet brand. Det är då växeln inuti tornet stängs, och skicka in PIN-koden till Arduino hög. Arduinoen ser detta och räknas för en viss tid innan inställningen "Base" pin låg, och stoppa nuvarande till DC-motor. På denna tid, växeln är släppt och går tillbaka till låg.
Hur lång tid Arduino räkningarna för innan inställningen "Base" lågt igen är hur lång tid det tar för DC-motor dra kolven tillbaka strax före tidpunkten för bränning. Det är genom denna metod att tornet kommer eld nu när jag trycker på mellanslagstangenten.
Viktig anmärkning om ingångsstift till Arduino:
Det är viktigt att komma ihåg, att det är en bra idé att ha ett motstånd mellan ingångsstift på Arduino och byta, så att sätt in PIN-koden inte får en kraftfull 7 volt. Jag visar inte detta motstånd i de två första diagram, men i 4: e bilden av min ombord, dessa motstånd är markerade.