Une alarme de blanchisserie pour les malentendants et tout le monde ! (6 / 7 étapes)

Etape 6: Code d’Arduino pour alarme de blanchisserie


/*
alarme stroboscopique blanchisserie par Emile Alline « Butch »
moniteurs tourner hors d’une laveuse ou sécheuse, puis tour à tour sur la lampe stroboscopique et à bord de LED
Matériel est ardweeny ATmega 328, fonctionne avec IDE 1.0 et versions antérieures
*/
loopDelay int = 1000 ;       boucle de retard entre lecture défini par utilisateur
const int LEDpin = 13 ;     broche de sortie pour à bord de LED
const int strobePin = 5 ;   stroboscope, ergot de sortie
const int dryerPin = 2 ;    broche de commutateur sécheuse salle
const int washerPin = 3 ;   goupille de commutateur de rondelle hall
int dryerState = 0 ;         état actuel de la sécheuse, la valeur zéro = off
int washerState = 0 ;        état actuel de la laveuse, la valeur zéro = off
int lastDryerState = 0 ;     l’état antérieur de la sécheuse, la valeur zéro = off
int lastWasherState = 0 ;    l’état antérieur de la laveuse, la valeur zéro = off
int firstDryerRead = 0 ;     première lecture du séchoir broche
int firstWasherRead = 0 ;    première lecture de la broche de la machine à laver
int secondDryerRead = 0 ;    deuxième lecture du séchoir broche
int secondWasherRead = 0 ;   deuxième lecture de la broche de la machine à laver
int readDelay = 8320 ;       le nombre de microsecondes pour retarder entre lectures
8320 déterminée expérimentalement donner la meilleure détection de 60 hz (~99.3% précis)

void setup() {}
pinMode(LEDpin,OUTPUT) ;      Initialise les broches de la LED en sortie de débogage
digitalWrite(LEDpin,LOW) ;    partit LED
pinMode (strobePin, sortie) ;  initialiser la broche strobe comme sortie
digitalWrite(strobePin,LOW) ; ensemble la broche strobe faible (strobe off)
pinMode (dryerPin, entrée) ;    initialiser la tige sèche comme une entrée de l’interrupteur de la salle
pinMode (washerPin, entrée) ;   initialiser la broche de la machine à laver comme entrée de l’interrupteur de la salle
}
void loop()
{
digitalWrite(LEDpin,HIGH) ; flash LED pour indiquer la boucle est active
Delay(20) ; valeur non critique
digitalWrite(LEDpin,LOW) ;

tout d’abord nous voir si il y a 60 hz courant sur la sécheuse, dans l’affirmative, alors état sécheuse est sur (= 1)
firstDryerRead = digitalRead(dryerPin) ;  vérifier l’état de pin sèche pour Salut partie de 60 hz
delayMicroseconds(readDelay) ;            Attendez que possible prochain cycle
secondDryerRead = digitalRead(dryerPin) ; puis vérifiez à nouveau pour éviter les pointes de courant de lecture

Si (firstDryerRead! = secondDryerRead) {//set l’État séchoir à on ou off (! = signifie pas égal)
dryerState = 1 ; lectures sont différentes, donc il doit toujours y avoir 60 hz sur dryerPin
}
else {/ / aucun 60 Hz si sèche ne doit être sur off
dryerState = 0 ; État d’équilibre condition, aucun courant de 60 hz
}
Si ((lastDryerState == 1) & & (dryerState == 0)) {/ / 60Hz passée à (& & signifie boolean et)
Serial.println ("séchoir éteint") ;          notifier l’utilisateur
digitalWrite(strobePin,HIGH) ; réglage stroboscopique pin haute (strobe sur), l’utilisateur va faire reset pour éteindre
digitalWrite(LEDpin,HIGH) ;
tandis que (true) / / travail réalisé, en boucle jusqu'à ce qu’un homme arrive pour réinitialiser
{
}
}
fin du séchoir lectures

Vérifiez pour 60 hz sur machine à laver, si oui, alors état de machine à laver est sur (= 1)
firstWasherRead = digitalRead(washerPin) ;  vérifier l’état de la broche de la machine à laver pour Salut partie de 60 hz
delayMicroseconds(readDelay) ;              Attendez que possible prochain cycle
secondWasherRead = digitalRead(washerPin) ; puis vérifiez à nouveau pour éviter les pointes de courant de lecture

{if(firstWasherRead!=secondWasherRead)}
washerState = 1 ; lectures sont différentes, donc il doit y avoir 60 hz sur washerPin
}
else {/ / aucun 60 Hz si sèche ne doit être sur off
washerState = 0 ; État d’équilibre condition, aucune 60 hz
}
Si ((lastWasherState == 1) & & (washerState == 0)) {/ / 60Hz passée à
Serial.println ("laveuse éteint") ;  notifier l’utilisateur
digitalWrite(strobePin,HIGH) ; réglage stroboscopique pin haute (strobe sur), l’utilisateur va faire reset pour éteindre
digitalWrite(LEDpin,HIGH) ;
tandis que (true) / / travail, boucle juste jusqu'à ce qu’un homme arrive pour réinitialiser
{
}
}
fin des lectures de la rondelle

lastDryerState = dryerState ;   enregistrer l’état de séchoir pour la comparaison plus tard
lastWasherState = washerState ; enregistrer l’état de la rondelle pour la comparaison plus tard
retard (loopDelay) ; en option, non requis
}

Articles Liés

Comment faire une icône Cool pour les sites Web avec Gimp

Comment faire une icône Cool pour les sites Web avec Gimp

Gimp est un éditeur de bonne image et une bonne alternative à Adobe Photoshop. Dans ce Instructable, je va vous montrer comment faire une bonne icône pour les sites Web (YouTube, Facebook, Myspace, Twitter, etc.).Etape 1: Le Basice Dans cette étape,
Comment faire une cible faite maison pour les enfants

Comment faire une cible faite maison pour les enfants

Comment faire une cible faite maison pour les enfants(Regardez la vidéo)Il s'agit d'un moyen facile de faire une cible pour les enfants. Il peut être utilisé avec la plupart des fusils jouets et même certains pistolets bb sous tension faible. Cela fo
Comment installer une porte en verre pour les armoires

Comment installer une porte en verre pour les armoires

coût de ce projet : Low - inclut le coût des panneaux de verre et les charnières de porte verreNiveau de Difficulté : Moyen à élevéTemps requis : 1-4 heures selon expertiseBloc d'avantages tangibles : Un plus beau meuble avec tous les échos étant cac
Comment faire pour avoir une fille : un guide pour les geeks comme moi.

Comment faire pour avoir une fille : un guide pour les geeks comme moi.

Dans ce Instructable, vous, oui, vous, apprendrez les secrets de l'atterrissage vous-même un vrai girlfreind. Ce n'est pas un guide uniquement pour les geeks, mais pour tous les gars qui peuvent dire « Im seul » suivez ces étapes simples, et les dame
Choisir une variante de ATmegaX8 pour les projets de type Arduino

Choisir une variante de ATmegaX8 pour les projets de type Arduino

en parcourant les listes Digikey et Mouser pour ATmega328 chips, il y a quelques différences subtiles qui ne sont pas apparentes sur la page d'inscription. Il est facile de choisir entre un 168 et une puce 328, mais ce que tout les lettres après ces
Bienvenue sur Autotools : une Solution de portabilité pour les systèmes Linux

Bienvenue sur Autotools : une Solution de portabilité pour les systèmes Linux

N'importe quel programmeur en C ou C++ veut rendre leur logiciel aussi simple que possible.Et cela signifie que la portabilité.Make GNU (futur instructable) semble être une bonne option, droit ?Jusqu'à ce que vous réalisiez les Makefiles sont dépenda
Ajouter une bague step-up (pour les filtres) à votre Holga !

Ajouter une bague step-up (pour les filtres) à votre Holga !

Cette instructable vous montrera comment ajouter une bague à votre Holga afin que vous pouvez relier des filtres à elle facilement. Oui... vous pouvez acheter la série Holga des filtres si vous aimez, et si vous ne possédez pas déjà un ensemble de fi
Comment mettre une musique de fond pour les livrets animés ?

Comment mettre une musique de fond pour les livrets animés ?

Vous voulez incorporer préférée musique légère comme la musique de backgroumd de votre ebook ? Lorsque vous ouvrez l'ebook dimanche matin, vous pouvez démarrer un jour de week-end heureux et détendu de paroles poétiques et une musique mélodieuse, qui
Comment servir une balle de Tennis (pour les droitiers)

Comment servir une balle de Tennis (pour les droitiers)

servir une balle de tennis peut être difficile, mais pratiquer les étapes suivantes devrait vous aider à servir avec plus de précision et de puissance.Étape 1 : Etape 1 :Tenir la raquette de tennis en utilisant une poignée continentale-Une prise cont
Faire une texture fausse facile pour les accessoires et les costumes !

Faire une texture fausse facile pour les accessoires et les costumes !

Cette technique je vais utiliser est arbitrée à comme empiler. C'est vraiment super car vous pouvez créer des formes intéressantes qui ont l'air beaucoup plus complexes qu'ils sont en réalité avec juste une pile de documents. La base générale est d'a
Comment faire une nappe d’art pour les petits enfants

Comment faire une nappe d’art pour les petits enfants

C'est presque comme un tutoriel, il est plus juste de le faire et vous en avez besoin. OK, vous en avez besoin si vous avez un petit enfant, ou si vous aimez peindre et vous êtes un peintre désordonné ou une personne malpropre avec des seaux de peint
Faire une carte d’anniversaire pour les amis:) !

Faire une carte d’anniversaire pour les amis:) !

Étape 1 :Parfois, vous ne connaissez wht à droit à une carte d'anniversaire, il vous suffit de sortir et en acheter un. Mais il s'avère, cartes de la maison sont plus réfléchis, donc je suis goanna vous montrer quelques conseils.Étape 2 : Pour votre
Online Payday Loans : une aubaine instantanée pour les emprunteurs

Online Payday Loans : une aubaine instantanée pour les emprunteurs

Manquer d'argent est une des situations plus douloureuses que personne ne veut s'occuper. Malheureusement, c'est un problème majeur pour nous tous qui n'ont pas grandi avec une tonne d'argent dans notre compte bancaire, ou un fonds d'affectation spéc
Comment prendre une capture d’écran [pour les nuls]

Comment prendre une capture d’écran [pour les nuls]

prendre une capture d'écran peut être très utile. Ses une chose plupart des gens savent, mais il y a des gens qui ne savent pas comment procéder.Étape 1 :Lorsque vous êtes sur la page que vous souhaitez prendre une capture d'écran de simple press CTR