Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Crea una Zona Segura con Arduino para Desbloquear Android, iOS y Windows 10

Componentes y materiales

Módulo Bluetooth HC-05 × 1
Arduino Nano R3 × 1
Módulo huella dactilar R301T × 1
LED RGB 5 mm 4 pines × 1

Aplicaciones y servicios online

Sobre el proyecto

En este artículo creamos un gadget que establece una "zona segura" para desbloquear tus dispositivos automáticamente. Al finalizar:

Crea una Zona Segura con Arduino para Desbloquear Android, iOS y Windows 10

Bloqueo y desbloqueo de dispositivos

Hoy usamos múltiples dispositivos inteligentes con datos privados (chats, contactos, fotos, notas). La seguridad es esencial, pero los métodos actuales pueden ser tediosos cuando estás en un entorno seguro (tu habitación, solo).

Nuestra solución: un pequeño gadget que se conecta por Bluetooth a todos tus dispositivos. Al activarlo con tu huella, empareja y desbloquea tus dispositivos mientras esté cerca.

Módulo huella dactilar R301T

Crea una Zona Segura con Arduino para Desbloquear Android, iOS y Windows 10

El R301T se comunica por serie con Arduino. Registramos nuestra huella, lo conectamos a los pines Tx/Rx del Arduino, y usamos un módulo Bluetooth HC-05 emparejado una vez con nuestros dispositivos. El código de Arduino activa el Bluetooth al detectar huella válida.

Circuito

Crea una Zona Segura con Arduino para Desbloquear Android, iOS y Windows 10

Código

Debes añadir la librería del sensor de huella y subir el código. Si es tu primera vez con Arduino:

  1. Descarga Arduino IDE en arduino.cc e instálalo.
  2. Abre el IDE, limpia el editor y pega el código.
  3. En Herramientas > Placa, selecciona tu Arduino.
  4. Conecta el Arduino al PC y selecciona el puerto COM en Herramientas > Puerto.
  5. Pulsa Subir (flecha).
  6. ¡Listo!
#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);
  while (!Serial);
  delay(100);
  Serial.println("\n\nAdafruit finger detect test");
  finger.begin(57600);
  if (finger.verifyPassword()) {
    Serial.println("Found fingerprint sensor!");
  } else {
    Serial.println("Did not find fingerprint sensor :(");
    while (1) {
      pinMode(13, OUTPUT); digitalWrite(13, LOW);
      pinMode(9, OUTPUT); digitalWrite(9, HIGH);
    }
  }
  finger.getTemplateCount();
  Serial.print("Sensor contains "); Serial.print(finger.templateCount); Serial.println(" templates");
  Serial.println("Waiting for valid finger...");
}

void loop() {
  getFingerprintIDez();
  delay(50);
}

uint8_t getFingerprintID() {
  uint8_t p = finger.getImage();
  switch (p) {
    case FINGERPRINT_OK: Serial.println("Image taken"); break;
    case FINGERPRINT_NOFINGER: Serial.println("No finger detected"); return p;
    case FINGERPRINT_PACKETRECIEVEERR: Serial.println("Communication error"); return p;
    case FINGERPRINT_IMAGEFAIL: Serial.println("Imaging error"); return p;
    default: Serial.println("Unknown error"); return p;
  }
  p = finger.image2Tz();
  switch (p) {
    case FINGERPRINT_OK: Serial.println("Image converted"); break;
    case FINGERPRINT_IMAGEMESS: Serial.println("Image too messy"); return p;
    case FINGERPRINT_PACKETRECIEVEERR: Serial.println("Communication error"); return p;
    case FINGERPRINT_FEATUREFAIL: Serial.println("Could not find fingerprint features"); return p;
    case FINGERPRINT_INVALIDIMAGE: Serial.println("Could not find fingerprint features"); return p;
    default: Serial.println("Unknown error"); return p;
  }
  p = finger.fingerFastSearch();
  if (p == FINGERPRINT_OK) Serial.println("Found a print match!");
  else if (p == FINGERPRINT_PACKETRECIEVEERR) { Serial.println("Communication error"); return p; }
  else if (p == FINGERPRINT_NOTFOUND) { Serial.println("Did not find a match"); return p; }
  else { Serial.println("Unknown error"); return p; }
  Serial.print("Found ID #"); Serial.print(finger.fingerID);
  Serial.print(" with confidence of "); Serial.println(finger.confidence);
  for (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;
}

int getFingerprintIDez() {
  uint8_t p = finger.getImage();
  if (p != FINGERPRINT_OK) return -1;
  p = finger.image2Tz();
  if (p != FINGERPRINT_OK) return -1;
  p = finger.fingerFastSearch();
  if (p != FINGERPRINT_OK) return -1;
  Serial.print("Found ID #"); Serial.print(finger.fingerID);
  Serial.print(" with confidence of "); Serial.println(finger.confidence);
  return finger.fingerID;
}

Montaje

Crea una Zona Segura con Arduino para Desbloquear Android, iOS y Windows 10

Primero, empareja el módulo Bluetooth con tu dispositivo:

Si no emparejan automáticamente, envía un carácter al dispositivo al intentar emparejar por primera vez.

¿Qué sigue?

Código

Librería huella dactilar C/C++

Solo descarga (sin vista previa).

Proceso de manufactura

  1. Panel de control para Flight Simulator 2020 con Arduino Nano: Pantallas LCD y CDI
  2. Crea un Impresionante Sistema Ambilight para Monitor con Arduino
  3. Sistema inteligente de monitorización de temperatura para escuelas: preciso, en tiempo real y seguro
  4. Librería Eficiente de Puerto I/O de 8 Bits para Arduino – Expande el Control Digital
  5. Controla el Parpadeo del LED de Arduino desde tu App iOS/Android vía WiFi/Ethernet
  6. Teclado Prototipo de 64 Teclas con Arduino: Matriz con Registros de Desplazamiento
  7. Genera Tonos Musicales con Arduino: Guía Paso a Paso
  8. Pantalla TFT Shield de Alto Rendimiento 2.8” para Arduino Nano – Display SPI 320×240
  9. Circuito de entrada analógica aislada para Arduino
  10. Kit de Robot de Navegación Interior Inteligente para Proyectos Arduino
  11. Cómo las Bombas de Agua Directas Mejoran la Eficiencia de Transmisión de Agua