Sensor biométrico en motocicleta Hornet
Componentes y suministros
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Herramientas y máquinas necesarias
| ||||
| ||||
| ||||
|
Aplicaciones y servicios en línea
|
Acerca de este proyecto
Ante tantos robos de motocicletas, utilizamos un Arduino Pro Mini para desarrollar un sistema antirrobo que conecta la bicicleta a través del registro de usuario digital.
Canal Sandro Mesquita Roboticamente
Código
- Código del sistema de seguridad de la motocicleta
Código del sistema de seguridad Motocicleta Arduino
/ ******************************************** ***** Este es un boceto de ejemplo para nuestro sensor óptico de huellas dactilares Diseñado específicamente para trabajar con Adafruit BMP085 Breakout ----> http://www.adafruit.com/products/751 Estas pantallas usan TTL Serial para comunicarse, Se requieren 2 pines para la interfaz Adafruit invierte tiempo y recursos proporcionando este código de fuente abierta. ¡Por favor, apoye a Adafruit y al hardware de fuente abierta comprando productos de Adafruit! Escrito por Limor Fried / Ladyada para Adafruit Industries. Licencia BSD, todo el texto anterior debe incluirse en cualquier redistribución ************************************ ************** / int chave =0; int verde =5; int azul =4; int vermelho =6; int rele =7; #include// On Leonardo / Micro u otros con serie de hardware, ¡utilícelos! # 0 es cable verde, # 1 es blanco // descomente esta línea:// #define mySerial Serial1 // Para UNO y otros sin serial de hardware, debemos usar serial de software ... // pin # 2 está IN del sensor ( Cable VERDE) // el pin # 3 está FUERA de arduino (cable BLANCO) // comente estas dos líneas si usa hardware serialSoftwareSerial mySerial (2, 3); Adafruit_Fingerprint finger =Adafruit_Fingerprint (&mySerial); void setup () {pinMode (4, PRODUCCIÓN); pinMode (5, SALIDA); pinMode (6, SALIDA); pinMode (7, SALIDA); escritura digital (rele, 1); //Serial.begin(9600); // mientras (! Serial); // Para Yun / Leo / Micro / Zero / ... delay (100); //Serial.println("\n\nAdafruit prueba de detección de dedos "); escritura digital (azul, 1); // establece la velocidad de datos para el puerto serie del sensor finger.begin (57600); / * if (finger.verifyPassword ()) {Serial.println ("¡Se encontró el sensor de huellas dactilares!"); } else {Serial.println ("No se encontró el sensor de huellas digitales :("); while (1) {delay (1);}} * / //finger.getTemplateCount (); //Serial.print("Sensor contiene " ); Serial.print (finger.templateCount); Serial.println ("templates"); //Serial.println(" Esperando un dedo válido ... "); digitalWrite (azul, 0); digitalWrite (vermelho, 1); digitalWrite (verde, 0);} void loop () // ejecutar una y otra vez {if (getFingerprintIDez () ==1) {chave =! chave; delay (500);} digitalWrite (rele,! chave); digitalWrite (verde, chave); digitalWrite (vermelho, digitalRead (rele)); delay (50); // no es necesario ejecutar esto a toda velocidad.} uint8_t getFingerprintID () {uint8_t p =finger.getImage (); switch (p) {case FINGERPRINT_OK://Serial.println("Image tomada "); break; case FINGERPRINT_NOFINGER://Serial.println("No dedo detectado"); return p; case FINGERPRINT_PACKETRECIEVEERR://Serial.println ( "Error de comunicación"); return p; case FINGERPRINT_IMAGEFAIL://Serial.println("Imaging error "); return p; default://Serial.println("Unknown error"); return p; } // ¡OK, éxito! p =dedo.imagen2Tz (); switch (p) {case FINGERPRINT_OK://Serial.println("Image convert "); descanso; case FINGERPRINT_IMAGEMESS://Serial.println("Image too desordenada "); return p; case FINGERPRINT_PACKETRECIEVEERR://Serial.println(" Error de comunicación "); return p; case FINGERPRINT_FEATUREFAIL://Serial.println("No pude encontrar características de huellas dactilares "); return p; case FINGERPRINT_INVALIDIMAGE://Serial.println("No pude encontrar características de huellas dactilares "); return p; predeterminado://Serial.println("Unknown error "); return p; } // ¡OK convertido! p =finger.fingerFastSearch (); if (p ==FINGERPRINT_OK) {//Serial.println("¡Encontré una coincidencia de impresión! "); } else if (p ==FINGERPRINT_PACKETRECIEVEERR) {//Serial.println("Communication error "); return p; } else if (p ==FINGERPRINT_NOTFOUND) {//Serial.println("Did not found a match "); return p; } else {//Serial.println("Unknown error "); return p; } // ¡encontró una coincidencia! //Serial.print("Found ID # "); Serial.print (finger.fingerID); //Serial.print ("con confianza de"); Serial.println (dedo.confianza); return finger.fingerID;} // devuelve -1 si falla, de lo contrario devuelve ID #int getFingerprintIDez () {uint8_t p =finger.getImage (); if (p! =HUELLA DIGITAL_OK) return -1; p =dedo.imagen2Tz (); if (p! =HUELLA DIGITAL_OK) return -1; p =finger.fingerFastSearch (); if (p! =HUELLA DIGITAL_OK) return -1; // ¡encontré una coincidencia! //Serial.print("Found ID # "); Serial.print (finger.fingerID); //Serial.print ("con confianza de"); Serial.println (dedo.confianza); return finger.fingerID; }
Esquemas
Proceso de manufactura
- TinyML-Language Detector basado en Edge Impulse y Arduino
- Dados digitales Arduino
- Sensor de temperatura múltiple
- Juego de ruleta DIY 37 LED
- Mi Río
- ATtiny85 Mini Arcade:Serpiente
- Detector de alcance portátil
- Galvanoplastia con cobre
- NeoMatrix Arduino Pong
- Estación meteorológica local
- Creador de secuencias de luz