İçindekiler:

5 Arduino ve 5 NRF24L01 Kablosuz Modül Kullanan 4 Yönlü Trafik Işık Sistemi: 7 Adım (Resimli)
5 Arduino ve 5 NRF24L01 Kablosuz Modül Kullanan 4 Yönlü Trafik Işık Sistemi: 7 Adım (Resimli)

Video: 5 Arduino ve 5 NRF24L01 Kablosuz Modül Kullanan 4 Yönlü Trafik Işık Sistemi: 7 Adım (Resimli)

Video: 5 Arduino ve 5 NRF24L01 Kablosuz Modül Kullanan 4 Yönlü Trafik Işık Sistemi: 7 Adım (Resimli)
Video: Arduino Kart ile Trafik Sinyalizasyon Sistemi Tasarlayalım 2024, Kasım
Anonim
Image
Image
Hırslı? Belki!
Hırslı? Belki!

Kısa bir süre önce, bir breadboard üzerinde tek bir trafik ışığı çiftini detaylandıran bir Eğitilebilir Tablo oluşturdum.

Ayrıca bir NRF24L01 kablosuz modülünü kullanmak için temel çerçeveyi gösteren başka bir Eğitilebilir Tablo oluşturdum.

Bu beni düşündürdü!

Dünya çapında, model kasabalar ve demiryolları inşa eden ve neredeyse her zaman belirli bir trafik ışığına sahip olan oldukça fazla hobici var.

Bazıları çalışan modellerdir ve diğerleri sadece estetik amaçlıdır.

Dört yollu trafik ışığı sisteminin çalışan bir modelini oluşturup bunları kablosuz olarak bağlayabilir miyim?

Oturdum ve olası gereksinimler listemi düşündüm. Hangi biraz böyle gitti.

Bir kavşak kavşağı gibi 4 trafik yönünü kontrol edin.

Her yönün iki ışığı vardır; ve her bir çift, talimatlarını bir çeşit kontrol ünitesinden kablosuz olarak alıyor.

Işıkların çalışma sırasını tanımlayabilme ve değiştirebilme,

  • 1, 2, 3, 4 - saat yönünde
  • 1, 3, 4, 2
  • 1, 4, 2, 3
  • 1, 4, 3, 2 – saat yönünün tersine
  • 1, 2, 4, 3
  • 1, 3, 2, 4
  • 1 + 3, 2 + 4 – 2 açık 2 kapalı
  • 1 + 3, 2, 4
  • 1, 3, 2 + 4

Tüm sıralama tek bir kontrol ünitesi tarafından kontrol edilecek ve alıcı üniteler sadece ışıkları açıp kapatacak.

Bir model yap dediğimde, gerçek bir model yap demek istedim, çok süslü bir şey değil, ama aslında gerçek bir şeye benzeyen bir şey, muhtemelen, belki de öyle.

Adım 1: Hırslı mı? Belki

Ana parça gereksinimleri:

Bir kontrol ünitesi ve dört set ışık = beş Arduino ve beş kablosuz modül. AliExpress kurtarmaya (tekrar).

Sekiz trafik ışığı standı. Kullanılabilir ürünlerden daha fazla çöp kutusu sağlayan bir 3D yazıcının kötü bir taklidi var, ama yine de deneyeceğimi düşündüm. Thingiverse'de biraz buldum, www.thingiverse.com/thing:2157324

Bu model yazıcım için en az karmaşık gibi görünüyordu. Sekiz istedim, bu yüzden hala şansımı zorluyordum. Görünen o ki, birkaç başarısız denemeden sonra, modeli belirli bir yöne (önden arkaya) yönlendirirsem makul sonuçlar aldığımı gördüm. Toplamda on üç tane bastım ve sekiz tane kullanılabilir tane aldım.

Sıralanan ana parça listesi buydu. Kalan kısımlar zaten elimdeydi.

Tam parça listesi

  • 5 x Arduino UNO
  • 5 x NRF24L01 kablosuz kartlar
  • NRF24L0'lar için 5 x YL-105 (veya benzeri) devre kartı
  • 8 x Kırmızı LED
  • 8 x Sarı LED (Turuncu LED'im yok)
  • 8 x Yeşil LED
  • 4 x RGB LED'ler
  • 28 x 220 Ohm dirençler
  • Breadboard'lar / PCB'ler?
  • 8 x Model trafik Işıkları
  • 6 x 8 uzun pin başlığı (altıncı, kontrol panosunda boşluk bırakmak içindi, videoya bakın)
  • Küçültme tüpü
  • Atlama telleri
  • Sunta parçası veya düz bir şey
  • Diğer odun parçaları ??
  • Boya ??
  • Sıcak tutkal
  • Zaman, Sabır ve tercih edilen alkol

Adım 2: Kontrol Ünitesi İçin Kod Yazma

Bu, gerçekten başaramazsam diye ilk yapmam gereken şeydi, ki bu bir gösterici olurdu.

Bu, açık ara en karmaşık kısım veya projeydi, ama aynı zamanda benim için en ilginç olanıydı.

Oturup tüm olası ışık değişim kombinasyonlarını ve bunların eşzamanlı olarak nasıl birlikte çalışacaklarını tanımlamam gerekiyordu.

Tüm iyi tasarımlar gibi, kağıt üzerinde çok uzun bir sayı listesiyle başladı ve birden fazla olası çalışma dizisine sahip olmak istediğim için liste daha da uzadı.

Ama bir kez gerekli olduğunu düşündüğüm her şeye sahip olduğum için mutlu oldum ve bir süre sayıların sayfalarına baktıktan sonra OKB'm devreye girdi ve kalıpları görmeye başladım.

Kalıpları organize ederek, tüm sıralamayı tek bir 3 boyutlu dizi ve iki 2 boyutlu dizi halinde birleştirmeyi başardım.

Şimdi tek yapmam gereken, bu dizileri doğru sıralamayı ve hafif adımları oluşturmak için manipüle etmenin bir yolunu bulmak.

Biraz zaman aldı, ancak yorumlar vb. dahil olmak üzere elli satırdan daha az kodla başardım.

Bunun kodu korkaklar için değil ama çok boyutlu dizilerden anlıyorsanız takip etmesi çok da zor olmasa gerek. Ya da geri kalanı için bir öğrenme eğrisi.

Mesele şu ki, işe yaradığına ve yine de değiştirilmesini gerektirmediğine inanıyorum. Fakat…………

Adım 3: NRF24L01 Breakout Board Modu

NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu
NRF24L01 Koparma Kartı Modu

NRF24L01 modülü ve YL-105 koparma kartı maalesef çok devre tahtası dostu değil.

Breakout board, sorunu çözmeye ve daha da önemlisi 5v toleranslı hale getirmeye kısmen gider, ancak yine de breadboard dostu değildir.

Bu yüzden biraz yaratıcı oldum.

'Eşyalar' koleksiyonumda, uzun pimli bir dizi 6 pim başlığım var. Arduino Shields yapmak için gerekli olan sıralama.

Bunlardan birini aldım ve pimleri 90 derece büktüm.

Güç raylarından birini devre tahtasından çıkardım ve başlığı devre tahtasının kenarına taktım.

Bu, güç pimlerini koparma panosunda bıraktı. Şimdi yoldalar.

Bu yüzden onları çıkardım ve şimdi tahtanın arkasından dışarı çıkmaları için koparma tahtasının diğer tarafına yerleştirdim.

Bu Eğitilebilir Yazının amaçları için, beş NRF24L01 modülüne ihtiyacım var, bu yüzden hepsini devre tahtası boyunca monte ettim ve ardından güç rayını devre kartındaki tüm güç pimleri boyunca sabitledim.

Arduino'ları bağlayana kadar oldukça düzenli görünüyordu ve biraz kalabalıklaştı.

Artı, önemli olan, güç rayı bağlandığında, tüm Arduino'lar aynı kaynağa bağlanacaktı ve bundan kaçınmaya çalışıyordum, bu yüzden çoğunu tekrar söktüm.

Gelecekte prototipleme için üzerinde birkaç NRF24L01 modülü olan anakartı tutacağım, bu yüzden tam bir zaman kaybı değil.

Adım 4: Trafik Işığı Üniteleri

Trafik Işık Üniteleri
Trafik Işık Üniteleri
Trafik Işık Üniteleri
Trafik Işık Üniteleri
Trafik Işık Üniteleri
Trafik Işık Üniteleri

Küçük 170 bağlantı noktalı breadboard buldum. Bunların bir güç rayı yok, bu yüzden modifiye edilmiş devre kartım yine de sığacak. Koparma tahtasının yüksekliği nedeniyle hafif bir açıyla da olsa.

Dört trafik ışığı kontrolünü aynı, aynı renkli kablolar, konumlandırma vb. ile kurdum. Artık gerçekten bağımsızlar.

Kontrol ünitesi için NRF24L01 modülünü RGB LED'li bir PCB'ye yerleştirdim. RGB kullandım çünkü tüm ışıkları görmeme gerek yoktu, sadece kırmızı ve yeşil, daha az yer kaplıyorlar.

LED'leri normal şekilde Arduino'ya bağladı ve her bir trafik ışığı setinin kırmızı veya yeşil durumunu görüntülemek için biraz kod ekledi.

Kartlardan birinde farklı bir şey yapıp yapmadığımı kolayca görebilmek için kablo renklerimde tutarlı olmaya çalıştım.

Bazı kısa Dupont kurşun setlerim var ve kablolar birbirine yapıştığından bu kısmı oldukça kolaylaştırdı.

NRF24L01:

  • CE Turuncu - Arduino pin 10 (kodda tanımlanmıştır)
  • CSN Sarı Arduino pin 9'a (kodda tanımlanmıştır)
  • SCK Green To Arduino pin 13 (zorunlu)
  • MOSI Blue - Arduino pin 11 (zorunlu)
  • MISO Purple To Arduino pin 12 (zorunlu)
  • Vcc Kırmızıdan 5v'ye. Ara panolarını kullanmıyorsanız, bu 3.3v olmalıdır.
  • GND Brown'dan Arduino GND'ye

LED'lere ışık üniteleri ve Arduino pinleri:

  • Kırmızı LED için kırmızı
  • Sarı LED için Turuncu (Turuncu LED'lerim yok)
  • Yeşil LED için yeşil
  • GND için siyah

Bundan tek sapmam, Kontrol Arduino'yu RGB LED'lerine bağladığım zamandı. Kırmızı kablolarım bittiği için beyaz ve gri teller kullandım.

Adım 5: Trafik Işıkları ve Test Etme

Image
Image
Trafik Işıkları ve Testi
Trafik Işıkları ve Testi
Trafik Işıkları ve Testi
Trafik Işıkları ve Testi

Bu kod tamamlandı ve her bağımsız kontrol de tamamlandı. Şimdi tek ihtiyacım olan trafik ışıklarının kendisi.

Daha önce de söylediğim gibi, Thingiverse'de karmaşık olmayan bir model buldum ve çok da kötü görünmeyen sekiz tane basmayı başardım.

LED'leri gerekli 200 Ohm direnç ve bir bağlantı ve topraklama kablosuyla donattım.

Kabloları küçültün ve hepsini yerine sıcak yapıştırın.

Tüm LED'ler takıldıktan sonra onları siyaha boyamaya karar verdim. Kötü fikir, önce bunu yapmalıydım.

Daha fazla ilerlemeden önce her şeyi bir test için ayarladım.

6. Adım: Kavşak

Kavşak
Kavşak
Kavşak
Kavşak
Kavşak
Kavşak
Kavşak
Kavşak

Hepsini bir tahtaya monte etmeye karar verdim, bu yüzden şimdi bir çeşit kavşak benzeri yaratmam gerekiyordu.

Birleşik Krallık'ta yaşıyorum, bu yüzden burada yolun yanlış tarafında sürüyoruz ve bu nedenle, kavşaklarımı, zayıf sanatsal becerilerimin izin verdiği kadar Birleşik Krallık dostu yaptım.

Bu oldukça basitti, sadece zaman alıcıydı; ve eminim ki aslında böyle görünen hiçbir kavşak yoktur, ama benimkilerde hiç çukur yok.

Arduinos'umu bu projeye kalıcı olarak feda etmek istemedim, bu yüzden her birini 10 mm'lik uçlarla doldurarak taviz verdim ve uçları tahtanın tabanına sıcak yapıştırdım.

Yine de yaptığım şey, mini breadboard'u Arduino'nun yanına sıcak yapıştırmak.

İlk olarak, NRF24L01'i ve devre kartını kavşak tabanından uzak tuttu, ve ikinci olarak, bir tür breadboard olmadan bir Arduino'yu nadiren kullanırım, bu yüzden yine de böyle faydalı olacaklar.

7. Adım: Hepsi Tamamlandı

Hepsi tamam
Hepsi tamam
Hepsi tamam
Hepsi tamam

Tüm kod dosyaları dahil edilmiştir.

Bu Eğitilebilirlik onsuz yeterince uzun olduğu için buradaki kodu gözden geçirmedim.

Umarım bu, çok makul fiyatlı NRF24L01 ile bir dizi diğer Arduino kartının kablosuz olarak nasıl kontrol edileceğini gösterse bile, faydalı bir Eğitilebilirlik olmuştur.

Herhangi bir sorunuz varsa, lütfen yorum yapmaktan çekinmeyin, yardımcı olmak için elimden geleni yapacağım.

Önerilen: