Bezpłatna biblioteka techniczna ENCYKLOPEDIA RADIOELEKTRONIKI I INŻYNIERII ELEKTRYCZNEJ Moduł sterujący zamkiem szyfrowym. Encyklopedia elektroniki radiowej i elektrotechniki Encyklopedia radioelektroniki i elektrotechniki / Dom, gospodarstwo domowe, hobby Zastosowanie nowoczesnych komponentów, w szczególności mikrokontrolerów, pozwala na zmniejszenie masy i wymiarów urządzeń elektronicznych oraz zwiększenie liczby pełnionych przez nie funkcji. W artykule opisano moduł zamka szyfrowego wykonany przy użyciu kontrolera PIC. Urządzenie przeznaczone jest do stosowania jako jednostka zabezpieczająca (wkładka zamka elektronicznego) w zamkach szyfrowych, systemach alarmowych lub innych urządzeniach, do których dostęp musi być całkowicie lub w określonych trybach ograniczony. Moduł zapewnia uzyskanie na wyjściu wysokiego poziomu logicznego podczas wpisywania z klawiatury siedmiocyfrowej liczby dziesiętnej – kodu. Po ponownym wybraniu na wyjściu pojawi się niski poziom. Moduł zawiera dwa niezależne od siebie kanały, każdy z nich steruje jednym wyjściem. Kody dostępu do kanałów mogą być ustalane (modyfikowane) przez użytkownika w specjalnym trybie ustawień wstępnych. Kanał wchodzi do niego po wpisaniu z klawiatury siedmiocyfrowego kodu presetu (każdy kanał ma swój własny kod). W tym trybie możesz modyfikować zarówno hasło dostępu, jak i sam ustawiony kod. Wszystkie kody dla obu kanałów są przechowywane w elektrycznie programowalnej pamięci danych modułu (EEPROM), którą można zapisać za pomocą oprogramowania. Schemat modułu pokazano na rys. 1. Jego podstawą jest mikrokontroler PIC16F84 firmy MICROCHIP, który zapewnia niski pobór mocy i minimalne koszty [1]. Wszystkie funkcje są zaimplementowane w oprogramowaniu. Piny portu B mikrokontrolera DD1 (RBO-RB6) służą do podłączenia standardowej klawiatury 12-klawiszowej. RB0-RB3 są zaprogramowane do wprowadzania danych, a RB4-RB6 są zaprogramowane do wyprowadzania. Pin RB7, zaprogramowany jako wyjście, służy do zasilania sygnałów audio. Za każdym razem, gdy naciśniesz dowolny klawisz, który zostanie wykryty i oceniony przez program jako „prawda”, na pinie 13 DD1 pojawi się seria 124 impulsów z przerwą między nimi około 4 ms. Rozlegnie się krótki sygnał dźwiękowy. Po przytrzymaniu klawisza serie następują po sobie bez przerw (sygnał stały). Po wybraniu prawidłowego hasła (dostępowego lub presetu) na tym pinie pojawia się 1240 takich impulsów (sygnał dźwiękowy trwający około 5 s). Na elementach R5, R6, C4, VD1 znajduje się zewnętrzny moduł resetujący mikrokontroler po włączeniu zasilania. Piny portu A mikrokontrolera RAO-RA4 zaprogramowano jako wyjścia. RAO to flaga włączająca tryb zadany dla obu kanałów. Ustawienie tej flagi (włączenie trybu preset) sygnalizowane jest świeceniem diody HL1. Flagę ustawia się poprzez naciśnięcie przycisku „*” na klawiaturze, a resetuje się po naciśnięciu przycisku „#” lub po zakończeniu modyfikacji kodu w trybie preset w dowolnym kanale lub w momencie resetu systemu (przy wyłączeniu moc). RA1 i RA2 to flagi trybów fabrycznych kanałów 1 i 2. Każdy z nich jest ustawiany po wybraniu odpowiedniego kodu, a kasowany po naciśnięciu przycisku „#” lub po modyfikacji kodów w trybie zaprogramowanym w odpowiedni kanał zostanie zakończony lub po zresetowaniu systemu. Ustawienie każdej z tych flag sygnalizowane jest zapaleniem odpowiedniej diody LED HL2, HL3. Modyfikacja kodów w wybranym kanale jest możliwa tylko wtedy, gdy ustawiona jest flaga trybu predefiniowanego tego kanału oraz flaga załączenia trybu predefiniowanego. RA3 i RA4 są wyjściami odpowiednio kanałów 1 i 2. Każdy z nich przechodzi w stan wysoki po wybraniu odpowiedniego kodu dostępu i znika po ponownym wybraniu kodu lub zresetowaniu systemu. RA3 ma poziomy TTL, a RA4 to wyjście z otwartym drenem. Do wyjść kanałów podłączone są elementy wykonawcze. Z powyższego wynika, że moduł jest w rzeczywistości czterokanałowy: oprócz dwóch „pełnych” kanałów, które są ustawiane i resetowane tylko za pomocą zestawu kodów dostępu, istnieją jeszcze dwa „niekompletne” kanały (RA1 i RA2). Ustawia się je za pomocą zestawu gotowych kodów, a resetuje po naciśnięciu przycisku „#”, czyli ograniczają dostęp jedynie do włączenia siłowników, a nie do ich wyłączenia. Aby uniknąć błędnej modyfikacji kodów w EEPROM. W przypadku korzystania z „niekompletnych” kanałów należy upewnić się, że flaga włączania trybu ustawień wstępnych jest zresetowana. Uproszczony schemat blokowy algorytmu działania programu pokazano na rys. 2. Po włączeniu zasilania następuje reset systemu, resetujący wszystkie flagi i wyjścia portu A. Następnie program zaczyna odpytywać klawiaturę. Po wykryciu naciśniętego klawisza odpytywanie zostaje wstrzymane do momentu zwolnienia klawisza. W oprogramowaniu zaimplementowano zabezpieczenie przed odbiciem kluczowych styków. Wpisany kod jest gromadzony w rejestrze RAM mikrokontrolera. Po wpisaniu siódmej cyfry wybrany kod porównywany jest z ustawionym kodem kanału 1. W przypadku niezgodności porównywany jest z ustawionym kodem kanału 2. Gdy wybierany kod pasuje do jednego z tych kodów, program ustawia odpowiednią flagę trybu zaprogramowanego i resetuje wybrany kod. Jeśli nie pasuje, jest porównywany sekwencyjnie z kodami dostępu kanałów 1 i 2. Jeżeli wybrany kod nie pasuje do nich, jest resetowany. Po każdej cyfrze wprowadzonej z klawiatury program sprawdza, czy ustawiona jest flaga załączenia trybu preset. Po upewnieniu się, że tak się stało, program kolejno sprawdza, czy ustawione są flagi trybu wstępnego dla kanałów 1 i 2. Jeżeli ustawiona jest chociaż jedna z nich, nastąpi przejście do trybu wstępnego. Każde naciśnięcie klawiszy „0” – „9” w tym trybie powoduje zapisanie kodu odpowiedniej cyfry do komórki EEPROM, „kasując” kod, który znajdował się wcześniej. Po wpisaniu czternastu cyfr (siedem cyfr hasła dostępu i siedmiu cyfr kodu fabrycznego) nastąpi automatyczne wyjście z trybu ustawień fabrycznych (wszystkie flagi zostaną zresetowane). Z trybu zaprogramowanego można także wyjść wybierając dowolną liczbę cyfr (mniej niż czternaście), np. gdy potrzebna jest jedynie modyfikacja hasła. W tym celu należy po wybraniu siedmiu cyfr nacisnąć przycisk „#”. Program przygotowano w środowisku MPLAB [2]. Programując kryształ należy ustawić OSC=XT, WDT=Off, PWRTE=On, CP=Off i wpisać kod 00h pod wszystkie adresy w danych EEPROM. Do zasilania modułu można zastosować źródło napięcia stałego o wartości +7,5...+15 V. Pobór prądu mikrokontrolera DD1 ze zintegrowanego stabilizatora DA1 przy zgaszonych diodach LED HL1-HL3 wynosi około 1 mA. Dowolny rezonator kwarcowy ZQ1 można zastosować w zakresie częstotliwości 2...4 MHz (można go zastąpić obwodem RC), należy jednak wziąć pod uwagę, że ton sygnałów audio na pinie 13 DD1 zależy od częstotliwość generatora zegara. Emiter piezoelektryczny NA1 - ZP-3. Aby dopasować poziomy logiczne na wyjściu kanału 2 (pin 3 DD1) z siłownikiem, dolne wyjście rezystora R12 w obwodzie jest odłączane od stabilizatora i podłączane do dodatniego zacisku zasilania siłownika. Konstrukcja modułu musi wykluczać dostęp z zewnątrz do jego obwodów wyjściowych. Urządzenie nie wymaga konfiguracji, jednakże przed rozpoczęciem pracy użytkownik musi wprowadzić własne kody do pamięci obu kanałów. Odbywa się to w następujący sposób. Po pierwszym włączeniu zasilania należy siedem razy nacisnąć przycisk „0”. Dioda HL2 powinna się zaświecić i powinien zabrzmieć długi sygnał dźwiękowy. Następnie kliknij przycisk „*”. Dioda HL1 powinna się teraz zaświecić. Kolejna operacja polega na wpisaniu przez użytkownika z klawiatury czternastu cyfr, z czego pierwszych siedem będzie kodem dostępu do kanału 1, a pozostałe będą ustawionym kodem dla tego kanału. Po wybraniu czternastu cyfr diody HL1, HL2 zgasną. Naciskając siedmiokrotnie kilkakrotnie przycisk „0” (powinna zaświecić się dioda HL3 i wydać długi sygnał dźwiękowy), a następnie przycisk „*” (powinna zaświecić się dioda HL1), użytkownik wprowadza kolejne czternaście cyfr – numer dostępu oraz ustawiony kod kanału 2. Diody HL1 i HL3 gasną. Pamięć EEPROM modułu zawiera teraz własne kody użytkownika. Jeśli użytkownik zapomniał swojego kodu dostępu, po prostu zostaje on zastąpiony nowym z trybu zadanego. Jeśli zapomnisz ustawiony kod, możesz go zobaczyć tylko za pomocą programatora, odczytując pamięć EEPROM danych kontrolera PIC. Zadany kod dla kanału 1 znajduje się tam pod adresami 19h-1Fh, a dla kanału 2 pod adresami 27h-2Dh. Należy zaznaczyć, że EEPROM ma ograniczoną liczbę cykli zapisu danych sterownika, dlatego nie zaleca się zbyt częstej modyfikacji kodów. Za pomocą przycisku „#” można na siłę zresetować wybrany kod w przypadku błędu w pisaniu. literatura
Autor: P.Redkin, Uljanowsk Zobacz inne artykuły Sekcja Dom, gospodarstwo domowe, hobby. Czytaj i pisz przydatne komentarze do tego artykułu. Najnowsze wiadomości o nauce i technologii, nowa elektronika: Maszyna do przerzedzania kwiatów w ogrodach
02.05.2024 Zaawansowany mikroskop na podczerwień
02.05.2024 Pułapka powietrzna na owady
01.05.2024
Inne ciekawe wiadomości: ▪ Sieć na podczerwień zamiast Wi-Fi ▪ Biodegradowalna bezprzewodowa ładowarka podskórna Wiadomości o nauce i technologii, nowa elektronika
Ciekawe materiały z bezpłatnej biblioteki technicznej: ▪ sekcja strony Instrukcje użytkowania. Wybór artykułu ▪ artykuł Pod chytrym. Popularne wyrażenie ▪ artykuł W jakim kraju azjatyckim używanie marihuany jest legalne? Szczegółowa odpowiedź ▪ artykuł Senna z Aleksandrii. Legendy, uprawa, metody aplikacji ▪ artykuł Proste migające urządzenie świetlne. Encyklopedia elektroniki radiowej i elektrotechniki ▪ artykuł Pierścień i różdżka. Sekret ostrości
Zostaw swój komentarz do tego artykułu: Wszystkie języki tej strony Strona główna | biblioteka | Artykuły | Mapa stony | Recenzje witryn www.diagram.com.ua |