Con la ayuda de Arduino, puede hacer una copia de la clave del intercomunicador en casa en 15 minutos, si, por ejemplo, el taller está cerrado y la clave se necesita con urgencia. Veamos cómo se hace esto.
Es necesario
- - Arduino;
- - un ordenador;
- - tecla para intercomunicador tipo iButton o 1 hilo;
- - clave ficticia para crear un "clon" de la clave original;
- - 1 resistencia con una resistencia de 2, 2 kOhm;
- - cables de conexión.
Instrucciones
Paso 1
Cada tecla del intercomunicador tiene su propio número; es este número el que sirve como identificador de la tecla. Es por el número de clave que decide el intercomunicador: el suyo o el de otra persona. Por lo tanto, el algoritmo de copia es el siguiente: primero debe averiguar el número de la clave "permitida" y luego asignar este número a otra clave: un clon. No importa para el intercomunicador si se adjuntó la llave original o su copia. Después de verificar el número con su base de datos de números autorizados, abrirá la puerta.
Las teclas para el intercomunicador, que conectaremos al Arduino (a veces llamado iButton o Touch Memory), se leen y escriben a través de la interfaz de 1 cable 1 cable. Por tanto, el diagrama de cableado es muy sencillo. Solo necesitamos un par de cables y una resistencia pull-up de 2.2K. El diagrama se muestra en la figura.
Paso 2
Para trabajar con la interfaz de 1 cable, existen bibliotecas listas para usar para Arduino. Puede utilizar, por ejemplo, este: https://www.pjrc.com/teensy/arduino_libraries/OneWire.zip. Descarga el archivo y descomprímelo en la carpeta "bibliotecas" ubicada en el directorio IDE de Arduino. Ahora podemos trabajar muy fácilmente con este protocolo.
Cargue el boceto que se muestra en la ilustración en Arduino de la manera estándar.
Paso 3
Este boceto muestra el número de clave del intercomunicador, que está conectado al circuito. Esto es lo que necesitamos ahora: tenemos que averiguar el número de la clave de la que queremos hacer una copia. Conecta Arduino a tu computadora. Comencemos el monitor del puerto serie: Herramientas -> Monitor del puerto serie (o el atajo de teclado Ctrl + Shift + M).
Ahora conectemos la llave al circuito. El monitor de puerto mostrará el número de clave. Recordemos este número.
Paso 4
Ahora reescribamos el boceto para que pueda escribir datos en la memoria clave. El código se muestra en la ilustración. Los comentarios detallados se dan en el código. Lo más importante es que no olvide establecer el número de su clave original en la matriz key_to_write, que aprendió un poco antes.
Paso 5
Sube este boceto a Arduino. Abramos el monitor del puerto serie. Conectemos una llave al circuito, que será un clon de la llave original. El monitor del puerto serie mostrará un mensaje sobre el resultado de la programación.
Paso 6
1) Si, al compilar el boceto, ocurre un error [WConstants.h: No existe tal archivo o directorio # incluye "WConstants.h"], entonces en el archivo "OneWire.cpp" reemplace el primer bloque después de los comentarios con lo siguiente:
#include "OneWire.h"
#include "Arduino.h"
extern "C" {
#incluya "avr / io.h"
#include "pins_arduino.h"
}
2) Si durante la compilación aparece el error "la clase OneWire no tiene un miembro llamado read_bytes" o similar, busque otra biblioteca OneWire, hay muchas en Internet.