Mundarija:

Kamalak zarlari: 6 qadam (rasmlar bilan)
Kamalak zarlari: 6 qadam (rasmlar bilan)

Video: Kamalak zarlari: 6 qadam (rasmlar bilan)

Video: Kamalak zarlari: 6 qadam (rasmlar bilan)
Video: Nigina ukasini nima qildi 😱 2024, Noyabr
Anonim
Kamalak zarlari
Kamalak zarlari

Bu 5 ta smd diodli LEDlardan tashkil topgan 5 dona zarli o'yinlar qutisini yasaydi. Bu haydovchi dasturiy ta'minot bir nechta zarlar bilan har xil o'yin rejimlariga ruxsat beradi.

Bitta asosiy tugma o'yinni tanlash va zarlarni siljitish imkonini beradi. Har bir qolip yonidagi individual kalitlar o'yin turiga qarab tanlash yoki boshqarishga imkon beradi.

Qurilish xarajatlari juda kam, lekin buning uchun qurilish uchun etarli vaqt, yaxshi lehimli temir va barqaror qo'l kerak.

Elektronika ESP8266 moduliga asoslangan (ESP-12F), u veb-serverda ishlaydi, bu dasturiy ta'minotni oson yangilash va o'yinlarni kuzatish / kengaytirish imkoniyatini beradi.

Quti qayta zaryadlanuvchi batareya bilan jihozlangan va hozirgi iste'mol juda kam bo'lgani uchun u bir zaryadda ko'p soat ishlaydi.

1 -qadam: ehtiyot qismlar va asboblar

Qismlar va asboblar
Qismlar va asboblar
Qismlar va asboblar
Qismlar va asboblar
Qismlar va asboblar
Qismlar va asboblar

Komponentlar

Quyidagi komponentlar kerak. Ularning barchasi eBay -da mavjud

  1. ESP-12F ESP8266 wifi-ni qayta ishlash moduli. (1,50 funt)
  2. 18650 batareya va ushlagich (£ 3,00)
  3. Qizil, ko'k, yashil, sariq, oq rangdagi x7 SMD LED'lari (har bir rangdagi 20 dona to'plami 0,99 funt sterling)
  4. 6 mm tugmachali x6 kalitlari (0,12 funt)
  5. Mini 8x4mm yoqish/o'chirish tugmasi (£ 0.10)
  6. LIPO USB zaryadlovchi moduli (0,20 funt)
  7. n kanal MOSFETS - AO3400 x6 (£ 0.20)
  8. 3.3V past tushish regulyatori - XC6203E (£ 0.20)
  9. 220 uF elektrolitik (£ 0.15)
  10. 220R qarshilik x5 (£ 0,05)
  11. 4K7 qarshilik x 6 (0,06)
  12. Prototip taxtasi ikki tomonlama teshiklarni ajratdi (0,50 funt)
  13. Moslashuvchan sim
  14. Emayalangan mis sim 32
  15. Sarlavha pinlari 40 pinli chiziqlar x3 (£ 0.30)

Bundan tashqari, korpus kerak. Men har bir narsani ushlab turish uchun 3D bosilgan qutini ishlab chiqdim va LEDlarning porlashiga ruxsat berdim. Bu Thingiverse -da mavjud.

Asboblar

  1. Nozik nuqtali lehim temir
  2. Yaxshi cımbızlar
  3. Tel kesgichlar
  4. Junior hack ko'rdi
  5. Igna fayllari foydali
  6. Qatron yopishtiruvchi
  7. Qutidagi dizayndan foydalanilsa, 3D printerga kirish.

2 -qadam: O'chirish tavsifi

O'chirish tavsifi
O'chirish tavsifi

Sxemada zarni tashkil etuvchi 5 ta LED massivini boshqaruvchi ESP-12F moduli ko'rsatilgan.

Har bir zar 7 ta LEDdan iborat bo'lib, ular 3 juft (2 diagonal va o'rtada) va bitta markaziy LEDga ega. Ko'rsatiladigan LEDlarni tanlash uchun ularga 4 ta GPIO pinlari kerak. Oqimni aniqlash uchun 220R rezistorlar ishlatiladi va markaziy LED uchun 2 ketma -ket ishlatiladi, shunda oqim bir xil bo'ladi.

5 ta zar MOSFET kalitlarini boshqaruvchi 5 ta GPIO liniyasi bilan ko'paytiriladi. Bir vaqtning o'zida faqat bitta kalit yoqilgan. Dasturiy ta'minot 1mSecga har bir o'limga ruxsat beradi, shuning uchun umumiy yangilanish davri 200 Gtsni tashkil qiladi va miltillovchi yo'q.

Har bir o'lik bilan 5 ta kalit bog'liq. GPIO cheklanganligi sababli, ular matritsani ko'paytirish uchun ishlatilgan chiziqlar yordamida o'qiladi. Multipleks ketma -ketligi davomida bu boshqaruv chiziqlari yuqoriga ko'tariladigan va o'qiladigan kalitlarning holatiga ega bo'lgan kirish sifatida o'rnatiladi. Keyin ular multipleks ketma -ketligining qolgan qismi uchun chiqishga qaytariladi.

Umumiy nazorat uchun 6 -kalit kalit GPIO16 liniyasi tomonidan o'qiladi. Bu faqat pastga tushishi mumkin, shuning uchun kalit 3.3V ga ulangan. Bu kalit ochilganda past, yopilganda esa baland o'qiladi.

3 -qadam: DIE qurilishi

DIE qurilishi
DIE qurilishi
DIE qurilishi
DIE qurilishi

Bu ishning eng ko'p vaqt talab qiladigan qismi va unga g'amxo'rlik kerak.

Har bir qolip 6 teshikli x 6 teshikli kvadrat prototipli taxtadan yasalgan. Birinchi qadam - mini -arra yordamida bitta taxtadan 5tasini kesib tashlash. Teshiklardan tashqarida iloji boricha kamroq chegara qoldirishga harakat qiling.

Keyingi bosqich - har bir tomonga 2 ta 6 ta pinli sarlavhalar va ularning yoniga 3 ta ajratilgan pimning 2 to'plamini, so'ngra o'rtada yana bir juftni qo'shish. Bular SMD LEDlarini ushlab turadi. Men tashqi ustunlarning har biridan 2 ta ishlatilmaydigan pinni olib tashlashni yaxshi deb bilaman. LEDlar o'rnatilishi kerak bo'lgan taxtaning yuqori tomonida bosh pimlari kesilgan bo'lishi kerak, shunda taxminan 1 mm chiqib turadi. Ularning barchasini bir xil darajada ushlab turishga harakat qiling. Bu LEDlarning taxta yuzasidan chiqib ketishiga imkon beradi.

7 ta SMD svetodiodlari har bir juft pin ustida lehimlangan. Bu umumiy qurilishning eng murakkab qismi, lekin biroz mashg'ulotdan so'ng ko'p vaqt talab qilinmaydi. Men qo'llagan usulda pimlarning yarmining yuqori qismini qalay qilish kerak edi, shuning uchun allaqachon lehim bor edi. Keyin LEDni cımbızda ushlab, lehimni yana eritib, ichiga LEDni kiriting. Bu bosqichda bo'g'inning sifati haqida ko'p tashvishlanmang. Eng muhimi, LEDni gorizontal va pim bo'ylab iloji boricha yaxshi tekislash. LED o'rnatilgandan so'ng, uni boshqa uchida o'z piniga to'g'ri lehimlash mumkin, keyin kerak bo'lganda birinchi bo'g'inni qayta lehimlash mumkin.

Diyotlarning kutupluluğu to'g'ri bo'lishi kerak. Men barcha tashqi sarlavhali pinlarni anodlarga ulanishini tartibga solaman. Men markaziy LEDni chap qo'l ustuni bilan bir xil yo'naltirdim (yuzdan va pastki qismdan zaxira qatori bilan qaraladi. Diodlarning katodda xira belgisi bor, lekin o'lchagich bilan tekshirish ham yaxshi. Diodlar qarshilik diapazonidan (masalan, 2K) va anoddagi qizil simdan va katodda qora rangdan foydalanganda yonadi. Ular aksincha yonmaydi. Agar ular aralashsa ranglarni tekshirishning yaxshi usuli.

LEDlar o'rnatilgandan so'ng, taxtaning qolgan qismini to'ldirish mumkin.

Kengashning pastki qismida.

  1. Izolyatsiyalanmagan ingichka simli sim yordamida barcha katodlarni bir -biriga ulang.
  2. Mosfetni katod tarmog'iga ulangan drenaj pimi bilan lehimlang
  3. Mosfet manbaini oxirigacha 0V bo'lgan sarlavha piniga o'tkazing
  4. Darvozani 4K7 rezistor orqali bosh piniga ulang. Ko'rsatilganidek, uni boshqa pastki teshik orqali o'chirish yaxshidir, chunki bu erda kalit ulanadi.

Kengashning old tomonida 3 juft anod ulanadi.

  1. Profil past bo'lishi uchun lehimlanadigan emallangan simdan foydalaning.
  2. Har bir simning bir uchini oldindan qalamlang
  3. Uni bitta anodga lehimlang.
  4. Uni kesib oling va uzunligiga kesib oling.
  5. Tayyorlangan anod juftini oldindan qalay va lehimlang.

Bunday holda, multimetr yordamida har bir o'limni dastlabki sinovdan o'tkazish yaxshidir. Umumiy katodlarda qora qo'rg'oshin (Mosfet drenaji) bo'lsa, qizil simni 3 anodli juftlik va bitta anodga o'tkazish mumkin. Tegishli LEDlar yonishi kerak.

4 -qadam: quti qurilishi

Qutining qurilishi
Qutining qurilishi
Qutining qurilishi
Qutining qurilishi
Qutining qurilishi
Qutining qurilishi
Qutining qurilishi
Qutining qurilishi

Bu 3D bosilgan quti versiyasi ishlatilgan deb taxmin qiladi. Qutida har bir o'lim va har bir LED uchun chiziqlar bor. Har bir LED ostidagi pastki qavat juda nozik (0,24 mm), shuning uchun oq plastmassa yordamida yorug'lik juda yaxshi o'tishiga imkon beradi va diffuzor vazifasini bajaradi. Barcha kalitlar va zaryadlash punktlari kesilgan. Batareya o'z bo'linmasiga ega.

Avval 6 ta mini tugmachali kalitni va slaydni o'z joyiga o'rnating. Ularning tashqi tomondan tekislanganligiga ishonch hosil qiling. Tugma tugmachalari parallel ravishda ikkita simli kontaktga ega. Ularni kontaktlarning zanglashiga yaqin bo'lishi uchun yo'naltiring. O'rnatish uchun tez sozlash qatronidan foydalaning.

Endi batareyani va uning qutisini ajratilgan joyga o'rnating. Bu juda mos bo'lishi kerak, lekin agar kerak bo'lsa, ozgina elim ishlating.

LIPO zaryadlovchisini devorga yopishtiring, uning teshigidan o'tish mumkin bo'lgan mikro USB bilan ta'minlangan.

Asosiy quvvat simlarini tugmachani tugmachalari va LIPO B-ulagichlari orqali aylantiring va elektronga ulanish uchun cho'chqa dumini qoldiring. Batareya + LIPO zaryadlovchisidagi B + va slaydni almashtirgichga o'tishi kerak. Slaydni almashtirishning boshqa tomonida oltinchi kalit va elektronika uchun cho'chqa dumi bo'lishi kerak. Slayd tugmasi o'chirilgan holatda ekanligiga ishonch hosil qiling va cho'chqa dumlarini vaqtincha izolyatsiya qiling. Siz batareyani qisqartirishni xohlamaysiz!

5 ta kalitli kalitning har biriga ikkita qisqa izolyatsiya qilinmagan cho'chqa dumini lehimlang. Bular biroz moslashuvchan bo'lishi kerak.

Kommutatorning 0V moslamali mosfet manbaiga / 0V nuqtaga va kalitning 4K7 / darvozasiga ulanganligiga ishonch hosil qilib, ikkita tugmachali cho'tkani qolip taxtasiga lehimlab, har bir qolipni o'z joyiga joylashtiring va mahkamlang. mosfet. Bortdagi LEDlar korpusdagi chuqurchalarga o'rnatilishi kerak va kalit simlari qolipni ushlab turish uchun etarli bo'lishi kerak.

Keyin 5 zarning barcha umumiy anodlarini ulang. Bu osonlashtiriladi, chunki diodli juftlik ulanishi qolipning har ikki tomonida ham mavjud, lekin shuni yodda tutingki, ular diagonallar bo'ylab kesishadi. Ko'rinib turibdiki, tasvirdagi qizil simni chalkashtirib yubormang. Bu shunchaki cho'chqa go'shti va bu bosqichda hech narsaga bog'liq emas.

ESP-12F kompozitsiyasi

ESP-12F modulini o'rnatishdan oldin dasturlashni xohlashingiz mumkinligini unutmang. Yoritilganidan so'ng, boshqa barcha yangilanishlarni Wi -Fi OTA yordamida amalga oshirish mumkin.

3.3V regulyatorni bir oz qolgan karta kartasiga joylashtiring. Bu erda faqat LDO regulyatori va ajratuvchi kondansatör mavjud. Quvvat tarqalishi juda past bo'lsa -da, men bir nechta kontaktlarni lehimlab, qurilma uchun issiqlik qabul qilgich vazifasini bajaraman. Ikkita sim chiqib ketishi va ESP-12F 3.3V / 0V ga to'g'ridan-to'g'ri ulanishi mumkin.

5 -multipleksli liniyalar va kalit 6 uchun GPIO pinlariga simlarni lehimlash. 4 LEDli anodli haydovchi liniyalarida 220R / 440R seriyali rezistorlar kerak. Buning uchun ESP-12F-ga kichik teshikli rezistorlardan foydalanish mumkin yoki men buni SMD bilan qilganman, bu juda mustahkam teshiklarga o'rnatilgan.

Oxir -oqibat, multipleksli chiziqlarni alohida qoziq pimlariga va anod haydovchi liniyalariga mos keladigan romashka zanjiridan o'tkazing.

5 -qadam: dasturiy ta'minot

Buning uchun dasturiy ta'minot ESP8266 Arduino muhitiga asoslangan. Bu github -da mavjud.

Kod bu erda mavjud

LEDlarni ko'paytirish va kalitlarni o'qish uchun ishlatiladigan past darajadagi funktsiyalarni ta'minlaydigan diceDriver kutubxonasi mavjud. Bu uzilishlar bilan boshqariladi, shuning uchun zar qiymatlari o'rnatilgandan so'ng, u o'zini saqlab qoladi.

Umumiy vaqt har bir o'lim uchun 1 mSek intervalga bo'linadi. LEDlar yonib turgan 1 mS sekundlik davr har bir o'lim uchun mustaqil ravishda o'rnatilishi mumkin. Bu yorug'likni turli xil ranglarda muvozanatlashiga imkon beradi, shuningdek o'yinni boshqarishning bir qismi sifatida xiralashtirish va miltillash imkonini beradi.

Kutubxona, shuningdek, zarni almashtirishni multipleksning bir qismi sifatida o'qiydi va bir yoki bir nechta zarni parallel ravishda "siljitish" tartibiga ega.

Eskiz kutubxonadan zar o'yinlari rejimini tanlash va ushbu o'yinlarni ishga tushirish uchun foydalanadi. Shuningdek, u dastlab Wi -Fi -ni sozlash, OTA -ga yangi dasturiy ta'minotni yuklash va qurilmaning holatini tekshirish va tekshirish uchun ba'zi asosiy veb -funktsiyalarni taqdim etish uchun texnik xizmat ko'rsatishni ta'minlaydi.

Dastur Arduino IDE -da tuzilgan. Ino asosiy funktsiyalarni ta'minlash uchun BaseSupport kutubxonasidan foydalanadi. Bu mahalliy BaseConfig.h faylida tuzilgan. Wi -Fi tarmog'iga ulanish uchun standart parol "parol" ishlatiladi. Siz buni boshqa narsaga o'zgartirishni xohlashingiz mumkin. Agar siz ichki o'rnatilgan sozlamalardan foydalanishni xohlamasangiz, uni Wi -Fi -ning aniq ma'lumotlari bilan sozlashingiz mumkin. Xuddi shunday, OTA dasturiy ta'minotini yangilash jarayoni uchun bir xil standart parol mavjud bo'lib, uni birinchi marta Arduino IDE -ga ketma -ket ulanish orqali o'rnatish kerak bo'ladi. Fleshli ketma -ketlik rejimiga o'tish uchun, GPIO0 qayta tiklanish vaqtida pastda yonib turadigan oddiy miltillovchi qoidalarga bo'ysunishi kerak. Bu, modulni oxirigacha ulashdan oldin, qulayroqdir, lekin tegishli pinlarga qisqichlar biriktirilsa, joyida bajarilishi mumkin.

Dasturiy ta'minot birinchi marta ishga tushirilganda, u mahalliy Wi -Fi tarmog'iga ulana olmaydi va o'z kirish tarmog'ini o'rnatish orqali avtomatik ravishda sozlash rejimiga o'tadi. Siz unga Wi -Fi qurilmasidan (masalan, telefon) ulanib, 192.168.4.1 -ga o'tishingiz mumkin, bu haqiqiy mahalliy Wi -Fi -ni tanlash va uning parolini kiritish imkonini beradi. Agar bu yaxshi bo'lsa, u qayta ishga tushadi va tarmoqdan foydalanadi.

OTA Arduino IDE -dagi ikkilik fayllarni eksport qilish orqali amalga oshiriladi, so'ngra ip/dasturiy ta'minotni ko'rib chiqadi, bu erda ip - bu qutining ipi. Bu yangi ikkilikni qidiradi / ko'rib chiqadi.

Boshqa veb -funktsiyalar

  • to'siq kuchi - o'lim uchun quvvatni belgilaydi (ip/setpower? dice = 3 & power = 50)
  • setflash - zar uchun fleshni o'rnatadi (ip/setflash? mask = 7 & interval = 300)
  • setdice - bitta o'lik qiymatni o'rnatadi (ip/setdice? dice = 3 & value = 2)
  • parametrlar - siljish parametrlarini o'rnatadi (ip/parametrlar? niqob = 7 va vaqt = 4000 va interval = 200)
  • status - zar qiymatlarini qaytaradi va holatini o'zgartiradi

6 -qadam: O'yinlar

Dastur o'yinni tanlash va o'yinni asosiy kalit yordamida boshqarishga imkon beradi.

Dastlab, tizim o'yinni sozlash rejimida, faqat birinchi qolipda '1' ko'rsatiladi. Siz bu tugmani qisqa bosish orqali 12 xil o'yin rejimiga o'tasiz. Birinchi qolip 1 - 6 ga o'tadi, keyin 6 da qoladi, ikkinchisi esa 1-6 ni ko'rsatadi.

Muayyan o'yinni tanlash uchun tugmani uzoq bosib turing (> 1 soniya) va bu uni o'yin rejimiga o'tkazadi.

O'yin davomida, odatda, bu tugmani qisqa bosish bilan rulon boshlanadi. Yugurish rejimidan o'yin tanlash rejimiga qaytish uchun bu tugmani uzoq bosib turing, shunda u o'yin raqamini avvalgidek ko'rsatib beradi va keyingi tanlovga ruxsat beradi.

Hozirda 3 ta zaxira bilan 9 ta o'yin rejimi aniqlangan.

1 dan 5 gacha o'yinlar - bu zarlarning oddiy to'plami. Har bir rulon faqat barcha zarlarni siljitadi. Zar o'yinlari bu o'yinlarda hech qanday ta'sir ko'rsatmaydi.

6 -o'yin - zarlarning dinamik soni. Zar sonini tanlash uchun tugmachalardan birini bosing va keyin zarni siljitish uchun asosiy tugmachani bosing. Har bir rulondan oldin zarlar soni o'zgartirilishi mumkin.

7-o'yin-ko'p otish. Hamma 5 ta zar ishtirok etadi. Asosiy tugmani bosish barcha zarlarni siljitadi. Har bir tugmachani bosish uning miltillashiga olib keladi. Asosiy tugma bosilganda, faqat miltillovchi qolip siljiydi, faqat hech kim miltillamasa, hammasi siljiydi. Bu poker zarlari yoki Yahtzeega o'xshaydi. E'tibor bering, ruxsat etilgan zarbalar soniga rioya qilinmaydi. Bu futbolchining yaxlitligiga bog'liq.

O'yin 8, O'yin 7 ga o'xshaydi, faqat dim yonib -o'chib turmasligini ko'rsatish uchun ishlatiladi.

O'yin 9 rulonlarni aniqlash uchun qolipli kalitlardan foydalanadi. Agar eng yaxshi 3 -dan biri tanlangan bo'lsa, bu 1, 2 yoki 3 -sonli zarlar sonini aniqlaydi). Agar pastki 2 kalitlardan biri bosilsa, yuqori satr saqlanadi va bu pastki qatorda (1 yoki 2) o'ralgan zarlar sonini tanlaydi. Bu Risk kabi o'yinlarda ishlatiladi.

Tavsiya: