Mündəricat:
- Addım 1: Ölçüyə və kəsməyə qərar verin
- Addım 2: LEDləri tellə bağlayın
- Addım 3: Taxta yığın
- Addım 4: Arduino və Bluetooth əlavə edin
- Addım 5: IPhone Tətbiqini yazın
- Addım 6: Arduino Kodu
- Addım 7: Stilinizə uyğunlaşdırın
- Addım 8: Arduino Kodu və IOS Kodu
- Addım 9: Yenilik nədir? + Son Yenilənmiş Kod
Video: Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi: 9 Adım (Şəkillərlə birlikdə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Bu təlimatda, yaratdığımız iPhone tətbiqindən şəkillər çəkə biləcək bir Bluetooth LED lövhəsi yarada biləcəksiniz. Bu tətbiqdə istifadəçilər bu lövhədə də görünəcək bir Connect 4 oyunu yarada biləcəklər. Bu ucuz, lakin təsirli bir versiya olacaq ki, hər kəs qurub araşdırsın! Ümumiyyətlə, dəyişdirilə bilən, eyni təsirə malik olan əsas anlayışları izah edəcəyəm. Məsələn, mənim lövhəmdə 88 LED var. Bu say, lövhənin seçiminə, vaxtına və ya ölçüsünə görə artırıla və ya azaldıla bilər.
Lazım olan hissələr:
ws2812b led işıqlar (və ya ekvivalenti) - 21 dollar
5v 10 amp güc adapteri (layihəm tam açıldıqda təxminən 5 amper çəkir) - 18 dollar
Köpük lövhəsi (dollar mağazasında mənimki aldı) - 1 dollar
Hər növ ağac (Menards -da alınıb) - 10 dollar
Akril pleksiglas (buludlu/ağ, həmçinin Menardda) - 10 dollar
Arduino Nano - 8 dollar
(eBay) Bluetooth Modulu HM -10 Cihazı - 3 dollar (Amazon) Bluetooth Modulu HM -10 Cihazı - 10 dollar
Ümumiyyətlə, sıfırdan bu layihənin qiyməti 75 dollardan çox deyil və uşaqlar üçün əyləncəli və ya sərin bir işıq şousu ola bilər! Ucuz hissələr üçün eBay -ə baxmağı sevirəm, lakin fırıldaqçılara və ya qırıq hissələrə baxın. Daha kiçik vaxtlar daha çox vaxta qənaət etmək üçün edilə bilər. Bu lövhənin kiçik ölçülərini yaratmaq üçün LED matris mövcuddur. Arduino kodunda və IOS tətbiqində istifadə olunan LED -lərin sayını dəyişdirməyi unutmayın
Addım 1: Ölçüyə və kəsməyə qərar verin
Ölçüsü nəzərə alınmalı olan şeylər, layihə üçün nə qədər LED var, nə qədər ağac var və hər bir led üçün kvadratların nə qədər böyük olmasıdır.
Lövhənin ölçüləri:
Üst üzlük lövhəsi: 20 "x 27"
Ortada kəsin: 23 "x 16"
Yan: 0.75 "uzun + alt üz və üst üz qalınlığı = 1.75" qalın
Taxta qalınlığı: 1/2"
Köpük lövhəsinin ölçüsü:
hər kvadrat 2"
LED -lərin ölçüsü:
Genişlik: 8 LED
Hündürlük: 11 LED
Cəmi: 88 LED
Addım 2: LEDləri tellə bağlayın
Hər bir LED parçasını kəsin və hər kvadratın ortasına qoyun. Telləri hər bir LED üçün lazım olan uzunluğa görə soyun. Məlumat xətti sütundan sütuna keçəcəkdir. İlk LED və lehimlə 11 -ci LED -ə qədər davam edin. Bir dəfə yuxarıda, birincisinin sağından digərinə qədər uzanan bir tel parçası çıxarın. LED -də müsbət və mənfi ilə işləyərkən, sütundakı son ledə çatana qədər hər bir LED -dən lehimləməyə davam edin. Biri pozitiv, biri də mənfi olan iki bant tel yaratdım və hər sütuna bağladım. Onları birləşdirmək üçün. Telin ortasını soydum və oradan LED -ə lehimlədim. İki müsbət və mənfi avtobus telləri, Arduino üzərindəki gnd və Arduino üzərindəki VIN pininə qoşulur və bu da çıxışdan gücə toxunur. İlk LED, Arduino Nano lövhəsində D3 pinini bağlayan bir telə malikdir. Bu seçimdən asılı olaraq dəyişdirilə bilər.
Qoşaraq hər şeyin işlədiyini gördükdən sonra telləri, LEDləri və köpükləri yapışdırmaq üçün isti yapışqan istifadə edirəm.
Addım 3: Taxta yığın
İstənilən növ taxta yapışqan və ya maye dırnaqları istifadə edərək ağac parçalarını yapışdırın. Əlavə dəstək üçün kiçik taxta parçaları əlavə etdim və arxanın hər tərəfə uyğun olduğu künclərə yapışdırdım. Menards -dan iki ədəd 12 mötərizə aldım və lövhənin üst hissəsinə və yan hissəsinə vidaladım ki, bir qapı kimi açılsın. Hər hansı bir LED arızası halında bunu etdim və ya daha sonra daha çox komponent əlavə etmək istəyirəm.
Addım 4: Arduino və Bluetooth əlavə edin
Lövhənin arxasına bir DC Jack əlavə edin. Uzaq arxa metal lövhə müsbət, orta plitə isə mənfi. Bu, lövhəni taxmaq və çıxarmaq üçün asan bir yol təqdim edir. Bunu duvara asmaq istəsəm, qutunun içərisində təhlükəsiz etmək əvəzinə, dc jakının bir az sallanmasına icazə verdim. Əks təqdirdə, şnurun divara dayandığı üçün arxa tərəfi çox uzanırdı. Müsbət Arduino Nano'da VIN -ə bağlanır, mənfi isə yerə enir. LED -in müsbət və mənfi tərəfləri VIN -ə və yerə lehimlənəcək.
HM-10 modulu və Arduino Nano üçün bir diaqram yüklədim. HM10 TXD, Nano üzərindəki RXD pininə girir, HM10 üzərindəki RXD pimi Arduino üzərindəki TXD pininə bağlıdır. Bu, Nano Bluetooth Modulunun yazdıqlarını oxuduğundan və əksinə olur. Ayrıca VIN -i Arduino'daki +5v -ə bağlayın və sahələri bir -birinə bağlayın.
Nəhayət, keçid və ya düymə Arduino RXD və HM10 TXD arasında isteğe bağlıdır. Nədənsə, bir çox insanlar qoşulduqda yeni kodu yükləyə bilmirlər, buna görə hər dəfə kod yükləndikdə onların ayrılmasını asanlaşdırır, sonra yüklədikdən sonra yenidən bir araya gətirirlər.
Bitirdikdən sonra hər şeyin işlədiyini yoxlayın. Əgər belədirsə, bütün telləri isti yapışdırın və gözəl görünməsini təmin edin. Unutmayın ki, çox yapışqan kimi bir şey yoxdur.
Addım 5: IPhone Tətbiqini yazın
Təsvirdə Xcode layihəsini təqdim edəcəyəm. BLE Cihazına qoşulan və məlumat göndərən 3 Bluetooth sinifim var. ScannerViewController hər mövcud Bluetooth Aşağı Enerji cihazı üçün axtarış aparır. BluetoothSerial, seçilmiş cihazdan qoşulma/ayrılma prosesini təsvir edir və məlumat göndərə bilər. Nəhayət, SerialViewController tətbiqin əsas görünüşüdür. Hər bir HSB dəyərini ehtiva edən və istifadəçi sahib olduqları rəngə qayıtmaq istəsə daha sonra istifadə etmək üçün saxlayan ikiqat bir sıra ilə bir collectionView var.
İstifadəçi rəng çarxından istifadə edərək daha sonra saxlana biləcək bir rəng seçə bilər. İstifadəçi seçdiyi rənglə rəsm çəkə bilər. Geri alma ilə birlikdə doldurma düyməsi var.
Connect 4 bölməsində istifadəçi digər oyunçulara meydan oxumaq üçün fərqli oyun rejimi arasında seçim edə bilər. Hər bir hərəkət ekranda görünəcək Arduino Nano və HM-10 cihazına məlumat göndərəcək. Həmişə bu şəkilləri düzəldə bilərsiniz, çünki çox pis görünürlər.
Hər dəfə bir hüceyrəyə basıldığında "P; 15; 0.56; 0.81; 1 / n" kodunu göndərir (məsələn). P, Arduino -nu tanımaq üçün təyin etdiyim "Play" deməkdir və 15 -ci hüceyrə üçün rəngləri göstərəcəkdir. Rənglər göndərilən növbəti 3 dəyərdir. Rəng, Doyma və Parlaqlıqdır. Bluetooth modulunun daxil olan məlumatları oxumağı nə vaxt dayandıracağını bilməsi üçün sonda / n əlavə etmək vacibdir. Ekranı təmizləmək üçün "z / n" kodunu göndərirəm. İlk hərf üçün "z" alanda lövhəni təmizləmək üçün təyin etdim. Və əlbəttə ki, məlumatları oxumağı nə vaxt dayandıracağınızı HM10 cihazına bildirmək üçün / n ilə bitirirəm.
Hər hansı bir sualınız varsa, şərhlərdə yazmaqdan çekinmeyin:)
Addım 6: Arduino Kodu
Nano -ya yüklənəcək Arduino kodunu verəcəyəm. Bu kod hər bir xarakteri ayrı -ayrılıqda alır və birləşdirir və bir sıra şəklində saxlayır. Dizini istifadə edərkən, diziyə göndərilən hər bir dəyər (rəng, doyma, parlaqlıq) vergül arasında bölünür. Bu, lövhədə lazım olan pikselin rəngini dəyişdirir. Eyni konsepsiya connect 4 hissəsi ilə də gedir. Hue, Doyma və Parlaqlıq IOS tətbiqindən göndərilir və lövhədə rənglənməli olan piksel ilə birlikdə Arduinoya çatdırılır.
Yenə də kodla bağlı hər hansı bir sualınız varsa, şərhlərdə mənə bildirin:)
Addım 7: Stilinizə uyğunlaşdırın
Unutmayın ki, bu layihə əylənmək üçündür və fərdiləşdirilə bilər. Ağacı rəngləyin və ya dizayn əlavə edin. Mikrofon və kiçik bir dinamik əlavə edərək LED -lərin musiqiyə reaksiya verməsini təmin edin. IR sensorlar istifadə edərək toxunma həssaslığı əlavə edin. Arduino və ya IOS Tətbiqinə sürüşmə mətni daxil edin. IOS tətbiqinə yeni bir oyun rejimi əlavə edin. Tetris əlavə etmək üçün başqa bir seçimdir.
Bu layihə, başqalarını bundan böyük və yenilikçi bir şey yaratmağa ilham vermək ümidi ilə əsasdır. Dəstək üçün təşəkkür edirik!
Addım 8: Arduino Kodu və IOS Kodu
GitHub -dakı Swift və Arduino layihəsinin bağlantısı budur. Hər hansı bir problem varsa, mənə bildirin.
github.com/oKeeg/LED-Coloring-Board
Addım 9: Yenilik nədir? + Son Yenilənmiş Kod
Ən yeni yeniləmədə, istifadəçilər hamısını vurmaq əvəzinə bütün ızgaranı bir rənglə doldura bilirlər. Qəza baş verərsə geri qaytarmaq düyməsi var. Nəhayət, istifadəçinin lövhədə oynamaq üçün yeni animasiyalar seçə və ya əlavə edə biləcəyi yeni Animasiyalar rejimi.
Yeni animasiyalar daxildir -
Solğun Rənglər - Təsadüfi rəngləri vaxtaşırı solur.
Göy qurşağının nəfəs alması - göy qurşağının rənglərini böyük bir üfüqi xətt ətrafında hərəkət etdirir.
Animasiyalar daha çox telefon tərəfində Arduino tərəfində işləyir. Basıldığında, telefon Arduino üçün "A; 0 / n" icra etməsi üçün bir kod xətti göndərir. "A" Animasiya deməkdir və "0", solğun rənglər olan ilk basılan animasiyadır. Arduino 0 -ı oxuyur və solğun rəngli animasiya oynayır.
Tövsiyə:
Rəsm Tətbiqi etmənin iki yolu: 10 addım
Rəsm Tətbiqi etmənin iki yolu: Bilirəm ki, bu rəsm tətbiqinin yalnız 5x5 piksellik ekranı var, buna görə çox şey edə bilməzsən, amma yenə də əyləncəlidir
Arduino üçün Rəsm Robotu: 18 Addım (Şəkillərlə birlikdə)
Arduino üçün Çizim Robotu: Qeyd: Bu robotun çap dövrə lövhəsindən istifadə edən, qurulması daha asan olan və IR maneə aşkarlamalı yeni bir versiyası var! Http://bit.ly/OSTurtle-də yoxlayın Bu layihəni ChickTech.org üçün 10 saatlıq seminar üçün hazırladım, məqsədi
Ucuz, Arduino ilə Uyğun Rəsm Robotu: 15 Addım (Şəkillərlə birlikdə)
Aşağı Qiymətli, Arduino ilə Uyğun Rəsm Robotu: Qeyd: Bu robotun çap lövhəsindən istifadə edən, qurulması daha asan və IR maneə aşkarlamalı yeni bir versiyası var! Http://bit.ly/OSTurtle-də yoxlayın Bu layihəni ChickTech.org üçün 10 saatlıq seminar üçün hazırladım, məqsədi
LEGO Delta Robot Tarama və Rəsm: 7 Addım (Şəkillərlə birlikdə)
LEGO Delta Robot Tarama və Çizim: Delta Robotu qurmaq üçün LEGO NXT -dən istifadə. Birləşdirilmiş tarama və rəsm
MESH istifadə edərək Avatar Rəsm Robotu: 6 Addım (Şəkillərlə birlikdə)
MESH istifadə edərək Avatar Drawing Robotu: Fiziki fəaliyyətin sizi daha yaradıcı edə biləcəyini eşitmisinizmi? Aktiv olmaq düşüncənizi genişləndirməyə və yaradıcı fikirlər yaratmağa kömək edir. Tez -tez işləmirsinizsə, ancaq yaradıcılığınızı artırmaq istəyirsinizsə, narahat olmayın - İşdə sizin üçün bir şey! Bu