Tartalomjegyzék:

Bluetooth LED rajztábla és IOS alkalmazás: 9 lépés (képekkel)
Bluetooth LED rajztábla és IOS alkalmazás: 9 lépés (képekkel)

Videó: Bluetooth LED rajztábla és IOS alkalmazás: 9 lépés (képekkel)

Videó: Bluetooth LED rajztábla és IOS alkalmazás: 9 lépés (képekkel)
Videó: Высокая плотность 2022 2024, Július
Anonim
Image
Image
Bluetooth LED rajztábla és IOS alkalmazás
Bluetooth LED rajztábla és IOS alkalmazás

Ebben az oktatóanyagban létrehozhat egy Bluetooth LED táblát, amely képes rajzokat készíteni az általunk készített iPhone alkalmazásból. Ebben az alkalmazásban a felhasználók létrehozhatnak egy Connect 4 játékot, amely ezen a játéktáblán is megjelenik. Ez egy olcsó, de hatékony verzió lesz, így mindenki építhet és felfedezheti! Összességében elmagyarázom azokat az alapfogalmakat, amelyek megváltoztathatók, de ugyanolyan hatással bírnak. Például a led táblám 88 LED -et tartalmaz. Ez a szám növelhető vagy csökkenthető preferenciától, időtől vagy a tábla méretétől függően.

Szükséges alkatrészek:

ws2812b led fények (vagy ezzel egyenértékű) - 21 USD

5v 10 amperes tápegység (a projektem 5 amper körül merül, ha teljesen be van kapcsolva) - 18 USD

Hablap (az enyémet a dollárboltban kapta) - 1 dollár

Bármilyen fa (Menards -ban kapott) - 10 USD

Akril plexi (felhős/fehér, Menards -ban is) - 10 USD

Arduino Nano - 8 dollár

(eBay) Bluetooth modul HM -10 eszköz - 3 dollár (Amazon) Bluetooth modul HM -10 eszköz - 10 dollár

Összességében a semmiből ez a projekt nem kerül több mint 75 dollárba, és szórakoztató lehet a gyerekeknek vagy egy hűvös fényshow! Szeretek az eBay -en olcsó alkatrészeket keresni, azonban figyeljen a csalásokra vagy törött alkatrészekre. Kisebb változatok készíthetők még több idő megtakarítása érdekében. A LED mátrix rendelkezésre áll, hogy kis méretű lemezeket készítsen. Ne felejtse el megváltoztatni, hogy hány LED -et használnak az Arduino kódban és az IOS alkalmazásban

Lépés: Döntse el a méretet és a vágást

Döntse el a méretet és a vágást
Döntse el a méretet és a vágást
Döntse el a méretet és a vágást
Döntse el a méretet és a vágást
Döntse el a méretet és a vágást
Döntse el a méretet és a vágást

A méretet figyelembe kell venni, hogy hány LED van a projekthez, mennyi fa van, és mekkora négyzetek vannak az egyes ledekhez.

A tábla méretei:

Felső tábla: 20 "27"

Középen kivágva: 23 "16"

Oldal: 0,75 "magas + alsó és felső felület vastagsága = 1,75" vastag

A fa vastagsága: 1/2"

A hablap mérete:

minden négyzet 2"

A LED -ek mérete:

Szélesség: 8 LED

Magasság: 11 LED

Összesen: 88 LED

2. lépés: Vezetékes LED -ek

Vezetékes LED -ek
Vezetékes LED -ek
Vezetékes LED -ek
Vezetékes LED -ek
Vezetékes LED -ek
Vezetékes LED -ek
Vezetékes LED -ek
Vezetékes LED -ek

Vágja le a LED minden egyes darabját, és helyezze el minden négyzet közepére. Vágja le a vezetékeket az egyes LED -ekhez szükséges hosszúság szerint. Az adatvonal oszlopról oszlopra halad. Kezdje az első LED -el, és forrasztja a következőt egészen a 11. LED -ig. Ha a tetején van, csupaszítson le egy huzaldarabot, amely egészen az elsőtől jobbra vezető következőhöz vezet. Ha a pozitív és negatív LED -en dolgozik, folytassa a forrasztást minden LED -ről, amíg el nem éri az oszlop utolsó ledjét. Létrehoztam két buszrúd vezetéket, egy pozitív, egy negatív, és minden oszlophoz csatoltam. Összekötni őket. Lehúztam a vezeték közepét, és onnan forrasztottam a LED -re. A két pozitív és negatív buszvezeték az Arduino gnd -jéhez és az Arduino VIN -érintkezőjéhez van csatlakoztatva, amely szintén érinti a konnektorból érkező áramot. Az első LED -nek van egy drótja, amely az Arduino Nano táblán lévő D3 -as tűt fogja érinteni. Ez tetszés szerint változtatható.

Forró ragasztót használok a vezetékek, LED -ek és hab ragasztására, miután csatlakoztattam és láttam, hogy minden működik.

Lépés: Szerelje össze a fát

Szerelje össze a fát
Szerelje össze a fát
Szerelje össze a fát
Szerelje össze a fát

Ragassza össze a fadarabokat bármilyen típusú faragasztóval vagy folyékony szögekkel. Az extra támogatás érdekében apró fadarabokat adtam hozzá, és ragasztottam azokat a sarkokba, ahol a hátoldal találkozik mindkét oldallal. Vettem két 12 -os konzolot a Menards -tól, és becsavarva a tábla felső részébe és oldalsó darabjába, úgy nyílik, mint egy ajtó. Ezt megtettem, ha bármilyen LED -meghibásodás lépne fel, vagy később további alkatrészeket szeretnék hozzáadni.

4. lépés: Adja hozzá az Arduino -t és a Bluetooth -ot

Adja hozzá az Arduino -t és a Bluetooth -ot
Adja hozzá az Arduino -t és a Bluetooth -ot
Adja hozzá az Arduino -t és a Bluetooth -ot
Adja hozzá az Arduino -t és a Bluetooth -ot
Adja hozzá az Arduino -t és a Bluetooth -ot
Adja hozzá az Arduino -t és a Bluetooth -ot

Adjon hozzá egy DC Jack -t a tábla hátuljához. A távoli fémlemez pozitív, míg a középső lemez negatív. Ez egyszerű módja a tábla be- és kihúzásának. Hagytam, hogy az egyenáramú aljzat kicsit lógjon, ahelyett, hogy biztonságosan rögzíteném a dobozban, ha esetleg a falra akarnám akasztani. Ellenkező esetben a hátlap messze kilógna, mivel a csatlakozózsinór a falhoz kerül. A pozitív csatlakozik az Arduino Nano VIN -jéhez, míg a negatív a földhöz. A pozitív és negatív LED is a VIN -hez és a földhöz forrasztva lesz.

Feltöltöttem egy diagramot a HM-10 modulhoz és az Arduino Nano-hoz. a HM10 TXD belép a Nano RXD csapjába, míg a HM10 RXD csapja az Arduino TXD csapjához van csatlakoztatva. Ez azért történik, mert a Nano olvassa, amit a Bluetooth modul írt, és fordítva. Ezenkívül csatlakoztassa a VIN -t az Arduino +5V -hoz, és kösse össze a terepet.

Végül a kapcsoló vagy gomb opcionális az Arduino RXD és a HM10 TXD között. Valamilyen oknál fogva sokan nem tölthetnek fel új kódot, ha csatlakoztatva vannak, így megkönnyíti a leválasztást minden alkalommal, amikor kódot töltenek fel, majd a feltöltés után visszakapcsolják őket.

Ha elkészült, ellenőrizze, hogy minden működik -e. Ha igen, forró ragasztóval le kell ragasztani az összes vezetéket, és szépnek kell lennie. Ne feledje, nincs olyan, hogy túl sok ragasztó.

5. lépés: Írja be az iPhone alkalmazást

Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást
Írja be az iPhone alkalmazást

A leírásban megadom az Xcode projektet. Három Bluetooth osztályom van, amelyek csatlakoznak a BLE eszközhöz és információt küldenek neki. A ScannerViewController megkeresi az összes rendelkezésre álló Bluetooth Low Energy eszközt. A BluetoothSerial leírja a kiválasztott eszköz csatlakoztatásának/leválasztásának minden folyamatát, és el tudja küldeni az adatokat. Végül a SerialViewController az alkalmazás fő nézete. Van egy collectionView -m kettős tömbvel, amely minden egyes HSB -értéket tartalmaz, és későbbi használatra tárolja, ha a felhasználó vissza akar térni a meglévő színéhez.

A felhasználó a színkerékkel kiválaszthat egy színt, amelyet később is elmenthet. A felhasználó ezután rajzolhat a kiválasztott színnel. Van egy kitöltő gomb a visszavonással együtt.

A connect 4 szakaszban a felhasználó választhat a különböző játékmódok közül, hogy kihívást jelenthessen más játékosoknak. Minden lépés adatot küld az Arduino Nano és HM-10 eszközre, amelyek megjelennek a képernyőn. Ezeket a képeket mindig szerkesztheti, mert elég rosszul néznek ki.

Minden cella megnyomásakor elküldi a kódot (például) "P; 15; 0,56; 0,81; 1 / n". A P jelentése "Play", amit beállítottam az Arduino felismerésére, és megjeleníti a 15. cella színeit. A színek a következő 3 elküldött érték. Ez színárnyalat, telítettség és fényerő. Fontos, hogy a végén adja meg a / n -t, hogy a Bluetooth -modul tudja, mikor kell leállítani a bejövő adatok olvasását. A kijelző törléséhez elküldöm a "z / n" kódot. Amikor az első betűhöz "z" -et kapok, úgy állítom be, hogy törölje a táblát. És természetesen befejezem / n, hogy tudassa a HM10 eszközzel, mikor kell abbahagyni az adatok olvasását.

Ha kérdésed van, nyugodtan tedd fel kommentben:)

6. lépés: Arduino kód

Megadom az Arduino kódot, amelyet fel kell tölteni a Nano -ba. Ez a kód minden karaktert külön kap, és tömbben egyesíti és tárolja. A tömb használatakor a tömbhöz küldött minden érték (színárnyalat, telítettség, fényerő) felosztásra kerül a vessző között. Ez megváltoztatja a táblán szükséges pixel színét. Ugyanez a koncepció vonatkozik a connect 4 részre is. A színárnyalatot, a telítettséget és a fényerőt az IOS alkalmazás küldi, és eljuttatja az Arduino -hoz, valamint azt, hogy a táblán melyik képpont legyen színezett.

Ismét, ha bármilyen kérdése van a kóddal kapcsolatban, jelezze kommentben:)

7. lépés: Testreszabhatja stílusát

Testreszabása stílusához!
Testreszabása stílusához!
Testreszabása stílusához!
Testreszabása stílusához!
Testreszabása stílusához!
Testreszabása stílusához!

Ne feledje, ez a projekt szórakoztató, és személyre szabható. Fesse be a fát, vagy adjon hozzá mintákat. A LED -ek reagáljanak a zenére egy mikrofon és egy kis hangszóró hozzáadásával. Érintésérzékeny infravörös érzékelők használatával. Helyezze be a görgető szöveget az Arduino vagy az IOS alkalmazásban. Adjon hozzá új játékmódot az IOS alkalmazásban. A Tetris egy másik lehetőség a hozzáadáshoz.

Ez a projekt alapvető abban a reményben, hogy másokat is inspirálni fog, hogy ebből valami nagyot és innovatívat alkossanak. Köszönet a támogatásért!

8. lépés: Arduino kód és IOS kód

Itt a link a Swift és Arduino projekthez a GitHubon. Ha bármi baj van, kérem jelezze.

github.com/oKeeg/LED-Coloring-Board

9. lépés: Mi az új? + Nemrég frissített kód

A legújabb frissítésben a felhasználók a teljes rácsot egy színnel kitölthetik, ahelyett, hogy mindegyiket megérintenék. Van egy visszavonás gomb baleset esetén. Végül az új animációs mód, ahol a felhasználó új animációkat választhat vagy adhat hozzá a táblához.

Az új animációk közé tartozik -

Elhalványuló színek - A véletlenszerű színeket rendszeresen halványítja.

Lélegző szivárvány - Egy nagy vízszintes vonalban mozgatja a szivárvány színeit.

Az animációk inkább az Arduino oldalon működnek, nem pedig a telefon oldalán. Ha megnyomja, a telefon kódsort küld az Arduino számára, hogy végrehajtsa (például) "A; 0 / n". Az "A" az animációt jelenti, a "0" pedig az első megnyomott animáció, a Fade Colors. Az Arduino beolvassa a 0 -t, és lejátssza a halványuló színes animációt.

Ajánlott: