Sommario:

Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente: 7 passaggi
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente: 7 passaggi

Video: Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente: 7 passaggi

Video: Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente: 7 passaggi
Video: Recensione contenuti Rivista n.252 Elettronica In - Marzo 2021 2024, Dicembre
Anonim
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente
Sistema di sicurezza elettronico con RTC e codice PIN definito dall'utente
Sistema di sicurezza elettronico con codice PIN definito dall'utente e RTC
Sistema di sicurezza elettronico con codice PIN definito dall'utente e RTC

Ciao ragazzi!

Questo è un progetto che ho realizzato utilizzando il microcontrollore pic, è un sistema di sicurezza con codice PIN elettronico con orologio in tempo reale e funzioni del codice pin definite dall'utente, questa pagina contiene tutti i dettagli per crearne uno da soli.

IL SUO FUNZIONAMENTO E CONCETTO:

Bene, attivando il sistema di sicurezza, chiederà un PINCODE per aprire il cancello, (è 140595) se lo inserisci correttamente, la porta si aprirà. La porta viene aperta solo per 1 minuto, poi si richiude. Se inserisci un codice PIN errato, il sistema di sicurezza ti darà 3 possibilità in più, se tutte le possibilità vengono sprecate attiva il cicalino e chiede un codice alternativo per interrompere il segnale acustico, se questo codice alternativo (es. 1984) è inserito correttamente allora:

1) Interrompe il cicalino

2) Ripristina il codice originale che era 140595

3) Richiede un nuovo codice per sostituire il codice originale che era 140595 (non più di 6 cifre)

ora il cancello sarà aperto da questo nuovo codice.

Supponendo che venga inserito un codice alternativo errato, il sistema chiede di attendere un conto alla rovescia di 1 min durante il quale tutti i pulsanti vengono disabilitati e il buzzer continua a suonare.

VIDEO:

www.youtube.com/watch?v=O0lYVIN-CJY&t=5s

OK FACCIAMO UNO…

Prima di iniziare, presumo che tu abbia già una conoscenza di base del linguaggio C e abbia già lavorato su MikroC pro e che tu sappia come accendere un LED, come interfacciare un LCD con un microcontrollore PIC. Ok, iniziamo!

Passaggio 1: raccolta dei componenti

Raccolta di componenti
Raccolta di componenti

PER PROGETTO: S. No. | QUANTITÀ | COMPONENTE | INFORMAZIONI

1) 1 16x2 LCD Pin 14 a Pin 1, quindi Pin 15 e Pin 16 pin pacchetto.

2) 1 microcontrollore PIC18F4550

3) 1 IC orologio in tempo reale (RTC) PCF8583

4) 14 pulsanti di reset invece della tastiera ho usato i pulsanti di reset

5) 1 batteria 9v Alimentazione principale.

6) 1 Pot da 10K Ohm Per impostare il contrasto dell'LCD

7) 2 jack audio da 3,5 mm per il collegamento esterno di buzzer e gate

8) 1 Cap condensatore 100uF Ceremic per l'utilizzo con pin1 del controller.

9) 1 cristallo 32,682kHz per PCF8583 IC

10) 1 presa di alimentazione CC Se si utilizza il progetto con un adattatore CC

11) 1 IC7805 Per convertire 9V in 5V

12) 1 resistenza da 1K Ohm da utilizzare con il pin1 del controller.

13) 3 resistore da 10K Ohm per l'utilizzo con pin1 del controller e RTC IC

14) 13 Resistenza da 220 Ohm ogni pulsante utilizzerà 1 220 Ohm lo spiegherò più avanti

15) 1 cella 3V per l'utilizzo con RTC IC

16) 1 TICK TICK Interruttore

17) 1 PCB Board a tua scelta se ti senti a tuo agio su verro va bene.

18) 1 DIP a 8 pin per RTC IC

19) 1 DIP a 40 pin per PIC184550 o puoi zip socket se vuoi

20) 1 Portacella 3V

21) 1 portabatteria da 9V

22) 1 connettore maschio per saldatura con LCD

23) 1 connettore femmina per saldatura su PCB o verro dove verrà posizionato l'LCD.

ALTRE PARTI:

20) Tagliere per test

21) Saldatore

22) Filo di saldatura

23) Programmatore PIC (o PICKIT2)

24) Soluzione di incisione (per PCB)

25) Trapano PCB

26) Multimetro

Uno pensa che noterai che non ho incluso un cristallo per il microcontrollore PIC, giusto? Bene, questo è perché ho usato l'oscillatore interno di PIC18F4550

È TUTTO…! ORA FACCIAMO…!

Fase 2: TEST SU PROTEUS

TEST SU PROTEUS
TEST SU PROTEUS
TEST SU PROTEUS
TEST SU PROTEUS

Puoi testare il circuito su proteus, così puoi avere un'idea del progetto.

Il file proteus richiederà un file esadecimale per il microcontrollore PIC.

Entrambi i file sono forniti.

Passaggio 3: realizzazione del PCB

Fare PCB
Fare PCB

Ti consiglierò di costruire questo progetto su PCB, non usare verroboard.

Stampa questo PCB, è stato progettato da me su Cadsoft Eagle. Se hai installato cadsoft eagle, apri il file brd (scarica sotto) e genera il file in base alle tue esigenze di dimensione della pagina.

Altrimenti ho allegato due file su è di A4 e altro è A5, stampa e controlla i componenti del posto, quindi stampa il tuo PCB. Lo chiedo perché potrebbe esserci un fattore di scala della pagina.

NOTA: è possibile alimentare il progetto sia con una batteria che deve essere collegata al connettore vicino al 7805, facendo attenzione alla polarità. OPPURE è possibile alimentare il progetto tramite un adattatore tramite il jack di alimentazione CC. Le fonti di alimentazione possono essere commutate tramite il pulsante tick tick, quando il pulsante è inserito all'interno del circuito si accende da una fonte esterna tramite connettore, quando il pulsante viene premuto all'esterno il circuito si accende dal jack di alimentazione CC.

Passaggio 4: componenti di saldatura

Componenti di saldatura
Componenti di saldatura
Componenti di saldatura
Componenti di saldatura
Componenti di saldatura
Componenti di saldatura
Componenti di saldatura
Componenti di saldatura

Saldare tutti i componenti, vedere le immagini allegate.

Sulla cosa devo dirti, dal momento che proteus è l'ideale, ecco perché i pulsanti sono collegati direttamente al pin del microcontrollore senza resistore.

Ma nella vita reale esiste un fattore di rumore.

Come supponiamo, in questo progetto, se premi il pulsante 4 una volta, su proteus otterrai 4 sull'LCD, ma se lo premi nella vita reale otterrai 44444444 sull'LCD a causa del rumore. IPer rimuoverlo, la scheda contiene una resistenza da 220 Ohm con ogni pulsante.

Passaggio 5: programmazione del circuito integrato RTC PCF8583

Programmazione RTC IC PCF8583
Programmazione RTC IC PCF8583

Ok, questa è una cosa un po' complicata, ma dal momento che il codice viene fornito non sarà così complicato. Non ho fornito il file.hex per la programmazione di RTC IC poiché devi generarlo per impostare il tempo richiesto, inoltre l'anno è impostato su 2015 non è necessario impostarlo.

Apri mikroC Pro da PIC e seleziona PIC18F4550, copia e incolla il codice qui sotto:

// Connessioni modulo LCDsbit LCD_RS a RB2_bit;

sbit LCD_EN a RB3_bit;

sbit LCD_D4 a RB4_bit;

sbit LCD_D5 a RB5_bit;

sbit LCD_D6 a RB6_bit;

sbit LCD_D7 a RB7_bit;

sbit LCD_RS_Direzione a TRISB2_bit;

sbit LCD_EN_Direzione a TRISB3_bit;

sbit LCD_D4_Direzione a TRISB4_bit;

sbit LCD_D5_Direzione a TRISB5_bit;

sbit LCD_D6_Direzione a TRISB6_bit;

sbit LCD_D7_Direzione a TRISB7_bit;

// Termina le connessioni del modulo LCD

vuoto principale() {

ADCON1 = 0x0F;

CMCON |= 7; //Disabilita comparatori

OSCCON = 0b01111111; //Uso dell'oscillatore interno a 8MHz

TRISB = 0x00; //PORTB per uscita (LCD)

LATB = 0xFF; //PORTC per l'input

LATC = 0xFF; //PORTD per l'input

TRISA. RA2 = 0; //RA2 per l'uscita

TRISA. RA3 = 0; //RA3 per l'uscita

UCON. USBEN = 0; //Disabilita usb UCFG. UTRDIS = 1;

TRISD = 0xF9; //Uscita PORTD

Lcd_Init(); // Inizializza LCD

Lcd_Cmd(_LCD_CLEAR); // Cancella display

Lcd_Cmd(_LCD_CURSOR_OFF); // cursore spento

Lcd_Out(1, 1, "Impostazione ora…");

Delay_ms(1000);

I2C1_Init(100000); // inizializza la modalità master completa

I2C1_Inizio(); // emette il segnale di avvio

I2C1_Wr(0xA0); // indirizzo PCF8583

I2C1_Wr(0); // inizia dalla parola all'indirizzo 0 (parola di configurazione)

I2C1_Wr(0x80); // scrivi $80 su config. (pausa contatore…)

I2C1_Wr(0); // scrivi 0 in centesimi di parola

I2C1_Wr(0); // scrivi 0 in una parola di secondi

I2C1_Wr(0x10); // CAMBIA QUESTO 10 a qualsiasi minuto tu voglia impostare

I2C1_Wr(0x17); // CAMBIA QUESTO 17 a qualsiasi ora tu voglia impostare

I2C1_Wr(0x23); // CAMBIA QUESTO 23 in qualsiasi data tu voglia impostare

I2C1_Wr(0x2); // CAMBIA QUESTO 2 in qualsiasi mese tu voglia impostare

I2C1_Stop(); // emette un segnale di arresto

I2C1_Inizio(); // emette il segnale di avvio

I2C1_Wr(0xA0); // indirizzo PCF8530

I2C1_Wr(0); // inizia dalla parola all'indirizzo 0

I2C1_Wr(0); // scrivi 0 nella parola di configurazione (abilita il conteggio)

I2C1_Stop(); // emette un segnale di arresto

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1, 1, "Imposta ora.!");

Delay_ms(500);

}

_ CODICE FINE_

Genera un file esadecimale da Mikroc Pro per PIC dopo aver compilato il codice sopra, quindi masterizzalo sul microcontrollore pic PIC18F4550

Posizionalo sul pcb saldato con tutti i componenti, accendilo. Il display LCD dovrebbe visualizzare "Setting Time…" quindi quando visualizza "Time Set!" spegnere. Rimuovi il microcontrollore PIC dal DIP che hai programmato con successo PCF8583 RTC IC.:)

Passaggio 6: programmazione PIC18F4550

Programmazione PIC18F4550
Programmazione PIC18F4550

Bene, il file esadecimale è già fornito nel passaggio 2, puoi masterizzarlo sul tuo PIC18F4550 tramite il programmatore PIC.

Passaggio 7: Ultimo passaggio e TEST FINALE…

Collegare un LED al jack audio da 3,5 mm in basso a destra e un cicalino al jack da 3,5 mm in alto a destra. Posiziona il tuo PIC18F4550 programmato sul pcb e accendilo.

Quando viene inserito il codice corretto dà la logica 1 al led inferiore, ho pensato che dando la logica 1 al led si apre il cancello.

Il tuo sistema di sicurezza elettronico dovrebbe essere pronto ora…! E se hai fatto tutto bene, dovrebbe funzionare bene.

Metti mi piace e segui la mia pagina Facebook:

www.facebook.com/pg/ElectronicProjectsbySh…

Il mio blog:

epshahrukh.blogspot.com/

Consigliato: