Mündəricat:

Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi: 9 Adım (Şəkillərlə birlikdə)
Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi: 9 Adım (Şəkillərlə birlikdə)

Video: Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi: 9 Adım (Şəkillərlə birlikdə)

Video: Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi: 9 Adım (Şəkillərlə birlikdə)
Video: Scentroid's CTAir Continuous Urban Air Quality Monitor Seminar A 12.08.2020 (Subtitled) 2024, Noyabr
Anonim
Image
Image
Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi
Bluetooth LED Rəsm Lövhəsi və IOS Tətbiqi

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ə və kəsilməsinə qərar verin
Ölçüsünə və kəsilməsinə qərar verin
Ölçüsünə və kəsilməsinə qərar verin
Ölçüsünə və kəsilməsinə qərar verin
Ölçüsünə və kəsilməsinə qərar verin
Ölçüsünə və kəsilməsinə 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

Tel LEDləri
Tel LEDləri
Tel LEDləri
Tel LEDləri
Tel LEDləri
Tel LEDləri
Tel LEDləri
Tel LEDləri

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

Ağac yığın
Ağac yığın
Ağac yığın
Ağac 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

Arduino və Bluetooth əlavə edin
Arduino və Bluetooth əlavə edin
Arduino və Bluetooth əlavə edin
Arduino və Bluetooth əlavə edin
Arduino və Bluetooth əlavə edin
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

IPhone tətbiqini yazın
IPhone tətbiqini yazın
IPhone tətbiqini yazın
IPhone tətbiqini yazın
IPhone tətbiqini yazın
IPhone tətbiqini yazın
IPhone tətbiqini yazın
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

Stilinizə uyğunlaşdırın!
Stilinizə uyğunlaşdırın!
Stilinizə uyğunlaşdırın!
Stilinizə uyğunlaşdırın!
Stilinizə uyğunlaşdırın!
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ə: