Mundarija:
- 1 -qadam: talablar
- 2 -qadam: Twister Mat
- 3 -qadam: Uy -joy
- 4 -qadam: elektronika
- 5 -qadam: Raspberry PI ni sozlash
- 6 -qadam: ma'lumotlar bazasi
- 7 -qadam: kod
- 8 -qadam: Avtomatlashtirilgan xizmat
- 9 -qadam: Ko'rsatmalar
Video: Interaktiv Twister: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Twister - bu klassik oilaviy o'yin va ishonchim komilki, bu ko'rsatmalarni o'qiganlar hech bo'lmaganda bir marta o'ynagan. O'yinning asosiy maqsadi - tuval ustida turgan oxirgi odam va aylanma g'ildirak tanlagan vazifalarni bajarayotganda yiqilib tushmasligingizga ishonch hosil qilish.
Muammo Twisterning har bir o'yinida, har doim g'ildirakni aylantiradigan odam bo'lishi kerak. Agar bularning barchasi avtomatik tarzda ro'y bersa, ancha oson bo'larmidi? Shunday qilib, har kim Twister o'yinini o'ynab dam olishi mumkin.
Men Howest Kortrijkdagi NMCT talabasiman. Bu bizning birinchi yilimizdagi yakuniy loyihadir.
Bu yo'riqnomada men Twister -ning interaktiv o'yinini qanday yaratganimni va uni uyda qanday qurish mumkinligini tushuntiraman.
1 -qadam: talablar
- Raspberry Pi
- T-tikuvchi
- Twister o'yini
- Bosqichli motor
- DRV8825
- LDR
- Kondensatorlar (100 mF va 10 mF)
- Turli xil rangdagi kabellar
- Alyuminiy folga
- Ductape
- Elektr tasmasi
- Ikki tomonlama lenta
- Velcro
- Yog'och taxtalar
- Breadbord
- Kengash paneli (ixtiyoriy)
- Ayol sarlavhalari (ixtiyoriy)
- Raspberry Pi uchun 5V adapter
- 12V kuchlanishli adapter
- 2 x MCP23017
2 -qadam: Twister Mat
Talablar:
- Ko'pikli rulon
- Twister mat
- Ductape
- Alyuminiy folga
- kabellar
- marker
Ko'rsatmalar:
Gilam yasash - bu butun loyihaning eng katta ishi. O'rnatish qiyin emas, lekin hamma narsani 24 marta takrorlash kerak. Bu ko'p kanalli kanalni ham o'z ichiga oladi … va men juda ko'p narsani nazarda tutyapman.
Boshlash uchun siz Twister gilamchasi bilan bir xil bo'lgan 2 dona ko'pikni kesib olishingiz kerak. Men parket tagiga yotqizish uchun ko'pik ishlatardim. Muammo shundaki, ko'pik juda nozik. Agar siz kamida 2 mm bo'lgan ko'pikni topsangiz, bu juda yaxshi bo'lardi va sizda tuval yasash uchun kamroq ish bo'ladi, lekin men keyinroq bunga qaytaman.
Ko'pikning birinchi qatlamiga ko'pikning butun qismiga to'rtta alyumin folga qo'yishingiz kerak. Ular zanjir uchun asos sifatida ishlatiladi. Uni biriktirishning eng yaxshi usuli - kanallarni yon tomonlariga yopishtirish.
Keyingi ko'pik qatlamini Twister matining ustiga qo'ying. Twister gilamchasidagi har bir nuqta uchun aylana chizish. har bir doira ichida ko'pik ustidagi teshikni kesish kerak. Teshikning diametri unchalik muhim emas, uning katta yoki kichik emasligiga ishonch hosil qiling.
Har bir teshik alyumin folga bilan qoplangan bo'lishi kerak. Yana uni biriktirishning eng yaxshi usuli - bu ductape. Nosozliklarni oldini olish uchun hech qanday yamaqlar ishlamasligiga ishonch hosil qiling.
Bu kerak emas, lekin agar ishlatilgan ko'pik 2 mm dan kam bo'lsa, folga yopishmasligi uchun har bir teshikka qandaydir balandlik qo'yish kerak. Men komponentlarimning qadoqlanishi bilan kelgan kichik ko'pikli yong'oqlardan foydalandim.
Oxirgi qadam - kabel yotqizish. Har bir patch uchun 1 ta kabel kerak. Erdagi yamaqlar bir -biriga, keyin esa Raspberry pi bilan ulanishi mumkin.
3 -qadam: Uy -joy
Talablar
- yog'och taxtalar
- mixlar
- burg'ulash
- velcro
Ko'rsatmalar:
o'lchamlari: 32 sm x 30 sm x 8 sm
Uy-joy-bu oddiy quti dizayni. Sizga kerak bo'lgan taxtalarni yuqoridagi rasmlardan birida ko'rishingiz mumkin. Yog'och mening uyimdagi omborxonada arralandi. Men unchalik qulay emasman va ular arzon narxda yog'ochni ko'rishdi va siz uning o'lchamlari to'g'ri bo'lishini allaqachon bilgansiz.
Qutini yig'ish uchun men pastki qismidagi vintlarni burg'uladim. Vintlarning uzunligi unchalik muhim emas. Faqat ular er plastinkasining balandligidan uzunroq va yog'ochni sindirishlari uchun juda uzun emasligiga ishonch hosil qiling.
Qopqoqning o'rtasida siz dvigatelga mos keladigan kichik teshikni burishingiz kerak. Bu teshik 5 mm diametrli bo'lishi kerak.
Qopqoq qutiga velkro yordamida biriktirilgan.
Siz qilishingiz kerak bo'lgan oxirgi narsa - Twister matining kabellari uchun old tomondan teshik va ikkita adapter uchun orqa tomondan teshik qilish. Teshiklarning diametri siz foydalanadigan adapterlarga va to'shak kabellarini qanday boshqarishingizga bog'liq. Men matli kabellar uchun to'rtburchaklar teshikni kesib oldim, chunki menda etarlicha katta matkap yo'q edi.
4 -qadam: elektronika
Talablar:
- DRV8825
- Bosqichli motor
- 2 x mcp23017
- LDR
- 100 mFF elektrolitik kondansatör
- 10 mF elektrolitik kondansatör
- T-poshnali Raspberry Pi
- 24 x 330 ohmli qarshilik
Ko'rsatmalar:
Barcha elektronikani ishlab chiqarishning eng tezkor usuli - uni non paneliga qo'yish. Muammo shundaki, hech narsa tuzatilmagan va ba'zi komponentlar bo'shashishi mumkin. Eng yaxshi usul - hamma narsani kompyuterda lehimlash. Men step motorli haydovchi va sensorni lehimladim. Men ikkita IO kengaytirgichni non panelida qoldirdim, chunki ko'plab kabellar MCP23017 ga o'tadi. Buni qanday qilish sizga to'liq bog'liq.
Kabelga oid ba'zi bir nishonlar:
Bosqichli dvigatelda ikkita g'altak jufti bor. Mening motorimdagi juftlarning simlari:
qora, yashil -> juftlik 1
qizil, ko'k -> juftlik 2
Twister matidan kirishlar to'g'ri tartibda ulanganligiga ishonch hosil qiling. Birinchi nuqta birinchi MCP23017 GPA0 ga ulangan. Oxirgi nuqta ikkinchi MCP23017 GPA7 ga ulangan. Har bir kirish oxirida qarshilik borligiga ishonch hosil qiling.
5 -qadam: Raspberry PI ni sozlash
Talablar:
- Malinali PI
- SD-karta
- Ethernet kabeli
Ko'rsatmalar:
Raspian tasvirini https://www.raspberrypi.org/downloads/raspbian/ saytidan yuklab oling. Ish stoli versiyasini yuklab olganingizga ishonch hosil qiling. SD-kartadagi tasvirni yozish dasturi yordamida yozib oling. Men etcher -dan foydalandim, lekin boshqa dasturni ishlatishdan xavotir olmang. SD-kartani Pi-ga joylashtirishdan oldin, siz kompyuter bilan ba'zi narsalarni o'zgartirishingiz kerak. SD-kartaning yuklash segmentini oching. Siz boshqa segmentni ocholmaysiz, chunki Windows Linuxni tanimaydi. Yuklashda faylni oching: "cmdline.txt". Fayl oxirida "ip = 169.2554.10.1" qatorini qo'shing. Bu APIPA manzili va kompyuter va Pi ni ssh orqali ulash uchun ishlatiladi. Bu bajarilgandan so'ng, yuklash segmentida "ssh" deb nomlangan, lekin kengaytmasi bo'lmagan fayl yarating. Shunday qilib, Pi yuklashda ssh -ni yoqadi.
Ethernet kabeli bilan Pi -ni kompyuteringizga ulang. Siz ssh -ga Pi dasturini yuklab olishingiz kerak bo'ladi. Men macun ishlatardim. Mastikani oching va APIPA manzilini (169.254.10.1) to'ldiring va ulanishni oching. PI birinchi marta ishga tushganda, hamma narsa tayyor bo'lgunga qadar biroz vaqt ketishi mumkin. Bir oz kutib turing va agar ulanolmasangiz, qaytadan urinib ko'ring. Ulanishdan so'ng, standart hisob ma'lumotlari bilan kiring: foydalanuvchi nomi: pi, parol: malina.
Agar xohlasangiz, o'zingizdan foydalanuvchi yaratishingiz mumkin. Endi siz Internetga ulanishni sozlashingiz kerak. Agar siz wifi -dan foydalanmoqchi bo'lsangiz, quyidagi ikkita buyruqdan foydalanishingiz mumkin:
wpa_passphrase 'SSID' 'Parol' | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf
wpa_cli -i wlan0 qayta sozlang
Ushbu dasturlarni quyidagi buyruqlar yordamida o'rnating:
sudo apt update && sudo apt install -y python3 -venv
python3 -m pip o'rnatish -pip setuptools g'ildiragini yangilash python3 -m venv --system -site -packages env
python -m pip mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib flask-socketio ni o'rnatadi
6 -qadam: ma'lumotlar bazasi
Talablar:
- Raspberry Pi
- Ethernet kabeli
Ilova foydalanuvchilar, g'oliblar va o'yin haqidagi ma'lumotlarni saqlash uchun ma'lumotlar bazasidan foydalanadi.
Avval Raspberry Pi -da db dasturini o'rnating. Siz oldingi qadamda Mysql -ni Pi -ga o'rnatgansiz.
Mysql ishlayotganini tekshirish uchun "sudo systemctl status mysql" dan foydalaning.
Mysql -ni ishga tushiring:
sudo mariadb
Keyin quyidagi kodni kiriting:
CREATE USER 'project_name-admin'@'localhost' IDENTIFIED 'adminpassword';
Ma'lumotlar bazasini yaratish project_name;
Project_name.* Ga "PROJET1-admin"@"localhost" ga GRANT OPSIYASI BILAN HAMMA imtiyozlarni berish;
YUQARISH IMKONIYATLARI;
Loyihaning nomini xohlaganingizcha o'zgartiring.
Ma'lumotlar bazasini to'ldirish uchun, keyinchalik ko'rsatma berilgan kod bilan berilgan sql faylini ishga tushiring.
7 -qadam: kod
Kodni quyidagi havolada topishingiz mumkin:
Raspberry Pi -ga omborni klonlang.
Foydalanuvchi ostida to'g'ridan -to'g'ri katalogda klonlanganligiga ishonch hosil qiling.
8 -qadam: Avtomatlashtirilgan xizmat
Raspberry Pi ochilganda dastur ishga tushishi kerak. Buni amalga oshirish uchun siz ilovaga xizmat ko'rsatishingiz kerak.
Konfiguratsiya allaqachon tuzilgan va conf katalogida joylashgan.
Xizmatni yuklashni boshlash uchun qilishingiz kerak bo'lgan yagona narsa bu kod satri:
sudo systemctl project1.service -ni yoqing
Bitta muammo shundaki, pi tarmoq yuklanishini kutadi. Siz buni o'chirib qo'yishingiz mumkin, lekin hech qanday ta'siri yo'q, chunki biz cmdline.txt -da APIPA manzilidan foydalanamiz. Agar siz uning tezroq yuklanishini xohlasangiz, siz APIPA manzilini olib tashlashingiz kerak, lekin muammo bo'lsa, Wi -Fi tarmog'iga ulana olmasangiz, Pi -ni monitorga ulashingiz kerak bo'ladi.
9 -qadam: Ko'rsatmalar
Brauzeringizda th Pi-ning IP-manzilini kiriting. IP-manzilga: 5000 qo'shishni unutmang.
Saytga kelganingizda, yangi o'yinni boshlang va o'yinchi nomlarini to'ldiring.
O'yin boshlangandan so'ng, ikkita qurilma ulanmaguncha 5 soniya kutish kerak.
Ko'rsatkichning aylanishiga ruxsat berish uchun yorug'lik sensorini yoping. Ko'rsatkich aylanishni to'xtatgandan so'ng, harakat ekranda paydo bo'ladi.
Agar kimdir yiqilsa yoki o'z vazifasini bajara olmasa, u yutqazadi va siz uning nomini ekranda surishingizga to'g'ri keladi.
Oxirida turgan oxirgi o'yinchi g'alaba qozonadi.
Tarix jadvalida o'tmishda g'olib bo'lganlarning barchasini ko'rishingiz mumkin.
Maza qiling!
Tavsiya:
BBC Micro: bit and Scratch - Rulda va haydashning interaktiv o'yini: 5 qadam (rasmlar bilan)
BBC Micro: bit and Scratch - Rulda va haydashning interaktiv o'yini: Bu hafta mening dars vazifalarimdan biri - biz yozgan Scratch dasturi bilan bog'lanish uchun BBC Micro: bitdan foydalanish. Men bu ThreadBoard -dan o'rnatilgan tizimni yaratish uchun ajoyib imkoniyat deb o'yladim! Tirilish uchun ilhomim p
Diskordda interaktiv botni qanday qo'shish mumkin: 6 qadam
Discord -ga interaktiv botni qanday qo'shish kerak: Men bu darslikda bir nechta komando bilan ishlaydigan interaktiv botni qanday qilishni ko'rsataman. Discord-bu Skype/Whats-app ijtimoiy media ilovasi bo'lib, u geymerlarni birlashtiradi. Ularning shaxsiy kanali bo'lishi mumkin, har bir a'zoning qaysi o'yinini tekshiring
Arduino interaktiv LED kofe stoli: 6 qadam (rasmlar bilan)
Arduino interaktiv LED kofe stol: Men interaktiv kofe stolini yasadim, u ob'ekt ostidagi chiroqlarni yondiradi, ob'ekt stol ustiga qo'yilganda. Faqat shu ob'ekt ostidagi LEDlar yonadi. U buni yaqinlik sensorlaridan samarali foydalangan holda amalga oshiradi va yaqinlashganda
Zinapoyalar uchun interaktiv LED tizimini yarating: 7 qadam
Zinapoyalar uchun interaktiv LED tizimini yarating: uyda zinapoya bor. Jamiyatda zinapoyalarni ta'mirlash bo'yicha ko'plab loyihalarni ko'rish juda qiziq. Yaqinda juda band emasman, shuning uchun men uydagi zinapoyalarni o'zgartirish va o'zaro ta'sir o'tkazish uchun ochiq manba kodli apparat modullaridan foydalanishga qaror qildim
Avtomatik Twister Spinner: 7 qadam (rasmlar bilan)
Avtomatik Twister Spinner: Siz hech qachon " Twister " nomli super o'yin o'ynaganmisiz? Bu jismoniy mahorat o'yini bo'lib, u jamoadoshlaringiz bilan munosabatingizni yaxshilaydi. O'yin g'olibi bo'lish uchun omon qolish uchun qo'lidan kelganicha harakat qilyapmiz, shu bilan birga qiyin ko'rsatmaga amal qilamiz