Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Créer une zone sécurisée pour les appareils Android/iOS/Win10 par Arduino

Composants et fournitures

Module sans fil série Bluetooth HC-05
× 1
Arduino Nano R3
× 1
Module d'empreinte digitale semi-conducteur R301T
× 1
LED RVB tricolore 4 broches 5 mm
× 1

Applications et services en ligne

Arduino IDE

À propos de ce projet

Dans cet article, nous voulons créer un gadget sympa qui peut créer une zone de sécurité pour le déverrouillage de vos appareils. À la fin de ce projet, vous :

  • Apprendra à utiliser un capteur d'empreintes digitales.
  • J'apprendrai à associer vos appareils à votre gadget de zone de sécurité.
  • Créera un gadget sympa appelé zone de sécurité.

Verrouiller et déverrouiller les appareils

De nos jours, notre utilisation des appareils intelligents est améliorée et nous avons de nombreuses données différentes dans des appareils comme le contenu du chat, les contacts, les images, les notes, etc. Mais certains d'entre eux doivent être privés pour nous et c'est très important et c'est peut-être la principale raison pour laquelle nos appareils sont verrouillés. Tous les appareils intelligents ont une méthode différente pour se mettre en mode verrouillage ou déverrouillage, mais parfois ils sont limités et ont un mauvais pressentiment pour nous lorsque vous devez passer la section de sécurité pour utiliser des appareils. Par exemple, lorsque vous travaillez dans votre chambre privée et qu'il n'y a pas de corps près de vous, vous n'avez pas besoin d'avoir une section de sécurité et il est un peu compliqué de planifier l'extinction de votre appareil.

Nous avons donc une idée pour créer un petit gadget qui pourrait se connecter à tous nos appareils intelligents et lorsque nous voulons travailler facilement sans sécurité, nous l'activons simplement par notre identification digitale. Lorsque le gadget est activé, il s'associe à nos appareils par Bluetooth et ils seront déverrouillés jusqu'à ce que le gadget soit à proximité d'eux.

Module d'empreintes digitales R301T

Dans ce projet, nous utilisons le module de capteur R301T qui établit une communication série avec un contrôleur tel qu'Arduino pour échanger des données. Premièrement, nous définissons notre empreinte digitale pour R301T en tant qu'utilisateur et la connectons aux broches Arduino Tx et Rx. Nous avons utilisé un module Bluetooth appelé HC-05 et l'avons couplé une fois avec nos appareils. Maintenant, nous allons écrire un code pour Arduino et le dire lorsqu'un utilisateur active le gadget, activez le Bluetooth. Allons-y !

Circuit

Code

Vous devez ajouter la bibliothèque du capteur d'empreintes digitales, puis télécharger le code. Si c'est la première fois que vous utilisez une carte Arduino, ne vous inquiétez pas, suivez simplement ces étapes :

  • Allez sur www.arduino.cc/en/Main/Software et téléchargez le logiciel Arduino compatible avec votre système d'exploitation. Installez le logiciel IDE comme indiqué.
  • Exécutez l'IDE Arduino et effacez l'éditeur de texte et copiez le code suivant dans l'éditeur de texte.
  • Choisissez la carte dans les outils et les cartes, sélectionnez votre carte Arduino.
  • Connectez l'Arduino à votre PC et définissez le port COM dans les outils et le port.
  • Appuyez sur le bouton de téléchargement (flèche).
  • Vous êtes prêt !
#include "Adafruit_Fingerprint.h"#include "SoftwareSerial.h"SoftwareSerial mySerial(2, 3);Adafruit_Fingerprint finger =Adafruit_Fingerprint(&mySerial);int cc=0;void setup() { Serial.begin( 9600); tandis que (!Série); // Pour Yun/Leo/Micro/Zero/... délai (100); Serial.println("\n\nTest de détection de doigt Adafruit"); // définit le débit de données pour le port série du capteur finger.begin(57600); if (finger.verifyPassword()) { Serial.println("Capteur d'empreintes digitales trouvé!"); } else { Serial.println("N'a pas trouvé le capteur d'empreintes digitales :("); while (1) { pinMode(13,OUTPUT); digitalWrite(13,LOW); pinMode(9,OUTPUT); digitalWrite(9,HIGH); } } finger.getTemplateCount(); Serial.print("Le capteur contient "); Serial.print(finger.templateCount); Serial.println(" templates"); Serial.println("En attente d'un doigt valide..." );}void loop() // exécuté encore et encore{ getFingerprintIDez(); delay(50); //pas besoin de l'exécuter à pleine vitesse.}uint8_t getFingerprintID() { uint8_t p =finger.getImage( ); switch (p) { case FINGERPRINT_OK:Serial.println("Image prise"); pause; case FINGERPRINT_NOFINGER:Serial.println("Aucun doigt détecté"); return p; case FINGERPRINT_PACKETRECIEVEERR:Serial.println("Erreur de communication" ); return p; case FINGERPRINT_IMAGEFAIL:Serial.println("Imaging error"); return p; default:Serial.println("Unknown error"); return p; } // OK succès! p =finger.image2Tz(); switch (p) { case FINGERPRINT_OK:Serial.println("Image convertie"); pause; case FINGERPRINT_IMAG EMESS :Serial.println("Image trop compliquée"); retour p; case FINGERPRINT_PACKETRECIEVEERR:Serial.println("Erreur de communication"); retour p; case FINGERPRINT_FEATUREFAIL:Serial.println("Impossible de trouver les fonctionnalités d'empreinte digitale"); retour p; case FINGERPRINT_INVALIDIMAGE :Serial.println("Impossible de trouver les fonctionnalités d'empreinte digitale"); retour p; par défaut :Serial.println("Erreur inconnue"); retour p; } // OK converti ! p =doigt.fingerFastSearch(); if (p ==FINGERPRINT_OK) { Serial.println("Une correspondance d'impression trouvée!"); } else if (p ==FINGERPRINT_PACKETRECIEVEERR) { Serial.println("Erreur de communication"); retour p; } else if (p ==FINGERPRINT_NOTFOUND) { Serial.println("N'a pas trouvé de correspondance"); retour p; } else { Serial.println("Erreur inconnue"); retour p; } // trouvé une correspondance ! Serial.print("ID trouvé #"); Serial.print(finger.fingerID); Serial.print(" avec confiance de "); Serial.println(finger.confidence); pour (int i=255;i>1;i--){analogWrite(9,i); delay(10);} if (cc%2==0)digitalWrite(13,HIGH); else digitalWrite(13,LOW); cc++ ; return finger.fingerID;}// renvoie -1 en cas d'échec, sinon renvoie l'ID #int getFingerprintIDez() { uint8_t p =finger.getImage(); si (p !=FINGERPRINT_OK) renvoie -1 ; p =doigt.image2Tz(); si (p !=FINGERPRINT_OK) renvoie -1 ; p =doigt.fingerFastSearch(); si (p !=FINGERPRINT_OK) renvoie -1 ; // trouvé une correspondance ! Serial.print("ID trouvé #"); Serial.print(finger.fingerID); Serial.print(" avec confiance de "); Serial.println(finger.confidence); retourner finger.fingerID; }  

Assemblage

Tout d'abord, vous devez coupler le module Bluetooth avec votre appareil. Pour coupler avec Win10, accédez aux paramètres et recherchez les options de connexion, activez le verrouillage dynamique et couplez votre module BT à partir de là. Pour les smartphones Android, accédez à Paramètres> section Affichage> Écran de verrouillage, puis activez Smart Lock à partir de là et associez-le à BT. Pour IOS, allez dans Paramètres, entrez Touch ID et Mot de passe et faites-le à partir de là.

Si vos appareils ne se couplent pas automatiquement, vous pouvez utiliser cette astuce. Lorsque vous essayez de jumeler pour la première fois, envoyez un caractère à l'appareil.

Quelle est la prochaine étape ?

Vous pouvez améliorer ce projet à votre guise. Voici quelques suggestions :

  • Essayez de rendre votre gadget sensible à un emplacement spécifique.
  • Essayez de créer le même accès limité pour les autres utilisateurs.

Code

  • Bibliothèque d'empreintes digitales
Bibliothèque d'empreintes digitalesC/C++
Aucun aperçu (téléchargement uniquement).

Processus de fabrication

  1. Panneau LCD avec Arduino pour Flight Simulator
  2. Créer un moniteur Ambilight à l'aide d'Arduino
  3. Surveillance SMART de la température pour les écoles
  4. Bibliothèque de ports E/S 8 bits pour Arduino
  5. Voyants clignotants sur Arduino depuis iOS et Android
  6. Matrice de clavier de prototypage à 64 touches pour Arduino
  7. Une entrée analogique isolée pour Arduino
  8. Robot pour une navigation intérieure super cool
  9. Les pompes à eau directes offrent des avantages pour la transmission de l'eau