Mundarija:
- Ta'minotlar
- 1 -qadam: qutini yig'ing
- 2 -qadam: Elektronikani ulang
- 3 -qadam: Arduino dasturlash
- 4 -qadam: Kod o'yinini o'ynang
Video: Kod o'yinini buzish, Arduino asosidagi jumboq qutisi: 4 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Tinkercad loyihalari »
Bu yo'riqnomada men sizga o'z kodini qanday yaratishni ko'rsatmoqchiman, siz tasodifiy ishlab chiqarilgan kodni seyfga aylantirish uchun aylanuvchi kodlagichdan foydalanasiz. Seyfning old tomonida 8 ta svetodiod o'rnatilgan bo'lib, siz taxmin qilgan raqamlarning qanchasi to'g'ri va qanchasi to'g'ri joyda ekanligini aytib beradi.
Seyf dastlab ochiq, bu sizga ichki qismga biror narsa qo'yishga imkon beradi. Arduino va batareya orqa qismdagi alohida bo'linmada joylashgan. Keyin eshikni ichidagi servo yordamida seyfni qulflash uchun kadranni bosasiz. Keyin raqamni tanlash uchun terish tugmachasini aylantirish va har bir raqamni tasdiqlash uchun tugmani bosib kodni kiritish kerak. To'rtinchi raqam tanlanganidan so'ng, eshikdagi qizil va yashil LEDlar yordamida seyf sizning raqamlaringiz qanchalik to'g'ri ekanligini va ularning qanchasi to'g'ri joyda ekanligini ko'rsatadi.
Qizil LED to'g'ri raqamni, yashil LED esa uning to'g'ri joyda ekanligini ko'rsatadi. Shunday qilib, kodni buzish va seyfni ochish uchun siz to'rtta qizil va yashil LEDni yoqishingiz kerak.
Seyf kodni buzish uchun qancha taxmin qilganingizni kuzatib boradi va siz uni buzishga muvaffaq bo'lganingizda ko'rsatiladi. Avvaliga bu murakkab tuyulishi mumkin, lekin bu unchalik qiyin emas, siz avvalgi taxminlaringizni eslab qolishingiz kerak. Ko'pincha siz dastlabki taxminlaringiz qanchalik omadli ekanligiga qarab, kodni 5 dan 10 gacha taxmin qilish mumkin.
Agar sizga bu ko'rsatma yoqsa, iltimos, Arduino tanlovida unga ovoz bering.
Ta'minotlar
Kodni buzish xavfsiz qutisini yaratish uchun sizga kerak bo'ladi:
- Arduino Uno - Bu erda sotib oling
- I2C OLED displeyi - Bu yerdan sotib oling
- Tugma kodlagichi - bu yerdan sotib oling
- 4 x 5 mm qizil LED - bu erda sotib oling
- 4 x 5 mm yashil LED - bu erda sotib oling
- 8 x 220Ω rezistorlar - bu erda sotib oling
- Mikro Servo - Bu yerdan sotib oling
- Lenta kabeli - bu erda sotib oling
- Sarlavha chiziqlari - bu erda sotib oling
- Quvvat kaliti - bu erda sotib oling
- 3 mm MDF plitasi - bu erda sotib oling
Bundan tashqari, sizga ba'zi asosiy vositalar, yog'och elim, yopishtiruvchi qurol va lehim temir kerak bo'ladi.
Kassa qismlari lazer bilan kesilishi kerak. Agar sizda lazerni kesish imkoni bo'lmasa, onlayn lazerni kesish xizmatidan foydalaning, ular ancha arzonga tushdi va komponentlarni kesib sizning eshigingizga etkazib beradi.
Bu men ko'rsatma beradigan K40 lazerli kesgichda ishlatgan lazer kesgich
1 -qadam: qutini yig'ing
Men 3 mm MDFdan kesiladigan Inkscape -dagi xavfsiz qutini ishlab chiqdim. Agar xohlasangiz, uning qismlarini 3 mm akril yoki kontrplakdan kesib olishingiz mumkin. Agar siz boshqa qalinlikdagi materialdan foydalansangiz, qutining tarkibiy qismlaridagi teshiklarni bir -biriga to'g'ri joylashishi uchun sozlashingiz kerak bo'ladi.
Bu erda lazerni kesish fayllarini yuklab olishingiz mumkin.
Qutining tashqi qismini tashkil etuvchi 6 ta panel mavjud, orqa va old tomonida old va orqa eshiklar uchun kesmalar mavjud. Panellar bosma faylda etiketlangan bo'lib, ularni kuzatib borishingiz mumkin.
Dial, shuningdek, bir -biriga yopishtiriladigan ba'zi lazerli kesilgan qismlar yordamida tuziladi.
Kassaga o'xshab ko'rinishi uchun qutining yuqori va ikki tomoniga yopishtirilgan uchta dekorativ panel mavjud. Eshikni tashkil etuvchi ikkita panel va xavfsiz bo'linmani elektron qismdan ajratish uchun qutining o'rtasiga kiruvchi bo'luvchi panel ham mavjud.
Parchalar MDX 400 x 500 mm o'lchamdagi bitta bo'lakka to'g'ri keladi va agar siz lazerni kesuvchi bir vaqtning o'zida barcha qismlarni kesish uchun etarlicha katta bo'lmasa, uni kichikroq bo'laklarga bo'lish mumkin.
Men birinchi bo'lib dekorativ panellarni yuqori va yon tomonlarga yopishtirishni boshladim. Qaysi biri ekanligini bilish uchun bo'laklarni to'g'ri tartibda olganingizga ishonch hosil qiling. Uch xil bo'lak bor, yuqori va pastki bir xil, yonlari bir xil, old va orqa bir xil.
Panellar quriganidan so'ng, siz qutini yig'ishingiz mumkin.
Markaziy bo'linma uchun kesmalar yon tomonlarda joylashganligiga ishonch hosil qiling. Bu simlarni qutining old qismidan Arduino va batareya o'tirgan qutining orqa qismiga o'tkazish.
Menteşalar ham lazer bilan kesilgan va siz eshikni yopib qo'yganingizdan so'ng, joyiga yopishtirilgan. Ularning eshikka parallel ekanligiga ishonch hosil qiling, aks holda siz uni ochishda qiynalasiz. Eshikning ichki chetidan bir oz silliqlash kerak bo'lishi mumkin, shunda u o'tayotganda qutining chetiga ishqalanmaydi.
Orqa qopqoq uchun vintlarni teshish uchun to'rtta kvadratni orqa panel orqasidagi burchaklarga yopishtiring.
Keyin vintlar uchun teshiklarni burishingiz mumkin va ekranni, Arduino -ni, orqa qopqog'ini va nihoyat kodlovchi o'rnatishni boshlashingiz mumkin.
2 -qadam: Elektronikani ulang
Men sxemani "Tinkercad Circuits" dagi non panelida ishlab chiqdim va keyin OLED -displeyga qo'shdim.
Bizda 6 dan 13 gacha raqamli IO pinlariga ulangan 8 ta LED mavjud. Qulflash servo pin 5 ga ulangan, 2, 3 va 4 -pinlarga ulangan kodlovchi va OLED displeyi Arduino I2C interfeysiga ulangan.
Men har bir LED uchun 220 ohmli rezistorni ishlatdim, u to'g'ridan -to'g'ri manfiy chiroqqa lehimli edi va men simlarni toza saqlash uchun va har bir Arduino piniga qaysi simni o'tkazish kerakligini kuzatib borish uchun komponentlarni rangli lenta kabeli yordamida bog'ladim.
Men lenta kabellarini orqa bo'linmaga o'tkazdim va Arduino -ga ulash uchun tasma simi ustiga bir nechta pin sarlavhalarini lehimladim.
Men, shuningdek, orqa qopqoqqa quvvat tugmachasini o'rnatdim va o'yinni quvvatlantirish uchun qayta zaryadlanuvchi batareyaga ulash uchun uni batareykaga uladim. Agar xohlasangiz, 9V batareyadan ham foydalanishingiz mumkin.
Oxir -oqibat, qulflash servosini eshik chetiga qo'yishingiz kerak, shunda u qutidagi labdan o'tib ketadi va qo'l qutini qulflash uchun labning ichki qismiga ko'tariladi. Bu eng kuchli qulflash mexanizmi emas, lekin bu juda oddiy va o'yin maqsadiga mos keladi.
3 -qadam: Arduino dasturlash
Men kodni odatdagidek batafsil ko'rib chiqmoqchi emasman, chunki unda juda ko'p narsa bor. Men uning har bir qismini tushuntirib beradigan batafsil yozib oldim, siz bu havola orqali kodni yuklab olishingiz mumkin - Crack the Code Game Code.
Qisqa bayoni; yakunida; biz OLED displeyini va servo boshqaruvini kutubxonalarni import qilishdan boshlaymiz.
Keyin biz displey uchun parametrlarni o'rnatamiz va barcha o'zgaruvchilarimizni yaratamiz. Enkoderning aylanishini kuzatishga bag'ishlangan juda ko'p o'zgaruvchilar bor, chunki ular 2 va 3 -pinlarda ko'tarilgan qirrali uzilishlar orqali amalga oshiriladi.
Tasodifiy yaratilgan kodni saqlash uchun va foydalanuvchilarning taxminlarini saqlash uchun ikkita kod massivi yaratilgan.
O'rnatish funktsiyasida biz displeyni ishga tushiramiz, servo -ni biriktiramiz, IO -pin rejimlarini o'rnatamiz va keyin Crack The Code matnli animatsiyasini ko'rsatamiz.
Loop funktsiyalari LED -larni yonib o'chiradi va "o'yin xavfsiz" tugmachasini bosadi, keyin foydalanuvchi o'yinni boshlash uchun tugmani bosguncha kutiladi. Xuddi shu kod o'yin oxirida ishlaydi, u urinishlar sonini ko'rsatadi va yangi o'yinni boshlash uchun terish tugmachasini kutadi.
Enkoder tugmachasida bir nechta o'chirish kodi bor va bir marta bosilsa, servo seyfni qulflaydi va tasodifiy kod hosil bo'ladi. Keyin kod foydalanuvchidan o'z taxminlarini kiritishni so'rash funktsiyasini chaqiradi, keyin boshqasi taxminni tekshiradi, bu foydalanuvchi kodni to'g'ri taxmin qilmaguncha takrorlanadi.
Ko'rsatilgan kodni yangilash funktsiyasi mavjud, u har safar enkoder aylantirilganda chaqiriladi va ko'rsatilgan kod o'zgarishi kerak.
Yangi kodni yaratish funktsiyasi kodlar qatoridagi to'rtta elementning har biriga tasodifiy raqam beradi.
Kodni taxmin qilish funktsiyasi foydalanuvchiga kodlovchi yordamida raqamni tanlashga, so'ngra kodlovchi pastga bosish orqali har bir raqamli kirishni tasdiqlashga imkon beradi.
Tekshirish kodini taxmin qilish funktsiyasi taxmin qilingan kodni ko'rib chiqadi va qancha raqam to'g'ri va qancha joy to'g'ri ekanligini aniqlaydi.
LEDlarni yangilash funktsiyasi foydalanuvchilarning taxminlariga ko'ra, qizil va yashil LEDlarning to'g'ri sonini o'zgartiradi.
Ani ishga tushirish funktsiyasi ishga tushganda "Kodni buzish" yorlig'ini ko'rsatadi.
Nihoyat, ikkita uzilish funktsiyasi koderdan kirishni boshqaradi, bittasi soat yo'nalishi bo'yicha aylantirilganda raqamni yuqoriga, ikkinchisi esa soat sohasi farqli o'girilganda pastga.
4 -qadam: Kod o'yinini o'ynang
O'yinni qanday o'ynashni o'rganishning eng yaxshi usuli - boshida videoni ko'rish, o'yinning oxiriga yaqin ikkita misol bor.
Dastlab seyf qulfdan chiqariladi, bu uning ichiga biror narsa qo'yish imkonini beradi.
Keyin siz seyfni qulflash va yangi kodni yaratish uchun tugmani bosasiz.
Taxmin qilingan kod - bu raqamni ko'paytirish uchun terish va keyingi raqamga o'tish yoki to'rtta raqam tanlanganidan keyin kodni tasdiqlash uchun terish.
Old tomondan LEDlar yonib, bizga taxmin qilishda nima to'g'ri ekanligini aytib beradi.
To'g'ri kodni bilib olmaguningizcha va seyfni qayta ochmaguningizcha, bu fikr -mulohazadan keyingi taxmin qilish uchun foydalanasiz. To'g'ri kodni kiritganingizda, seyf qulfini ochadi va kodni sindirish uchun qilingan urinishlar soni ko'rsatiladi.
O'zingizning shaxsiy kod qutisini yaratishdan zavqlaning. Agar sizga bu ko'rsatma yoqqan bo'lsa, iltimos, Arduino tanlovida unga ovoz bering.
Arduino -2020 tanlovining ikkinchi mukofoti
Tavsiya:
Arduino jumboq qutisi: 7 qadam
Arduino jumboq qutisi: Ushbu loyiha uchun biz musiqa bilan ishlaydigan jumboq qutisini tayyorlamoqchimiz. Uning asosiy mohiyati shundaki, siz tugmani bosganingizda, u ohang chiqaradi va Arduino qaysi tugmalar bosilganligini hisoblab chiqadi, shunda u nima to'g'ri va nima ekanligini biladi
M5stack Esp32 asosidagi M5stick C Development Board bilan Flappy Bird o'yinini o'ynash: 5 qadam
Flappy Bird o'yinini M5stack Esp32 asosidagi M5stick C Development Board bilan o'ynash: Salom bolalar, bugun biz m5stack tomonidan taqdim etilgan m5stick c ishlab chiqarish kartasiga flappy qushlar o'yin kodini yuklashni o'rganamiz.Bu kichik loyiha uchun sizga ikkita narsa kerak bo'ladi: m5stick-c ishlab chiqish taxtasi: https://www.utsource.net/itm/p/8663561.h
Pandora - Mobil siqish qutisi LMS qutisi: 5 qadam (rasmlar bilan)
Pandora - Mobil Squeezebox LMS Box: u qayta ishlangan qismlarga to'la, juda baland va juda ko'p qirrali.+ Ajoyib ko'rinadi
Arduino bilan raqamli jumboq: 4 qadam (rasmlar bilan)
Arduino bilan raqamli jumboq: Salom do'stlar, bugun mana shu loyiha bilan bo'lishmoqchiman. Bu arduino bilan raqamli jumboq o'yini haqida, bu o'yin televizorda ko'rsatiladi va (4x4) klaviatura yordamida boshqariladi, bu erdagi videoni ko'ring
Barbi qutisi: Mp3 pleeringiz uchun kamuflyajli quti/ bum qutisi: 4 qadam (rasmlar bilan)
Barbie qutisi: Mp3 pleeringiz uchun kamuflyajli sumka/ bum qutisi: bu sizning mp3 pleeringiz uchun to'ldirilgan himoya sumkasi, u eshitish vositasi uyasini chorak dyuymga aylantiradi, bum qutisi vazifasini bajaradi va mp3 pleeringizni to'qsoninchi yillarning boshidagi lenta pleyeri yoki shunga o'xshash past o'g'irlik sifatida yashiradi