Arduino 8 AC Outlet (plug-in) Timer / Vampire Killer (3 / 8 steg)

Steg 3: Firmware (källkod)

Jag ville göra enheten så lätt till att även min mor kunde göra det-programmet.
Med en cue från Steve Jobs' "Jag hatar knappar" attityd, jag kom upp med följande programmering metod.

Tryck på knappen. Den frågar dig vilken utlopp till programmet.
Ringa upp potten till uttag du vill programmera från 1 till 8.
(hela vägen ner är "Oj" positionen och visar inte ett outlet-nummer - om du inte menar att programmera en, sätta potten för denna ståndpunkt, och tryck på knappen två gånger)
Tryck på knappen bekräfta utlopp. Det begär nu en varaktighet.
Varaktigheter varierar från 1 till 9 timmar i steg om 1 timme, eller hela vägen ner är avstängd, och hela vägen upp (alltid) på
Tryck på knappen. Det utloppet är nu programmerad.

Sedan dess vi programmering laddning varaktigheter etc. Jag känner inte behov av något mer exakt än bara timmar.
Om du vet din telefon tar 1 timme och 20 minuter att ladda - precis som det i 2 timmar. Ingen biggie.
Om du behöver något mer exakt, kan du ändra koden.

Om de 2 andra timer och 1 minut timer jämförelse / beräkningar ser lite konstigt, det är för att de tar hänsyn till 50 dagars rollover av funktionen millis(). Om det är gobbledegook till du, oroa dig inte det. Eftersom timern som funktionen millis() är knuten till kan bara räkna till ett ändligt antal innan det "rullar över" till 0, vi har konto i våra timer beräkningar för i händelse av att välta händer under körning. Timern rullar över en gång om varje 50 dagar. Denna enhet var inledningsvis tänkt att alltid vara på, så beräkningarna hade att redovisa som. Nu när enheten stänger sig själv efter slutförandet av en timer kör, är mycket mindre av ett problem (om det är ett problem alls). Det enda sättet det kan vara en fråga nu skulle vara om du hålla ställa nya timers medan andra är fortfarande igång och göra det så ofta, att det aldrig är en tid som alla butiker är alla av.

Du kommer att märka en massa bortkommenterad kod. Detta är kod som jag hade lagt i medan felsökning koden. Jag brytt bara aldrig att ta bort den ifall någon annan kunde dra nytta av det på vägen om de ville ändra koden.

Se Steg
Relaterade Ämnen

Plugduino - baserade Arduino 120 Volt outlet controller

ge din Arduino en 120 volt spark i byxorna!Arduino är ett bra verktyg för alla som är intresserade av lärande microcontroller programmering, men efter blinkar några lysdioder, vad är nästa? Detta projekt kan din Arduino att kontroll verkliga 120 Volt...

Vampire Killer

! VARNING!DETTA ÄR INTE EN LEKSAKDETTA ÄR INTE EN VERKLIG PISKAOM DU FÖRSÖKER ANVÄNDA DEN KOMMER ATT DET BRYTA!Om du vill ha en piska som inte kommer att bryta du behöver svetsa eller löda ringen stängs!Detta inspirerade av Vampire mördaren från Cast...

Arduino Timer

Hej alla, detta instructable handlar om hur man bygger ett stoppur / Timer med Arduino.Dragen av denna Timer: (kolla mer i djup Detaljer hur du använder dessa funktioner i "Kod/skiss" avsnitt1. du kan ange ett tidsmål för en händelse och också k...

Kitchen Timer med en Arduino

Om du gillar matlagning och har för vana att lämna gasspis på för länge, kan detta vara ett allvarligt problem eftersom ingen gillar bränd mat. För att lösa detta problem ska jag visa dig hur man bygger ditt eget kök trimmer som drivs av en Arduino.D...

Styra arduino med joystick

efter ungefär en månad av har min arduino fick jag uttråkad så jag surfade på nätet och fann detta cool sätt att kontrollera arduinoOm du gör någon sak olaglig är jag inte hållas ansvarigaSteg 1: saker som behövs 1. arduino (duh)2. dator (om du läser...

ThermoClock: En OpenSource Arduino UNO OLED klocka som mäter även temperatur

Hej, alla!Idag ska jag visa dig hur man gör An OpenSource Arduino UNO OLED klocka att också åtgärder temperatur. Detta projekt är en OpenSource och det är öppet för alla. Det kräver inte någon särskild ingenjör färdigheter, och tar dig mindre än någr...

Arduino 101 grunderna

Syftet med detta instructable är att införa skriva grunderna till alla nykomlingar till världens Arduino skiss. Det är tänkt att vara en Nybörjarguide som innehåller detaljerad förklaring om basic uttalanden och funktioner. De flesta av de skisser so...

Dator fläkt konvertering till outlet-fläkten

med 1 av 2 dator fans i en stationär, kan du konvertera den till en outlet drivs fan att du skulle köpa för runt $40.Steg 1: Välj din trasiga dator Med trasiga datorn, kan du rensa bort många arbetande delarna inklusive 2 datorfläktar.Steg 2: Ta isär...

Styra Arduino trådlöst med MATLAB

varit att se några DIYs på hur du upprättar en kommunikation mellan MATLAB ansökan och Arduino som är hårdkodade till PC. Men har inte jag stött på något som styr Arduino via MATLAB trådlöst via ENC28J60 kompatibel Ethernet shield. I denna kompatibel...

Arduino UV LED PCB exponering Box

här är bilder från min UV LED PCB exponering låda, jag gjorde det eftersom jag var inte att ha mycket tur med "Tryck på n Peel" framställningsmetoden PCB och väl det lät som ett coolt projekt.Jag gjorde det av följande: e men det har inte någon...

Arduino dusch Monitor 2

"eftersom detta lata gamla Geek (LOG) blir gamla, he(I) glömma saker. Nu jag vilja duscha varannan dag men minns inte om det är dusch dag eller inte. Jag kan markera den på en kalender (papper eller dator) eller jag kunde ha kalenderns alarm mig men...

Gamla skolan Arduino MIDI Sequencer

använda en Arduino single-board dator och en "sköld" ombord, detta projekt skapar en MIDI-sequencer som kan spela in och spela upp sekvenser av MIDI-noter. Det liknar gamla skolan sequencers i den sekvensen är monofoniska (en anmärkning i taget)...

Raspberry Pi + Arduino Serial med LCD-skärm

IntroDetta är min Raspberry Pi info LCD, jag ville försöka få Arduino och Raspberry Pi prata med varandra via USB följetong och jag gjorde denna lilla projekt.Raspberry Pi använder ett python-skript för att hämta data och skickar det sedan som en str...

Arduino vågform Generator

vågform generatorer (även kallad funktion generatorer) är användbar för testning och felsökning kretsar. Jag använder dem ofta för att testa frekvenssvaret av elektronikkomponenter som op förstärkare och sensorer. Denna vågform generator drivs av en...

Arduino vågform Generator sköld

Vågform generatorer (även kallad funktion generatorer) är användbar för testning och felsökning kretsar. De kan användas för att testa frekvenssvaret av elektroniska komponenter som op förstärkare och sensorer eller att karakterisera och felsöka ljud...

Arduino som en närhet detektor

Arduino styrelser kan upptäcka inställning av din hand från flera inches bort (ingen delar behövs), de kan också prata. Demonstrationen koden för varje förmåga och två arbetande projekt, skyddsanordning och TalkClock, ingår i DPD.zip.Ta en stund och...

Arduino stoppljus webbserver

på den plats jag arbetar, använder vi xymon för att övervaka våra servrar. Alla tjänster övervakas är viktiga, men vi ville ha en separat indikator att helt enkelt visa den allmänna hälsan hos de mest kritiska system. Dessutom kom vi upp med följande...

Ljuskänsliga Timing IR LED Control System baserat på Arduino

ICStation Team presentera denna Photosensitive timing infraröd LED control system. Detta system använder DC5V spänning för att arbeta. När ljusintensiteten är svag och någon visas i området infraröd, kommer att LED vara på. Medan miljömässiga ljusint...

Låter lyhörd LED ram

Detta är en produkt som jag kom till craft i min digitala multimedier klass. Projektet var till en punkt att vara en lösning på ett långvarigt problem för mig. Problemet är att när på en dator jag använder ljud bevis hörlurar och hade en tendens att...