Spisu treści:
- Krok 1: Wymagania i lista części
- Krok 2: Wyświetlacz
- Krok 3: Podłączanie Arduino Mega:
- Krok 4: Okablowanie Arduino UNO:
- Krok 5: Jak to działa
- Krok 6: Gotowe
Wideo: Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem: 6 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:33
Ten projekt rozpoczął swoje życie jako ćwiczenie, aby zrobić coś z 4-cyfrowym 7-segmentowym wyświetlaczem.
To co wymyśliłem to możliwość wpisania 4-cyfrowego numeru kombinacji, ale po jej zakończeniu było to dość nudne. Zbudowałem go za pomocą Arduino UNO. Udało się, ale nic więcej.
Wpadłem wtedy na pomysł, że powinien mieć przycisk do zaakceptowania wybranego numeru i może inny przycisk do zmiany kombinacji, a może diodę LED pokazującą stan, w jakim się znajduje w dowolnym momencie. Choć brzmiało to jak plan, oznaczało to również, że zabraknie mi pinów w UNO. Może istnieje sposób na zwielokrotnienie tej jednostki, ale nie jestem pewien od czego zacząć, więc sięgnąłem po Arduino Mega.
Teraz, gdy używałem większej płytki i miałem więcej pinów do zabawy, postanowiłem również dodać funkcje Wi-Fi, aby komunikować się z innym Arduino, który faktycznie kontrolowałby jakiś przełącznik.
Krok 1: Wymagania i lista części
Po przemyśleniu tego wszystkiego mam teraz listę wymagań:
- Aby móc wprowadzić czterocyfrową kombinację.
- Na początek domyślna kombinacja zakodowana na stałe.
- Aby móc zmienić kombinację i zapisać nową kombinację w pamięci EEPROM Arduino.
- Wyświetla status zamka za pomocą czerwonej diody LED dla zablokowanej i zielonej diody LED dla otwartej.
- Wyświetlaj status podczas zmiany kombinacji za pomocą niebieskiej diody LED.
- Gdy stan jest odblokowany, pozostaw przez pewien czas, a następnie powróć do stanu zablokowanego.
- Prześlij stan zablokowany/odblokowany do innego Arduino.
- Wyświetlaj ten sam stan za pomocą czerwonych i zielonych diod LED na odbierającym Arduino.
- W celach demonstracyjnych użyj serwomechanizmu, który będzie działał jako mechanizm blokujący na podstawie otrzymanego stanu.
Z wymagań mogę teraz stworzyć listę części:
Nadajnik:
- Arduino Mega.
- Deska do krojenia chleba.
- 4-cyfrowy 7-segmentowy wyświetlacz.
- 2 X przełączników chwilowych, z zaślepkami.
- 1 X dioda LED RGB.
- Rezystory 9X220ohm. 8 dla wyświetlacza i 1 dla diody LED RGB.
- Rezystory 2X10kohm. Opuść rezystory dla 2 przycisków. (Właściwie użyłem 9.1kohm, bo to miałem)
- Potencjometr 1X10 k.
- 1 X NRF24L01
- [opcjonalnie] 1 X tabliczka zaciskowa YL-105 dla NRF24L01. Pozwala to na podłączenie 5V i łatwiejsze okablowanie. Przewody połączeniowe
Odbiornik:
- Arduino UNO.
- Deska do krojenia chleba.
- 1 X dioda LED RGB.
- Rezystor 1X220 omów. Do diody LED.
- 1 X serwo. Użyłem SG90 tylko do celów demonstracyjnych.
- 1 X NRF24L01
- opcjonalnie] 1 X tabliczka zaciskowa YL-105 dla NRF24L01. Pozwala to na podłączenie 5V i łatwiejsze okablowanie.
- Przewody połączeniowe
Krok 2: Wyświetlacz
Użyłem 4-cyfrowego 7-segmentowego wyświetlacza
Testowane z SMA420564 i SM420562K (styki są takie same)
Styki 1 i 12 są zaznaczone.
Układ pinów z góry na dół 12, 11, 10, 9, 8, 7 1, 2, 3, 4, 5, 6
Piny 12, 9, 8, 6 włączają lub wyłączają cyfry od 1 do 4 od lewej do prawej
Krok 3: Podłączanie Arduino Mega:
Wyświetlacz do układu pinów Arduino
- 1 do pinu 6 przez rezystor 220ohm (E)
- 2 do pinu 5 przez rezystor 220ohm (D)
- 3 do pinu 9 przez rezystor 220ohm (DP) nie jest tutaj używany
- 4 do pinu 4 przez rezystor 220ohm (C)
- 5 do pinu 8 przez rezystor 220ohm (G)
- 6 do pinu 33 (cyfra 4)
- 7 do pinu 3 przez rezystor 220ohm (B)
- 8 do pinu 32 (cyfra 3)
- 9 do styku 31 (cyfra 2)
- 10 do pinu 7 przez rezystor 220ohm (F)
- 11 do pinu 2 przez rezystor 220ohm (A)
- 12 do styku 30 (cyfra 1)
Potencjometr 10kohm do zmiany liczby na wyświetlanej cyfrze
- Zewnętrzny pin do 5v
- Sworzeń środkowy do A0
- Inny zewnętrzny pin do GND
Zaakceptuj przycisk numeryczny
- Aby przypiąć 36.
- I pin 36 przez rezystor ściągający 10kohm do GND
Przycisk zmiany numeru kombinacji
- Aby przypiąć 37.
- I pin 37 przez rezystor ściągający 10kohm do GND
LED RGB (wspólna katoda)
- Katoda do GND przez rezystor 220ohm
- Czerwony do pinu 40
- Zielony do pinu 41
- Niebieski do pinu 42
NRF24L01 z tablicą zaciskową:
- MISO do pinu 50 (obowiązkowe przez dedykowany pin)
- MOSI do pinu 51 (obowiązkowe przez dedykowany pin)
- SCK do pinu 52 (obowiązkowe przez dedykowany pin)
- CE do pinu 44 (Opcjonalny numer pinu, ale zdefiniowany w szkicu)
- CSN do pinu 45 (Opcjonalny numer pinu, ale zdefiniowany w szkicu)
- Vcc do Arduino 5v (lub 3.3v, jeśli nie używasz płytki zaciskowej)
- GND do Arduino GND
Krok 4: Okablowanie Arduino UNO:
LED RGB (wspólna katoda)
- Katoda do GND przez rezystor 220ohm
- Czerwony do pinu 2 Zielony do pinu 3
- Niebieski (tu nie używany)
Serwo:
- Czerwony do Arduino 5v lub oddzielne zasilanie, jeśli jest używane
- Brązowy do Arduino GND i oddzielne zasilanie, jeśli jest używane
- Pomarańczowy do pinu 6
NRF24L01 z tablicą zaciskową:
MISO do pinu 12 (obowiązkowe przez dedykowany pin)
MOSI do pinu 11 (obowiązkowe przez dedykowany pin)
SCK do pinu 13 (obowiązkowe przez dedykowany pin)
CE do pinu 7 (Opcjonalny numer pinu, ale zdefiniowany w szkicu)
CSN do pinu 8 (Opcjonalny numer pinu, ale zdefiniowany w szkicu)
Vcc do Arduino 5v (lub 3.3v, jeśli nie używasz płytki zaciskowej)
GND do Arduino GND
Krok 5: Jak to działa
Gdy obie płytki prototypowe są gotowe i zostanie na nie przesłany odpowiedni szkic, możemy go teraz przetestować.
Z zasilaniem na obu płytach.
Na obu płytkach powinny pojawić się czerwone diody LED.
Na wyświetlaczu pojawi się liczba w pierwszej cyfrze. Ta liczba będzie zależeć od tego, gdzie aktualnie ustawiony jest potencjometr.
Obróć potencjometr, aby uzyskać żądaną liczbę.
Po znalezieniu numeru naciśnij przycisk akceptacji. W moim przypadku to ten na lewo od potencjometru.
Zrób to samo dla pozostałych trzech liczb.
Jeśli wprowadzona kombinacja jest prawidłowa, wyświetli się napis OPENn, na obu płytkach zaświeci się zielona dioda, a serwomechanizm obróci się o 180 stopni.
Wyświetlacz zgaśnie, a zielona dioda LED będzie świecić przez około 5 sekund dłużej.
Gdy czas odblokowania się skończy, obie diody zaświecą się na czerwono, a serwo powróci o 180 stopni do swojego początku.
Jeśli wprowadzona kombinacja nie jest prawidłowa, na wyświetlaczu pojawi się słowo OOPS, a czerwone diody LED pozostaną włączone.
W szkicu 1 1 1 1 znajduje się domyślna kombinacja zakodowana na sztywno.
Aby zmienić kombinację, musisz najpierw wprowadzić poprawną kombinację.
Gdy słowo OPENn zniknie, masz około 5 sekund na naciśnięcie drugiego przycisku.
Po wprowadzeniu sekwencji zmiany kombinacji, dioda LED płyty głównej zaświeci się na niebiesko, podczas gdy druga pozostanie zielona, a zatem otwarta.
Wprowadź nową kombinację w taki sam sposób jak poprzednio.
Po zaakceptowaniu nowej kombinacji (po ostatnim naciśnięciu przycisku) zostanie ona zapisana w pamięci EEPROM.
Oba Arduino przejdą teraz w tryb zablokowany.
Wprowadź nową kombinację, a odblokuje się zgodnie z oczekiwaniami.
Po zmianie kombinacji i zapisaniu w pamięci EEPROM, zakodowana na stałe wartość domyślna 1 1 1 1 jest ignorowana.
Krok 6: Gotowe
Zbudowałem to, używając podstawowego NRF24L01 z wbudowaną anteną i zarządzałem dobrą komunikacją około 15 stóp przez jedną ścianę.
Ponieważ płytka stykowa Arduino Mega była trochę zajęta przewodami, w niektórych miejscach użyłem zworek bezpośrednich. To, biorąc pod uwagę fakt, że na jednej płytce stykowej jest dużo, utrudnia śledzenie zdjęć.
Myślę jednak, że wyjaśniłem wszystko pin po pin i nawet jeśli jesteś początkującym, powinieneś być w stanie zbudować ten mały projekt, biorąc tylko jeden drut lub pin na raz.
Oba szkice są w pełni skomentowane dla ułatwienia czytania i są dostępne tutaj do pobrania.
Szkic Arduino Mega jest dość duży, około 400 linii, ale jest podzielony na łatwe do opanowania kawałki, więc powinien być łatwo śledzony.
Zalecana:
Bezprzewodowy pilot za pomocą modułu 2,4 Ghz NRF24L01 z Arduino - Nrf24l01 4-kanałowy / 6-kanałowy nadajnik-odbiornik do quadkoptera - Helikopter RC - Samolot zdalnie sterowany za pomocą Arduino: 5 kroków (ze zdjęciami)
Bezprzewodowy pilot za pomocą modułu 2,4 Ghz NRF24L01 z Arduino | Nrf24l01 4-kanałowy / 6-kanałowy nadajnik-odbiornik do quadkoptera | Helikopter RC | Samolot RC przy użyciu Arduino: obsługa samochodu RC | Quadkopter | Dron | Samolot RC | Łódź RC, zawsze potrzebujemy odbiornika i nadajnika, załóżmy, że do RC QUADCOPTER potrzebujemy 6-kanałowy nadajnik i odbiornik, a ten typ TX i RX jest zbyt drogi, więc zrobimy go na naszym
Elektroniczny zamek szyfrowy: 4 kroki
Elektroniczny zamek szyfrowy: Cyfrowe zamki szyfrowe są bardzo popularne w elektronice, gdzie trzeba wprowadzić konkretny „kod”, aby otworzyć zamek. Ten typ zamków wymaga mikrokontrolera do porównania wprowadzonego kodu z kodem predefiniowanym w celu otwarcia zamka. Są takie rodzaje
EAL - wbudowany - zamek szyfrowy: 4 stopnie
EAL- Embedded - Zamek szyfrowy: Ten projekt jest jednym projektem szkolnym, który wykonałem, aby wybrać przedmiot 2.1 C-programowanie w EAL. Po raz pierwszy zrobiłem projekt Arduino i programowanie w C. To jest projekt, który prezentuje zamek szyfrowy. Zamek szyfrowy
Bezprzewodowy punkt dostępowy o zasięgu 50 metrów z TP Link WN7200ND Bezprzewodowy adapter USB na Raspbian Stretch: 6 kroków
Bezprzewodowy punkt dostępowy o zasięgu pięćdziesięciu metrów z bezprzewodowym adapterem TP Link WN7200ND USB na Raspbian Stretch: Raspberry Pi świetnie nadaje się do tworzenia bezpiecznych bezprzewodowych punktów dostępowych, ale nie ma dobrego zasięgu, użyłem bezprzewodowego adaptera USB TP Link WN7200ND, aby go rozszerzyć. Chcę się podzielić jak to zrobićDlaczego zamiast routera używać raspberry pi?T
Cyfrowy zamek szyfrowy!: 7 kroków (ze zdjęciami)
Cyfrowy zamek szyfrowy!: Zawsze zastanawiałem się, jak działają zamki elektroniczne, więc po ukończeniu podstawowego kursu elektroniki cyfrowej postanowiłem sam je zbudować. A ja pomogę Ci zbudować własny! Możesz podłączyć go do dowolnego napięcia od 1 V do 400 V (lub m