Télédéverrouillage / Arduino (3 / 4 étapes)

Étape 3: Code

j’ai eu l’aide de maewert pour la lumière d’assistance.
Le commutateur de dérivation le plus dur pour moi. C’est une collaboration entre sath02 et moi-même. Je suis toujours reconnaissant à ces gars là connaissance.

Si vous n’avez pas les bibliothèques nécessaires pour le sketch, ils sont ici pour le téléchargement.

Référence

Arduino sur une maquette

Clavier de codage

Tutoriel de clavier

#include < Password.h >
#include < Keypad.h >
#include < Servo.h > //tells d’utiliser la bibliothèque de servo
int pos = 5 ;    variable pour stocker la position du servo
bouton int = A0 ;  Le bouton est sur la broche 7
Servo myservo ; déclare le servo
#define retard 20 / / retard par boucle en ms

Mot de passe password = mot de passe ("4444") ; mot de passe pour déverrouiller la porte, peut être modifié

const byte rangs = 4 ; Quatre rangées
const byte COLS = 3 ; colonnes
Définir la vue d’ensemble
touches de char [lignes] [colonnes] = {}
{'1','2','3',},
{'4','5','6',},
{'7','8','9',},
{'*','0','#',},
};

rowPins Byte [rangs] = {4, 5, 2, 3};// connecter clavier ROW0, ligne1, ligne2 et ROW3 ces broches de l’Arduino.
colPins Byte [CDL] = {8, 7, 6,}; / / connecter clavier COL0, COL1 et COL2 ces broches de l’Arduino.

Créer le clavier
Clavier clavier = clavier (makeKeymap(keys), rowPins, colPins, lignes, colonnes) ;

unsigned long offtime ;
helper_light_is_on booléen = false ; Assistant lumière éteinte
variables vont changer :
buttonState int = 0 ;  variable pour la lecture de l’état de bouton poussoir
int lastButtonState = 0 ;

Sub handle_button()
{
lire l’état de la valeur du bouton poussoir :
buttonState = digitalRead(button) ;
Vérifiez si le bouton est appuyé.
Si (buttonState! = lastButtonState) {}
Commande gâche
myservo.Write(100) ;
Delay(20) ;
digitalWrite (10, haute) ;
Delay(1000) ; ce retard peut être remplacé par la valeur appropriée
digitalWrite (10, faible) ;
myservo.Write(160); / / déplacer verrouiller la position après 5 secondes
Delay(20) ;
}
lastButtonState = buttonState ;
}
void setup()
{
Serial.Begin(9600) ;
Serial.Write(254) ;
Serial.Write(0x01) ;
Delay(200) ;
pinMode (sortie 10,) ;  Lumière d’assistance
pinMode (sortie 11) ;  feu vert
pinMode (sortie 12,) ;  lumière rouge
pinMode (bouton, entrée) ;
myservo.Attach(9) ; servo sur la broche numérique 9 //servo
keypad.addEventListener(keypadEvent) ; Ajouter un écouteur d’événement pour ce clavier
pinMode (pos, sortie) ;
pinMode (bouton, entrée) ;
Delay(200) ;
}
void loop()
{
handle_button() ;
keypad.getKey() ;
myservo.Write(5) ;
process_helper_light() ;
}

prendre soin de certains événements spéciaux
Sub keypadEvent(KeypadEvent eKey)
{
commutateur (keypad.getState())
{
cas PRESSED :
une touche si léger la lumière d’assistance
helper_light_is_on = true ;
digitalWrite(10,HIGH) ;
offtime = millis() + 10000 ;  la valeur de l’offtime pendant 30 secondes dans l’avenir

Serial.Print ("entrez:") ;
Serial.println(eKey) ;
Delay(10) ;
Serial.Write(254) ;
commutateur (eKey)
{
cas ' *' :
checkPassword() ;
Delay(1) ;
rupture ;
cas « # » :
Password.Reset() ;
Delay(1) ;
rupture ;
par défaut :
Password.Append(eKey) ;
Delay(1) ;
}
}
}

Sub checkPassword()
{
Si (password.evaluate()) //if mot de passe est juste débloquer porte
{
Serial.println ("acceptés") ;
Serial.Write(254) ;
Delay(10) ;
Ajoutez le code à exécuter si cela fonctionne
myservo.Write(90) ; 160deg
digitalWrite (11, HIGH); //turn sur Led verte
Delay(3000) ; attendez 5 secondes
digitalWrite (11, LOW); / / arrête Led verte
}
d’autre
{
Serial.println ("refusé") ; Si les mots de passe mal garder porte verrouillée
Serial.Write(254) ;
Delay(10) ;
Ajoutez le code à exécuter si elle n’a pas fonctionné
myservo.Write(5) ;
digitalWrite (12, HIGH) ; Allumez les RedLed
Delay(3000) ; attendez 5 secondes
digitalWrite (12, LOW); //turn off Led rouge
}
{
Si (digitalRead(button) == faible)
myservo.Write(90) ;
pour (pos = 0; pos < 90; pos += 90) / / va de 0 degrés à 90 degrés
{/ / pas de diplôme
Serial.println ("ouvert") ;
myservo.Write(POS) ;
myservo.Write(90) ; 160deg
Delay(80) ;
myservo.Write(POS) ;              dire de servo pour aller à positionner dans la variable « pos »

}
Si (digitalRead(button) == HIGH)
d’autre
pour (pos = 90; pos > = 90; pos-= 90) / / va de 90 degrés à 0 degrés
myservo.Write(90) ;
{
Serial.println ("rester fermé") ;
myservo.Write(POS) ;               dire de servo pour aller à positionner dans la variable « pos »
Delay(50) ;
myservo.Write(5) ; 160deg
myservo.Write(POS) ;              dire de servo pour aller à positionner dans la variable « pos »
}
}
}

Cette routine s’éteint la lumière lorsque la minuterie expire
Sub process_helper_light(void)
{
Si (helper_light_is_on)
{
Si (millis() > = offtime)
{
digitalWrite(10,LOW) ;  éteindre la lumière d’assistance
helper_light_is_on = false ;
}
}
}

Articles Liés

Quiz-O-Tron 3000 : Système de verrouillage Arduino quiz concurrent

Quiz-O-Tron 3000 : Système de verrouillage Arduino quiz concurrent

Si vous n'avez jamais regardé un quiz télévisé, que vous avez probablement vu des concurrents essayer d'appuyer sur un bouton afin de gagner une chance de répondre à une question. Temps de réaction rapide de l'investiture se traduit par une sorte de
Barre de verrouillage Arduino.. sorta

Barre de verrouillage Arduino.. sorta

Ce projet a été difficile, mais rien ne vaut la pratique est facile et je suis fière que j'ai pu accomplir ce que j'ai fait ver. De savoir que mes compétences sont plus loin qu'ils étaient autrefois est une récompense sur leur propre... mais comment
Secret verrouillé boîte de tissu

Secret verrouillé boîte de tissu

Par Karena VerbitskyDans ce instructable, je vais vous montrer comment faire une boîte de tissus sans danger qui peut être déverrouillée par votre appareil iOS. Tromper vos amis, famille ou intrus avec cet espace caché.Étape 1: matériaux Boîte de Kle
Verrouillage de mot de passe Arduino

Verrouillage de mot de passe Arduino

Dans ce instructable je vais vous montrer ma serrure de mot de passe arduino, j'ai fait il y a un an. Et je vais vous apprendre comment faire vos propres. Je n'ai pas utilisé instructables pourtant à l'époque, alors ce sera une instructable qui a seu
Mécanisme de verrouillage de l’Arduino

Mécanisme de verrouillage de l’Arduino

Il s'agit d'un simple projet Arduino qui émule un système de sécurité à la maison.Il est entièrement simulé sur Proteus si vous n'attendez pas beaucoup de différence sur un environnement réel.Vous aurez besoin :ProteusAtmel StudioMicro Visual Studio
Verrouillage par code Arduino

Verrouillage par code Arduino

Cet Instructable va vous montrer une façon de créer un Add-on à de nombreux mécanismes de verrouillage. Il sera capable de déverrouiller la serrure avec quelques touches. Il peut être utilisé sur les portes de chambre à coucher ou même maison. Je tro
Arduino Combi-bouton de verrouillage w / prise en charge facultative iOS/Android

Arduino Combi-bouton de verrouillage w / prise en charge facultative iOS/Android

récemment, j'ai décidé que je voudrais essayer de faire un verrouillage par code avec mon Arduino Uno nouvellement acquise, mais tous les tutoriels que j'ai pu trouver fait usage d'un clavier modifié, quelque chose que pas chaque Tom, Dick et Harry o
Arduino basé système de verrouillage de la porte

Arduino basé système de verrouillage de la porte

Oeil de porte électronique en utilisant ArduinoPrésenté ici est un système de verrouillage électronique dans lequel Arduino Nano joue le rôle de l'unité de traitement. Ce circuit permet l'activation d'une serrure électronique seulement en entrant le
Arduino GSM relais de verrouillage

Arduino GSM relais de verrouillage

Bonjour et Bienvenue sur mon premier instructable. J'espère que c'est ok tout le monde !en tout cas, cette instructable consiste à faire un relais de verrouillage de GSM base.L'idée est assez simple, le téléphone sonne et la sortie est activée, le té
Déverrouillage des portes RFID Arduino RC522

Déverrouillage des portes RFID Arduino RC522

Bonjour tous ici est mon démo.Depuis que j'ai mon lecteur RFID, je voulais juste créer une porte RFID déverrouiller le système pour la porte de mon appartement. Au début, j'ai conçu le flux de travail ci-dessus, comme un débutant, ce n'est pas tout à
Verrouillage de l’Arduino

Verrouillage de l’Arduino

Arduino porte ou quoi que ce soit verrouiller.outils...carte Arduinocarte de prototypageclaviermoteur servocavalierspile 9Vconduit de lumièrejaune... rougeÉtape 1: Branchez le clavier avec arduino Branchez le clavier comme la photo.. *.Step 1Etape 2:
Système de verrouillage des portes de Arduino

Système de verrouillage des portes de Arduino

Dans ce projet, j'ai fait une serrure de porte (ou boîte de serrure) qui s'ouvre lorsque vous entrez votre mot de passe et appuyez sur "*".Étape 1: Matériel nécessaire... 1. Arduino uno2. standard Servo3. rouge et vert LED4. réglettes à broches
Arduino Uno R3 1602 LCD verrouillage sécurisé avec contrôle de manette de jeu

Arduino Uno R3 1602 LCD verrouillage sécurisé avec contrôle de manette de jeu

je viens de recevoir ce kit de Uno copie arduino et c' est tellement génial que je devais faire mon premier instructable pour aller avec !Ici, je vais montrer la disposition de base en utilisant le stick analogique de la PS2 pour contrôler l'écran LC
Mot de passe Arduino débloquer porte sécurité système

Mot de passe Arduino débloquer porte sécurité système

Salut! Dans ce guide de Instructables, je vais vous montrer comment faire votre propre mot de passe à déverrouiller le système de porte à l'aide de la carte de Arduino uno. J'ai fait mon propre circuit en utilisant le microcontrôleur ATmega328 mais i