Een Wasserij wekker voor slechthorenden en iedereen! (6 / 7 stap)

Stap 6: Arduino code voor Wasserij alarm


/*
Wasserij strobe alarm door Emile 'Butch' Alline
monitoren turn off van een wasmachine of droger, dan draait op stroboscoop en aan boord van de LED
Hardware is ardweeny 328 ATmega, werkt met de IDE 1.0 en eerder
*/
int loopDelay = 1000;       lus vertraging tussen lezingen ingesteld door gebruiker
Const int LEDpin = 13;     uitgang pins voor aan boord van de LED
Const int strobePin = 5;   flitser trigger uitgang pins
Const int dryerPin = 2;    droger hall schakelaar pin
Const int washerPin = 3;   wasmachine hall schakelaar pin
int dryerState = 0;         huidige stand van de droger, ingesteld op nul = off
int washerState = 0;        huidige stand van de wasmachine, ingesteld op nul = off
int lastDryerState = 0;     vorige staat van de droger, ingesteld op nul = off
int lastWasherState = 0;    vorige status van de wasmachine, ingesteld op nul = off
int firstDryerRead = 0;     eerste lezing van de droger pin
int firstWasherRead = 0;    eerste lezing van de ring pin
int secondDryerRead = 0;    tweede lezing van de droger pin
int secondWasherRead = 0;   tweede lezing van de ring pin
int readDelay = 8320;       het aantal microseconden moet worden gewacht tussen lezingen
8320 experimenteel bepaald opleveren van de beste detectie van 60 hz (~99.3% nauwkeurig)

VOID Setup {}
pinMode(LEDpin,OUTPUT);      LED pin initialiseren als output voor debug
digitalWrite(LEDpin,LOW);    LED verrekening
pinMode (strobePin, OUTPUT);  initialiseren van de stroboscoop pin als uitgang
digitalWrite(strobePin,LOW); set de strobe pin LOW (strobe uit)
pinMode (dryerPin, INPUT);    initialiseren van de droger pin als input uit hall-switch
pinMode (washerPin, INPUT);   initialiseren van de ring pin als input uit hall-switch
}
void loop
{
digitalWrite(LEDpin,HIGH); flitser LED om aan te geven van de lus is actief
vertraging(20); waarde niet kritisch
digitalWrite(LEDpin,LOW);

eerst zien we als er 60 hz huidige op de droger, Zoja dan droger staat brandt (= 1)
firstDryerRead = digitalRead(dryerPin);  status van droger pin voor Hallo deel van 60 hz
delayMicroseconds(readDelay);            wachten voor mogelijke volgende cyclus
secondDryerRead = digitalRead(dryerPin); Controleer het opnieuw om te voorkomen dat lezen lichtnet spikes

Als (firstDryerRead! = secondDryerRead) {//set de droger staat op of af (! = betekent niet gelijk)
dryerState = 1; lezingen zijn verschillend, dus er moet nog steeds 60 hz op dryerPin
}
else {/ / geen 60 Hz dus droger moet zijn uitgeschakeld
dryerState = 0; steady-state toestand, geen huidige 60 hz
}
Als ((lastDryerState == 1) & & (dryerState == 0)) {/ / 60 hz gewijzigd van op (& & betekent boolean en)
Serial.println ("droger uitgeschakeld");          gebruiker op de hoogte
digitalWrite(strobePin,HIGH); set strobe pin HIGH (strobe op), de gebruiker zal doen reset voor zwenking op vandoor
digitalWrite(LEDpin,HIGH);
terwijl (waar) / / klus te klaren, lus totdat een mens komt om te resetten
{
}
}
einde van de droger lezingen

Controleerinderegel voor 60 hz op de ring, dus dan is de wasmachine staat op (= 1)
firstWasherRead = digitalRead(washerPin);  status van wasmachine pin voor Hallo deel van 60 hz
delayMicroseconds(readDelay);              wachten voor mogelijke volgende cyclus
secondWasherRead = digitalRead(washerPin); Controleer het opnieuw om te voorkomen dat lezen lichtnet spikes

if(firstWasherRead!=secondWasherRead) {}
washerState = 1; lezingen zijn verschillend, dus moet er 60 hz op washerPin
}
else {/ / geen 60 Hz dus droger moet zijn uitgeschakeld
washerState = 0; steady-state toestand, geen 60 hz
}
Als ((lastWasherState == 1) & & (washerState == 0)) {/ / 60 hz gewijzigd van op uit
Serial.println ("wasmachine uitgeschakeld");  gebruiker op de hoogte
digitalWrite(strobePin,HIGH); set strobe pin HIGH (strobe op), de gebruiker zal doen reset voor zwenking op vandoor
digitalWrite(LEDpin,HIGH);
terwijl (waar) / / taak gedaan, net lus tot een mens binnenkomt om te resetten
{
}
}
einde van wasmachine lezingen

lastDryerState = dryerState;   opslaan van de droger staat voor later vergelijking
lastWasherState = washerState; wasmachine staat voor later vergelijking opslaan
vertraging (loopDelay); optioneel, geen vereiste
}

Gerelateerde Artikelen

Het maken van een demper/uitlaat voor uw fiets.

Het maken van een demper/uitlaat voor uw fiets.

Hier voor de 2011 fiets wedstrijd.Baseball cards en wasknijpers zijn CLASSIC, maar toen ik geïnspireerd was om mijn zoon bmx brullen als een echte 110cc dirtbike, ik het kon niet voorbijgaan! Hij had gewild om een dirtbike voor een tijdje, maar niet
Maak een Airsoft Gun voor minder dan $3!

Maak een Airsoft Gun voor minder dan $3!

Heeft u ooit gedroomd van het maken van een airsoft pistool met een budget van minder dan $3? Ik weet dat ik zeker hebben, met alle van de dure airsoft geweren er een oplossing moet voor het bouwen van een zeer goedkope geweer dat nog steeds als een
Bouwen van een robotachtig wapen voor de wetenschap Olympiade

Bouwen van een robotachtig wapen voor de wetenschap Olympiade

voor degenen die om te worstelen de juiste onderdelen vinden, proberen te achterhalen hoe samen te stellen hen, of moeite hebt met code, dit de juiste plaats is! Dit instructable is een volledige documentatie van Newton South High School Science Team
Chronobot: Een slimme wekker

Chronobot: Een slimme wekker

Chronobot is een slimme wekker die eigen geaardheid kunt voelen. Het is een analoge klok met een geweldig uitziende geval. De klok is vrij eenvoudig om te bouwen en instellen. Het gemaakt met behulp van een mini ardunio en een TFT-scherm. Chronobot i
Maak een aandenken boek voor uw kind Artwork

Maak een aandenken boek voor uw kind Artwork

bent u een ouder, kansen zijn die uw kind (of kinderen als is mijn geval) produceert riemen en riemen van illustraties, ambachtelijke, kaarten weinig geschriften en whathaveyou die je zeker u voelt moet houden, en uw kind gewoon ' verhuren u ontdoen
Het bouwen van een Bluetooth Intercom voor fietstochten, motorfiets rijdt, spionage, algemene chaos, enz...

Het bouwen van een Bluetooth Intercom voor fietstochten, motorfiets rijdt, spionage, algemene chaos, enz...

In dit instructable ik zal je laten zien hoe het bouwen van een draadloze intercom voor korte afstand tweewegcommunicatie. U kunt dit gebruiken om te chatten met een andere persoon op een fietstocht of motorfiets rijdt met helm gemonteerde bluetooth
Een nieuwe werkplek voor kleine ruimte

Een nieuwe werkplek voor kleine ruimte

Iedereen kan een maker, maar elke maker moet een ruimte om te werken aan zijn of haar projecten.Ik woon in een flat waar er is niet genoeg ruimte voor een werkbank. Gelukkig heb ik ook een kleine kamer met een klein beetje meer dan 7 vierkante meter
Meten Tape/riem — Een zak referentie voor uw taille

Meten Tape/riem — Een zak referentie voor uw taille

De gordel. Velen van ons dragen ze elke dag. Dingen meet ik bijna elke dag. Er was een tijd in mijn leven dat ik een ft 6' droeg. Rolmaat met mij elke dag, maar ik vond het lastig. Op een dag, wanneer te spelen met een laser cutter bij me opgekomen d
Farma: een huis bioreactor voor farmaceutische drugs

Farma: een huis bioreactor voor farmaceutische drugs

OverzichtSynthetische biologie uitgegroeid tot een grote industrie snel van een wetenschappelijke discipline. Veel nieuwe bedrijven ontwerpt microben die waardevolle chemicaliën, zoals farmaceutische drugs en geurstoffen, in zeer grote gisting reacto
Een WAPENING TRELLIS - voor huis en tuin

Een WAPENING TRELLIS - voor huis en tuin

een Trelly is een ondersteuning waarover wijnstokken en andere planten kunnen groeien. Ze kunnen voorzien van ons voedsel, schoonheid en schaduw. Een van de meest esthetisch aantrekkelijk, goedkoopste en gemakkelijkste manieren om een trellis is met
Het gebruik van een PSP als een game controller voor PC en PS3

Het gebruik van een PSP als een game controller voor PC en PS3

Hebben u ooit ging zitten om te spelen op je PS3 met een vriend en besefte dat u slechts één domeincontroller of was je spelen van een spel op uw PC en wilde dat u had een afzonderlijke controller? Nou nu kunt u in plaats van het kopen van een nieuwe
Creëren van een consistente Jumpshot voor 30 minuten per dag

Creëren van een consistente Jumpshot voor 30 minuten per dag

Basketbal, persoonlijk, is een van de meer plezier sport te spelen die er voor zo ongeveer iedereen. Het biedt een uitzonderlijke cardiotraining en vereist alleen op de minst twee mensen te spelen. Nog zijn veel nieuwkomers afgeraden als gevolg van h
Slechte Stator Fix--niet kopen een nieuwe stator voor uw motor!  Maken van een batterij-op ontstekingssysteem voor minder dan $50

Slechte Stator Fix--niet kopen een nieuwe stator voor uw motor! Maken van een batterij-op ontstekingssysteem voor minder dan $50

de kosten van een nieuwe stator kunnen honderden dollars.  Zonder een goede stator, zal uw motor gebrekkig of helemaal niet uitgevoerd.  Deze oplossing omzeilt volledig de stator met behulp van een 12 volt batterij voor het aandrijven van het contact
Hoe maak je een Aquaponic systeem voor een kleine kamer.

Hoe maak je een Aquaponic systeem voor een kleine kamer.

Ik ben een student en hoewel ik woon niet in de slaapzalen, mijn kamer is ongeveer zo groot. Ik wilde iets om te vrolijken naar mijn kamer en er minder uitzien als een laboratorium, maar dit zou ook perfect voor een toilet! Als mijn badkamer groter w