İçindekiler:

NRF24L01 ve 4 Haneli 7 Segment Ekranlı Arduino Kablosuz Şifreli Kilit: 6 Adım (Resimli)
NRF24L01 ve 4 Haneli 7 Segment Ekranlı Arduino Kablosuz Şifreli Kilit: 6 Adım (Resimli)

Video: NRF24L01 ve 4 Haneli 7 Segment Ekranlı Arduino Kablosuz Şifreli Kilit: 6 Adım (Resimli)

Video: NRF24L01 ve 4 Haneli 7 Segment Ekranlı Arduino Kablosuz Şifreli Kilit: 6 Adım (Resimli)
Video: Shift Register (74HC595) Nasıl Çalışır? 2024, Kasım
Anonim
NRF24L01 ve 4 Haneli 7 Segment Ekranlı Arduino Kablosuz Şifreli Kilit
NRF24L01 ve 4 Haneli 7 Segment Ekranlı Arduino Kablosuz Şifreli Kilit

Bu proje 4 haneli 7 segment display ile bir şeyler yapma alıştırması olarak hayatına başlamıştır.

Aklıma 4 basamaklı bir kombinasyon numarası girme yeteneği geldi, ancak bir kez bittiğinde oldukça sıkıcıydı. Arduino UNO kullanarak yaptım. Çalıştı ama başka bir şey yapmadı.

Daha sonra, seçilen numarayı kabul etmek için bir düğmeye ve belki kombinasyonu değiştirmek için başka bir düğmeye ve belki de herhangi bir zamanda bulunduğu durumu göstermek için bir LED'e sahip olması gerektiği fikrine vardım. Kulağa bir plan gibi gelse de, aynı zamanda UNO'daki pimlerin biteceği anlamına da geliyordu. Bu üniteyi çoğullamanın bir yolu olabilir ama nereden başlayacağımdan emin değilim, bu yüzden Arduino Mega'ya ulaştım.

Artık daha büyük bir tahta kullandığım ve oynamak için daha fazla pinim olduğu için, aslında bir çeşit anahtarı kontrol edecek başka bir Arduino ile iletişim kurmak için wi-fi yetenekleri eklemeye karar verdim.

Adım 1: Gereksinimler ve Parça Listesi

Gereksinimler ve Parça Listesi
Gereksinimler ve Parça Listesi

Tüm bunları düşündükten sonra, şimdi bir gereksinim listem var:

  • 4 haneli bir kombinasyon girebilmek için.
  • Varsayılan sabit kodlanmış bir kombinasyonla başlamak için.
  • Kombinasyonu değiştirebilmek ve yeni kombinasyonu Arduino'nun EEPROM'unda saklayabilmek.
  • Kilitli için kırmızı LED ve açık için yeşil LED ile kilidin durumunu görüntüleyin.
  • Kombinasyon değiştirilirken durumu mavi bir LED ile görüntüleyin.
  • Durumun kilidi açıldığında, bir süre kalın ve ardından kilitli duruma geri dönün.
  • Kilitli/kilitsiz durumu başka bir Arduino'ya iletin.
  • Alıcı Arduino'daki kırmızı ve yeşil LED'lerle aynı durumu görüntüleyin.
  • Gösteri amacıyla, alınan duruma göre bir kilit mekanizması olarak hareket etmek için bir servo kullanın.

Gereksinimlerden artık bir parça listesi oluşturabilirim:

verici:

  • Arduino Mega.
  • Ekmek tahtası.
  • 4 haneli 7 segment ekran.
  • Kapaklı 2 X anlık anahtar.
  • 1 X RGB LED'i.
  • 9 X 220ohm dirençler. 8 ekran için ve 1 RGB LED için.
  • 2 X 10kohm direnç. 2 düğme için dirençleri aşağı çekin. (Aslında 9.1kohm kullandım çünkü sahip olduğum buydu)
  • 1 X 10k potansiyometre.
  • 1 X NRF24L01
  • [isteğe bağlı] NRF24L01 için 1 X YL-105 devre kartı. Bu, 5v bağlantı ve daha kolay kablolama sağlar. Atlama telleri

Alıcı:

  • Arduino UNO.
  • Ekmek tahtası.
  • 1 X RGB LED'i.
  • 1 X 220ohm direnç. LED için.
  • 1X servo. SG90'ı yalnızca tanıtım amaçlı kullandım.
  • 1 X NRF24L01
  • isteğe bağlı] NRF24L01 için 1 X YL-105 devre kartı. Bu, 5v bağlantı ve daha kolay kablolama sağlar.
  • Atlama telleri

2. Adım: Ekran

Ekran
Ekran
Ekran
Ekran

4 haneli 7 segmentli bir ekran kullandım

SMA420564 ve SM420562K ile test edilmiştir (pinler aynıdır)

1 ve 12 numaralı pinler işaretlenmiştir.

Yukarıdan aşağıya pim düzeni 12, 11, 10, 9, 8, 7 1, 2, 3, 4, 5, 6

12, 9, 8, 6 pinleri soldan sağa 1'den 4'e kadar olan rakamları açar veya kapatır

Adım 3: Arduino Mega'yı Kablolama:

Arduino Mega'yı Kablolama
Arduino Mega'yı Kablolama

Arduino pin düzenlemesine göster

  • 220ohm direnç (E) aracılığıyla 1'den 6'ya
  • 220ohm direnç (D) aracılığıyla 2'den 5'e
  • 220ohm direnç (DP) aracılığıyla 3 ila pin 9 burada kullanılmaz
  • 220ohm direnç (C) aracılığıyla 4'ten pin 4'e
  • 220ohm direnç (G) aracılığıyla 5 ila pin 8
  • 6'dan pim 33'e (4. Basamak)
  • 220ohm direnç (B) aracılığıyla 7'den pin 3'e
  • 8'den 32'ye (Rakam 3)
  • 9'dan 31'e (Rakam 2)
  • 220ohm direnç (F) aracılığıyla 10 ila pin 7
  • 220ohm direnç (A) aracılığıyla 11'den pin 2'ye
  • 12'den pin 30'a (1. Basamak)

Görüntülenen basamaktaki sayıyı değiştirmek için 10kohm potansiyometre

  • 5v'ye dış pim
  • A0'a orta pim
  • GND'ye diğer dış pim

Numara düğmesini kabul et

  • 36'yı sabitlemek için.
  • Ve 36'yı 10kohm'luk bir aşağı çekme direncinden GND'ye sabitleyin

Kombinasyon numarası düğmesini değiştirin

  • 37 numaraya.
  • Ve 37'yi 10kohm'luk bir aşağı çekme direncinden GND'ye sabitleyin

RGB LED (Ortak katot)

  • 220ohm direnç üzerinden GND'ye katot
  • 40 numaralı pime kırmızı
  • 41 numaralı pime yeşil
  • 42 numaralı pime mavi

koparma kartı ile NRF24L01:

  • MISO'dan pin 50'ye (Adanmış pin aracılığıyla zorunludur)
  • MOSI'den 51'e (Adanmış pin aracılığıyla zorunludur)
  • SCK'den pim 52'ye (Adanmış pim aracılığıyla zorunludur)
  • CE'den pin 44'e (Opsiyonel pin numarası ancak çizimde tanımlanmıştır)
  • CSN'den pin 45'e (Opsiyonel pin numarası ancak çizimde tanımlanmıştır)
  • Vcc'den Arduino 5v'ye (veya devre kartı kullanılmıyorsa 3.3v)
  • GND'den Arduino GND'ye

Adım 4: Arduino UNO'yu Kablolama:

Arduino UNO'yu Kablolama
Arduino UNO'yu Kablolama

RGB LED (Ortak katot)

  • 220ohm direnç üzerinden GND'ye katot
  • 2. pime kırmızı, 3. pime yeşil
  • Mavi (Burada kullanılmaz)

Servo:

  • Kırmızıdan Arduino 5v'ye veya kullanılıyorsa ayrı besleme
  • Brown'dan Arduino GND'ye ve kullanılıyorsa ayrı besleme
  • 6. pime turuncu

koparma kartı ile NRF24L01:

MISO'dan pin 12'ye (Adanmış pin aracılığıyla zorunludur)

MOSI'den pin 11'e (Adanmış pin aracılığıyla zorunludur)

SCK'den pin 13'e (Adanmış pin aracılığıyla zorunludur)

CE'den pin 7'ye (Opsiyonel pin numarası ancak çizimde tanımlanmıştır)

CSN'den pin 8'e (Opsiyonel pin numarası ancak çizimde tanımlanmıştır)

Vcc'den Arduino 5v'ye (veya devre kartı kullanılmıyorsa 3.3v)

GND'den Arduino GND'ye

Adım 5: Nasıl Çalışır?

Image
Image
Nasıl çalışır
Nasıl çalışır
Nasıl çalışır
Nasıl çalışır
Nasıl çalışır
Nasıl çalışır

Her iki devre tahtası da tamamlandıktan ve uygun çizim üzerlerine yüklendikten sonra artık test edebiliriz.

Her iki panoya da güç ile.

Kırmızı LED'ler her iki panoda da gösterilmelidir.

Ekranda ilk hanede bir sayı görüntülenecektir. Bu sayı, potansiyometrenin o anda ayarlandığı yere bağlı olacaktır.

İstenilen sayıyı elde etmek için potansiyometreyi çevirin.

Numara bulunduktan sonra, kabul et düğmesine basın. Benim durumumda potansiyometrenin solundakidir.

Diğer üç sayı için de aynısını yapın.

Girilen kombinasyon doğru ise OPEn yazısı ekrana gelecek, her iki kartta da yeşil LED yanacak ve servo 180 derece dönecektir.

Ekran kararacak ve yeşil LED yaklaşık 5 saniye daha yanık kalacaktır.

Kilit açma süresi dolduğunda, her iki LED de kırmızıya dönecek ve servo, başlangıcına 180 derece dönecektir.

Girilen kombinasyon doğru değilse, OOPS yazısı görüntülenecek ve kırmızı LED'ler yanık kalacaktır.

1 1 1 1 taslağında sabit kodlanmış bir varsayılan kombinasyon vardır.

Kombinasyonu değiştirmek için önce doğru kombinasyonu girmelisiniz.

OPEn kelimesi kaybolduğunda, diğer düğmeye basmak için yaklaşık 5 saniyeniz var.

Değişiklik kombinasyonu sırasına girdiğinizde, ana kartın LED'i maviye dönerken diğeri yeşil kalır ve bu nedenle açılır.

Daha önce olduğu gibi yeni bir kombinasyon girin.

Yeni kombinasyon kabul edildiğinde (son düğmeye basıldığında) EEPROM'da saklanacaktır.

Her iki Arduino da şimdi kilitli moda geçecek.

Yeni kombinasyonunuzu girin ve beklendiği gibi kilidi açılacaktır.

Bir kombinasyon değiştirilip EEPROM'da saklandıktan sonra, sabit kodlanmış 1 1 1 1 varsayılanı yok sayılır.

Adım 6: Hepsi Tamamlandı

Bunu, yerleşik antenli temel NRF24L01'i kullanarak yaptım ve bir duvardan yaklaşık 15 fitlik iyi bir iletişim sağladım.

Arduino Mega breadboard kablolarla biraz uğraştığı için bazı yerlerde direkt jumper kullandım. Bu, bir breadboard üzerinde çok şey olduğu gerçeğiyle, resimleri takip etmeyi zorlaştırıyor.

Ancak, pin için her şeyi açıkladığımı düşünüyorum ve yeni başlayan biri olsanız bile, bu küçük projeyi bir seferde sadece bir tel veya pin alarak oluşturabilmelisiniz.

Her iki çizim de okuma kolaylığı için tamamen yorumlanmıştır ve buradan indirilebilir.

Arduino Mega'nın taslağı oldukça büyük, yaklaşık 400 satırdır ancak yönetilebilir parçalara bölünmüştür, bu nedenle kolayca takip edilmelidir.

Önerilen: