Mundarija:

IoT Code Breaker o'yin qurilmasi: 8 qadam
IoT Code Breaker o'yin qurilmasi: 8 qadam

Video: IoT Code Breaker o'yin qurilmasi: 8 qadam

Video: IoT Code Breaker o'yin qurilmasi: 8 qadam
Video: Normal people vs programmer vs hackers compression #coding 2024, Noyabr
Anonim
IoT kodni buzuvchi o'yin qurilmasi
IoT kodni buzuvchi o'yin qurilmasi

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

Uskuna qurilmalari uchun materiallarni yig'ish
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'rnatish
Rotary enkoderni o'rnatish
Rotary enkoderni o'rnatish
Rotary enkoderni o'rnatish
Rotary enkoderni o'rnatish
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

7 segmentli ekranni aniqlash
7 segmentli ekranni aniqlash
7 segmentli ekranni aniqlash
7 segmentli ekranni aniqlash
7 segmentli ekranni aniqlash
7 segmentli ekranni aniqlash
7 segmentli ekranni aniqlash
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

LEDni ulash
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

HTML fayllar
HTML fayllar
HTML fayllar
HTML fayllar

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

Ilovani ishga tushirish
Ilovani ishga tushirish
Ilovani ishga tushirish
Ilovani 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: