» Elektronika » Arduino »Led Matrix na WS2812

Led Matrix na WS2812

Led Matrix na WS2812

Dzień dobry, chcę się podzielić innym domowej roboty. Tym razem postanowiłem napisać instrukcje dotyczące produkcji matrycy Led. Rozmiar to małe 10x10 diod. Ale zgodnie z tą instrukcją możliwe jest tworzenie matryc i dużych rozmiarów. Dla urody dodano podświetlenie. Podstawą były adresowalne diody LED WS2812 zamontowane na taśmie przy 60 diodach na metr. Poradzimy sobie z nimi Arduino Pro Mini. Istnieje wiele opcji korzystania z matrycy. Na przykład dodałem czujnik temperatury i napisałem oprogramowanie zegara bez RTC.

Będziemy potrzebować:
- Taśma WS2812 z 120 diodami LED, 60 sztuk na metr
-
- Zasilacz do 5V 1A
- czujnik temperatury ds18b20
- Rezystor 4,7 Kom 0,25 W.
- płyta wiórowa o grubości 10 mm
- Matowy lub „mleczny” plastik
- gruby karton
- taśma elektryczna
- przewody łączące
- płytka drukowana
- Przyciski
- Wkręty samogwintujące 19 mm
- lutownica
- Lut, kalafonia
- Taśma dwustronna
- USB-TTL
- Wiertarka lub śrubokręt
- Elektryczna piła progowa
- Wiertła do drewna

Krok 1 Przygotowanie diod
Bierzemy gęsty karton i „podszewamy” go, to znaczy rysujemy linie poziome z odległością 16 mm. Z naszej taśmy liczymy 100 diod. Te 100 diod działa w segmenty po 10 diod. Pozostałe 20 odcięto jedną diodę. Należy to zrobić ostrożnie i ściśle wzdłuż linii cięcia. Pozwól mi wyjaśnić: 10 segmentów po 10 diod łącznie 100 jest potrzebnych do matrycy, pozostałe 20 są podświetlone. Sekcje 10 diod są przyklejone do kartonu wzdłuż linii. Zwróć uwagę na kierunek sygnału sterującego diod! Sygnał sterujący powinien być dostarczany we właściwym kierunku, w tym celu strzałka jest pokazana w kierunku taśmy. Przyklej pierwszy pasek od lewej do prawej, czyli IN (wejście) na taśmie powinno znajdować się po lewej stronie, a OUT (po prawej). Dlatego IN (wejście) pierwszego paska powinno znajdować się w lewym górnym rogu! Przyklej następny pasek, wręcz przeciwnie, od prawej - w lewo. Trzeci ponownie od lewej do prawej. Więc dalej. Postępując zgodnie z kierunkiem sygnału sterującego, powinniśmy uzyskać linię zygzakowatą, zaczynając od lewego górnego rogu. Najważniejsze, aby niczego nie pomylić.

Pomiędzy pierwszym i drugim paskiem, bliżej początku, robi się otwór na druty. Przylutuj przewody do pierwszego paska, najlepiej wielokolorowego, aby się nie pomieszać. Przechodzimy przez wykonaną dziurę. Następnie przylutuj nasze paski krótkimi drutami. + 5 z pierwszej wnęki do +5 do drugiej. GND do GND. Od OUT pierwszego paska do IN drugiego paska, od OUT drugiego paska do IN trzeciego i tak dalej. Wynik powinien być następujący:


Krok 2 Wykonanie sprawy.
Obudowa składa się z trzech części. Najpierw musisz wyciąć ramę z płyty wiórowej o grubości 10 mm. Najlepiej jest ciąć wyrzynarką, ale pod nieobecność można ją wziąć ręcznie. Bok zewnętrznego kwadratu wynosi 190 mm.Wewnętrzna - 170 mm. Dla piękna lepiej zaokrąglić rogi. Dlatego należy uzyskać ramkę o wymiarach 190 x 190 mm i grubości ścianki 10 mm. Po cięciu myjemy drobnym papierem ściernym.


Przechodzimy do produkcji drugiej części. Przymocowujemy naszą ramę do arkusza płyty wiórowej i rysujemy ołówek wokół zewnętrznej krawędzi. Usuwamy ramkę. Cofamy się o 30 mm z każdej strony do wnętrza kwadratu i rysujemy wewnętrzny kwadrat. Powinieneś dostać kolejną ramę o wymiarach 190 x 190, ale o grubości boku 30 mm. W odległości 5 mm od zewnętrznej krawędzi tej ramy i w równej odległości od siebie wykonujemy otwory o średnicy 3 mm. 2 otwory po każdej stronie. Są potrzebne do śrub. Musisz także zdecydować, gdzie będzie góra, aw lewym górnym rogu wewnętrznego kwadratu utwórz miejsce na druty.


Z drugiej strony drugiej ramy, wzdłuż obwodu strony wewnętrznej, należy przykręcić segmenty z tej samej płyty wiórowej o grubości 10 mm. Wynik powinien wyglądać następująco:


Idź do zestawu. Kładziemy drugą ramkę na stole. Na górze, diody do góry, połóż kartonowe pudełko z diodami. I pokrywamy to wszystko pierwszą klatką. Umieść karton między ramami, aby diody biegły równolegle do boków ramy i w równej odległości od krawędzi. Odwracamy to wszystko, bardzo ostrożnie, aby nie zepsuć diod i skręcamy wszystko razem. Następnie odcinamy nadmiar kartonu.


Idź do podświetlenia. Z boku diod, między przedostatnim a ostatnim paskiem, bliżej lewej krawędzi, musisz wywiercić otwór na druty. Przylutuj druty do końca ostatniego paska i przeciągnij je przez otwór. Pozostałe i wycięte pojedynczo 20 diod należy przykleić z tyłu, w równej odległości od siebie. 5 sztuk z każdej strony. Kierunkiem sygnału sterującego jest wskazówka godzinowa zaczynająca się od prawego dolnego rogu. Lutujemy je, a także matrycę. Wyprowadzone druty z końca matrycy są lutowane do pierwszej diody. + 5 od pierwszej diody do +5 drugiej. GND do GND. Od OUT pierwszej diody do IN drugiej, od OUT drugiej do IN trzeciej i tak dalej.

Umieszczamy naszego Arduino Pro Mini w tylnej ramie, za matrycą. Do zasilania użyj stabilizowanego zasilacza 5 woltów. O natężeniu prądu co najmniej 1 ampera. Diody są dość żarłoczne i jeśli planujesz je wszystkie włączyć jednocześnie i przez długi czas, zasilacz potrzebuje większej mocy, zalecam 1,5 - 2 amperów. Łączymy to wszystko razem od zasilacza +5 do +5 Arduino i +5 WS2812. -5 zasilacz z GND Arduino i GND WS2812. Przewód sterujący z IN WS2812 jest podłączony do „pin 6” Arduino.


Diody są bardzo jasne i nie wyglądają bardzo estetycznie. Dlatego konieczne jest wyprodukowanie i zainstalowanie dyfuzora. Matowe tworzywo sztuczne najlepiej nadaje się do tego, lub jak to się nazywa „mleko”. Konieczne jest przymocowanie matrycy do plastiku i kółko ołówkiem. Następnie wytnij i przymocuj do dwustronnej taśmy na przedniej ramie. Nie zawsze można szybko znaleźć taki plastik, ale naprawdę chcę uruchomić produkt. W takim przypadku zamiast plastiku można użyć białej tektury lub papieru poziomego.


Na tej samej zasadzie możliwe jest wykonanie matrycy o dużych rozmiarach. Konieczne jest jedynie przeliczenie wymiarów skrzynki.

Krok 3 Podłącz czujnik temperatury.
Po prostu ten zegarek nie jest interesujący, więc dodaj do niego czujnik temperatury. Do pomiaru temperatury użyjemy zintegrowanego czujnika DS18B20. Ma wysoką dokładność pomiaru, błąd nie przekracza 0,5 ° C. Już w fabryce czujnik jest skalibrowany i nie są wymagane żadne dodatkowe ustawienia. Szeroki zakres pomiaru temperatury -55 ... + 125 ° C. Może być stosowany w dowolnym pomieszczeniu. Jeśli jesteś na ulicy, musisz zadbać o ochronę przed wilgocią. Istnieją dwa tryby działania: z zewnętrznym źródłem zasilania i „mocą pozorną”. Polecam korzystanie z zewnętrznego źródła zasilania.


Kilka czujników może być dołączonych do jednej linii komunikacyjnej. Ale dla nas wystarczy jeden. +5 pobieramy z zasilacza. GND do -5. Przewód od pinu „DQ” ds18b20 do „pin 9” Arduino.Pamiętaj, aby umieścić rezystor podciągający między „DQ” a +5 przy 4,7 kOhm. Moim zdaniem najwygodniej jest to zrobić na samym czujniku. Wyświetlamy go w prawym górnym rogu:


Krok 4 Przygotowanie tablicy z przyciskami.
W tym przypadku używamy macierzy jako zegara. Czas można ustawić za pomocą portu szeregowego, podłączając Arduino do komputera. Nie zawsze jest to wygodne. Dlatego wyprodukujemy tablicę z trzema przyciskami do ustawienia czasu. Oprócz tego macierz można wykorzystać do innych celów, wystarczy napisać kolejny szkic. Następnie przyciski można wykorzystać do innych celów.


Łączymy je w następujący sposób: podłącz przewód wspólny dla wszystkich trzech przycisków do Arduino „GND”. Pierwszy przycisk służy do przejścia do trybu ustawiania czasu i przełączania czasu i daty, podłącz do „Pin 2”. Drugi przycisk do zwiększenia wartości to „Pin 3”, a trzeci przycisk do zmniejszenia wartości to „Pin 4”. Dołączamy przyciski do dwustronnej taśmy za matrycą:


Krok 5 Oprogramowanie układowe.
Jak powiedziałem, macierz można wykorzystać do różnych celów. Obecnie napisałem szkic tylko do zegarków. W kolejnym układzie i innych szkicach. Do pisania i wypełniania używam Arduino IDE 1.8.5. Możesz kontrolować matrycę na kilka sposobów. Kontroluj każdą diodę indywidualnie lub jako pojedynczą matrycę. W moim szkicu korzystam z pierwszej opcji. Aby to zrobić, potrzebujesz biblioteki Adafruita o nazwie NeoPixel-master:
adafruit_neopixel-master.rar [27,83 Kb] (pliki do pobrania: 71)


Aby pracować z diodami jak w macierzy matrycowej Adafruit_NeoMatrix-master i Adafruit-GFX-Library-master:
matrix_libraries.rar [282.01 Kb] (pliki do pobrania: 80)


Czujnik temperatury potrzebuje biblioteki OneWire.
onewire.rar [16.75 Kb] (pliki do pobrania: 64)


Aby edytować i wypełnić szkic, musisz najpierw zainstalować Arduino IDE z oficjalnej strony internetowej Arduino.cc, a następnie wszystkie te biblioteki. Konieczne jest rozpakowanie tych archiwów i umieszczenie rozpakowanych plików w folderze „bibliotek” znajdującym się w folderze z zainstalowanym Arduino IDE. Możliwe jest także instalowanie bibliotek bezpośrednio w Arduino IDE. Bez rozpakowywania pobranych archiwów w Arduino IDE wybierz menu Szkic - Połącz bibliotekę. Na górze listy rozwijanej wybierz „Dodaj bibliotekę ZIP.” W wyświetlonym oknie dialogowym wybierz bibliotekę, którą chcesz dodać. Po wszystkich manipulacjach musisz zrestartować Arduino IDE.

Czujnik temperatury ma unikalny adres dla każdego urządzenia - kod 64-bitowy. Znalezienie tego kodu jest wymagającym zadaniem. Dlatego najpierw musisz podłączyć czujnik do Arduino, wypełnić szkic znajdujący się w menu Plik - Przykłady - Temperatura Dallas - OneWireSearch. Następnie uruchom Narzędzia - Monitor portów. Arduino powinien znaleźć czujnik i wpisać jego adres. Kopiujemy lub po prostu zapisujemy adres twojego czujnika. Otwórz szkic Ard_Tic_Tak_WS2812_Matrix_10x10_Serial_Knopki_Term, poszukaj linii:

bajt addr [8] = {0x28, 0xFF, 0xDD, 0x14, 0xB4, 0x16, 0x5, 0x97}; // adres mojego czujnika 


Zapisujemy adres twojego czujnika pomiędzy nawiasami klamrowymi, zastępując adres mojego czujnika.

Ten zegarek nie korzysta z modułu RTC. Dlatego jeśli się spieszą lub spóźniają, należy zmienić wartość w wierszu:

if (micros () - prevmicros> 494000) {// zmiana na inną w celu dostosowania wyniosła 500 000


Konieczne jest określenie tej liczby empirycznie. Jeśli twój zegarek się spieszy, powinieneś zwiększyć tę liczbę; jeśli jestem z tyłu, zmniejsz ją.

Wypełnij szkic.


Przepraszam, ale nie udało mi się zrobić zdjęcia z włączonymi diodami. Próbowałem ze światłami i bez. Ale zapewniam cię, że żyjesz, wyglądają znacznie lepiej.




0
0
0

Dodaj komentarz

    • uśmiechnij sięuśmiecha sięxaxaoknie wiemyahoonea
      szefiezadrapaniegłupiectaktak-takagresywnysekret
      przepraszamtańczyćdance2dance3przebaczeniepomocnapoje
      przestańprzyjacieledobrzegoodgoodgwizdaćomdlećjęzyk
      palićklaskanierakdeklarowaćdrwiącydon-t_mentionpobierz
      ciepłożałujęśmiech 1mdaspotkaniemoskingnegatywne
      niepopcornukaraćczytaćprzestraszyćstraszyszukaj
      drwinadziękujętoto_clueumnikostryzgadzam się
      źlepszczołablack_eyeblum3rumienić sięchwalić sięnuda
      ocenzurowaneuprzejmośćsekret2grozićzwycięstwoyusun_bespectacled
      shokrespektlolprevedwitamykrutoyya_za
      ya_dobryipomocnikne_huliganne_othodifludzakazzamknij

Radzimy przeczytać:

Podaj go do smartfona ...