Mundarija:

NeoPixel soati: 10 qadam (rasmlar bilan)
NeoPixel soati: 10 qadam (rasmlar bilan)

Video: NeoPixel soati: 10 qadam (rasmlar bilan)

Video: NeoPixel soati: 10 qadam (rasmlar bilan)
Video: SKR 1.4 - TMC2130 SPI 2024, Iyul
Anonim
Image
Image
Elektron qismlar kerak
Elektron qismlar kerak

*********************************************************************************************************

Bu mikrokontrollovchilar tanloviga kirish, iltimos menga ovoz bering

********************************************************************************************************

Men bir necha yil oldin Tailandda bo'lganimda NeoPixel cheksiz oynasini qurdim va uni bu erda ko'rish mumkin.

Men buni Arduino -dan emas, balki PIC18F2550 mikroprotsessoridan foydalangan holda qildim. Bu kodni yozish uchun Micro -ning registrlari va vaqtlarini o'rganishni o'z ichiga olgan, ularning ba'zilari yig'ilishni o'z ichiga olgan.

Bu men uchun juda yaxshi bilim va bu meni yaxshi holatda ushlab turdi, chunki bu Arduino bolalar o'yinida ishlaydi. Ishlarning aksariyati uchinchi tomon kutubxonalari yordamida amalga oshirilgan, men o'z kutubxona kodimni yozishdan oldin.

Bu soat har bir metrga 144 oralig'ida joylashgan, alohida -alohida manzilli RGB LED -laridan foydalangan holda, atrofdan devorga yorug'lik chiqarish uchun mo'ljallangan. Bu menga 200 mm diametrli soatni berdi, men o'zimni 3D -printerda qila olaman.

Bu ajoyib ta'sirga ega, ayniqsa kechasi yoki qorong'i xonada, yorug'lik taxminan 500 mm chiqib, diametri bir metrdan oshadi. Shakllar hayratlanarli.

Soat soatlarni (ko'k), daqiqalarni (yashil) va soniyalarni (qizil) ko'rsatadi. Shuningdek, sakkiz xonali 7 segmentli displeyda sana va ro'yxat shaklida haftaning kuni ko'rsatiladi.

Soat smartfon orqali Wi -Fi orqali Blynk ilovasi va RPi 3 da ishlaydigan mahalliy Blynk serveri yordamida boshqariladi.

Blynk uchun mahalliy serverdan foydalanish ixtiyoriy va uni sozlash bu ko'rsatmaga kirmaydi. Blynk veb -saytidan www.blynk.cc saytida hisob qaydnomasini yaratgandan va dasturni yuklab olgandan keyin foydalanish mumkin.

O'z veb -saytida Blynk -dan foydalanish haqida juda ko'p ma'lumotlar bor, shuning uchun bu ko'rsatmaga kirmaydi.

Keyingi bosqichda QR -kodni skanerlash kerak bo'ladi, shunda sizda mening ilovam telefoningizda bo'ladi.

Ilovada soat yoki naqshlarni ko'rsatish uchun boshqaruv elementlari mavjud (ilovada LCD -teskari aloqa), dunyoning istalgan nuqtasida vaqt zonasini sozlash va NTP -server orqali vaqtni olish imkoniyati. U uyqu rejimiga ham o'rnatilishi mumkin.

Arduino -da vaqt/sana funktsiyalarini ta'minlaydigan batareyaning zaxira nusxasi bilan Real Time Clock moduli mavjud.

NodeMCU-E12 soatidagi dasturiy ta'minotni havo orqali yangilash mumkin (OTA).

Endi boshlaylik ….

1 -qadam: zarur vositalar

Yaxshi lehim temir va lehim

simlarni olib tashlash

kichik sim kesgichlar

uzun uzun burunli qisqichlar

vero taxtasini kesish uchun kichik arra

sevimli mashg'ulot pichog'i

qaychi

qog'oz elim

2 -qadam: elektron qismlar kerak

Elektron qismlar kerak
Elektron qismlar kerak
Elektron qismlar kerak
Elektron qismlar kerak

1 x NodeMCE-12E moduli BU YERDAN

1 x RTC soat moduli BU YERDA

Bu erda 1 x 8 raqamli 7 segmentli Max7219 moduli

Bu erda 1 x shahar quvvat manbai

Bu erda 2 ta darajali o'zgartirish moslamalari (Arduino 3,3v, RTC va 7 segmentli displey 5v) talab qilinadi

Bu erda WS2812B 114/mtr LED chiziqli 68 ta LED.

Bu erda DC 5v 10A quvvat manbai.

10kOm 1/4 Vt qarshilik.

Zarur bo'lganda, ulanish simlari.

Taxminan 77 mm x 56 mm Vero taxtasi barcha modullarni yig'ish va ulash uchun.

Men aslida I2c RTC moduli uchun Adafruit darajali almashtirgichni ishlatardim, chunki u I2c xavfsiz bo'lishi kerak edi !!

Biroq, menimcha, ko'pchilik 3.3v dan 5vgacha bo'lgan ikki tomonlama mantiq darajasidagi almashtirgichlar ishlashi kerak.

LED chizig'ini kesish LEDni yo'qotdi, chunki 60 ta LED tasmasining ikkala uchini lehimlash uchun prokladkalar kerak edi va 7 ta LED tasmasida prokladkalar kerak.

3 -qadam: Bosilgan qismlar

Bosilgan qismlar
Bosilgan qismlar
Bosilgan qismlar
Bosilgan qismlar
Bosilgan qismlar
Bosilgan qismlar

3D bosilgan uchta qism mavjud; asosiy soat korpusi, old qopqoq va orqa tarafdagi batareya qopqog'i.

Batareya qopqog'ini tashlab yuborish mumkin.

Old qopqoq ostida haftaning kunlari yozilgan "niqob" ham bor. Men buni oddiy qog'ozga yozdim. Men bu.dwg va.dxf faylini taqdim qildim.

2 ta old qopqoq mavjud, ularning hech birida ism yo'q, agar siz qismni tahrir qila olmasangiz.

Mening 3D printerim (0,4 mm ko'krak) Slic3r bilan quyidagi sozlamalarga ega edi:

Birinchi qatlam balandligi = 0,2 mm

qatlam balandligi = 0,2 mm

yotoq harorati = 60 S

ko'krak harorati = 210 S

vertikal perimetrlar = 2

gorizontal qobiqlar = 3

to'ldirish = yulduzlar 45 gradusda to'g'ri chiziqli

chekkasi yo'q

qo'llab -quvvatlovchi material yo'q

To'shakni tekislash usulidan foydalanish tavsiya etiladi

3D bosilgan fayllar va niqob chizish:

4 -qadam: O'rnatish faylini to'ldiring

Quyida soatni o'zgartirishni istaganlar uchun to'liq yig'ilishning IGS fayli keltirilgan.

5 -qadam: kutubxonalarni o'rnatish

ESP taxtalarini o'rnating

Sizga Arduino IDE kerak bo'ladi. Buni o'rnatish bu ko'rsatmaning bir qismi emas, lekin bu yerdan yuklab olish mumkin.

Arduino IDE o'rnatilgandan so'ng, agar hali bajarilmagan bo'lsa, quyidagi matnni Fayl> Tanlovlar - Qo'shimcha taxtalar menejeri URL manzillari ostidagi matn maydoniga nusxalash/joylashtirish kerak bo'ladi:

arduino.esp8266.com/stable/package_esp8266com_index.json

IDE -ni qayta ishga tushiring.

Buni qilganingizdan so'ng, Asboblar> Kengash> Kengashlar menejeri -ga o'ting. Yangilashni tugatsin va siz o'rnatilgan taxtalar ro'yxatida ESP8266 hamjamiyat versiyasini ko'rasiz.

KUTUBXONALARNI O'RNATISH

Hujjatlar/Arduino/kutubxonalar papkasidagi barcha kutubxonalarni odatdagidek taxta menejeri o'rnatganlardan tashqari o'rnatish.

Kutubxonalarni o'rnatgandan so'ng, Arduino IDE -ni qayta ishga tushiring, Sketch> Kutubxonani qo'shish> Kutubxonalarni boshqarish -ga o'ting, yangilanishni tugatsin, siz yangi kutubxonalaringizni ro'yxatda ko'rasiz.

RTClib - bu erda mavjudAdafruit_NeoPixel - bu erda mavjud

HCMAX7219 bu erdan

Blynk - bu erda mavjud. Diqqat bilan o'rnatish ko'rsatmalariga amal qiling.

NeoPixelClock faylidagi "o'z ichiga" qolganlari boshqaruv kengashi menejeri tomonidan o'rnatiladi yoki Arduino IDE o'rnatilishi bilan paketlanadi.

6 -qadam: dasturiy ta'minotni o'rnatish

Bu bosqichda hamma narsani non taxtasida sinov maqsadida ulash yaxshi bo'ladi.

5V quvvat manbai va/yoki USB kabelini ulashdan oldin barcha simlarni diqqat bilan tekshiring.

Sketch papkasiga o'ting Hujjatlar> Arduino.

"NeopixelClock" papkasini yarating.

Quyidagi.ino faylini papkaga joylashtiring.

Arduino IDE -ni oching.

IDE -ni chiziq raqamlarini ko'rsatadigan qilib o'rnating, Fayl> Tanlovlar -ga o'ting va "Chiziq raqamlarini ko'rsatish" katagiga belgi qo'ying, OK tugmasini bosing.

NodeMCU kartasini USB portiga ulang.

Asboblar> Kengash-ga o'ting va NodeMCU 1.0-ni tanlang (ESP-12E moduli)

Asboblar> Port -ga o'ting va kartangiz ulangan portni tanlang.

OTA FARMALARINI O'RNATISH

OTA yangilanishidan foydalanish uchun avval NodeMCUga maxsus dasturiy ta'minotni yoqish kerak.

Fayl> Misollar> ArduinoOTA> BasicOTA -ga o'ting.

dastur IDE -ga yuklanadi, ssid qismini SSID yo'riqnoma bilan to'ldiring. Agar siz sichqonchani tizim tepsisidagi WiFi belgisiga olib borsangiz, bu nomni ko'rishingiz mumkin.

Parolni tarmoq parolingiz bilan to'ldiring (odatda simsiz yo'riqnoma pastki qismida yoziladi).

Endi USB orqali NodeMCU kartangizga yuklang.

Ish tugagach, NodeMCU kartasidagi reset tugmasini bosing.

NEOPIXELCLOCK FIRMWARE dasturini o'rnating

Fayl> Sketchbook> NeoPixelClock -ga o'ting va NeoPixelClock faylini oching.

"Ruxsat" so'zini to'ldiring, "ssid" va "o'tish" 114 -qatorda bo'lishi kerak.

Eslatma; hokimiyat tokenini qanday olish kerakligi keyingi bosqichda tushuntiriladi

Shuningdek, siz mahalliy vaqt zonasini 121 -qatorga o'rnatishingiz mumkin, bu butun dunyo bo'ylab vaqt zonalari bo'yicha 1/12 soat -12 dan +14 gacha bo'lishi mumkin, agar xohlasangiz, uni ilovada ham o'rnatish mumkin. Hozirda u Avstraliyaning Kvinslend shtatida.

332 -qatorda, agar siz foydalanayotgan bo'lsangiz, mahalliy server uchun IP -manzilni belgilashingiz kerak.

Mahalliy server porti haqida eslatma. Blynk dasturiy ta'minotining so'nggi yangilanishi tufayli port hozirda 8442 emas, balki 8080.

Agar siz yangi dasturiy ta'minotdan foydalanayotgan bo'lsangiz, uni o'zgartiring.

Yoki Blynk veb -serveridan foydalansangiz, 332 -qatorga izoh va 333 -qatorga izoh qoldiring.

Bu faqat tahrir qilish kerak.

Endi buni USB orqali NodeMCU kartangizga yuklang.

Muvaffaqiyatli yuklanganida, USB kabelini kartadan uzing.

Siz "Asboblar> Yangi port" portini ko'rasiz (IP -manzilga o'xshaydi), kelajakda NodeMCU bilan bog'lanish uchun buni port sifatida tanlang.

Agar hamma narsa yaxshi bo'lsa, soatni boshlash kerak, aks holda NodeMCU modulidagi "reset" tugmasini bosing.

Eslatma: Men ba'zida bu birinchi marta boshlanmasligini payqadim, men elektr ta'minotini uzib qo'ydim va ko'p marta qayta uladim. Men bu yuklamani to'g'ri yuklamaslik uchun yechim ustida ishlayapman.

7 -qadam: Smartfon ilovasi

Smartfon uchun dastur
Smartfon uchun dastur
Smartfon uchun dastur
Smartfon uchun dastur

Uni ishlatishni boshlash uchun:

1. Blynk ilovasini yuklab oling: https://j.mp/blynk_Android yoki https://j.mp/blynk_iOS hali o'rnatilmagan bo'lsa.

2. ilovani oching yoki tizimga kiring, agar yangi bo'lsangiz, sizga hisob qaydnomasi kerak bo'ladi.

E'tibor bering, bu onlayn hisob bilan bir xil emas.

3. Yuqoridagi ilovadagi QR belgisiga teging va kamerani yuqoridagi QR kodiga yo'naltiring yoki quyidagi havolani oching -

tinyurl.com/yaqv2czw

4. vakolat kodi siz ko'rsatgan elektron pochtaga yuborilishi kerak, uni Arduino kodiga kiritishingiz kerak, keyinroq aytiladi. Agar siz yong'oq belgisini bosgan bo'lsangiz, agar kerak bo'lsa, siz yana elektron pochta xabarini yuborishingiz mumkin.

Yuqorida aytib o'tilganidek, siz www. Blynk.cc saytida Internetda hisob yaratishingiz kerak. buni qilishdan oldin.

Meni noaniqlik uchun kechiring, men buni sinovdan o'tkazolmayman, chunki menda ilova allaqachon mavjud va men veb -serverdan foydalanmayman.

8 -qadam: Vero kengashi yig'ilishini qurish

Vero kengashi majlisini qurish
Vero kengashi majlisini qurish
Vero kengashi majlisini qurish
Vero kengashi majlisini qurish
Vero kengashi majlisini qurish
Vero kengashi majlisini qurish

Men barcha taxtalar va modullarni vero taxtasiga qo'yishga qaror qildim.

Bu hamma narsani toza va tartibli ushlab turadi.

Sxemani quyidagi.pdf faylida ko'rish mumkin.

Sinovdan so'ng taxtadagi sarlavhalar olib tashlandi, men barcha tashqi qurilmalarni to'g'ridan -to'g'ri vero taxtasiga uladim, chunki sarlavhalar va ularga ulangan ulagichlar uchun joy yo'q edi.

Kechirasiz, men taxtaning pastki qismini suratga olmaganman, lekin buni tushunish qiyin bo'lmasligi kerak. Siz hatto mening tartibimni yaxshilashingiz mumkin. Vero taxtasini bir xil o'lchamda saqlang, aks holda u 3D bosilgan bazaga to'g'ri kelmaydi.

Mantiqiy darajadagi o'zgartirishlar bilan LV (+3.3v) Arduino modulidagi har qanday 3v pinlarda 3.3v ga o'tadi, HV (+5v) Arduino platasidagi VIN piniga o'tadi.

Barcha asoslar Arduino GND -ning har qanday pinlaridan keladi va ularni bir -biriga bog'lab qo'yish kerak.

26 o'lchovli izolyatsiyalangan bitta yadroli simni ishlating, PTFE izolyatsiyasi yaxshi bo'ladi, chunki u erimaydi.

Barcha simlarni 2-3 marta diqqat bilan tekshiring.

Uzluksizlikni tekshirish uchun ko'p metrli moslama bilan o'ting, barcha Gndlar VIN GND ga qayta ulanganligini tekshiring.

RTC modulidagi barcha +5v ulanishlarni, ikki darajali o'zgartirish moduli HV pinlarini va NodeMCU modulidagi VIN +5v pinini tekshiring.

Boshqa barcha simlarni tekshirish yaxshidir.

9 -qadam: soatni yig'ish

Soat yig'ilishi
Soat yig'ilishi
Soat yig'ilishi
Soat yig'ilishi
Soat yig'ilishi
Soat yig'ilishi

Qismlarni chop etgandan so'ng, miltillovchi va bo'laklarni o'tkir hobbi pichog'i bilan tozalang.

Menda faqat ko'k va qora filament bo'lgani uchun, men LED bo'shliqlarining ichki qismini kumush rangli bo'yoq bilan bo'yadim.

Menimcha, bu yorug'likni yaxshiroq aks ettirishga yordam beradi, shuningdek, devorlar orqali qo'shni bo'shliqlarga yorug'lik oqishini oldini oladi.

Vera taxtasi yig'ilishini sim bilan ulash kerak:

vero taxtasi yig'ilishidan +5v, Gnd va DIN LED chizig'iga.

vero taxtasi yig'ilishidan 7 segmentli displeyga.

vero taxtasi yig'ilishidan shahar uyasiga.

Asosiy 60 tomonlama LED tasmasi (DOUT) uchidan (60 raqami) alohida 7 tomonlama LED tasmasiga (DIN) sim.

Men ma'lumotni faqat 60 tomonlama LED tasmasining oxiridan (LED raqami 60), +5v va Gnd, men vero taxtasi yig'ishidan ulangan 7 tomonlama LED tasmasi uchun lehimladim (DOUT).

Shortsani oldini olish uchun men 60 tomonlama LED tasmasining boshi va oxirigacha ingichka kartochkaning kichik qismini qo'ydim, chunki ular juda yaqin edi.

Barcha simlarni o'lchab, kerakli uzunliklarga kesib oling, men biroz bo'sh joy berish uchun 5 yoki 6 mm qo'shdim.

Men LED tasmalaridan yopishqoq lenta tayanch qog'ozini olib tashlamadim, bu esa uni taglikka joylashtirishni qiyinlashtiradi va kerak bo'lganda olib tashlashni qiyinlashtiradi.

Men chiziqlar chiroyli va mahkam o'rnashganini ko'rdim, so'ngra ularni bo'shliqning pastki qismigacha bosing.

Vero taxtasi moslamasini bo'shliqqa joylashtiring, uni pastki qismdan 2 mm masofada ushlab turish uchun to'xtash joylari mavjud.

8-yo'lli 7-segmentli displeyni bo'shliqqa qo'ying, uni o'rnatish uchun to'xtash joylari bor.

DC raz'em bo'shliqqa mahkam o'rnashgan, simlarni teglarning ichki qismiga lehimlang. Agar xohlasangiz, yon belgini olib tashlang.

Barcha simlar yaxshilab bo'shliqlarga yotqizilgan bo'lishi kerak.

Nihoyat, quvvat manbaidan quvvat manbaini teshikdan o'tkazing va uni shahar uyasiga joylashtiring, kabelni pastdagi truba ichiga bosing.

Barcha simlarni 2-3 marta diqqat bilan tekshiring.

10 -qadam: Old panelni tugatish uchun o'rnatish

Asosiy blokda tashqi halqada bir nechta kichik qoziqlar chiqib turadi, ular old qopqoqdagi teshiklarga to'g'ri kelishi kerak.

Qog'oz niqobini qora rangda chop etish, kesib tashlash va yopishqoq tayoqqa o'xshash narsa bilan oldingi qopqog'iga yopishtirish kerak.

Teshiklar old qopqoq bilan taglikka bosilganda qog'oz orqali teshiladi.

Hammamiz tayyormiz, rozetkaga ulang, soat avtomatik ravishda ishga tushishi kerak, agar bo'lmasa, men bir necha marta bilganimdek, quvvatni uzing va qayta ulang.

Agar sizda RTC modulida batareya bo'lmasa, siz vaqt va sanani belgilashingiz kerak bo'ladi.

Buni ilova yordamida bajaring, yuqoriga/pastga boshqaruvchi vaqt zonasini o'rnating, so'ng "NTP VAQTINI SET" tugmasini bosing.

Muvaffaqiyatli bo'ladimi yoki yo'qmi, yana urinib ko'ring.

DONE ko'rsatilganda, soat tugmachasini bosish mumkin va soat ishlashi va haftaning sanasi va kunini ko'rsatishi kerak.

Naqshlarni "Naqshlar" tugmachasini bosish orqali ishga tushirish mumkin, bu har qanday vaqtda "Soat" yoki "Naqshlar" tugmachalarini yana bosish orqali to'xtatilishi mumkin.

Soat svetodiodli LEDlar va 7 segmentli displey yorqinligi mos keladigan slayderlar yordamida sozlanishi mumkin.

Barcha LEDlarni soatni o'chirish tugmachasini bosib o'chirish mumkin.

Uni devorga osib qo'ying, shunda yorug'lik devorga chiqadi, ayniqsa qorong'i xonada.

Har qanday savolga men javob berishdan mamnun bo'laman.

Xursand bo'ling va menga ovoz berishni unutmang.

************************************************ ************************************************ ***** BU MIKRO nazoratchi tanloviga kirish, iltimos menga ovoz bering ***************************** ************************************************ ***********************

Tavsiya: