Obsah:

Systém 4směrného semaforu s použitím 5 bezdrátových modulů Arduinos a 5 NRF24L01: 7 kroků (s obrázky)
Systém 4směrného semaforu s použitím 5 bezdrátových modulů Arduinos a 5 NRF24L01: 7 kroků (s obrázky)

Video: Systém 4směrného semaforu s použitím 5 bezdrátových modulů Arduinos a 5 NRF24L01: 7 kroků (s obrázky)

Video: Systém 4směrného semaforu s použitím 5 bezdrátových modulů Arduinos a 5 NRF24L01: 7 kroků (s obrázky)
Video: Lyžařská kolekce 2018/19 Hannah - bunda Kiely, kalhoty Tibi II 2024, Červenec
Anonim
Image
Image
Ambiciózní? Možná!
Ambiciózní? Možná!

Před malou chvílí jsem vytvořil instruktáž, která podrobně popisuje jeden pár semaforů na prkénku.

Také jsem vytvořil další Instructable ukazující základní rámec pro používání bezdrátového modulu NRF24L01.

To mě donutilo přemýšlet!

Na celém světě je spousta nadšenců, kteří staví modelová města a železnice a téměř vždy mají semafory nějakého popisu.

Některé jsou funkčními modely a jiné jsou pouze pro estetické účely.

Mohu vytvořit funkční model čtyřsměrného semaforového systému a bezdrátově je připojit?

Posadil jsem se a přemýšlel o svém seznamu možných požadavků. Což šlo trochu takhle.

Ovládejte 4 směry provozu, jako křižovatka.

Každý směr má dvě světla; a každý pár dostává své pokyny bezdrátově z jakési řídicí jednotky.

Umět definovat a upravovat provozní sled světel,

  • 1, 2, 3, 4 - ve směru hodinových ručiček
  • 1, 3, 4, 2
  • 1, 4, 2, 3
  • 1, 4, 3, 2-proti směru hodinových ručiček
  • 1, 2, 4, 3
  • 1, 3, 2, 4
  • 1 + 3, 2 + 4 - 2 zapnuto 2 vypnuto
  • 1 + 3, 2, 4
  • 1, 3, 2 + 4

Veškeré sekvenování bude řízeno jedinou řídicí jednotkou a přijímací jednotky pouze zapínají a vypínají světla.

Když jsem řekl vytvořit model, měl jsem na mysli vytvořit skutečný model, nic moc efektního, ale něco, co by ve skutečnosti vypadalo jako skutečná věc, možná možná ano.

Krok 1: Ambiciózní? Možná

Hlavní požadavky na součásti:

Řídicí jednotka a čtyři sady světel = pět Arduinos a pět bezdrátových modulů. AliExpress na záchranu (znovu).

Osm světelných stojanů. Mám špatnou napodobeninu 3D tiskárny, která má tendenci dodávat více binového krmiva než použitelné produkty, ale myslel jsem si, že to stejně zkusím. Něco jsem našel na Thingiverse, www.thingiverse.com/thing:2157324

Tento model vypadal pro mou tiskárnu jako nejméně složitý. Chtěl jsem osm, takže jsem stále tlačil štěstí. Jak se ukázalo, zjistil jsem, že po několika neúspěšných pokusech, pokud jsem model orientoval určitým směrem (zepředu dozadu), jsem získal rozumné výsledky. Celkem jsem vytiskl třináct a dostal osm použitelných.

To byl seřazený hlavní seznam dílů. Zbývající části už jsem měl.

Kompletní seznam dílů je

  • 5 x Arduino UNO
  • 5 x bezdrátové desky NRF24L01
  • 5 x odpojovací desky YL-105 (nebo podobné) pro NRF24L0
  • 8 x červené LED diody
  • 8 x žluté LED diody (nemám žádné oranžové LED)
  • 8 x zelených LED diod
  • 4 x RGB LED
  • Rezistory 28 x 220 ohmů
  • Breadboards / PCBs ??
  • 8 x semafory modelu
  • 6 x 8 dlouhých záhlaví pinů (šestá byla pro mezery na ovládací desce, viz video)
  • Smršťovací trubice
  • Propojovací vodiče
  • Kus sololitu nebo něco plochého
  • Další kusy dřeva ??
  • Malovat ??
  • Horké lepidlo
  • Čas, trpělivost a alkohol dle výběru

Krok 2: Napište kód pro řídicí jednotku

To je ten kousek, který jsem musel udělat jako první, jen pro případ, že bych to vlastně nemohl zvládnout, což by byl showstopper.

To byla zdaleka nejsložitější část nebo projekt, ale také pro mě nejzajímavější.

Musel jsem si sednout a definovat všechny možné kombinace změn světla a to, jak budou synchronně spolupracovat.

Jako každý dobrý design, začalo to na papíře s velmi dlouhým seznamem čísel, a protože jsem chtěl mít více možných provozních sekvencí, seznam se ještě prodloužil.

Ale jakmile jsem byl šťastný, že mám vše, co jsem považoval za nutné, a poté, co jsem chvíli hleděl na stránky čísel, můj OCD vyrazil a začal jsem vidět vzory.

Když jsem uspořádal vzory, podařilo se mi shromáždit celé sekvenování dolů do jednoho 3-dimenzionálního pole a dvou 2-dimenzionálních polí.

Jediné, co jsem teď musel udělat, bylo najít způsob, jak manipulovat s těmito poli, aby vytvořily správné sekvencování a lehké kroky.

Chvíli to trvalo, ale podařilo se mi toho dosáhnout za méně než padesát řádků kódu, včetně komentářů atd.

Kód pro toto není pro slabé povahy, ale pokud chápete vícerozměrná pole, nemělo by být příliš obtížné ho sledovat. Nebo křivka učení pro zbytek.

Jde o to, že věřím, že to funguje, a nemělo by to vyžadovat změnu. Ale…………

Krok 3: Modul Breakout Board NRF24L01

NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod
NRF24L01 Breakout Board Mod

Modul NRF24L01 a odpojovací deska YL-105 bohužel nejsou příliš vhodné pro prkénko.

Oddělovací deska jde částečně k vyřešení problému a co je důležitější, díky čemuž je odolná vůči 5v, ale stále není přátelská k prkénku.

Tak jsem se trochu vynalézal.

Ve své sbírce „věcí“mám několik 6kolíkových záhlaví s dlouhými kolíky. Druhy, které jsou nutné pro výrobu štítů Arduino.

Vzal jsem jeden z nich a ohnul kolíky o 90 stupňů.

Sundal jsem jednu z napájecích lišt z prkénka a zasunul záhlaví na okraj prkénka.

Tím zůstaly napájecí kolíky na oddělovací desce. Nyní jsou v cestě.

Tak jsem je odstranil a umístil na druhou stranu vylamovací desky tak, aby nyní vyčnívaly ze zadní části desky.

Pro účely tohoto Instructable požaduji pět modulů NRF24L01, takže jsem je všechny namontoval podél prkénka a poté upevnil napájecí lištu podél všech napájecích kolíků na odpojovací desce.

Vypadalo to docela uklizené, dokud jsem Arduino nepřipojil a bylo to trochu přeplněné.

Navíc, což je ten důležitý bit, jakmile se připojí napájecí lišta, všechny Arduino budou připojeny ke stejnému zdroji a tomu jsem se snažil vyhnout, takže jsem většinu z toho zase rozebral.

Desku s pár moduly NRF24L01 na ní ponechám pro prototypování do budoucna, takže ne úplná ztráta času.

Krok 4: Semaforové jednotky

Semaforové jednotky
Semaforové jednotky
Semaforové jednotky
Semaforové jednotky
Semaforové jednotky
Semaforové jednotky

Našel jsem několik malých 170 prkének na vázací body. Ty nemají napájecí lištu, takže moje upravená odpočinková deska by se stále vešla. I když v mírném úhlu kvůli výšce prorážecí desky.

Postavil jsem čtyři ovládací prvky semaforu stejné, stejné barvy vodičů, umístění atd. Nyní jsou skutečně samostatné.

Pro řídicí jednotku jsem umístil modul NRF24L01 na desku s RGB LED diodami. Použil jsem RGB, protože, i když jsem nepotřeboval vidět všechna světla, jen červené a zelené, zabírají méně místa.

Normálním způsobem připojte LED k Arduinu a přidejte trochu kódu pro zobrazení červeného nebo zeleného stavu každé sady semaforů.

Snažil jsem se být konzistentní se svými barvami vodičů, abych snadno viděl, jestli jsem na jedné z desek udělal něco jiného.

Mám nějaké krátké sady svodů Dupont, a protože jsou svody slepené, tato část to docela usnadnila.

NRF24L01:

  • CE Orange na Arduino pin 10 (definováno v kódu)
  • CSN Yellow to Arduino pin 9 (definováno v kódu)
  • SCK Green to Arduino pin 13 (povinný)
  • MOSI Blue To Arduino pin 11 (povinné)
  • MISO Purple To Arduino pin 12 (povinné)
  • Vcc červená na 5v. Pokud nepoužíváte odpojovací desky, musí to být 3,3 V.
  • GND Brown k Arduino GND

Světelné jednotky a piny Arduino k LED:

  • Červená pro červenou LED
  • Oranžová pro žlutou LED (nemám oranžové LED)
  • Zelená pro zelenou LED
  • Černá pro GND

Moje jediná odchylka od toho byla, když jsem připojil Control Arduino k RGB LED diodám. Použil jsem bílé a šedé dráty, protože mi došly červené.

Krok 5: Semafory a testování

Image
Image
Semafory a testování
Semafory a testování
Semafory a testování
Semafory a testování

Tím je kód dokončen a každý samostatný ovládací prvek také dokončen. Jediné, co teď potřebuji, jsou samotné semafory.

Jak jsem již řekl, našel jsem na Thingiverse nekomplikovaný model a podařilo se mi vytisknout osm, které nevypadaly tak špatně.

Vybavil jsem LED diody požadovaným odporem 200 Ohm a propojovacím a uzemňovacím vodičem.

Smršťovací trubice vedla a horká vše lepila na místo.

Poté, co jsem namontoval všechny LED diody, rozhodl jsem se je namalovat na černo. Špatný nápad, to jsem měl udělat jako první.

Před dalším postupem jsem vše zapojil do testu.

Krok 6: Křižovatka

Křižovatka
Křižovatka
Křižovatka
Křižovatka
Křižovatka
Křižovatka
Křižovatka
Křižovatka

Rozhodl jsem se všechny namontovat na desku, takže jsem teď musel vytvořit nějaký druh křižovatky.

Žiji ve Velké Británii, takže tady jezdíme po špatné straně silnice, a proto jsem udělal svou křižovatku tak přátelskou k Británii, jak mi to moje špatné umělecké schopnosti umožňovaly.

To bylo docela jednoduché, jen časově náročné; a jsem si jist, že neexistují žádné křižovatky, které by ve skutečnosti tak vypadaly, ale moje nemají výmoly.

Nechtěl jsem tomuto projektu trvale obětovat své Arduiny, a tak jsem udělal kompromisy tím, že jsem každý z nich naplnil 10mm patkami a zalepil patky na základnu desky.

Udělal jsem však horké lepidlo na mini prkénko na straně Arduina.

Za prvé to drželo NRF24L01 a únikovou desku mimo základnu křižovatky, a za druhé, jen málokdy používám Arduino bez prkénka nějakého druhu, takže budou stejně užitečné.

Krok 7: Hotovo

Vše hotovo
Vše hotovo
Vše hotovo
Vše hotovo

Byly zahrnuty všechny soubory kódu.

Zde jsem kód neprošel, protože tento Instructable je dostatečně dlouhý i bez něj.

Doufám, že to byl užitečný Instructable, i když ukazuje, jak bezdrátově ovládat řadu dalších desek Arduino pomocí NRF24L01 za velmi rozumnou cenu.

Pokud máte nějaké dotazy, neváhejte napsat komentář a já se pokusím pomoci.

Doporučuje: