Inhaltsverzeichnis:

Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code - Gunook
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code - Gunook

Video: Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code - Gunook

Video: Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code - Gunook
Video: Funkwerk - Zug- und Datenfunk, Reisendeninformation, Videosysteme made in Germany 2024, November
Anonim
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code
Elektronisches Sicherheitssystem mit RTC und benutzerdefiniertem PIN-Code

Hallo Leute!

Dies ist ein Projekt, das ich mit einem pic-Mikrocontroller erstellt habe. Es ist ein elektronisches PIN-Code-Sicherheitssystem mit Echtzeituhr und benutzerdefinierten PIN-Code-Funktionen. Diese Seite enthält alle Details, um eines selbst zu erstellen.

SEINE FUNKTION UND KONZEPT:

Nun, wenn Sie das Sicherheitssystem einschalten, werden Sie nach einem PIN-Code gefragt, um das Tor zu öffnen (es ist 140595), wenn Sie es richtig eingeben, öffnet sich die Tür. Tür wird nur 1 min geöffnet, dann wieder geschlossen. Wenn Sie einen falschen PIN-Code eingeben, gibt Ihnen das Sicherheitssystem 3 weitere Chancen, wenn alle Chancen vertan sind, schaltet es den Summer ein und fragt nach einem alternativen Code, um den Summer zu stoppen, wenn dieser alternative Code (z. B. 1984) richtig eingegeben wird:

1) Es stoppt den Summer

2) Setzt den ursprünglichen Code zurück, der 140595 war

3) Fordert einen neuen Code auf, um den ursprünglichen Code zu ersetzen, der 140595 war (nicht mehr als 6 Ziffern)

jetzt wird das Tor mit diesem neuen Code geöffnet.

Angenommen, ein falscher Alternativcode wurde eingegeben, fordert das System auf, auf einen Countdown von 1 Minute zu warten, während dessen alle Tasten deaktiviert sind und der Summer weiter klingelt.

VIDEO:

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

OKAY LASSEN SIE EINEN MACHEN…

Bevor wir beginnen, gehe ich davon aus, dass Sie bereits Grundkenntnisse in der Sprache C haben und bereits an MikroC pro gearbeitet haben und wissen, wie man eine LED leuchtet, wie man ein LCD mit einem PIC-Mikrocontroller verbindet. Okay, fangen wir an!

Schritt 1: Komponenten sammeln

Sammeln von Komponenten
Sammeln von Komponenten

FÜR PROJEKT: S. Nr. | MENGE | KOMPONENTE | DIE INFO

1) 1 16x2 LCD Pin 14 auf Pin 1, dann Pin 15 und Pin 16 Pins.

2) 1 PIC18F4550 Mikrocontroller

3) 1 PCF8583 Echtzeituhr (RTC) IC

4) 14 Reset-Tasten anstelle der Tastatur habe ich Reset-Tasten verwendet

5) 1 9V Batterie Hauptstromversorgung.

6) 1 10K Ohm Pot Zum Einstellen des Kontrasts des LCD

7) 2 3,5-mm-Audiobuchsen zum externen Anschluss von Summer und Gate

8) 1 100uF Kondensator-Keramikkappe zur Verwendung mit Pin1 des Controllers.

9) 1 32,682 kHz Quarz für PCF8583 IC

10) 1 DC-Strombuchse Bei Verwendung des Projekts mit einem DC-Adapter

11) 1 IC7805 Zum Umwandeln von 9V in 5V

12) 1 1K Ohm Widerstand zur Verwendung mit Pin1 des Controllers.

13) 3 10K Ohm Widerstand zur Verwendung mit Pin1 des Controllers und RTC IC

14) 13 220 Ohm Widerstand jede Taste verwendet 1 220 Ohm, das werde ich später erklären

15) 1 3V Zelle zur Verwendung mit RTC IC

16) 1 TICK TICK-Schalter

17) 1 PCB Board Ihrer Wahl, wenn Sie sich auf Verro wohl fühlen.

18) 1 8-poliger DIP für RTC-IC

19) 1 40-poliger DIP für PIC184550 oder Sie können eine Zip-Buchse verwenden, wenn Sie möchten

20) 1 3V-Zellenhalter

21) 1 9V Batteriehalter

22) 1 Stiftleiste zum Löten mit LCD

23) 1 Buchsenleiste zum Löten auf PCB oder Verro, wo LCD platziert wird.

ANDERE TEILE:

20) Steckbrett zum Testen

21) Lötkolben

22) Lötdraht

23) PIC-Programmierer (oder PICKIT2)

24) Ätzlösung (für PCB)

25) PCB-Bohrer

26) Multimeter

Man denkt, Sie werden bemerken, dass ich keinen Quarz für den PIC-Mikrocontroller enthalten habe, oder? Das liegt daran, dass ich den internen Oszillator von PIC18F4550 verwendet habe

DAS IST ALLES…! JETZT LASSEN SIE ES TUN…!

Schritt 2: TESTEN AUF PROTEUS

TESTEN AUF PROTEUS
TESTEN AUF PROTEUS
TESTEN AUF PROTEUS
TESTEN AUF PROTEUS

Sie können die Schaltung auf proteus testen, um sich ein Bild vom Projekt zu machen.

Die Proteus-Datei erfordert eine Hex-Datei für den PIC-Mikrocontroller.

Beide Dateien werden bereitgestellt.

Schritt 3: PCB herstellen

PCB herstellen
PCB herstellen

Ich werde Ihnen empfehlen, dieses Projekt auf PCB zu bauen, verwenden Sie kein Verroboard.

Drucken Sie diese Platine, sie wurde von mir auf Cadsoft Eagle entworfen. Wenn Sie cadsoft eagle installiert haben, öffnen Sie die brd-Datei (Download unten) und generieren Sie die Datei entsprechend Ihren Anforderungen an die Seitengröße.

Ansonsten habe ich zwei Dateien auf A4 und A5 angehängt, drucken und überprüfen Sie die Komponenten und drucken Sie dann Ihre Leiterplatte. Ich frage das, weil es einen Seitenskalierungsfaktor geben kann.

HINWEIS: Sie können das Projekt entweder mit einer Batterie einschalten, die an den Anschluss in der Nähe von 7805 angeschlossen wird, achten Sie auf die Polarität. ODER Sie können das Projekt über einen Adapter über die DC-Strombuchse einschalten. Die Stromquellen können durch den Häkchen-Knopf umgeschaltet werden, wenn der Knopf im Inneren des Stromkreises Buchse ist, wird er von einer externen Quelle über den Stecker eingeschaltet, wenn der Knopf außerhalb des Stromkreises gedrückt wird, wird er über die Gleichstrombuchse eingeschaltet.

Schritt 4: Lötkomponenten

Lötkomponenten
Lötkomponenten
Lötkomponenten
Lötkomponenten
Lötkomponenten
Lötkomponenten
Lötkomponenten
Lötkomponenten

Löten Sie alle Komponenten, siehe die beigefügten Bilder.

Eine Sache muss ich Ihnen sagen, da Proteus ideal ist, werden die Tasten ohne Widerstand direkt mit dem Mikrocontroller-Pin verbunden.

Aber im wirklichen Leben existiert ein Rauschfaktor.

Wie angenommen, wenn Sie in diesem Projekt die Taste 4 einmal drücken, erhalten Sie auf Proteus 4 auf dem LCD, aber wenn Sie sie im wirklichen Leben drücken, erhalten Sie aufgrund von Rauschen 44444444 auf dem LCD. Um dies zu entfernen, enthält die Platine bei jeder Taste einen 220 Ohm Widerstand.

Schritt 5: Programmierung des RTC-IC PCF8583

Programmierung des RTC-ICs PCF8583
Programmierung des RTC-ICs PCF8583

Okay, das ist eine kleine knifflige Sache, aber da Code bereitgestellt wird, wird es nicht so schwierig sein. Ich habe keine.hex-Datei zum Programmieren von RTC IC angegeben, da Sie sie generieren müssen, um die erforderliche Zeit einzustellen, auch das Jahr ist auf 2015 eingestellt, Sie müssen es nicht einstellen.

Öffnen Sie mikroC Pro für PIC und wählen Sie PIC18F4550, kopieren Sie den folgenden Code und fügen Sie ihn ein:

// LCD-Modul-Verbindungensbit LCD_RS bei RB2_bit;

sbit LCD_EN bei RB3_bit;

sbit LCD_D4 bei RB4_bit;

sbit LCD_D5 bei RB5_bit;

sbit LCD_D6 bei RB6_bit;

sbit LCD_D7 bei RB7_bit;

sbit LCD_RS_Direction bei TRISB2_bit;

sbit LCD_EN_Direction bei TRISB3_bit;

sbit LCD_D4_Direction bei TRISB4_bit;

sbit LCD_D5_Direction bei TRISB5_bit;

sbit LCD_D6_Direction bei TRISB6_bit;

sbit LCD_D7_Direction bei TRISB7_bit;

// LCD-Modulanschlüsse beenden

void main() {

ADCON1 = 0x0F;

CMCON |= 7; //Komparatoren deaktivieren

OSCCON = 0b01111111; //Verwenden des internen Oszillators @ 8MHz

TRISB = 0x00; //PORTB für Ausgabe (LCD)

LATB = 0xFF; //PORTC für Eingabe

LATC = 0xFF; //PORTD für Eingabe

TRISA. RA2 = 0; //RA2 für die Ausgabe

TRISA. RA3 = 0; //RA3 für die Ausgabe

UCON. USBEN = 0; // USB deaktivieren UCFG. UTRDIS = 1;

TRISD = 0xF9; //PORTD-Ausgang

LCD_Init(); // LCD initialisieren

Lcd_Cmd(_LCD_CLEAR); // Klare Anzeige

Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor aus

Lcd_Out(1, 1, "Zeit einstellen…");

Verzögerung_ms(1000);

I2C1_Init(100000); // Volle Master-Modus initialisieren

I2C1_Start(); // Startsignal ausgeben

I2C1_Wr(0xA0); // Adresse PCF8583

I2C1_Wr(0); // ab Wort bei Adresse 0 beginnen (Konfigurationswort)

I2C1_Wr(0x80); // schreibe $80 in config. (Pausenzähler…)

I2C1_Wr(0); // schreibe 0 in das Cent-Wort

I2C1_Wr(0); // schreibe 0 in Sekunden Wort

I2C1_Wr(0x10); // ÄNDERN SIE DIESE 10 auf beliebige Minuten, die Sie einstellen möchten

I2C1_Wr(0x17); // ÄNDERN SIE DIESE 17 auf eine beliebige Stunde, die Sie einstellen möchten

I2C1_Wr(0x23); // ÄNDERN SIE DIESE 23 auf ein beliebiges Datum, das Sie einstellen möchten

I2C1_Wr(0x2); // ÄNDERN SIE DIESE 2 auf einen beliebigen Monat, den Sie einstellen möchten

I2C1_Stop(); // Stoppsignal ausgeben

I2C1_Start(); // Startsignal ausgeben

I2C1_Wr(0xA0); // Adresse PCF8530

I2C1_Wr(0); // ab Wort bei Adresse 0 beginnen

I2C1_Wr(0); // 0 in das Konfigurationswort schreiben (Zählen aktivieren)

I2C1_Stop(); // Stoppsignal ausgeben

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1, 1, "Zeit eingestellt.!");

Verzögerung_ms(500);

}

_ENDCODE_

Generieren Sie eine Hex-Datei von Mikroc Pro für PIC, nachdem Sie den obigen Code kompiliert haben, und brennen Sie sie dann auf den Bildmikrocontroller PIC18F4550

Legen Sie es auf die mit allen Komponenten verlötete Leiterplatte, schalten Sie es ein. Das LCD sollte "Setting Time…" anzeigen, wenn es dann "Time Set!" anzeigt. ausschalten. Entfernen Sie den PIC-Mikrocontroller aus dem DIP, nachdem Sie den PCF8583 RTC-IC erfolgreich programmiert haben.:)

Schritt 6: Programmierung von PIC18F4550

Programmierung PIC18F4550
Programmierung PIC18F4550

Nun, die Hex-Datei wird bereits in Schritt 2 bereitgestellt. Sie können sie über den PIC-Programmierer auf Ihren PIC18F4550 brennen.

Schritt 7: Letzter Schritt & LETZTER TEST…

Bringen Sie eine LED an der unteren rechten 3,5-mm-Audiobuchse und einen Summer an der oberen rechten 3,5-mm-Buchse an. Platzieren Sie Ihren programmierten PIC18F4550 auf der Platine und schalten Sie den Strom ein.

Wenn der richtige Code eingegeben wird, wird die Logik 1 an die untere LED ausgegeben. Ich nahm an, dass bei der Eingabe von Logik 1 an die LED das Tor geöffnet wird.

Ihr elektronisches Sicherheitssystem sollte jetzt bereit sein…! Und wenn Sie alles richtig gemacht haben, sollte es gut funktionieren.

Bitte liken und folgen Sie meiner Facebook-Seite:

www.facebook.com/pg/ElectronicProjectsbySh…

Meine Blogseite:

epshahrukh.blogspot.com/

Empfohlen: