Mündəricat:
- Addım 1: (toxunma) ekranı tel edin
- Addım 2: Kitabxanalarla tanış olun
- Addım 3: Qrafik İstifadəçi İnterfeysi / Əsas Menyu tərtib edin
- Addım 4: İki nəzarətçiyə tel bağlayın
- Addım 5: Simsiz Bağlantıya Kabel Bağlamağa Başlayın
- Addım 6: Vəhşi olun! Müxtəlif şeyləri sınayın
- Addım 7: Dizayn
- Addım 8: Kassanın 3D çapı
- Addım 9: Lehimləmə və sonlandırma
- Addım 10: Önizləmə
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
İstifadə etdiyim şey
- Arduino MEGA
- 2 dəfə Arduino UNO
- Adafruit 3.5 TFT 320x480 Toxunma Ekranı HXD8357D
- Buzzer
- 4Ohm 3W Dinamik
- 5 mm LED işıqlar
- Qara PLA Filamentli Ultimaker 2+ Yazıcı
- MDF ağaclı Lasercutter
- Qara sprey boyası (ağac üçün)
- 3x nRF24L01+ Simsiz Alıcılar
- 2x16 mm düymə
- 2x Təzyiq Sensorları
- 3x 9V batareya tutacaqları
- Çörək lövhəsi
- 2x 0.96 '' OLED I2C ekranlar
- Kişi - qadın telləri
- Lehim stansiyası
- Super yapışqan
- 2x tək kanallı toxunma modulu (QIRMIZI/MAVİ)
Addım 1: (toxunma) ekranı tel edin
Beləliklə, bunu iki simsiz nəzarətçi ilə bir əl konsolu edəcəyik.
Buna görə əsas bir vahidimiz olacaq (ən böyük hissəsi LCD ekranla)
Əsas qurğu Arduino MEGA ilə işləyəcək.
İki ayrı nəzarətçinin hər biri bir Arduino UNO idarə edəcək.
Daha sonra nəzarətçi məlumatlarını göndərmək üçün Arduinoların bir -biri ilə ünsiyyət qurmasını təmin edəcəyik.
Bu təlimatda olduğu kimi 320x480 ekranı əsas ekran biriminizə (Arduino MEGA) düzgün bir şəkildə bağlamaqla başlayın. (Adafruit -də naqillər və kodlar üçün böyük bir ətraflı təlimat var).
Səs üçün rəqəmsal pinləri və GND -ni ayırmaq üçün bir siqnal və 3W 4Ohm Dinamik bağladım.
tonla (pin, tezlik, müddət); Bəzi əsas monofonik səslər yarada bilərsiniz.
Addım 2: Kitabxanalarla tanış olun
Adafruit 320x480 ekranı müvafiq Adafruit_GFX və Adafruit_TFTLCD kitabxanalarını dəstəkləyir.
Sənədləri oxuyun. Düşünürəm ki, orada yaxşı izah olunur.
Arduino IDE -də düzgün parametrləri qoyduğunuzdan əmin olun:
Alətlər -> Board -> Arduino/Genuino MEGA və ya MEGA 2560
Alətlər -> Liman -> [İçində '' Arduino MEGA '' olan liman]
Bu xüsusi ekran kitabxanası xüsusi yazı tiplərini, əsas formaları və müxtəlif rəngləri dəstəkləyir.
Diqqət çəkən bir şey, hamar animasiya üçün yeniləmə sürətinin çox aşağı olması ola bilər. Ekranı hər işarəni yeniləmək istəyirsinizsə, hər pikselin yenidən çəkilməsini idarə etmək çox yavaş olacaq və titrəyəcək
Buna görə də, bəzi köhnə əl cihazlarının animasiyanı necə idarə etməsi kimi bu mövzuda yaradıcı işləməyi təklif edərdim: əsas kadrlarla. Az daha çoxdur! Və hər saniyəni yenidən çəkmək əvəzinə, bir düzbucağı sola və ya sağa hərəkət etdirmək istəyirsinizsə, bütün obyekti silmək və yenidən çəkmək əvəzinə, geridə buraxdığı izi silə bilərsiniz.
Məsələn, giriş sırasındakı personajın yanıb -sönən təsiri kimi ekranın titrəməsindən istifadə etdim.
Adafruit_GFX kitabxanasından əsasən tft.fillRect (x, y, en, hündürlük, rəng) istifadə etdim; və tft.print (mətn); funksiyalar.
Təcrübə əsasdır.
Addım 3: Qrafik İstifadəçi İnterfeysi / Əsas Menyu tərtib edin
Kitabxana daxilində məlumat əldə etdikdən və məhdudiyyətlərini/səlahiyyətlərini bildikdən sonra Əsas Menyu ekranının dizaynına başlaya bilərsiniz.
Yenə də düzbucaqlılar haqqında düşünün. Ən azından bunu etdim.
İşdə UI kodum
pastebin.com/ubggvcqK
Adafruit Toxunma Ekranınızdakı '' Lite '' pinini Analog pin vasitəsilə idarə etmək üçün ekran parlaqlığı üçün kaydırıcılar yarada bilərsiniz.
Addım 4: İki nəzarətçiyə tel bağlayın
Nəzarətçi hissəsi üçün, hansı oyunu etməyi planlaşdırdığınızdan asılı olaraq hansı sensorlardan istifadə etmək sizə bağlıdır
Yaxşı, nəzarətçilər üçün istifadə etməyə qərar verdim:
- Bir təzyiq sensoru
- OLED ekran
- Açan və ya söndürən bir kanallı toxunma modulu
- Jest sensoru (RobotDyn APDS9960)
- nRFL01+ Alıcı -verici (simsiz əlaqə üçün)
- Bir düymə
Qeyd: Jest sensoru və OLED həm SCL / SDA əlaqələrini istifadə edir. Arduinonun yalnız ikisinin olduğunu başa düşmək bir müddət çəkdi: A4 və A5. Ancaq bu paralelləri çörək taxtasına bağlaya bilərsiniz və yaxşı işləyəcək
Addım 5: Simsiz Bağlantıya Kabel Bağlamağa Başlayın
NRF24L01+ modullarının işə salınması, işləməsi üçün bir az vaxt sərf etdi.
Doğru sensor məlumatlarını ekrana ötürə bilmədikdən sonra TMRh20 RF24 kitabxanasına müraciət etməli oldum.
Birdən çox Arduinonun bir -biri ilə ünsiyyət qura bilməsi üçün UNO -lardan ən az birinin MEGA kimi işlədiyinə əmin olmalıyıq.
UNO -dan əldə etdiyiniz nəticələri çap etmək üçün MEGA -nın serial konsolundan istifadə edin və işlədiyini yoxlayın.
İşdə kod
Budur kitabxana
Addım 6: Vəhşi olun! Müxtəlif şeyləri sınayın
İnkişaf prosesimin vacib bir hissəsi çox şeyi sınamaq idi!
Hansı düymələrdən istifadə etmək istərdiniz?
Nəzarətçilərinizə nə qoyursunuz?
Veb saytlara baxın, adi '' A/B '' düymələrindən və ya analog joystiklərdən başqa bir çox komponent tapa bilərsiniz. Bunu etmək üçün ilham alın və motivasiya olun!
Nəzarətçilərə nə qoymaq istədiyinizə dair aydın və işlək bir fikir əldə etdikdən sonra, komponentləri tellə bağlayın.
Necə işlədiklərindən asılı olaraq rəqəmsal girişlərdən və ya analoqlardan istifadə etməlisiniz.
Qeyd: Bəzi komponentlərin düzgün işləməsi üçün SCL / SDA pinlərinə ehtiyac ola bilər. Və hər ikisinin eyni ehtiyacı olan iki və ya daha çox sensorunuz varsa, yəqin ki, mənim kimi panik atakla qarşılaşacaqsınız. Ancaq narahat olmaq lazım deyil
A4 və A5 -ə girərək həm sensorların SDA, həm də SCL pinlərini bir -birinin ardınca qoya bilərsiniz və işləyəcək
Addım 7: Dizayn
İstifadə etmək istədiyiniz sensorlar üçün sərin bir fikir əldə etdikdən sonra, bəyəndiyiniz bir dizayn üçün bəzi fikirlər çəkin.
Bundan sonra Blender, Maya, Cinema 4D kimi bəzi modelləşdirmə proqramlarına daxil olun.
(Kobud) bir model yaratmaq üçün Blenderdən istifadə etdim.
Blender -də dəqiq ölçülər əldə etmək üçün şəbəkə ölçü vahidini millimetrə dəyişə bilərsiniz.
Bir model hazırladıqdan sonra ikiqat zirvələriniz olmadığından və normallarınızı yenidən hesabladığınızdan əmin olun.
Mənim kimi bir 3D printer istifadə etmək istəyirsinizsə, faylı.stl olaraq ixrac edin.
Qeyd: Blender -də ixrac miqyasını 0.1 -ə təyin etməlisiniz, əgər növbəti addımda Cura -da dəqiq ölçüsü istəyirsinizsə
Addım 8: Kassanın 3D çapı
Bu model Ultimaker 2+ printerdə 2.85 mm Qara PLA filamentlə çap edilmişdir.
CURA yükləyin
STL -ni Cura -ya yükləyin və bunun nə qədər çəkəcəyini sizə göstərəcək.
Əl çantası üçün ölçüsündən asılı olaraq çap etmək 10 saata qədər çəkə bilər.
Ancaq aşağı detallı modellər üçün prosesi sürətləndirə bilərsiniz, bu da mənim etdiyim işdir.
Ayarlarım budur:
Lay hündürlüyü: 0.2
Divar qalınlığı: 0.8
Üst/Alt Qalınlıq: 0.8
Burun: 0.4
İstilik: 60 dərəcə Selsi
Axın: 100%
Ağız: İstənilən yerə toxunan lövhə
Doldurma sıxlığı: 20%
Tədricən: 0
Burun İstiliyi: 220 C
Çap Sürəti: 120%
Addım 9: Lehimləmə və sonlandırma
Uzun bir yol keçdiniz.
Son addım, bir taxta / veroboard əldə etmək və çörək taxtası əlaqələrini prototip lövhəsinin bir hissəsinə çevirməkdir.
Elektronikanın çap edilmiş korpusların içərisinə uyğun olduğundan əmin olun və bəlkə də düymələrin / nəzarətçi girişlərinin yapışdığı hissələri düzəltmək üçün bəzi MDF ağaclarını kəsin.
Bunun üçün lazer kəsici istifadə etdim.
Ən başlıcası, başınızı döndərmək, başqa heç vaxt etmədiyiniz şeyləri sınamaq və əylənməkdir!
Ümid edirik ki, bu dərs kifayət qədər aydın idi … Çox yaxşı bir nəticə verən olduqca çətin bir layihə idi!:)