instructables Square Tiling WOKWI Online Arduino Simulato
Płytki kwadratowe w WOKWI – internetowym symulatorze Arduino
autor: andrei.erdei Kilka dni temu opublikowałem artykuł o układaniu płytek za pomocą trójkątów prostokątnych (Tetrakis Square Tiling With WS2812 LEDs) i zadałem sobie pytanie, myślę, że w pewnym stopniu uzasadnione, jak wyglądałoby to zbudowane z za pomocą matryc LED WS2812. Istnieją bardzo tanie tablice LED 8×8, ale można też tanio znaleźć tablice 16×16. Cztery takie matryce mogłyby dać doskonały wyświetlacz. Jednak praktyczna realizacja całego zespołu od podstaw zajęłaby dość dużo czasu i szczerze mówiąc, nie inwestowałbym czasu i pieniędzy w taki projekt, zanim nie dowiedziałbym się przynajmniej w przybliżeniu, jak będzie wyglądał efekt. Na szczęście dla mnie i wielu innych istnieją rozwiązania. Nazywa się je symulatorami. Chciałbym zatem przedstawić Państwu symulację generatora kolorowych figur geometrycznych, moim zdaniem bardzo atrakcyjnych, a które są niczym innym jak zwykłym układaniem płytek, a dokładniej zwykłymi kwadratowymi płytkami. Użyłem WOKWI, używałem go pierwszy raz i ostatecznie nie było tak trudne, jak się spodziewałem.
INSTRUKCJA INSTALACJI
Pojęcie
Pomysł, od którego zacząłem, był bardzo podobny do tego z projektu „Tetrakis Square Tiling With WS2812 LEDs”, z tą różnicą, że zamiast kawałków pasków LED użyłem kwadratowych matryc LED o różnych rozmiarach, ale z taką samą liczbą diod LED w poziomie i w pionie, aby ułatwić programowanie. Kolejną wartością, którą rozważałem, jest „komórka”. Jest to grupa diod LED, na którą będę reagować poziomo i pionowo w układzie diod LED, aby wygenerować symetryczne figury. Minimalna komórka będzie grupą 4 diod LED, 2 rzędów i 2 kolumn.
Kolejna komórka do odbicia lustrzanego spowodowałaby podwojenie liczby diod LED w poziomie i w pionie, tj. 4×4 diody LED (w sumie 16)
i na koniec trzecią komórkę uzyskuje się przez ponowne podwojenie, co daje 8×8 diod LED (tj. 64).
Ta ostatnia komórka reprezentowałaby połowę poziomego i pionowego wymiaru stosowanej przez nas matrycy LED, czyli 16×16 diod LED. Pokazane są następujące funkcje kopii lustrzanej i domyślne typy wyświetlania:
- Komórka 2×2 bez dublowania;
- 2×2 komórki lustrzane w poziomie;
- 2×2 komórki lustrzane w pionie;
- 2×2 komórki lustrzane w poziomie i w pionie;
- Komórka 4×4 bez dublowania;
- 4×4 komórki lustrzane w poziomie;
- 4×4 komórki lustrzane w pionie;
- 4×4 komórki lustrzane w poziomie i w pionie;
- 8×8 komórki lustrzane w poziomie i w pionie;
W sumie 9 funkcji
Kierując się tymi samymi zasadami (biorąc pod uwagę ogniwo bazowe) możemy uzyskać następujące wymiary matrycy LED:
- 24×24 – czyli ogniwa z diodami 3×3, 6×6, 12×12
- 32×32 – czyli 4×4, 8×8, 16×16
- 40×40 – czyli 5×5, 10×10, 20×20
- 48×48 – czyli 6×6, 12×12, 24×24
Więcej niż 48×48 (następna matryca to 56×56) nie działa w symulatorze Wokwi (może za mało pamięci? nie wiem…)
Wykonanie
Zalogowałem się na stronie WOKWI za pomocą mojego konta Gmail i otworzyłem symulację npample z biblioteki FastLED npamples – LEDFace. Zapisałem kopię tego projektu do moich projektów na moim nowym koncie WOKWI (lewe górne menu „Zapisz – Zapisz kopię”) Zmodyfikowałem plik „diagram.json” file, czyli usunąłem trzy przyciski. Zmieniłem nazwę ino file Dodałem dwa files: paleta.h i funkcje.h Podczas uruchamiania symulacji mogę zmienić rozmiar tablicy LED w pliku ino file, czyli poprzez zmianę wartości zmiennej MATRIX. Mogę także zmienić atrybut „pikselowanie” komponentu „woke-neo pixel-canvas” (wypróbuj „”, „okrąg”, „kwadrat”, aby zobaczyć, jak symulacja zmienia się wizualnie). Pragnę tutaj zaznaczyć, że chciałem zastosować komponent „woke-__alpha__-diffuser”, który znalazłem w projekcie „Fire Clock”, aby rozproszenie światła LED było jak najbardziej naturalne, ale niestety nie sprawdziło się to Ja. Tak naprawdę dokumentacja w WOKWI jest trochę skąpa i dość niejasna, jednakże jest to świetny symulator i bardzo miło mi się z nim pracowało. Miałem już kod źródłowy z mojego projektu i adaptacja kodu do macierzy kwadratowych nie była wcale trudna, a fakt, że WOKWI pracuje z kodem, który może zostać w przyszłości wykorzystany w fizycznej realizacji projektu, jest bardzo pomocny. A efekt, jak widać na poniższym gifie, jest świetny!
Niezwykłe użycie
Widząc wyniki powyższego gifa, przyszło mi do głowy, że może istnieć sposób wykorzystania wygenerowanych z niego obrazów. Więc po prostu przerwałem symulację na ciekawym wzorze i za pomocą paint.net, darmowego programu do obróbki obrazu oraz stosując kilka prostych przekształceń i efektów, otrzymałem ciekawe (i oryginalne 🙂 ) tekstury. Niektóre z nich możesz zobaczyć w załączniku powyżej.
Płytki kwadratowe w WOKWI – internetowym symulatorze Arduino
Zamiast wniosków
Oczywiście, że czegoś brakuje! Muszę Wam opowiedzieć najważniejszą część artykułu 🙂 Tutaj link do symulacji na wokwi.com https://wokwi.com/arduino/projects/317392461613761089 Na koniec czekam na Wasze komentarze i opinie.
Dokumenty / Zasoby
![]() |
instructables Square Tiling WOKWI Online Arduino Simulato [plik PDF] Instrukcje Square Tiling WOKWI Online Arduino Simulato, Square Tiling, WOKWI Online Arduino Simulato, Online Arduino Simulato, Arduino Simulato |