instructables Square Tiling WOKWI Online Arduino Simulato
კვადრატული კრამიტი WOKWI-ში – ონლაინ Arduino სიმულატორი
by andrei.erdei რამდენიმე დღის წინ გამოვაქვეყნე სტატია მართკუთხა სამკუთხედების დახმარებით კრამიტის მოპირკეთების შესახებ ( Tetrakis Square Tiling With WS2812 LEDs) და საკუთარ თავს დავუსვი შეკითხვა, ვფიქრობ, გარკვეულწილად გამართლებულია, როგორ გამოიყურებოდა იგი აშენებული WS2812 LED მატრიცების დახმარებით. არის ძალიან იაფი 8×8 LED მასივები, მაგრამ 16×16 ასევე იაფად შეგიძლიათ იპოვოთ. ოთხი ასეთი მატრიცა შეიძლება იყოს შესანიშნავი ჩვენება. მაგრამ მთელი ანსამბლის, ნულიდან, პრაქტიკულ რეალიზებას საკმაოდ დიდი დრო დასჭირდებოდა და მართალი გითხრათ, ასეთ პროექტში დროსა და ფულს არ დავდებდი, სანამ არ ვიცოდი, უხეშად მაინც, როგორი იქნებოდა შედეგი. ჩემდა საბედნიეროდ და მრავალი სხვასთვის, არსებობს გადაწყვეტილებები. მათ სიმულატორებს უწოდებენ. ამიტომ მინდა წარმოგიდგინოთ ფერადი გეომეტრიული ფიგურების გენერატორის სიმულაცია, ჩემი აზრით ძალიან მიმზიდველი და რომელიც სხვა არაფერია, თუ არა ჩვეულებრივი კრამიტის მოპირკეთება, უფრო ზუსტად კი ჩვეულებრივი კვადრატული კრამიტი. გამოვიყენე WOKWI, პირველად ვიყენებდი და საბოლოოდ, არც ისე რთული იყო, როგორც ველოდი.
ინსტალაციის ინსტრუქციები
კონცეფცია
იდეა, საიდანაც დავიწყე, ძალიან ჰგავდა პროექტს „თეთრაკის კვადრატული კრამიტი WS2812 LED-ებით“, გარდა იმისა, რომ LED ზოლების ნაჭრების ნაცვლად გამოვიყენე განსხვავებული ზომის კვადრატული LED მატრიცები, მაგრამ იგივე რაოდენობის LED-ები ჰორიზონტალურად და ვერტიკალურად. გაამარტივეთ პროგრამირება. ასევე, კიდევ ერთი მნიშვნელობა, რომელიც მე განვიხილეთ, არის "უჯრედი". ეს არის LED-ების ჯგუფი, რომელსაც მე გამოვხატავ ჰორიზონტალურად და ვერტიკალურად LED მასივში სიმეტრიული ფიგურების შესაქმნელად. მინიმალური უჯრედი იქნება 4 LED, 2 მწკრივი და 2 სვეტის ჯგუფი.
სარკისებური უჯრის შემდეგი უჯრედი გამოიწვევს LED-ების რაოდენობის გაორმაგებას ჰორიზონტალურად და ვერტიკალურად, ანუ 4×4 LED-ები (სულ 16)
და ბოლოს, მესამე უჯრედი მიიღება ისევ გაორმაგებით, რის შედეგადაც 8×8 LED-ები (ანუ 64).
ეს ბოლო უჯრედი წარმოადგენს ჩვენ მიერ გამოყენებული LED მატრიცის ჰორიზონტალური და ვერტიკალური განზომილების ნახევარს, ანუ 16×16 LED-ებს. ნაჩვენებია შემდეგი სარკისებური ფუნქციები და ეკრანის ნაგულისხმევი ტიპები:
- 2×2 უჯრედი სარკის გარეშე;
- 2×2 უჯრედის ჰორიზონტალურად ასახვა;
- 2×2 უჯრედის ვერტიკალურად ასახვა;
- 2×2 უჯრედის ჰორიზონტალურად და ვერტიკალურად ასახვა;
- 4×4 უჯრედი სარკის გარეშე;
- 4×4 უჯრედის ჰორიზონტალურად ასახვა;
- 4×4 უჯრედის ვერტიკალურად ასახვა;
- 4×4 უჯრედის ჰორიზონტალურად და ვერტიკალურად ასახვა;
- 8×8 უჯრედის ჰორიზონტალურად და ვერტიკალურად ასახვა;
ანუ სულ 9 ფუნქცია
იგივე წესების დაცვით (საბაზისო უჯრედის გათვალისწინებით) შეიძლება გვქონდეს LED მატრიცის შემდეგი ზომები:
- 24×24 – ანუ უჯრედები 3×3, 6×6, 12×12 LED-ებით
- 32×32 – ეს არის 4×4, 8×8, 16×16
- 40×40 – ეს არის 5×5, 10×10, 20×20
- 48×48 – ეს არის 6×6, 12×12, 24×24
48×48-ზე მეტი (შემდეგი მატრიცა არის 56×56) არ მუშაობს Wokwi სიმულატორში (შეიძლება არ არის საკმარისი მეხსიერება? არ ვიცი…)
აღსრულება
შევედი WOKWI საიტზე ჩემი gmail ანგარიშით და გავხსენი სიმულაციური ყოფილიampFastLED ბიბლიოთეკიდან ყოფილიamples – LEDFace. მე შევინახე ამ პროექტის ასლი ჩემს პროექტებში ჩემს ახალ WOKWI ანგარიშში (ზედა მარცხენა მენიუ „შენახვა – ასლის შენახვა“) შევცვალე „diagram.json“ file, ანუ სამი ღილაკი წავშალე. ino-ს დავარქვით სახელი file ორი დავამატე files: palette.h და functions.h სიმულაციის გაშვებისას შემიძლია შევცვალო LED მასივის ზომა ino-ში file, ანუ MATRIX ცვლადის მნიშვნელობის შეცვლით. მე ასევე შემიძლია შევცვალო "wake-neo pixel-canvas" კომპონენტის "pixelate" ატრიბუტი (სცადეთ "", "წრე", "კვადრატი", რომ ნახოთ, როგორ იცვლება სიმულაცია ვიზუალურად). აქვე მინდა აღვნიშნო, რომ მინდოდა გამომეყენებინა "wake-__alpha__-diffuser" კომპონენტი, რომელიც აღმოვაჩინე პროექტში "Fire Clock", რათა LED სინათლის დიფუზია მაქსიმალურად ბუნებრივი ყოფილიყო, მაგრამ სამწუხაროდ, ეს არ მუშაობდა. მე. სინამდვილეში, WOKWI-ში დოკუმენტაცია ცოტა მწირია და საკმაოდ გაურკვეველია, თუმცა ეს შესანიშნავი სიმულატორია და მე ნამდვილად მომეწონა მასთან მუშაობა. მე უკვე მქონდა ჩემი პროექტის საწყისი კოდი და კოდის კვადრატულ მატრიცებზე ადაპტაცია სულაც არ იყო რთული და ის ფაქტი, რომ WOKWI მუშაობს კოდით, რომელიც მომავალში შეიძლება გამოყენებული იქნას პროექტის ფიზიკურ რეალიზაციაში, ძალიან დამეხმარება. და შედეგი, როგორც ხედავთ ქვემოთ მოცემულ გიფში, შესანიშნავია!
არაჩვეულებრივი გამოყენება
ზემოთ მოცემული gif-დან მიღებული შედეგების დანახვისას, გამიჩნდა, რომ შეიძლება გამოვიყენო მისგან წარმოქმნილი სურათები. ასე რომ, მე უბრალოდ გავაჩერე სიმულაცია საინტერესო შაბლონზე და paint.net-ის, უფასო გამოსახულების დამუშავების პროგრამის დახმარებით და რამდენიმე მარტივი ტრანსფორმაციისა და ეფექტების გამოყენებით, მივიღე საინტერესო (და ორიგინალური 🙂) ტექსტურები. თქვენ შეგიძლიათ იხილოთ ზოგიერთი მათგანი ზემოთ დართული.
კვადრატული კრამიტი WOKWI-ში – ონლაინ Arduino სიმულატორი
დასკვნების ნაცვლად
რა თქმა უნდა, რაღაც აკლია! უნდა გითხრათ სტატიის ყველაზე მნიშვნელოვანი ნაწილი 🙂 აქ მოცემულია სიმულაციის ბმული wokwi.com https://wokwi.com/arduino/projects/317392461613761089 და ბოლოს მოუთმენლად ველი თქვენს კომენტარებს და თქვენს გამოხმაურებას.
დოკუმენტები / რესურსები
![]() |
instructables Square Tiling WOKWI Online Arduino Simulato [pdf] ინსტრუქციები კვადრატული კრამიტი WOKWI ონლაინ Arduino სიმულატორი, კვადრატული კრამიტი, WOKWI ონლაინ Arduino სიმულატორი, ონლაინ Arduino სიმულატორი, Arduino სიმულატორი |