Lumières activées par entrée/sortie (3 / 4 étapes)

Étape 3: Le Code

Le programme est conçu pour allumer les lumières d’un mouvement par capteur 1 ou 2 et off pour capteur 2 à 1. Les variables de distance sont en cm, vous pouvez modifier la variable selon vos besoins. Par défaut, la portée est définie à 100 cm.

Le programme est le suivant,

/ * Le programme utilise deux capteurs à ultrasons pour fournir des détails pour l’entrée et sorties utilisées pour allumer les lumières ou d’éteindre.

* Le code écrit par Siddak Bakshi

* Distribution Rights Reserved

*/

Variables globales

#define trig1Pin //Defining 12 broches pour Trigger1 (Port de sortie)

#define echo1Pin //Defining 13 broches pour Echo1 (Port d’entrée)

#define trig2Pin 2 //Defining Pin pour Trigger2 (Port de sortie)

#define echo2Pin 2 //Defining Pin pour Echo2 (Port d’entrée)

int mené = 8 ; / * La led représente la lumière qui est contrôlée à ce projet. Si vous souhaitez utiliser une ampoule normale de remplacer la led avec un relais, vous pouvez utiliser comme un interrupteur à bascule pour votre ampoule * /

led1 int = 11 ; / * Led sont de gauche et droit juste par souci de commodité. Tout en prototypage, vous ne peut pas réellement regarder quel capteur à ultrasons est en train de travailler ou est activé. Si les voyants agissent comme des indicateurs. vous pouvez supprimer les voyants de gauche et de droite dans le code pour le recueille final /

led2 int = 10 ;

int compteur = 0 ;

unsigned long time_since_last_reset = 0 ; Pour la mise en référence de temps avant les boucles int interval_one = 3000 ; 3 secondes pour la 1ère boucle while

int interval_two = 3000 ; 3 secondes pour la 2ème boucle while

Fin de Variables globales

void setup() {Serial.begin (9600); //Serial écran mis à 9600 Bauds

pinMode (trig1Pin, sortie) ;

pinMode (echo1Pin, entrée) ;

pinMode (trig2Pin, sortie) ;

pinMode (echo2Pin, entrée) ;

pinMode (led, sortie) ;

pinMode (led1, sortie) ;

pinMode (led2, sortie) ; }

void loop() {}

Durée1 int, distance1 ;

digitalWrite (trig1Pin, HIGH) ;

delayMicroseconds(1000) ;

digitalWrite (trig1Pin, basse) ;

Durée1 = pulseIn (echo1Pin, HIGH) ;

distance1 = (Durée1/2) / 29,1 ;

Si (distance1 < = 100 & & distance1 > = 0) {}

digitalWrite (led2, HIGH) ;

int t = 0 ;

time_since_last_reset = millis() ; obtenir referenece de temps tout en (t == 0 & & (millis() - time_since_last_reset) < interval_one) //While boucle n ° 1 pour « Lights On »

{int Durée3, distance3 ;

digitalWrite (trig2Pin, HIGH) ;

delayMicroseconds(1000) ;

digitalWrite (trig2Pin, basse) ;

Durée3 = pulseIn (echo2Pin, HIGH) ;

distance3 = (Durée3/2) / 29,1 ;

Si (distance3 < = 100 & & distance3 > = 0)

{

compteur ++ ; Serial.println (« Compteur = » + compteur) ;

digitalWrite (led2, faible) ;

Serial.println (« s’allume ») ;

digitalWrite (conduit, en haut) ; t = 2000 ; Delay(1000) ;

}

}

if((Millis() - time_since_last_reset) > = interval_one) //To désactiver DEL1 si le temps s’épuise {}

digitalWrite (led2, faible) ;

}

}

Durée2 int, distance2 ;

digitalWrite (trig2Pin, HIGH) ;

delayMicroseconds(1000) ;

digitalWrite (trig2Pin, basse) ;

Durée2 = pulseIn (echo2Pin, HIGH) ;

distance2 = (Durée2/2) / 29,1 ;

Si (distance2 < = 100 & & distance2 > = 0)

{digitalWrite (led1, HIGH); //Sensor 1 détecte le mouvement dirigé par conséquent t int = 0 ;

time_since_last_reset = millis() ; obtenir la référence de temps tout en (t == 0 & & (millis() - time_since_last_reset) < interval_two) //While boucle n ° 2 pour « ChâssisOff »

{

int Durée4, distance4 ;

digitalWrite (trig1Pin, HIGH) ;

delayMicroseconds(1000) ;

digitalWrite (trig1Pin, basse) ;

Durée4 = pulseIn (echo1Pin, HIGH) ;

distance4 = (Durée4/2) / 29,1 ;

Si (distance4 < = 100 & & distance4 > = 0)

{if(counter==0) {digitalWrite (led1, LOW); break ;

}

compteur--;

Serial.println (« Compteur = » + compteur) ;

if(Counter==0) {digitalWrite (led1, faible) ;

Delay(3000) ;

Serial.println ("Lights off") ;

digitalWrite (led, faible) ;

t = t + 1 ;

}

ElseIf (compteur! = 0 & & compteur > 0)

{

digitalWrite (led1, faible) ;

rupture ;

}

}

d’autre if((millis() - time_since_last_reset) > = interval_two) //To désactiver DEL1 si le temps s’épuise {}

digitalWrite (led1, faible) ;

}

}

}

Delay(300) ;

}

Articles Liés

Motion activé des lumières de Noël

Motion activé des lumières de Noël

Dans ce Instructable, je vais vous montrer comment faire vos cadeaux de Noël phares s'allument quand il y a quelqu'un dans la salle en utilisant un Arduino, module de relais et un détecteur de mouvement PIR.J'ai fait cela parce que je voulais les lum
Construire un pistolet portail échelle 1:1 avec des lumières

Construire un pistolet portail échelle 1:1 avec des lumières

Introduction :Ce Instructable décrira en détail le processus que j'ai vécu tout en construisant ma propre Ouverture Science Handheld Portal Device [AKA le "Portal Gun"] des jeux Valve Portal et Portal 2. Bien que le Portal Gun est le principal o
Quiz de contrôleur de jeu à l’aide des « Avertisseurs de lumières et de sons » et Arduino

Quiz de contrôleur de jeu à l’aide des « Avertisseurs de lumières et de sons » et Arduino

jeux de quiz style Jeopardy sont favoris pour créer l'excitation et l'enseignement en même temps.  Enseignants, conseillers de camp l'été et les éducateurs de l'industrie même trouvent ce type de jeu afin de générer l'intérêt et l'implication des par
Action à Distance : éteindre les lumières dans le confort de votre propre lit

Action à Distance : éteindre les lumières dans le confort de votre propre lit

Imaginez le scénario suivant : vous êtes recroquevillé dans son lit avec un bon livre pour un peu de lecture de l'heure du coucher. Le livre est intéressant, mais vous obtenez plus somnolent parce que le lit est tellement incroyablement confortable.
Arbre de Noël, lumières contrôlée par téléphone ? Un simple Internet of Things hack.

Arbre de Noël, lumières contrôlée par téléphone ? Un simple Internet of Things hack.

Mon fils voulait être en mesure de tourner l'arbre de Noël avec son téléphone sous et hors tension. Nous avons creusé autour dans le laboratoire de montagne secrète (AKA le sous-sol) et est venu avec le projet suivant, qui utilise un Arduino pour rév
Commandée par ordinateur de lumières de Noël avec lumière-O-Rama

Commandée par ordinateur de lumières de Noël avec lumière-O-Rama

Bienvenue sur mon guide étape par étape sur comment faire une étonnante démonstration de lumière de Noël ! Je vous guidera à travers toutes les étapes de la planification à l'appui sur start. Let's get started !Étape 1: Intro et penser à l'avenirTout
Lumières de LED Multicolor réactive de musique

Lumières de LED Multicolor réactive de musique

Éclairer vos soirées de nouvel an et impressionner tous vos amis avec ces étonnantes musique réactive multicolor LED s'allume cette réponse et changer leurs couleurs sur chaque battement fort. Ces feux n'est rien mais simples bandes LED RGB reliée à
Internet activé lumières escalier interactif

Internet activé lumières escalier interactif

Ok, donc cela a été fait avant, je sais.  Il y a même quelques instructables déjà sur comment faire des lumières de l'escalier.  Les miens sont un peu différentes.  Vous voyez, je commence au large dans une frénésie de « domotique » et c'est l'un des
Lumières de Noël basse tension dc contrôlé par ordinateur.

Lumières de Noël basse tension dc contrôlé par ordinateur.

AVERTISSEMENT : ne pas utiliser ou connecter WALL(120 or 240 volt) sous tension s'allume (ou quoi que ce soit qui se connecte à une prise murale ou autre.) AVEC CETTE CONFIGURATION. Il y a des risques d'incendie et de la mort imminentes si vous le fa
Activés par la lumière affichage armoire

Activés par la lumière affichage armoire

j'ai fait cette armoire pour une classe d'anglais comme un projet final. Il est basé sur une sculpture appelée "Naissance d'un piment Jalapeño", réalisée par un artiste latino, que notre professeur d'anglais nous a montré en classe un jour. La s
Arduino vocale lumières / sortie

Arduino vocale lumières / sortie

Bonjour tout le monde, récemment j'ai fait mes lumières de la pièce commandés par commande vocale. Ses vraiment simple à construire et il peuvent être utilisés pour autres applications chambre non seulement des lumières, il contrôle essentiellement d
Voix pour activer les lumières / Led (ARDUINO et ANDROID)

Voix pour activer les lumières / Led (ARDUINO et ANDROID)

Controlling You ' r la maison des lumières à l'aide d'un téléphone android arduino et You ' r!!!C'est mon tout premier instructable, je voulais contrôler ma maison à l'aide d'un téléphone android et arduino.Il y a beaucoup d'autres options disponible
Lumières LED Portable alimenté par batterie

Lumières LED Portable alimenté par batterie

il s'agit d'un circuit simple « Portable LED Lights », qui peut traiter des ténèbres inattendues et indésirables dans nos maisons ou des bureaux. Il fournit une quantité considérable de luminosité pour faire nos tâches quotidiennes. Ce circuit utilis
Lumières d’Aquarium de RVB avec les levers et les couchers de soleil

Lumières d’Aquarium de RVB avec les levers et les couchers de soleil

Remplacement des tubes fluorescents (T8) avec l'éclairage LED RGB, tellement doucement fondu entre heure jour et nuit par un lever et le rapprochement du coucher du soleil.Mon poisson a visiblement paniquer quand la minuterie éteigne les tubes fluore