Come realizzare il sistema di sicurezza domestica utilizzando Arduino Uno

Come realizzare il sistema di sicurezza domestica utilizzando Arduino Uno
Arduino è la piattaforma più favorevole per creare diversi progetti che sono principalmente correlati ai dispositivi che sono comunemente utilizzati nella nostra routine di vita quotidiana. Allo stesso modo, possiamo anche imparare il funzionamento dei circuiti usando la piattaforma Arduino. In questo contesto abbiamo realizzato un sistema di sicurezza utilizzando Arduino Uno.

Creazione di un sistema di sicurezza domestico utilizzando Arduino Uno

Il sistema di sicurezza si basa sempre su un qualche tipo di autorizzazione e tale autorizzazione può essere sotto forma di codice pass, impronte digitali, riconoscimento vocale e riconoscimento facciale. In questo progetto abbiamo progettato un sistema di sicurezza che utilizza una password per l'autorizzazione. Di seguito sono i componenti che abbiamo usato per creare un sistema di sicurezza.

  • Arduino Uno
  • Breadboard
  • Collegamento dei fili
  • Tastiera a membrana 4 × 4
  • Display di cristalli liquidi 16 × 2 (LCD)
  • Modulo RGB

L'immagine per lo schema della creazione di un sistema di sicurezza domestica utilizzando Arduino S pubblicato di seguito:

Assemblaggio hardware per la creazione del sistema di sicurezza domestica

Per l'assemblaggio dell'hardware, abbiamo collegato i componenti in modo tale che prima di tutto abbiamo posizionato il LCD e il potenziometro sulla breadboard. Inoltre abbiamo pubblicato un'immagine qui sotto per l'assemblaggio dell'hardware per il sistema di sicurezza.

I fili marroni interfacciano l'LCD con l'Arduino e i fili blu collegano la tastiera con Arduino e per regolare la luminosità 0F il LCD Il filo giallo collega il potenziometro con LCD.

Abbiamo usato il modulo RGB per visualizzare lo stato dell'autorizzazione quando viene inserita la password e il colore dei fili mostra il colore dei LED utilizzati per l'indicazione.

Codice Arduino per il sistema di sicurezza domestica

Il codice Arduino compilato per il sistema di sicurezza domestica è riportato di seguito:

#include // Definizione della libreria per LCD
#include // Definizione della biblioteca per la tastiera
LiquidCrystal LCD (A1, A0, 5, 4, 3, 2); // Pin Arduino per LCD
#define password_length 9 // Definizione della lunghezza della password
char userinput [password_length];/*stringa per la memorizzazione dell'ingresso utente*/
char master [password_length] = "1234"; /*Salvare la password corretta*/
char customKey; // Questa variabile contiene l'input del tasto di ogni tasto premuto
byte pressCount = 0;/* Per memorizzare il contatore per le quantità di volte in cui i tasti vengono premuti*/
ROWS BYTE const = 4; // Definizione del numero di righe
const byte cols = 4; // Definizione del numero di colonne
INT LED = A2; // Pin Arduino per LED verde
INT LED2 = A3; // Pin Arduino per LED rosso
Char Keys [ROWS] [Cols] = // Assegnazione dei valori alle chiavi della tastiera

'1', '2', '3', 'A',
'4', '5', '6', 'b',
'7', '8', '9', 'C',
'*', '0', '#', 'd'
;
// La chiave C viene utilizzata per Clean e viene utilizzata una chiave per immettere la password
Byte RowPins [ROWS] = 13,12,11,10; // pin Arduino per file di tastiera
byte colpins [cols] = 9,8,7,6; // pin Arduino per colonne di tastiera
KeyPad CustomKeyPad = KeyyPad (MakeKeyMap (chiavi), Rowpins, Colpins, Rows, Cols); // Mapping i valori alle rispettive chiavi della tastiera
void setup ()
LCD.Inizia (16,2); // Inizializzazione delle dimensioni di LCD
LCD.setCursor (0,0); // Impostazione del luogo in cui i dati da visualizzare
LCD.print ("Arduino Home"); // Dati da visualizzare
LCD.setCursor (0,1); // Impostazione del luogo per la visualizzazione dei dati
LCD.print ("Sistema di sicurezza"); // Dati da visualizzare
ritardo (2000); // ora per il quale verranno visualizzati i dati
LCD.Clear (); // Clearing the LCD
pinMode (LED, output);
pinMode (LED2, output);
DigitalWrite (LED2, basso); // Assegnazione di uno stato basso a LED rosso

void loop ()
LCD.setCursor (0,0); // Impostazione del posto per la visualizzazione dei dati
LCD.print ("Inserisci password:"); // chiedendo di inserire la password
CustomKey = CustomKeyPad.waitTorkey (); // in attesa che l'utente inserisca la password
Se (CustomKey != No_Key && Customkey != 'C' && personalizzato != 'A') /* se un tasto diverso dalla funzione chiara ed è uguale alla funzione viene premuto* /

userInput [pressCount] = CustomKey;/ * Conta i tasti con i valori interi premuti */
LCD.setCursor (PressCount + 4, 1); /*Impostazione del luogo in cui la password verrà visualizzata su LCD*/
LCD.stampa("*"); // Visualizzazione dell'asterisco contro ogni chiave di password
PressCount ++; // incrementa uno nel conteggio della lunghezza della password che è 4

altrimenti if (customKey == 'c') // Se viene premuto il tasto con la funzione chiara C

LCD.Clear (); // quindi cancella il LCD
cancella i dati();

altrimenti if (customKey == 'a') /* Se il tasto viene premuto e il conteggio delle password è inferiore a 4, quindi cancella LCD e visualizza la password non valida* /

LCD.chiaro();
LCD.setCursor (0,0);
LCD.Stampa ("Password non valida!"); // Visualizza una password non valida
ritardo (2000);
cancella i dati();

if (pressCount == 4) / *Se viene inserita la password a 4 valore, abbina l'ingresso dell'utente con password data * /

LCD.chiaro();
attendere qui(); // funzione che visualizza la password in asterisco


void waithere ()
LCD.setCursor (0,0);
LCD.print ("Inserisci password:");
LCD.setCursor (0,1);
LCD.stampa(" ****");
CustomKey = CustomKeyPad.waitTorkey (); // in attesa che l'utente premi il tasto uguale
Se (CustomKey != No_key && customkey == 'a') /*Se il tasto ENTER viene premuto il programma corrisponderà alla password immessa dall'utente* /

LCD.chiaro();
LCD.setCursor (0,0);
Se (!strcmp (userinput, master)) // L'input dell'utente viene abbinato, quindi concedere l'accesso

LCD.setCursor (0,0);
LCD.stampa ("accesso concesso");
DigitalWrite (LED, alto); // Accendi il LED verde
ritardo (1000);
cancella i dati();

altrimenti se (strcmp (userinput, master)) /*se la password non è abbinata, negano l'accesso* /

LCD.setCursor (0,0);
LCD.print ("Access negate");
DigitalWrite (LED2, alto); // Accendi il LED rosso su
ritardo (2000);
cancella i dati();


/* Condizioni per ciascun tasto premuto sulla tastiera per ciascun tasto ANTRO E CONTENI E INVIO LA FUNZIONE ATTENDA QUI Viene utilizzata per visualizzarla su LCD*/
Se (CustomKey != No_key && customkey == 'c')

LCD.chiaro();
cancella i dati();

Se (CustomKey != No_key && customkey == '0')

attendere qui();

Se (CustomKey != No_key && customKey == '1')

attendere qui();

Se (CustomKey != No_key && customKey == '2')

attendere qui();

Se (CustomKey != No_key && customkey == '3')

attendere qui();

Se (CustomKey != No_key && customKey == '4')

attendere qui();

Se (CustomKey != No_key && customKey == '5')

attendere qui();

Se (CustomKey != No_key && customkey == '6')

attendere qui();

Se (CustomKey != No_key && customKey == '7')

attendere qui();

Se (CustomKey != No_key && customKey == '8')

attendere qui();

Se (CustomKey != No_key && customKey == '9')

attendere qui();


// funzione assegnata alla chiave C della tastiera per la cancellazione del LCD
void clearData ()
mentre (PressCount != 0)

userInput [pressCount--] = 0; // riduce il valore inserito a zero
DigitalWrite (LED, basso);
impostare(); // chiamando la funzione di configurazione per riavviare il programma

Abbiamo fornito la password nel codice e il programma prende semplicemente l'input dall'utente e corrisponde alla password. Questo programma controlla la password in due modi, controllando la lunghezza della password e quindi corrisponde a entrambe le password salvate nella stringa.

Se le password sono corrette, il programma darà l'accesso e accenderà il LED verde, mentre se la password non è corretta, negherà l'accesso e il LED rosso accenderà.

Implementazione hardware del sistema di sicurezza domestica utilizzando Arduino Uno

L'immagine pubblicata di seguito mostra l'avvio del codice Arduino per il sistema di sicurezza domestica. Inoltre, abbiamo pubblicato le immagini del codice Arduino nella stessa sequenza in cui il codice esegue.

Nella figura seguente il codice chiede la password e abbiamo dato il passcode utilizzando la tastiera.

Successivamente, abbiamo premuto il tasto UN Sulla tastiera per inserire la password e la password è corretta, quindi viene attivato il LED verde, il che significa che l'accesso è concesso.

Allo stesso modo, se la password non è corretta, il LED rosso gira, il che significa che l'autorizzazione non viene fornita.

Conclusione

Per realizzare progetti per principianti o di livello anticipato, la piattaforma Arduino sarà un'ottima scelta in quanto consente agli utenti di creare circuiti nel modo semplice. Ci sono una vasta gamma di progetti fai-da-te che possono essere realizzati utilizzando Arduino. In questo commento viene effettuato un sistema di sicurezza domestica, viene utilizzata una tastiera per ottenere la password in cui il modulo RGB viene utilizzato per l'indicazione dell'accesso.