Mundarija:
- 1 -qadam: Uskuna qurilmalari uchun materiallarni yig'ish
- 2 -qadam: Rotary Enkoderni o'rnatish
- 3 -qadam: 7 segmentli ekranni aniqlash
- 4 -qadam: LEDni ulash
- 5 -qadam: Ariza berish vaqti
- 6 -qadam: HTML fayllari
- 7 -qadam: Dasturni ishga tushirish
- 8 -qadam: O'yin o'ynash
Video: IoT Code Breaker o'yin qurilmasi: 8 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
IoT yoki narsalar Interneti - bu informatika sohasida o'sib borayotgan sohadir. Quyidagi ko'rsatmalar IoT -ning qurilma qismini yaratishga imkon beradi. Qurilmaning o'zi kodni buzuvchi o'yinni o'ynash uchun ishlatilishi mumkin. Bitta o'yinchi brauzer oynasi yordamida kodni o'rnatishi, ikkinchi o'yinchi haqida ma'lumot berishni davom ettirishi va keyin ikkinchi o'yinchi apparat qurilmasi yordamida kodni kiritishga harakat qilishi mumkin. Agar ikkinchi o'yinchi to'g'ri bo'lsa, chiroq yonadi. Agar yo'q bo'lsa, o'yinni qayta o'ynash mumkin. Bu oddiy qurilma nafaqat qiziqarli, balki u Raspberry Pi va python flask dasturidan foydalangan holda asosiy apparat va ilovalar dizaynini o'rgatadi.
1 -qadam: Uskuna qurilmalari uchun materiallarni yig'ish
Birinchidan, quruvchi o'yinning apparat qismi uchun kerakli materiallarni to'plashi kerak bo'ladi. Materiallar quyida keltirilgan.
- 1 Raspberry Pi
- Raspberry Pi uchun SD karta
- 1 Kamalak simli lenta
- 1 Raspberry Pi -dan non taxtasi ulagichi
- 1 katta non paneli
- 1 kichik non paneli
- 1 aylanadigan kodlovchi
- 1 LED
- 1 7 segmentli LED displey
- 9 330 Ohmli rezistorlar
- Har xil oddiy simlar
2 -qadam: Rotary Enkoderni o'rnatish
Rotary Enkoderni o'rnatishni boshlash uchun biz katta non paneli, Raspberry Pi, kamalak simli ulagichi, Pi ulagichi, Rotary Enkoder va turli simlarni sotib olishni boshlaymiz. Bizga bu erda rezistor kerak emas, chunki Rotary Enkoderda rezistor o'rnatilgan. Biz kamalak lentasini Raspberry Pi va non paneli ulagichiga ulashdan boshlaymiz. Keyin ulagichni non paneliga ulaymiz. Kamalak lentasini joylashtirish va olib tashlashda ehtiyot bo'ling, chunki u Raspberry Pi ustidagi pinlarni egishi mumkin.
Endi biz non panelining quvvat va tuproqli liniyalarini ulagichning quvvat va tuproq pimlariga ulashimiz kerak. Buni qanday qilish kerakligi yuqoridagi ikkinchi fotosuratda ko'rsatilgan.
Rotary Enkoderni non paneliga qo'ying. Rotary Enkoderning pinlari taxtaning turli qatorlarida joylashganligiga ishonch hosil qiling. Kodlayıcıda jami beshta pin bor. Birinchidan, GND yoki topraklama bilan belgilangan pinni non panelidagi tuproq chizig'iga ulang. Bu ko'k chiziq bilan belgilangan bo'shliqlar ustuni. Keyinchalik, biz kodlovchini quvvatga ulashimiz kerak. Quvvat manbasiga + belgisini qo'ying. Rotary Encoder -dagi uchinchi pin SW deb belgilanadi. Agar kodlovchi boshi pastga bosilgan bo'lsa, bu pin o'qiladi. Biz bu pinni ulagichdagi GPIO16 deb belgilangan pinga ulaymiz. Enkoder registridagi oxirgi ikkita pin, hozirda enkoderning tugmasi qayerda o'rnatilganligini o'qiydi. DT bilan belgilangan pinni ulagichdagi GPIO18 pinli ulagichga va CLK bilan ulangan pinni GPIO17 ga ulang.
Endi, Rotary Encoder Raspberry Pi -ga ulangan.
3 -qadam: 7 segmentli ekranni aniqlash
Rotary Encoder o'rnatilgandan so'ng, biz 7 segmentli LED displeyni ulashimiz mumkin. Birinchidan, biz qo'shimcha kichik non paneli, shuningdek 7 -segmentning o'zi, sakkizta 330 Ohmli rezistor va turli simlarni sotib olishimiz kerak.
7 -segmentning to'g'ri simi bo'lishi juda muhim, chunki uning ichida aylanadigan kodlovchi singari rezistorlar yo'q. Etti segmentda jami o'n ikkita pin bor. Birdan oltigacha pinlar 7 segmentning yuqori qatorida joylashgan, chapdan o'ngga. Ettidan o'n ikkigacha pinlar pastki qatorda joylashgan va o'ngdan chapga yuguradi. Pastki qator - bu 7 segmentning har bir raqamining orqasida kichik nuqta bilan belgilangan 7 segmentining yon tomoni.
Biz 7 -segmentni kichik non taxtasiga joylashtiramiz va yuqoridagi jadvalda ko'rsatilgandek, har bir pinni sim bilan bog'laymiz. Agar rezistor kerak bo'lsa, rezistorni 7 segmentli pin va ulagich pimi orasiga joylashtiring. Bundan tashqari, qurilmani ishlatayotganda rezistorlarning hech biri bir -biriga tegmasligiga ishonch hosil qiling. Bu elektr oqimini buzishi mumkin.
4 -qadam: LEDni ulash
Qolgan uskuna hozirda o'rnatilgani uchun, biz LEDni o'rnatish bilan yakunlashimiz mumkin. Bu LED biz kiritgan kod to'g'ri bo'lganda bizga xabar beradi. Buning uchun bizga LED, 330 Ohm qarshilik va bir nechta simlar kerak bo'ladi.
LEDga ikkita pin o'rnatilgan. Bir tomoni boshqasidan bir oz uzunroq. Birinchidan, biz ikki tomonning uzunini kuchga ulashimiz kerak. Buning uchun biz GPIO26 -ni ulagichga ulash uchun uzunroq tomonni sim orqali bog'laymiz. Shu tarzda biz keyinchalik LEDni yoqish va o'chirishimiz mumkin. Keyin biz ikkala tomonning qisqa qismini erga ulashimiz mumkin. Biroq, biz LEDni yoqib yubormaslik uchun buni rezistor orqali qilishimiz kerak.
Bir marta, biz buni qildik, biz LED va umuman apparat bilan tugadik.
5 -qadam: Ariza berish vaqti
Ushbu qurilma uchun dastur yaratish uchun Python Flask -ga kirish kerak bo'ladi. Flask-bu brauzerga asoslangan oddiy ilovalarni yaratish uchun ishlatilishi mumkin bo'lgan veb-ishlab chiqish dasturi.
Dastlab Flaskni yuklab olish va qo'shimcha ma'lumot olish uchun quyidagi havolaga o'ting: FLASK MA'LUMOT
Bu qurilmaga xos bo'lgan ilovani yaratish uchun. Raspberry Pi -da papka yaratish bilan boshlang. Bu jild "iotapp" deb nomlanishi kerak. "Iotapp.py" faylini yuklab oling va ushbu jildga torting. Bundan tashqari, ushbu papkada "appFolder" deb nomlangan ikkinchi papkani yarating. "AppFolder" ichida "_init_.py", "form.py", "RE.py" va "route.py" fayllarini yuklab oling. Keyin "shablonlar" deb nomlangan boshqa papkani yarating. Bu yangi papka "appFolder" ichida ham bo'lishi kerak.
6 -qadam: HTML fayllari
Endi bizda "andozalar" jildini yaratganimizdan so'ng, biz dasturimiz uchun sahifalarni formatlaydigan HTML -fayllarni yaratishimiz mumkin. Ikki HTML faylini yarating: codeentered.html va setcode.html. Bu fayllarning kodi yuqoridagi rasmlarda ko'rsatilgan.
7 -qadam: Dasturni ishga tushirish
Dasturni ishga tushirish uchun terminal oynasini ochishdan boshlang. Keyin Raspberry Pi -ga SSH kiriting. "Iotapp" papkasiga o'ting va buyruq satridan quyidagi buyruqlarni kiriting:
$ export FLASK_APP = iotapp.py
$ python -m flask run --host 0.0.0.0
Agar dastur to'g'ri ishlayotgan bo'lsa, terminaldagi buyruq satri quyidagicha o'qilishi kerak:
* "Iotapp" Flask ilovasiga xizmat ko'rsatish
* Http://0.0.0.0:5000/ da ishlaydi (chiqish uchun CTRL+C tugmalarini bosing)
Ilovaga kirish uchun siz Raspberry Pi -ning IP -manzilini va ": 5000/setcode" ni kiritib, dastur saytiga tashrif buyurishingiz kerak. Masalan:
Endi qurilma butunlay ishga tushdi. Kod o'yinini o'ynash mumkin.
Qurilmani to'xtatish uchun terminal oynasida CTRL+C tugmalarini bosing va Pi -ni o'chiring.
8 -qadam: O'yin o'ynash
Quyida ishlaydigan qurilmaning videosi keltirilgan.
Tavsiya:
Arduino asosidagi DIY o'yin boshqaruvchisi - Arduino PS2 o'yin boshqaruvchisi - DIY Arduino Gamepad bilan Tekken o'ynash: 7 qadam
Arduino asosidagi DIY o'yin boshqaruvchisi | Arduino PS2 o'yin boshqaruvchisi | DIY Arduino Gamepad bilan Tekken o'ynash: Salom bolalar, o'yin o'ynash har doim qiziqarli, lekin o'zingizning shaxsiy o'yiningiz bilan o'ynash yanada qiziqarli, shuning uchun biz ushbu qo'llanmada arduino pro micro yordamida o'yin boshqaruvchisi qilamiz
Raspberry Pi mobil o'yin qurilmasi: 11 qadam
Raspberry Pi mobil o'yin qurilmasi: Siz hech qachon yo'lda klassik video o'yinlarni o'ynashni xohlaganmisiz, lekin eski o'yinlarni boshqaradigan qurilmani qayerdan olishni bilmadingizmi yoki ular juda qimmatmi? Keyin o'zingiz tayyorlang! Bu mening Raspberry P -ning binosi haqidagi hujjat
"Rangli o'yin" (Refleksli o'yin): 4 qadam
"Rangli o'yin" (Refleksli o'yin): Kirish: Maktab loyihasi uchun men nima qilishni bilmay qoldim, lekin o'ylab ko'rganimdan so'ng, men refleksli o'yin qilishga qaror qildim. Oxir oqibat, biz o'yin maktabimiz. Biz interaktiv va o'ziga xos narsalarni yaratishimiz kerak edi, shuning uchun o'yin juda zo'r bo'lardi! Men hamma narsadan xursandman
O'yin bosimiga sezgir prokladkalar (raqamli o'yin maydonchalari uchun - va boshqalar): 11 qadam (rasmlar bilan)
O'yin bosimiga sezgir prokladkalar (raqamli o'yin maydonchalari uchun - va boshqalar): Bu sizga raqamli o'yinchoqlar yoki o'yinlar yaratish uchun ishlatilishi mumkin bo'lgan bosim sezgir yostiq yasashni ko'rsatadigan ko'rsatma. U katta kuchga sezgir rezistor sifatida ishlatilishi mumkin va o'ynoqi bo'lsa ham, undan jiddiy loyihalarda foydalanish mumkin edi
TinyPi - dunyodagi eng kichik Raspberry Pi asosidagi o'yin qurilmasi: 8 qadam (rasmlar bilan)
TinyPi - Dunyodagi eng kichik Raspberry Pi asosidagi o'yin qurilmasi: Shunday qilib, men bir muncha vaqtdan beri Raspberry Pi uchun maxsus PCB ishlab chiqarish bilan o'ynadim va hazil sifatida boshlangan narsa, men qanchalik kichkina bo'lishimni ko'rish qiyin bo'lib qoldi. , u Raspberry Pi Zero -ga asoslangan va deyarli sig'imga mos keladi