Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14
Yaqinda men GeckoDiode -ning ajoyib qurilishini ko'rdim va darhol uni o'zim qurmoqchi edim. Instructable - bu Space Invaders ish stoli soati va men buni o'qib bo'lgach, uni ko'rib chiqishingizni maslahat beraman.
Loyiha deyarli faqat Adafruit -dan 3D bosilgan muhofazali va lazerli kesimli fasiyali qismlardan qurilgan. Hamma narsani qurilish narxiga qo'shish juda qimmatga tushadi! (taxminan 100 funt yoki undan ko'p). Muammo shundaki, agar siz 3D -printerga ega bo'lmasangiz, siz o'zingizning modelingizni chop etish uchun pul to'lashingiz yoki ebaydan juda kichik, juda tor, qisqa yoki aksincha, yomon korpus sotib olishingiz kerak bo'ladi.
Mening qurilishlarimning ko'pchiligi sevimli mashg'ulot byudjeti asosida bajarilishi kerak va har doim eng qimmat qismi korpuslar bo'ladi. Shunday qilib, men xuddi shu soatni, lekin yaxshi byudjetda qurishga qaror qildim.
Agar siz g'alati soatlarga qarashni yoqtirmoqchi bo'lsangiz, Steampunk voltmetrli soatimga qarang, u korpus uchun bir xil qurilish materiallaridan foydalanadi:-)
1 -qadam: qismlarni yig'ish
Ushbu loyihani amalga oshirish uchun sizga quyidagilar kerak bo'ladi. Qoplama uchun mo'ljallangan materiallarni yodda tuting, sizda boshqa loyihalarda ishlatishingiz mumkin bo'lgan juda ko'p qoldiqlar bo'ladi (bu kelajakdagi qurilishlar narxini yanada arzonlashtiradi). Agar siz ebay -dagi narx va boshqalarni tekshirmoqchi bo'lsangiz, sizga kerakli narsalarni PDF formatida yukladim.
Asboblar (menimcha, sizda allaqachon mavjud)
- Lehimlash temir
- Lehim
- Lehim pompasi (agar siz xato qilsangiz va lehimni olib tashlashingiz kerak bo'lsa)
- Issiq yopishtiruvchi qurol
- Issiq yopishtiruvchi tayoqlar
- Hunarmand pichoq (aka stenli pichoq)
- Hukmdor / o'lchash tasmasi / Vernier kaliper
- Simsiz matkap + matkap uchlari (1 mm dan 13 mm gacha)
- Diskli aylanadigan ko'p qirrali asbob (aka Dremel)
- Izopropil-alkogol kabi tozalovchi suyuqlik (arzon qirqishdan keyin ham ishlaydi)
- Xavfsizlik niqobi (purkagich bilan bo'yashda ishlatiladi)
Elektronika (elektronika narxi = 13,05 funt)
Ulardan ba'zilari menga tekin edi. Eski elektron o'yinchoqlar ichida Mylar karnaylari bor, agar ularni ajratib qo'ysangiz. Siz u erda bo'lganingizda, ehtimol siz shahar barreli va tugmachasini olishingiz mumkin.
- Dupont / Jumper kabellari - 0,99 funt
- DS1307 real vaqtda soat moduli - 0,99 funt (agar mavjud bo'lsa, DS3231 ni olishni tavsiya qilaman)
- Arduino nano + usb kabeli - 2,23 funt
- 8 Ohm Mylar dinamik - 0,99 funt
- SPST lahzali tugmasi - 1,49 funt
- 5,5 mm shahar barreli rozetkasi - 1,26 funt
- 5v, 0,5A doimiy quvvat manbai - 2,83 funt
- MAX7219 nuqta matritsali displey - 3,76 funt
Qoplama (Qoplama materiallari narxi = 17,19 funt)
- 60 mm kvadrat drenaj trubkasi - 5,99 funt (boshqa loyihalar uchun sizda ko'p narsa qoladi)
- Qora purkagichli bo'yoq - 4,85 funt
- Qora PVX (ko'pikli taxta) - 2,99 funt
- Super elim - 0,99 funt
- 60 mm qopqoqlar - 2,37 funt
Umumiy qiymati = 30,24 funt sterling:-) …….. bugungi kunda bu har qanday xalqaro o'quvchi uchun 38 AQSh dollariga teng.
Menga PVX kvadrat quvur bilan ishlash yoqadi. Ularni burg'ulash, kesish, bo'yash oson, men esa Steampunk soati uchun ishlatardim.
2 -qadam: Drenaj quvurini tayyorlang
Qaerga narsalarni qo'yishni xohlayotganingizni belgilang
Bu juda oson edi. Men hech qanday ajoyib narsani ishlatmadim. Birinchidan, men uydagi skameykaning (taxminan 30 sm) balandligi 2,5 m uzunligini kesib oldim. Keyinchalik qirralarning chiroyli va tekis bo'lishi uchun men uni dremel bilan kesib tashladim. Keyin men komponentlarni quvur yuzasiga qo'ydim va burg'ulash va kesishni xohlagan joyimni belgilash uchun doimiy bozorni ishlatdim. Men LED matritsaning tashqi tomonini kuzatdim va aylanadigan ko'p qirrali asbobdan foydalanib, kvadrat teshikni bir tekis qilib kesib oldim. Men tugmachaning diametrini o'lchash uchun raqamli kaliperdan va orqa va tepadagi to'g'ri o'lchamdagi teshiklarni kesish uchun DC barrelidan foydalanardim.
Chegarani kesib oling
Menda oldingi loyihalarga qaraganda, ko'p miqdorda PVX ko'pikli taxta bor. Ular zanjirlarni korpuslarga o'rnatish, epoksi aralashtirish va boshqa bit va boblarni tayyorlash uchun juda yaxshi. A4 yoki A5 o'lchamdagi bo'lakni oling va LED matritsasini ramkalash uchun 5 mm kvadrat yoki to'rtburchaklar kvadratni kesib oling. Bu matritsa uchun to'rtburchaklar teshikni kesishda qilgan har qanday jirkanch chekkalarni yashiradi. Buning uchun men Inkscape -da kichik shablonni chizdim va chop etdim (SVG fayli biriktirilgan). Keyin men uni ko'pikli lentaga niqobli lenta bilan yopishtirdim va ehtiyotkorlik bilan qo'ltiq pichog'i bilan kesib tashladim. To'g'ri yo'l tutish qiyin, men birinchi navbatda ichini, keyin tashqarisini kesishni maslahat beraman.
Hamma narsani bo'yash
Hamma teshiklar burg'ulash va kesilgandan so'ng, burmalangan qirralarni olib tashlang. Har qanday chang yoki ifloslanishni olib tashlash uchun yuzalarni spirtli ro'molcha bilan tozalang (yoki agar sizda IPA bo'lmasa, sochingizni oldirgandan keyin). Yaxshi shamollatiladigan joyda püskürtün va iloji boricha niqobdan foydalaning. Men buni tashqarida erga bir nechta karton bilan qildim, lekin bu ideal emas, hatto kichik shabada ham yuzga bo'yoq uchib ketishiga olib kelishi mumkin. Ehtiyot bo'ling va iloji boricha himoya vositalarini taqing.
Quvurni, ramkani va qopqoqlarni püskürtün, shunda ular bir xil qora rangda bo'ladi, keyin bir necha soat quriting.
3 -qadam: Arduino -ni dasturlash
Kod haqida ba'zi ma'lumotlar
GeckoDiodega kredit, chunki men uning kodini oldim va MAX7219 chipi bilan ishlash uchun o'zgartirdim. Adafruit versiyasi I2C avtobusidan, MAX esa SPI avtobusidan foydalanadi. Buning uchun men Arduino IDE -ga yuklagan va o'rnatgan MaxMatrix kutubxonasidan foydalandim. Agar siz MaxMatrix va LED matritsasi qanday ishlashini bilishni istasangiz, HowToMechatronics.com saytida juda qisqa qo'llanma mavjud. LED matritsasi ko'p rangli displeyga ega emas, faqat bitta rangli LEDdan iborat.
Men tushkunlikka tushganim shundaki, kutubxona uchun qanday funktsiyalar borligi va ularning har biriga qanday dalillar kiritish kerakligi haqida aniq ta'riflar yo'q. Yaxshiyamki, men nima qilganini sinab ko'rdim va xato qildim va oxir -oqibat uni to'g'ri ishlashiga erishish qiyin emas edi. Tushunadigan birinchi narsa shundaki, siz matritsangizda qancha 8x8 modul borligini aniqlashingiz kerak. Mening kodimda bu "modullar" deb nomlangan butun sonda saqlanadi:
"int modullari = 4;"
Bu displeyda siz bog'lagan 8x8 modullarning NUMBER. Yo'naltiruvchi ma'lumotlarning sonini yoki qaysi pinni ishlatayotganini emas, esda tutish kerak bo'lgan keyingi narsa shundaki, agar sizning "sprite" yoki boshqa to'rt matritsani qamrab oladigan bo'lsa, bayt qatorini shunday aniqlash kerak:
"bayt text_start_bmp = {32, 8,…*ba'zi bayt ma'lumotlari*…};"
Raqamlar matritsadagi satr va ustunlar miqdorini ko'rsatadi. Shu munosabat bilan "text_start_bmp" nomli bayt 32 ta ustun va 8 qatorda ko'rsatiladi. Raqamlar faqat bitta 8x8 matritsada ko'rsatiladi, shuning uchun 10 -sonli raqam quyidagicha ko'rinadi:
"byte minutes_ten_bmp = {8, 8,…*ba'zi bayt ma'lumotlari*…};"
Bosqinchilar ikkita matritsani qamrab oladi, shuning uchun bayt ma'lumotlarida 16, 8 beriladi.
Meni qiziqtirgan boshqa narsa - bu sprite ma'lumotlarining joylashuvi. Siz Arduino -dan spritni matritsadagi boshqa X/Y pozitsiyasida ko'rsatuv ko'rsatgichidan ko'rsatishni so'rashingiz mumkin. Kod nol daqiqasi uchun shunday ko'rinadi:
"matrix.writeSprite (8, 0, daqiqa_zero_bmp);"
Bitta raqam - X, ikkinchisi - Y. Hozir qaysi biri ekanligini eslay olmayman, lekin agar siz spritni 1 qator yoki ustun bilan yuqoriga yoki pastga siljitmoqchi bo'lsangiz, sonni musbat yoki minusga ko'paytirasiz. 8x8 matritsa uchun etarlicha sodda, lekin sizning sprite bir nechta matritsani qamrab olganda, siz shunga mos ravishda uy holatini belgilashingiz kerak bo'ladi. "POP" spriti quyida ko'rsatilgan:
"matrix.writeSprite (16, 0, invader_pop_bmp);"
E'tibor bering, uyning pozitsiyasi 16 emas 8 emas? Bu erda kod sprite 16 -pozitsiyadan chapdan o'ngga ko'rsatilishini bildiradi. U ikkita 8x8 displeyni bitta 16x8 displey deb hisoblaydi, hatto 4 bo'lsa ham! Shuning uchun, sprite nechta displeyda ko'rsatilishi va shunga mos ravishda har bir sprite bayt massivini o'lchash haqida o'ylash kerak. Aks holda sizda juda qiziqarli spritlar bo'ladi!
DS1307 RTC
Alpha DS1307 Adafruit RTClib.h kutubxonasi bilan yaxshi ishlaydi, siz vaqtni qo'lda belgilay olmaysiz, bu faqat og'riq. Men bu bilan bordim, chunki bu kodni o'zgartirish uchun kamroq edi. DS1307 kodi sizning kompyuteringiz vaqtidan boshlab tuzilgan vaqt va sanadan foydalanib vaqtni belgilaydi. Buning o'rniga DS3231 kutubxonasidan qanday foydalanishni bilib oling va kelajakda uni bir yoki ikki daqiqa oldinga qo'ying. Bundan tashqari, u kamroq "drift" ga ega, shuning uchun vaqt o'tishi bilan vaqtni yaxshiroq saqlaydi. Ikkala modul ham I2C avtobusidan foydalanadi va menimcha, agar siz undan foydalanishni davom ettirmoqchi bo'lsangiz, DS3231 RTClib.h bilan ishlatilishi mumkin.
Kodni yuklang
Agar siz koddan mamnun bo'lsangiz, uni Arduino -ga yuklang. Men sizning e'tiboringizga Arduino eskizini biriktirdim.
4 -qadam: elektronikani yig'ish
Kodni yuklayotganda, elektronni dupont/jumper simlari bilan yig'ilgan taxtaga o'rnatishni tavsiya qilaman, shuning uchun siz kodni yuklaganingizda hamma narsa mo'ljallangan tarzda ishlayotganini bilasiz. Bu sizga yopishtirish va yopishtirishni boshlashdan oldin spritlarni ko'rsatish va h.k. bilan bog'liq muammolarni hal qilishga imkon beradi. Mening kodimda 4, 5, 6, 7, 9 raqamli pinlardan foydalanayotganimni ko'rishingiz mumkin, lekin agar kerak bo'lsa, ularni o'zgartirishingiz mumkin. Kabellarni tugmachaga, shahar raz'emiga va karnayga lehimlashingiz kerak bo'lishi mumkin, lekin ko'pchiligi bosish moslamali konnektorlar bo'lishi kerak.
Agar elektronika maqsadga muvofiq ishlayotganidan xursand bo'lsangiz, ulanishlarni lehimlash haqida o'ylashingiz kerak. Siz buni mis lenta/veroboard bilan qilishingiz mumkin, lekin oz miqdordagi komponentlar uchun siz to'g'ridan -to'g'ri Arduino pinlariga lehimlashingiz mumkin. Bu kalamushlar uyasiga o'xshaydi, lekin hech kim yig'ilgan joyni ko'rmaydi, faqat barcha metall qismlar ajratilganligiga ishonch hosil qiling, bu holatda hech narsa etishmayapti.
Men tugmachani "mainButton" tugmasi pastga tortilganda ishga tushirdim. Men topdimki, Arduino suzuvchi elektronika joylashganda, bosilgan noto'g'ri tugmani taniydi. Tugmachadagi 10K ochiladigan rezistorni ishlatish va pinni "INPUT_PULLUP" ga o'rnatish men uchun bu muammoni hal qildi.
PDF va-p.webp
5 -qadam: Elektronni o'rnating va yoping
Soatim uchun men elektronni issiq elim yordamida o'rnatdim, lekin juda ko'p ishlatmaslik uchun ehtiyot bo'ling (elektronika uzoq vaqt qizib ketishni yoqtirmaydi). Men bir oz tomchi super yopishtiruvchi plyonka bo'ylab joylashtirdim va uni old tomoniga bosdim. Men korpusni har bir uchining qopqog'ini bosib tugatdim. Albatta, siz montaj qopqog'ini to'liq yopish uchun qopqoqlarni yopishtirishingiz mumkin, lekin men bir tomonimni ochiq qoldirdim, shuning uchun men kelajakda sana va vaqtni qayta o'rnatish uchun arduino USB portiga kira olaman.
6 -qadam: rohatlaning
Umuman olganda, men buni qandaydir trubka va purkagichli bo'yoq deb hisoblaganimdan, chiqish yo'lidan mamnunman. Umid qilamanki, bu sizga yoqadi va siz qo'shishingiz mumkin bo'lgan ajoyib yangilanishlar haqida o'ylaysizmi, menga xabar bering. Men buni kimdir arzonroq qila oladimi yoki keyingi loyihamda sinab ko'rishim mumkin bo'lgan korpusni tejashning boshqa tejamkor usuli bormi, bilishni istardim.
Tavsiya:
Kosmik bosqinchilar bilan Lego ko'chma o'yin konsoli: 4 qadam
Kosmik bosqinchilar bilan Lego ko'chma o'yin konsoli: Siz hech qachon o'yin ishlab chiqaruvchisi bo'lish va o'z o'yin konsoli yaratish haqida o'ylab ko'rganmisiz? Sizga ozgina vaqt kerak, apparatLego bricksa Mini-Calliope (bu veb-saytdan buyurtma berish mumkin https://calliope.cc/en) va ba'zi mahorat
Pensiya soati / hisoblash / Dn soati: 4 qadam (rasmlar bilan)
Pensiya soati / hisoblash / Dn soati: Menda tortmasida 8x8 o'lchamli LED nuqta matritsali displeylar bor edi va ular bilan nima qilish kerakligi haqida o'yladim. Boshqa ko'rsatmalardan ilhomlanib, men kelajakdagi sana/vaqtni sanash uchun orqaga/yuqoriga ko'rsatish ekranini yaratish g'oyasini oldim va agar belgilangan vaqt
LCD bosqinchilar: 16x2 o'lchamli LCD displeyidagi o'yin kabi kosmik bosqinchilar: 7 qadam
LCD bosqinchilar: 16x2 o'lchamli LCD displeyidagi o'yin kabi kosmik bosqinchilar: afsonaviy "Kosmik bosqinchilar" o'yinini kiritishga hojat yo'q. Loyihaning eng qiziqarli xususiyati shundaki, u grafikli chiqish uchun matnli displeydan foydalanadi. Bunga 8 ta maxsus belgini qo'llash orqali erishiladi, siz to'liq Arduino -ni yuklab olishingiz mumkin
Micropython -da Micro -da kosmik bosqinchilar: bit: 5 qadam
Micropython -da Micro -da kosmik bosqinchilar: bit: Oldingi maqolalarimizda biz TinkerGen ta'limi tomonidan ishlab chiqilgan, portativ retro o'yin konsoli GameGo -da o'yin yaratishni o'rganganmiz. Biz qilgan o'yinlar eski Nintendo o'yinlarini eslatardi. Bugungi maqolada biz orqaga qadam tashlamoqchimiz,
Kosmik bosqinchilar zulmatda porlashi bilan avizo: 16 qadam (rasmlar bilan)
Qorong'ida porlashi bilan kosmik bosqinchilar avizosi: 3D -modellashtirish/bosib chiqarish, lazerli kesilgan akril, qatronlar quyish, UV reaktiv pigment, LEDlar va bir nechta oddiy simlardan foydalanib, yuqori uslubli va retro salqin kosmik bosqinchilar qandil yoki chiroqdan foydalaning. Men lazerli kubdan kavisli burchaklar yasash uchun yaxshi hiyla qo'shdim