Mundarija:

Hands-free tokenlari: 15 qadam (rasmlar bilan)
Hands-free tokenlari: 15 qadam (rasmlar bilan)

Video: Hands-free tokenlari: 15 qadam (rasmlar bilan)

Video: Hands-free tokenlari: 15 qadam (rasmlar bilan)
Video: Pubgchila bormi? #appleuzb #pubg #shorts 2024, Noyabr
Anonim
Qo'llarsiz tokenlar
Qo'llarsiz tokenlar

Hey Geeks, Endi men +2 da o'qiyapman, bu 12 -sinfga teng. Men informatika faniga juda qiziqaman, shuningdek, mening asosiy mavzuim shu. Men ko'p vaqtimni ko'milgan loyihalarni ishlab chiqishga sarfladim. O'rnatilgan sohada taxminan 3 yillik tajribaga egaman. Men har doim innovatsion va xilma -xil echimlarga e'tibor qarataman. Bu loyihani amalga oshirishda ota -onam katta yordam berishdi.

Tanlovning asosiy mavzusi-qo'llarsiz echimlar yaratish.

Bu erda men QMN (navbatni boshqarish tuguni) deb nomlangan qurilma yaratmoqdaman, u virtual tokenni yaratadi va shu bilan virtual navbatni saqlay oladi.

Muayyan navbatda, biz hisoblagichdan sizga jismoniy xavf tug'diradigan jismoniy tokenlarni olishimiz kerak. Shunday qilib, ushbu virtual tokenlardan foydalanib, siz bu xavfdan qochishingiz mumkin. Siz aslida smartfoningizda virtual tokenlarni olasiz. Token butunlay qo'llarsiz.

Bu Arduino MKR WiFI 1010 bilan ishlaydigan oddiy foydalanuvchilar uchun qulay virtual navbatchi.

1 -qadam: Demo video

Image
Image

Bu haqda bilish uchun demo videoni tomosha qiling.

2 -qadam: Bizga kerak bo'lgan narsalar

Uskuna komponentlari

  • Arduino MKR WiFi 1010 x 1
  • Bosish tugmasi moduli x 1
  • TM1637 4 bitli raqamli quvurli LED displey moduli x 1
  • Jumperlar x 1

Dasturiy komponentlar

  • Arduino IDE
  • Twilio SMS API
  • ThingSpeak API

Asboblar

  • Tel -stripper va kesuvchi x 1
  • Lehimlash temir x 1
  • Lehim x 1

3 -qadam: Bu qanday ishlaydi?

Foydalanuvchi interfeysi
Foydalanuvchi interfeysi

Navbatni boshqarish tuguni (QMN) - bu aqlli tokenlarni yaratuvchi qurilma. Aqlli tokenlarni yaratish uchun odam Arduino MKR 1010 wifi diapazonida bo'lishi kerak. Jarayonni bajarish uchun odamga smartfon ham kerak. Ish jarayoni quyidagicha davom etadi …

  • Wi-Fi ulanish nuqtasi Arduino MKR 1010 tomonidan yaratiladi.
  • Belgini xohlagan odam telefonni kirish nuqtasiga ulashi kerak va u mahalliy uy egasiga yo'naltiriladi.
  • Bu sahifada odam telefon raqamini kiritishi kerak. Bir zumda, tasdiqlash uchun OTP tegishli raqamga yuboriladi. Telefon raqami xabar berish uchun ataylab olingan.
  • Telefon raqamini tekshirgandan so'ng, token localhost -da ko'rsatiladi.
  • Qachonki uning navbatiga kelsa, qurilma (QMN) o'z navbatini olish uchun manfaatdor shaxsga xabar yuboradi.

Bu qurilma aslida odamlardan so'rov qabul qilib, ularga aqlli tokenlarni beradi. Xabarni yuborish uchun biz QMN qurilmasida Twilio SMS API ishlatamiz. Turn haqida bildirishnomani QMN tugmachasini bosib yuborish mumkin.

Barcha tokenlar chaqirilganda, siz Arduino MKR WiFi 1010 -ni tiklash tugmachasini bosib xotirani tozalashingiz mumkin.

4 -qadam: foydalanuvchi interfeysi

Foydalanuvchi interfeysi
Foydalanuvchi interfeysi
Foydalanuvchi interfeysi
Foydalanuvchi interfeysi

*) Kirish nuqtasiga ulanganingizda, siz birinchisiga o'xshab sahifaga yo'naltirilasiz.

*) Telefon raqamini yuborganingizdan so'ng, siz ushbu raqamga OTP olasiz. Keyin sizning OTP raqamingizni kiritish uchun OTP sahifasi ko'rsatiladi.

*) To'g'ri OTP yuborganingizda, siz ushbu token sahifasida tokenni olasiz.

*) Agar siz noto'g'ri OTP kiritgan bo'lsangiz, u noto'g'ri OTP ko'rsatiladi.

*) Agar sizning raqamingiz tokenni olgan bo'lsa, u sizga allaqachon ro'yxatdan o'tganligingizni bildiradi.

Hammasi foydalanuvchi interfeysi haqida.

HTML haqida ko'p narsa bilmayman. Otam CSS -dan foydalanib, bu sahifalarni yanada jozibali qildi.

5 -qadam: Ishlar va afzalliklardan foydalaning

U kasalxonalar, do'konlar va mehmonxonalar kabi hamma joyda ishlatilishi mumkin.

Afzalliklar

  • Token olish uchun Internetga ulanish shart emas
  • Oddiy foydalanuvchilar uchun qulay veb-interfeys.
  • Navbat kelganda, mahalliy qurilma xabarnomasi.
  • Jismoniy belgilar yo'q.
  • Amalga oshirish oson.
  • Keraksiz kutish vaqti yo'q, navbat kelganda ko'rsating.

6 -qadam: Arduino MKR WiFi 1010

Arduino MKR WiFi 1010
Arduino MKR WiFi 1010
Arduino MKR WiFi 1010
Arduino MKR WiFi 1010

Qurilmaning miyasi-Arduino MKR WiFi 1010. IoT va piko-tarmoq dasturlarining asosiy dizayniga kirishning eng oson nuqtasi. Kengashning asosiy protsessori Arduino MKR oilasidagi boshqa platalarda bo'lgani kabi kam quvvatli Arm® Cortex®-M0 32-bitli SAMD21. WiFi va Bluetooth® ulanishi u-blox, NINA-W10 moduli yordamida amalga oshiriladi.

Bu qurilma Arduino MKR WiFi 1010 WiFi ulanishiga to'liq tayanadi. Qurilma Wi -Fi modulining AP (Acces Point) va STA (Station) rejimidan foydalanadi. Qurilma to'g'ri ishlashi uchun qurilma ushbu rejimlar o'rtasida aqlli ravishda almashadi.

7 -qadam: Arduino IDE

Arduino IDE
Arduino IDE

Arduino IDE bu erda Arduino MKR WiFI 1010 dasturlash uchun ishlatiladi. Qurilmani ishga tushirish uchun bu erga qarang. Arduino MKR wifi 1010 -ni dasturlash uchun eng yangi Arduino IDE -dan foydalaning. Dasturga o'tishdan oldin, qurilma uchun dasturiy ta'minotning so'nggi yangilanishi bor -yo'qligini tekshirib ko'ring. Iltimos, bu erda dasturiy ta'minotni qanday yangilashni bilib oling.

8 -qadam: asirlik portali

Biz aslida Arduino MKR WiFI 1010 kirish nuqtasini (AP) yaratmoqdamiz, har qanday qurilma (mobil) ushbu APga ulanishi mumkin. Ilgari veb -interfeysga kirish uchun brauzerda IP -manzil yoki xost nomini kiritish kerak. Bu deyarli hech narsa emas, lekin foydalanuvchi brauzerga IP yoki xost nomini qo'lda kiritishi kerak. Bu haqiqatan ham g'alati narsa. Ammo bu holda, QMN -ga ulangan qurilma avtomatik ravishda Captive Portal orqali veb -interfeysga yo'naltiriladi. Bu erda Captive Portal foydalanuvchining harakatini kamaytirishda katta rol o'ynaydi. Espressif qurilmalari bilan Captive Portal loyihalari juda ko'p, afsuski, NINA kutubxonasi yo'q. Chunki MKR WiFi 1010 NINA kutubxonasidan foydalanadi. Oxir -oqibat, men Arduino markazida JayV tomonidan Captive Portal -ni asosiy narsalar sifatida ishlatadigan loyihani topdim, keyin men loyihani asosiy kod sifatida qabul qilishdan boshladim. Bu deyarli yaxshi ishlamoqda.

Biz nima qilyapmiz, biz DNS -ni o'rnatamiz va kirish nuqtasi (AP) - IP -manzilga egamiz va UDP port 53 orqali birinchi (16) DNS so'rovlarini tekshiramiz. Birinchi 16 ta so'rovni tekshirgandan so'ng, biz DNS so'rovlariga javob yuboramiz. kirish nuqtasining qayta yo'naltirilgan IP -manzili bilan. Keyin telefon avtomatik ravishda veb -brauzerlar orqali veb -interfeysini yuklaydi. Oxirgi effekt, ko'rsatilgan APga ulangan qurilma, telefon avtomatik ravishda veb -interfeysini yuklaganida shunday bo'ladi. UDP serveri va veb -server bir vaqtning o'zida ishlaydi. Veb -server - bu telefon raqamini kiritish uchun ariza tugmachasi bo'lgan oddiy asosiy sahifadir.

9 -qadam: Twilio va narsalar gapiradi

Twilio va narsalar gapiradi
Twilio va narsalar gapiradi
Twilio va narsalar gapiradi
Twilio va narsalar gapiradi

Afsuski, menda xabarlarni yuboradigan GSM moduli yo'q. OTP va qurilma xabarnomasini yuborish uchun biz har qanday SMS API -dan foydalanishimiz kerak. Shunday qilib, ushbu loyihada men vazifani bajarish uchun Twilio SMS API -dan foydalandim. Ma'lumki, API ishlashi uchun biz server uchun HTTP so'rovini berishimiz kerak. Avval Twilio -ga shifrlanmagan oddiy HTTP so'rovini berdim, lekin Twilio mening talabimni inobatga olmadi. Xavfsizlikni ta'minlash uchun ularga SSL barmoq izlari kerak. Men NINA kutubxonalarida SSL -ni qo'llab -quvvatlaydigan hech qanday funktsiyani ko'rmadim. Twilio -ni ishga tushirish uchun Thingsspeak -dan foydalandim. Ushbu xizmatlardan foydalanish uchun siz ikkala platformada ham ro'yxatdan o'tishingiz kerak.

Twilio -da yangi raqam yarating va bu siz yuborgan raqam bo'ladi. Siz Twilio -da xabar almashish uchun bepul kredit olasiz. Sinov hisobi uchun siz ma'lumotlarni yubormoqchi bo'lgan raqamlarni tasdiqlashingiz kerak.

Thingspeak.com saytiga o'ting, ilovalarni, so'ng ThingHTTP -ni, so'ngra Yangi ThingHTTP -ni bosing. Bu sizni sozlash sahifasiga olib boradi. Twilio hisob qaydnomangiz sahifasida Twilio hisob qaydnomangiz identifikatori va avtorizatsiya tokenini topishingiz kerak bo'ladi.

  • Twilio SMS yuborish nomini bering
  • URL-https://api.twilio.com/2010-04-01/Accounts/SIZNING TWILIO HISOB SID/SMS/XABARLAR
  • HTTP autentifikatsiya foydalanuvchi nomi - TWILIO HISOB SIDINGIZ
  • HTTP Auth Parol - bu sizning TWILIO AUTH TOKEN
  • Usulni POST ga o'rnating
  • Kontent turi-application/x-www-form-urlencoded
  • Sarlavhalarni olib tashlash -ni bosing va xostni bo'sh qoldiring
  • Tanasi = From = SIZNING TWILIO NUMBER & To = %% number %% & Body = %% xabar %%

ThingHTTP -ni saqlash -ni bosing. ThingHTTp API kaliti Arduino Sketch -ga kiritilishi kerak.

10 -qadam: AP yoki STA rejimi

Nina moduliga ega bo'lgan barcha Arduino platalari bir vaqtning o'zida bitta vazifani bajaradi, ya'ni bekat yoki kirish nuqtasi rejimi. Ishni bajarish uchun biz doimo ushbu rejimlar o'rtasida almashishimiz kerak. Birinchidan, QMN raqamni olgandan keyin AP rejimida bo'ladi, u OTP yuborish uchun STA rejimiga o'tadi. OTP yuborilgandan so'ng, QMN qayta AP rejimiga o'tadi. Agar biror kishi tugmani bosgan bo'lsa, QMN SMS xabar berish uchun STA rejimiga o'tadi. Shundan so'ng, u AP rejimiga qaytadi. Internetga ulanish uchun biz QMNni STA rejimiga o'tkazamiz. SMS API Internetga ulanishni talab qiladi.

11 -qadam: TM1637 4 bitli raqamli quvurli LED displey va bosish tugmasi

TM1637 4 bitli raqamli quvurli LED displey va tugma
TM1637 4 bitli raqamli quvurli LED displey va tugma
TM1637 4 bitli raqamli quvurli LED displey va tugma
TM1637 4 bitli raqamli quvurli LED displey va tugma

TM1637 4 bitli raqamli naychali LED displeyli modul - bu sizning o'rnatilgan loyihangizning chiqish ma'lumotlarini ko'rsatish uchun arzon echim. Ko'rsatilgan ma'lumotlar raqamlar bilan cheklangan bo'lsa-da, bu foydalanuvchilarga A, B, C va boshqalar kabi ba'zi belgilarni ko'rsatishga imkon beradi. Joriy token raqami 4-bitli etti segmentli LEDda ko'rsatiladi. Bu 7 segmentli LED Dsiplay 4 ta raqamga ega, ular TM1637 haydovchi chipi tomonidan boshqariladi. TM1637 4 bitli raqamli quvurli LED displey modulini boshqarish uchun faqat ikkita ulanish kerak. Ushbu displeyga qarab, har kim Token raqamini osongina tushunishi mumkin. Bu qurilmaning haqiqiy ishlatilishi.

Ushbu modul bilan ishlash uchun sizga TM1637Display.h nomli kutubxona kerak. Kutubxonani shu erdan yuklab oling.

Bu erda tokenlarni chaqirish uchun tugma ishlatiladi. Men tugmachali modulni ishlatganman, shuning uchun uni birlashtirish juda oson. Bu erda tugma pastga tushirish rejimida. Bundan tashqari, siz qarshilik va tugmachali modulni osongina yasashingiz mumkin.

12 -qadam: O'chirish

O'chirish
O'chirish
O'chirish
O'chirish

O'chirish juda oddiy, u hech qanday murakkab uskunadan iborat emas. Faqat sxemaga muvofiq ulang. Avval men non taxtasida sxemani tuzdim. Keyin men o'tish moslamalari bilan sim o'tkazdim.

13 -qadam: ish

Koson
Koson
Koson
Koson
Koson
Koson

Men bu ishni mahalliy do'kondan oldim. Men tokenni ko'rsatish uchun etakchi ettita segmentni ko'rsatish uchun old tomondan kichik bir bo'lakni kesib tashladim. Men yon tomondan ikkita bo'lakni yirtib tashladim, biri tugmachaga, ikkinchisi USB kabeliga. Tugun uchun kuch berish. Bu holat juda mos keladi, barcha komponentlar juda yaxshi joylashtirilgan.

14 -qadam: Arduino eskiz

Interfeysda ko'rsatilgan barcha HTML -sahifalar Arduino MKR WiFi 1010 flesh xotirasida saqlanadi. Saqlash uchun men PROGMEM yordam dasturidan foydalanardim.

PROGMEM - pgmspace.h kutubxonasining bir qismi. U avtomatik ravishda IDEning zamonaviy versiyalariga kiritilgan. Ammo, agar siz IDE versiyasini 1.0 (2011) dan pastda ishlatayotgan bo'lsangiz, avval siz kutubxonani eskizning yuqori qismiga kiritishingiz kerak bo'ladi, masalan:

#qo'shing.

PROGMEM -ni bitta o'zgaruvchida ishlatish mumkin bo'lsa -da, agar sizda saqlanishi kerak bo'lgan katta ma'lumotlar bloki bo'lsa, bu juda qiyin bo'ladi, bu odatda massivda eng oson. Bu erda bizda katta ma'lumotlar bloki bor, shuning uchun biz bu maqsadga intilamiz.

Barcha HTML fayllar "source.h" ko'rinishida saqlanadi. Loyihaning to'liq kodini bu erda topishingiz mumkin. Bu kodni Arduino qurilmasiga yuklang.

15 -qadam: QMN

QMN.
QMN.

Qurilmaning yakuniy ko'rinishi. Qurilma foydalanishga tayyor. Uni USB kabeli bilan yoqing va zavqlaning!

Rasm
Rasm
Rasm
Rasm

"Bunga tegib bo'lmaydi" oilaviy tanlovida ikkinchi o'rinni egalladi

Tavsiya: