Spisu treści:
- Krok 1: Zbieranie komponentów
- Krok 2: BADANIE NA PROTEUSIE
- Krok 3: Tworzenie PCB
- Krok 4: Lutowanie elementów
- Krok 5: Programowanie układu RTC IC PCF8583
- Krok 6: Programowanie PIC18F4550
- Krok 7: Ostatni krok i TEST KOŃCOWY…
Wideo: Elektroniczny system bezpieczeństwa z RTC i kodem PIN definiowanym przez użytkownika: 7 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Cześć chłopaki!
Jest to projekt, który wykonałem za pomocą mikrokontrolera pic, czyli elektronicznego systemu zabezpieczającego kodem PIN z zegarem czasu rzeczywistego i funkcjami definiowania kodu PIN przez użytkownika. Ta strona zawiera wszystkie szczegóły, które można zrobić samemu.
JEGO DZIAŁANIE I KONCEPCJA:
Cóż, po włączeniu systemu bezpieczeństwa poprosi o kod PIN, aby otworzyć bramę (jego 140595), jeśli wprowadzisz go poprawnie, drzwi się otworzą. Drzwi otwierają się tylko na 1 minutę, po czym ponownie się zamykają. Jeśli wpiszesz błędny kod PIN System alarmowy da ci 3 dodatkowe szanse, jeśli wszystkie szanse zostaną zmarnowane to włączy brzęczyk i poprosi o alternatywny kod do zatrzymania brzęczyka, jeśli ten alternatywny kod (np. 1984) zostanie wpisany poprawnie to:
1) Zatrzymuje brzęczyk
2) Resetuje oryginalny kod, który był 140595
3) Prosi nowy kod w celu zastąpienia oryginalnego kodu, który był 140595 (nie więcej niż 6 cyfr)
teraz brama zostanie otwarta przez ten nowy kod.
Załóżmy, że wprowadzono błędny kod alternatywny, a następnie system poprosi o odczekanie do odliczania 1 minuty, podczas którego wszystkie przyciski są wyłączone, a brzęczyk nadal dzwoni.
WIDEO:
www.youtube.com/watch?v=O0lYVIN-CJY&t=5s
OK, ZRÓBMY JEDEN…
Zanim zaczniemy, zakładam, że masz już podstawową wiedzę na temat języka C i pracowałeś wcześniej nad MikroC pro i że wiesz, jak świecić diodą LED, jak łączyć wyświetlacz LCD z mikrokontrolerem PIC. Ok, zaczynajmy!
Krok 1: Zbieranie komponentów
DLA PROJEKTU: S. Nr. | ILOŚĆ | SKŁADNIK | INFORMACJE
1) 1 pakiet 16x2 LCD Pin 14 do Pin 1, a następnie Pin 15 i Pin 16 pinów.
2) 1 mikrokontroler PIC18F4550
3) 1 układ scalony zegara czasu rzeczywistego PCF8583 (RTC)
4) 14 przycisków resetowania Zamiast klawiatury użyłem przycisków resetowania
5) 1 bateria 9v Zasilanie główne.
6) 1 potencjometr 10K Ohm Do ustawiania kontrastu LCD
7) 2 gniazda audio 3,5 mm do zewnętrznego podłączenia brzęczyka i bramki;
8) 1 100uF Kondensator Ceremiczna nasadka do użytku z pinem 1 kontrolera.
9) 1 kryształ 32,682 kHz dla układu PCF8583
10) 1 gniazdo zasilania prądem stałym Jeśli używasz projektu z adapterem prądu stałego
11) 1 IC7805 do konwersji 9V na 5V
12) 1 rezystor 1K Ohm do użycia z pinem1 sterownika.
13) 3 rezystory 10K Ohm do użytku z pinem 1 sterownika i RTC IC
14) Rezystor 13 220 Ohm każdy przycisk będzie używał 1 220 Ohm wyjaśnię później
15) 1 ogniwo 3 V do użytku z RTC IC
16) 1 TICK TICK Przełącznik
17) 1 płytka PCB do wyboru, jeśli czujesz się komfortowo na verro, jest w porządku.
18) 1 8-pinowy DIP dla RTC IC
19) 1 40-pinowy DIP dla PIC184550 lub możesz użyć gniazda Zip, jeśli chcesz
20) 1 uchwyt na ogniwo 3 V
21) 1 uchwyt baterii 9 V
22) 1 męski nagłówek do lutowania z LCD
23) 1 gniazdo żeńskie do lutowania na płytce drukowanej lub verro, na której będzie umieszczony wyświetlacz LCD.
INNE CZĘŚCI:
20) Deska do krojenia chleba do testowania
21) lutownica
22) Drut lutowniczy
23) Programator PIC (lub PICKIT2)
24) Roztwór trawiący (do PCB)
25) Wiertło PCB
26) Multimetr
Jeden myślisz, że zauważysz, że nie zawarłem kryształu dla mikrokontrolera PIC, prawda? To dlatego, że użyłem wewnętrznego oscylatora PIC18F4550
TO WSZYSTKO…! TERAZ ZRÓBMY TO…!
Krok 2: BADANIE NA PROTEUSIE
Możesz przetestować obwód na proteusie, aby zorientować się w projekcie.
Plik proteus będzie wymagał pliku szesnastkowego dla mikrokontrolera PIC.
Dostępne są oba pliki.
Krok 3: Tworzenie PCB
Polecam zbudować ten projekt na płytce drukowanej, nie używaj verroboard.
Wydrukuj tę płytkę drukowaną, została zaprojektowana przeze mnie na Cadsoft Eagle. Jeśli masz zainstalowany cadsoft eagle, otwórz plik brd (pobierz poniżej) i wygeneruj plik zgodnie z wymaganiami dotyczącymi rozmiaru strony.
W przeciwnym razie załączyłem dwa pliki w formacie A4, a drugi to A5, wydrukuj i sprawdź rozmieszczenie komponentów, a następnie wydrukuj swoją płytkę drukowaną. Pytam o to, ponieważ może istnieć czynnik skali strony.
UWAGA: Projekt można zasilać z baterii, która ma być podłączona do złącza w pobliżu 7805, uważaj na polaryzację. LUB możesz włączyć projekt za pomocą adaptera przez gniazdo zasilania prądem stałym. Źródła zasilania można przełączać za pomocą przycisku kleszcza, gdy przycisk jest umieszczony wewnątrz obwodu, zasilany jest ze źródła zewnętrznego przez złącze, gdy przycisk jest wciśnięty na zewnątrz obwodu, zasilany jest z gniazda zasilania DC.
Krok 4: Lutowanie elementów
Przylutuj wszystkie elementy, zobacz załączone zdjęcia.
Jedna rzecz, którą muszę ci powiedzieć, ponieważ proteus jest idealny, dlatego przyciski są podłączone bezpośrednio do pinu mikrokontrolera bez rezystora.
Ale w rzeczywistości istnieje czynnik hałasu.
Przypuśćmy, że w tym projekcie, jeśli naciśniesz raz przycisk 4, na proteusie otrzymasz 4 na LCD, ale jeśli naciśniesz go w prawdziwym życiu, otrzymasz 44444444 na LCD z powodu szumu. Aby to usunąć, każdy przycisk zawiera rezystor 220 Ohm.
Krok 5: Programowanie układu RTC IC PCF8583
Ok, to trochę trudna sprawa, ale ponieważ dostarczany jest kod, nie będzie to takie trudne. Nie podałem pliku.hex do programowania RTC IC, ponieważ trzeba go wygenerować, aby ustawić wymagany czas, również rok jest ustawiony na 2015, nie trzeba go ustawiać.
Otwórz mikroC Pro z PIC i wybierz PIC18F4550, skopiuj i wklej poniższy kod:
// Połączenia modułu LCDsbit LCD_RS na RB2_bit;
sbit LCD_EN w RB3_bit;
sbit LCD_D4 w RB4_bit;
sbit LCD_D5 w RB5_bit;
sbit LCD_D6 w RB6_bit;
sbit LCD_D7 w RB7_bit;
sbit LCD_RS_Direction w TRISB2_bit;
sbit LCD_EN_Direction w TRISB3_bit;
sbit LCD_D4_Direction w TRISB4_bit;
sbit LCD_D5_Direction w TRISB5_bit;
sbit LCD_D6_Direction w TRISB6_bit;
sbit LCD_D7_Direction w TRISB7_bit;
// Zakończ połączenia modułu LCD
nieważna główna () {
ADCON1 = 0x0F;
CMKON |= 7; //Wyłącz komparatory
OSCCON = 0b01111111; //Korzystanie z wewnętrznego oscylatora @ 8MHz
TRISB = 0x00; //PORTB dla wyjścia (LCD)
LATB = 0xFF; //PORTC dla danych wejściowych
LATC = 0xFF; //PORTD dla danych wejściowych
TRISA. RA2 = 0; //RA2 dla wyjścia
TRISA. RA3 = 0; //RA3 dla wyjścia
UKON. USBEN = 0; //Wyłącz usb UCFG. UTRDIS = 1;
TRISD = 0xF9; //wyjście PORTD
Lcd_Init(); // Zainicjuj LCD
Lcd_Cmd(_LCD_CLEAR); // Wyczyść wyświetlacz
Lcd_Cmd(_LCD_CURSOR_OFF); // Kursor wyłączony
Lcd_Out(1, 1, "Ustawianie czasu…");
Opóźnienie_ms(1000);
I2C1_Init (100000); // zainicjuj pełny tryb master
I2C1_Start(); // wyemituj sygnał startowy
I2C1_Wr(0xA0); // adres PCF8583
I2C1_Wr(0); // zacznij od słowa pod adresem 0 (słowo konfiguracyjne)
I2C1_Wr(0x80); // zapis 80 $ do konfiguracji. (licznik przerw…)
I2C1_Wr(0); // wpisz słowo od 0 do centów
I2C1_Wr(0); // zapisz słowo od 0 do sekund
I2C1_Wr(0x10); // ZMIEŃ TO 10 na dowolne minuty, które chcesz ustawić
I2C1_Wr(0x17); // ZMIEŃ TEN 17 na dowolną godzinę, którą chcesz ustawić
I2C1_Wr(0x23); // ZMIEŃ TO 23 na dowolną datę, którą chcesz ustawić
I2C1_Wr(0x2); // ZMIEŃ TO 2 na dowolny miesiąc, który chcesz ustawić
I2C1_Stop(); // wydaj sygnał zatrzymania
I2C1_Start(); // wyemituj sygnał startowy
I2C1_Wr(0xA0); // adres PCF8530
I2C1_Wr(0); // zacznij od słowa pod adresem 0
I2C1_Wr(0); // wpisz 0 do słowa konfiguracyjnego (włącz zliczanie)
I2C1_Stop(); // wydaj sygnał zatrzymania
Lcd_Cmd(_LCD_CLEAR);
Lcd_Out(1, 1, "Ustaw czas.");
Opóźnienie_ms(500);
}
_END KOD_
Wygeneruj plik szesnastkowy z Mikroc Pro for PIC po skompilowaniu powyższego kodu, a następnie wypal go na mikrokontrolerze pic PIC18F4550
Umieść go na płytce drukowanej zlutowanej ze wszystkimi komponentami, włącz. Na wyświetlaczu LCD powinien pojawić się komunikat „Ustawianie czasu…”, a następnie „Ustawiony czas!” wyłącz zasilanie. Usuń mikrokontroler PIC z DIP, który pomyślnie zaprogramowałeś PCF8583 RTC IC.:)
Krok 6: Programowanie PIC18F4550
Cóż, plik szesnastkowy jest już dostępny w kroku 2, możesz go nagrać na PIC18F4550 za pomocą programatora PIC.
Krok 7: Ostatni krok i TEST KOŃCOWY…
Podłącz diodę LED do prawego dolnego gniazda audio 3,5 mm, a brzęczyk do prawego górnego gniazda 3,5 mm. Umieść zaprogramowany PIC18F4550 na płytce drukowanej i włącz zasilanie.
Wpisanie poprawnego kodu daje logikę 1 do dolnego leda, założyłem, że podając logikę 1 do leda otwiera bramę.
Twój Elektroniczny System Bezpieczeństwa powinien być już gotowy…! A jeśli zrobiłeś wszystko dobrze, powinno działać dobrze.
Polub i śledź moją stronę na Facebooku:
www.facebook.com/pg/ElectronicProjectsbySh…
Moja witryna bloga:
epshahrukh.blogspot.com/
Zalecana:
Elektroniczny system bezpieczeństwa sterowany wzrokiem, część 2: 3 kroki
Elektroniczny system bezpieczeństwa sterowany wzrokiem, część 2: Hej chłopaki! Jeśli nie widziałeś części 1 KLIKNIJ TUTAJ.W tym projekcie zobaczymy prostą aplikację Home Security o nazwie Electronic Eye Controlled Security System wykorzystujący LDR jako główny czujnik i kilka innych komponentów.Elektroniczne oko jest również nazywane
Kontroluj swój elektroniczny świat przez Internet: 16 kroków
Kontroluj swój elektroniczny świat przez Internet: Postępując zgodnie z tą instrukcją, będziesz mógł włączać i wyłączać diodę LED z dowolnego miejsca na świecie. Przeczytaj uważnie wszystkie instrukcje i postępuj zgodnie z krokami jeden po drugim. Po przestudiowaniu tej instrukcji będziesz mógł wykorzystać tę wiedzę na różnych
Elektroniczny system bezpieczeństwa sterowany wzrokiem: 5 kroków
Elektroniczny system bezpieczeństwa sterowany wzrokiem: Hej chłopaki! W tym projekcie zobaczymy prostą aplikację Home Security o nazwie Electronic Eye Controlled Security System, wykorzystującą LDR jako główny czujnik i kilka innych komponentów. Elektroniczne oko jest również nazywane magicznym okiem. Ponieważ automatyzacja to sytuacja awaryjna
Bezprzewodowy przycisk bezpieczeństwa dla bezpieczeństwa PLC: 6 kroków (ze zdjęciami)
Bezprzewodowy przycisk bezpieczeństwa dla bezpieczeństwa PLC: Ten projekt jest moim dowodem koncepcji wykorzystania IoT i (ewentualnie) robotyki do stworzenia dodatkowej warstwy bezpieczeństwa dla niebezpiecznych zakładów produkcyjnych. Ten przycisk może służyć do uruchamiania lub zatrzymywania wielu procesów, w tym sterowania sygnałem
Zbudowana przez użytkownika lutownica zasilana baterią litową: 8 kroków (ze zdjęciami)
Skonstruowana przez użytkownika lutownica zasilana z baterii litowej: Niedawno znalazłem nadwyżkę źródła końcówek lutowniczych Weller(r) BP1 zasilanych z baterii. Lutowanie elektroniki czasami wymaga wizyty w miejscu naprawy, a narzędzia terenowe mogą być wyzwaniem. Często buduję własne narzędzia, znajdując zbyt kosztowne rozwiązania z półki