Table des matières:

Serrure à combinaison sans fil Arduino avec NRF24L01 et affichage à 4 chiffres et 7 segments : 6 étapes (avec images)
Serrure à combinaison sans fil Arduino avec NRF24L01 et affichage à 4 chiffres et 7 segments : 6 étapes (avec images)

Vidéo: Serrure à combinaison sans fil Arduino avec NRF24L01 et affichage à 4 chiffres et 7 segments : 6 étapes (avec images)

Vidéo: Serrure à combinaison sans fil Arduino avec NRF24L01 et affichage à 4 chiffres et 7 segments : 6 étapes (avec images)
Vidéo: code clavier 2024, Novembre
Anonim
Serrure à combinaison sans fil Arduino avec NRF24L01 et affichage à 4 chiffres et 7 segments
Serrure à combinaison sans fil Arduino avec NRF24L01 et affichage à 4 chiffres et 7 segments

Ce projet a commencé sa vie comme un exercice pour faire quelque chose avec un affichage à 4 chiffres et 7 segments.

Ce que j'ai proposé, c'est la possibilité d'entrer un numéro de combinaison à 4 chiffres, mais une fois terminé, c'était assez ennuyeux. Je l'ai construit avec un Arduino UNO. Cela a fonctionné, mais n'a rien fait d'autre.

J'ai alors eu l'idée qu'il devrait avoir un bouton pour accepter le numéro sélectionné, et peut-être un autre bouton pour changer la combinaison, et peut-être une LED pour montrer l'état dans lequel il se trouvait à tout moment. Même si cela ressemblait à un plan, cela signifiait aussi que je serais à court d'épingles sur l'ONU. Il existe peut-être un moyen de multiplexer cette unité, mais je ne sais pas par où commencer, alors j'ai opté pour l'Arduino Mega.

Maintenant que j'utilisais une carte plus grande et que j'avais plus de broches avec lesquelles jouer, j'ai également décidé d'ajouter des capacités Wi-Fi pour communiquer avec un autre Arduino qui contrôlerait en fait une sorte de commutateur.

Étape 1: Exigences et liste de pièces

Exigences et liste de pièces
Exigences et liste de pièces

Après avoir réfléchi à tout cela, j'ai maintenant une liste d'exigences:

  • Pour pouvoir saisir une combinaison à 4 chiffres.
  • Pour commencer avec une combinaison codée en dur par défaut.
  • Pour pouvoir changer la combinaison et stocker la nouvelle combinaison dans l'EEPROM de l'Arduino.
  • Affiche l'état de la serrure avec une LED rouge pour verrouillé et une LED verte pour ouvert.
  • Affichez l'état lorsque la combinaison a été modifiée avec une LED bleue.
  • Lorsque l'état est déverrouillé, restez pendant un certain temps puis revenez à l'état verrouillé.
  • Transmettez l'état verrouillé/déverrouillé à un autre Arduino.
  • Affichez le même état avec des LED rouges et vertes sur l'Arduino récepteur.
  • À des fins de démonstration, utilisez un servo pour agir comme un mécanisme de verrouillage en fonction de l'état reçu.

À partir des exigences, je peux maintenant créer une liste de pièces:

L'émetteur:

  • Arduino Méga.
  • Planche à pain.
  • Affichage à 4 chiffres et 7 segments.
  • 2 X interrupteurs momentanés, avec capuchons.
  • 1 LED RVB.
  • 9 résistances de 220ohm. 8 pour l'affichage et 1 pour la LED RVB.
  • 2 résistances de 10kohm. Tirez vers le bas des résistances pour les 2 boutons. (J'ai en fait utilisé 9.1kohm parce que c'est ce que j'avais)
  • 1 potentiomètre 10k.
  • 1 X NRF24L01
  • [optionnel] 1 carte de dérivation YL-105 pour le NRF24L01. Cela permet une connexion 5v et un câblage plus facile. Fils de cavalier

Le récepteur:

  • Arduino UNO.
  • Planche à pain.
  • 1 LED RVB.
  • 1 résistance de 220 ohms. Pour la LED.
  • 1 X servo. J'ai utilisé un SG90 à des fins de démonstration uniquement.
  • 1 X NRF24L01
  • en option] 1 carte de dérivation YL-105 pour le NRF24L01. Cela permet une connexion 5v et un câblage plus facile.
  • Fils de cavalier

Étape 2: L'affichage

L'affichage
L'affichage
L'affichage
L'affichage

J'ai utilisé un affichage à 4 chiffres et 7 segments

Testé avec SMA420564 et SM420562K (les broches sont les mêmes)

Les broches 1 et 12 sont marquées.

Disposition des broches de haut en bas 12, 11, 10, 9, 8, 7 1, 2, 3, 4, 5, 6

Les broches 12, 9, 8, 6 allument ou éteignent les chiffres 1 à 4 de gauche à droite

Étape 3: Câblage de l'Arduino Mega:

Câblage de l'Arduino Mega
Câblage de l'Arduino Mega

Disposition des broches d'affichage sur Arduino

  • 1 à la broche 6 via une résistance de 220 ohms (E)
  • 2 à la broche 5 via une résistance de 220 ohms (D)
  • 3 à la broche 9 via une résistance de 220 ohms (DP) non utilisée ici
  • 4 à la broche 4 via une résistance de 220 ohms (C)
  • 5 à la broche 8 via une résistance de 220 ohms (G)
  • 6 à la broche 33 (Chiffre 4)
  • 7 à la broche 3 via une résistance de 220 ohms (B)
  • 8 à la broche 32 (chiffre 3)
  • 9 à la broche 31 (Chiffre 2)
  • 10 à la broche 7 via une résistance de 220 ohms (F)
  • 11 à la broche 2 via une résistance de 220 ohms (A)
  • 12 à la broche 30 (Chiffre 1)

Potentiomètre 10kohm pour changer le nombre sur le chiffre affiché

  • Broche extérieure à 5v
  • Broche centrale vers A0
  • Autre broche extérieure à GND

Accepter le bouton numérique

  • A la broche 36.
  • Et broche 36 à travers une résistance pull-down de 10kohm à GND

Changer le bouton de numéro de combinaison

  • A la broche 37.
  • Et broche 37 à travers une résistance pull-down de 10kohm à GND

LED RVB (cathode commune)

  • Cathode à GND via une résistance de 220 ohms
  • Rouge à la broche 40
  • Vert à la broche 41
  • Bleu à la broche 42

NRF24L01 avec carte de dérivation:

  • MISO à la broche 50 (obligatoire via la broche dédiée)
  • MOSI à la broche 51 (obligatoire via la broche dédiée)
  • SCK à la broche 52 (obligatoire via la broche dédiée)
  • CE à la broche 44 (Numéro de broche facultatif mais défini dans le croquis)
  • CSN à la broche 45 (Numéro de broche facultatif mais défini dans le croquis)
  • Vcc vers Arduino 5v (ou 3.3v si vous n'utilisez pas la carte de dérivation)
  • GND à Arduino GND

Étape 4: Câblage de l'Arduino UNO:

Câblage de l'Arduino UNO
Câblage de l'Arduino UNO

LED RVB (cathode commune)

  • Cathode à GND via une résistance de 220 ohms
  • Rouge à la broche 2 Vert à la broche 3
  • Bleu (Non utilisé ici)

Servo:

  • Rouge vers Arduino 5v ou alimentation séparée si utilisé
  • Marron vers Arduino GND et alimentation séparée si utilisée
  • Orange à la broche 6

NRF24L01 avec carte de dérivation:

MISO à la broche 12 (obligatoire via la broche dédiée)

MOSI à la broche 11 (obligatoire via la broche dédiée)

SCK à la broche 13 (obligatoire via la broche dédiée)

CE à la broche 7 (Numéro de broche facultatif mais défini dans le croquis)

CSN à la broche 8 (Numéro de broche facultatif mais défini dans le croquis)

Vcc vers Arduino 5v (ou 3.3v si vous n'utilisez pas la carte de dérivation)

GND à Arduino GND

Étape 5: Comment ça marche

Image
Image
Comment ça fonctionne
Comment ça fonctionne
Comment ça fonctionne
Comment ça fonctionne
Comment ça fonctionne
Comment ça fonctionne

Une fois que les deux maquettes sont terminées et que le croquis approprié y est téléchargé, nous pouvons maintenant le tester.

Avec alimentation sur les deux cartes.

Les LED rouges doivent s'afficher sur les deux cartes.

L'écran affichera un nombre dans le premier chiffre. Ce nombre dépendra de l'endroit où le potentiomètre est actuellement réglé.

Tournez le potentiomètre pour obtenir le nombre souhaité.

Une fois le numéro trouvé, appuyez sur le bouton accepter. Dans mon cas c'est celui à gauche du potentiomètre.

Faites de même pour les trois autres nombres.

Si la combinaison saisie est correcte, le mot OPEn s'affichera, la LED verte s'allumera sur les deux cartes et le servo tournera à 180 degrés.

L'affichage deviendra vide et la LED verte restera allumée pendant environ 5 secondes de plus.

Une fois le temps de déverrouillage écoulé, les deux LED deviendront rouges et le servo retournera de 180 degrés à son début.

Si la combinaison saisie n'est pas correcte, le mot OOPS sera affiché et les LED rouges resteront allumées.

Il y a une combinaison par défaut codée en dur dans l'esquisse de 1 1 1 1.

Pour modifier la combinaison, vous devez d'abord saisir la bonne combinaison.

Une fois le mot OPEn disparu, vous avez environ 5 secondes pour appuyer sur l'autre bouton.

Une fois que vous entrez dans la séquence de changement de combinaison, la LED de la carte principale passe au bleu, tandis que l'autre reste verte et donc ouverte.

Saisissez une nouvelle combinaison de la même manière qu'auparavant.

Une fois la nouvelle combinaison acceptée (sur la dernière pression sur le bouton), elle sera stockée dans l'EEPROM.

Les deux Arduinos passeront maintenant en mode verrouillé.

Entrez votre nouvelle combinaison et elle se déverrouillera comme prévu.

Une fois qu'une combinaison a été modifiée et stockée dans l'EEPROM, la valeur par défaut codée en dur de 1 1 1 1 est ignorée.

Étape 6: Tout est fait

J'ai construit ceci en utilisant le NRF24L01 de base avec une antenne intégrée et j'ai réussi une bonne communication d'environ 15 pieds à travers un mur.

Parce que la planche à pain Arduino Mega était un peu occupée avec des fils, j'ai utilisé des cavaliers directs à certains endroits. Ceci, avec le fait qu'il y en a beaucoup sur une planche à pain, rend difficile le suivi des images.

Cependant, je pense avoir tout expliqué broche par broche et même si vous êtes débutant, vous devriez pouvoir construire ce petit projet en prenant juste un fil ou une broche à la fois.

Les deux croquis sont entièrement commentés pour en faciliter la lecture et sont disponibles ici en téléchargement.

Le croquis de l'Arduino Mega est assez volumineux, environ 400 lignes, mais est divisé en morceaux gérables et devrait donc être facilement suivi.

Conseillé: