Spisu treści:

Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem: 6 kroków (ze zdjęciami)
Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem: 6 kroków (ze zdjęciami)

Wideo: Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem: 6 kroków (ze zdjęciami)

Wideo: Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem: 6 kroków (ze zdjęciami)
Wideo: Termometr bezprzewodowy 2024, Lipiec
Anonim
Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem
Bezprzewodowy zamek szyfrowy Arduino z NRF24L01 i 4-cyfrowym 7-segmentowym wyświetlaczem

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

Wymagania i lista części
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

Wyświetlacz
Wyświetlacz
Wyświetlacz
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:

Okablowanie Arduino Mega
Okablowanie 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:

Okablowanie Arduino UNO
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

Image
Image
Jak to działa
Jak to działa
Jak to działa
Jak to działa
Jak to działa
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: