Mündəricat:

Hands-free Tokens: 15 Addım (Şəkillərlə birlikdə)
Hands-free Tokens: 15 Addım (Şəkillərlə birlikdə)

Video: Hands-free Tokens: 15 Addım (Şəkillərlə birlikdə)

Video: Hands-free Tokens: 15 Addım (Şəkillərlə birlikdə)
Video: Ən yaxşı 10 dahi ixtira! Əvvəllər heç görmədin. 2024, Noyabr
Anonim
Əllərsiz Tokenlar
Əllərsiz Tokenlar

Hey Geeks, İndi 12 -ci sinifə bərabər olan +2 -də oxuyuram. Kompüter elmləri ilə çox maraqlanıram və əsas mövzum budur. Daxili layihələr hazırlamaq üçün çox vaxt sərf etdim. Daxili sahədə təxminən 3 illik təcrübəm var. Həmişə yenilikçi və müxtəlif həllərə diqqət yetirirəm. Valideynlərim bu layihəni həyata keçirməyim üçün mənə böyük dəstək verdilər.

Müsabiqənin əsas mövzusu əllərsiz sərbəst həllər yaratmaqdır.

Burada QMN (Queue Management Node) adlı bir cihaz yaradıram ki, bu da virtual möcüzə yarada bilər və bununla da virtual növbəni qoruya bilər.

Müəyyən növbə yerlərində, ehtimal ki, sizi təhlükəyə aparacaq sayğacdan fiziki əlamətlər almalıyıq. Beləliklə, bu virtual ayətlərdən istifadə edərək bu təhlükənin qarşısını ala bilərsiniz. Əslində smartfonunuzda virtual ayələr alırsınız. İşarə tamamilə əllərsizdir.

Arduino MKR WiFI 1010 ilə işləyən sadə bir istifadəçi dostu virtual növbə qurucusudur.

Addım 1: Demo Video

Image
Image

Bu barədə bilmək üçün demo videosuna baxın.

Addım 2: Ehtiyac duyduğumuz şeylər

Avadanlıq komponentləri

  • Arduino MKR WiFi 1010 x 1
  • Düymə Modulu x 1
  • TM1637 4 Bit Rəqəmsal Boru LED Ekran Modulu x 1
  • Tullananlar x 1

Proqram komponentləri

  • Arduino IDE
  • Twilio SMS API
  • ThingSpeak API

Alətlər

  • Tel çıxarıcı və kəsici x 1
  • Havya x 1
  • Lehim x 1

Addım 3: Necə işləyir?

İstifadəçi interfeysi
İstifadəçi interfeysi

Queue Management Node (QMN) ağıllı ayələr yaradan cihazdır. Ağıllı ayələr yaratmaq üçün həmin şəxs Arduino MKR 1010 -un wifi aralığında olmalıdır. İşi başa çatdırmaq üçün həmin şəxsin də ağıllı telefona ehtiyacı var. İş axını aşağıdakı kimi davam edəcək …

  • Wi-Fi giriş nöqtəsi Arduino MKR 1010 tərəfindən yaradılacaq.
  • Nişan istəyən şəxsin telefonu giriş nöqtəsinə bağlaması lazımdır ki, bu da localhost -a yönləndiriləcək.
  • Həmin səhifədə həmin şəxsin telefon nömrəsini daxil etməsi lazımdır. Bu anda, OTP təsdiq etmək üçün əlaqədar nömrəyə göndəriləcək. Telefon nömrəsi bildiriş vermək üçün qəsdən alınır.
  • Telefon nömrəsini təsdiqlədikdən sonra token localhost -da görünəcək.
  • Onun növbəsi gəldikdə, cihaz (QMN) növbəsini almaq üçün əlaqədar şəxsə bir mesaj bildirişi göndərəcək.

Bu cihaz əslində insanlardan tələb alır və onlara ağıllı ayələr verir. Mesajı göndərmək üçün QMN cihazında Twilio SMS API istifadə edirik. Dönüş bildirişi QMN -dəki düyməyə basaraq göndərilə bilər.

Bütün ayələr çağırıldıqda, Arduino MKR WiFi 1010 -da sıfırlama düyməsinə basaraq yaddaşı təmizləyə bilərsiniz.

Addım 4: İstifadəçi İnterfeysi

İstifadəçi interfeysi
İstifadəçi interfeysi
İstifadəçi interfeysi
İstifadəçi interfeysi

*) Giriş nöqtəsinə qoşulduqda, birincisi kimi səhifəyə yönləndiriləcəksiniz.

*) Telefon nömrəsini təqdim etdikdən sonra həmin nömrədə bir OTP alacaqsınız. Sonra, OTP nömrənizi daxil etmək üçün OTP səhifəsini göstərir.

*) Doğru OTP -ni təqdim etdiyiniz zaman bu token səhifəsində token alacaqsınız.

*) Səhv OTP daxil etmisinizsə, etibarsız OTP göstərəcək.

*) Nömrəniz artıq nişanı alsaydı, artıq qeydiyyatdan keçdiyinizi söyləyəcək.

Bütün bunlar İstifadəçi İnterfeysi ilə bağlıdır.

HTML haqqında çox şey bilmirəm. Atam CSS istifadə edərək bu səhifələri daha cəlbedici etdi.

Addım 5: Davalar və üstünlüklərdən istifadə edin

Xəstəxanalar, Mağazalar və Otellər kimi hər yerdə istifadə edilə bilər.

Üstünlüklər

  • Token almaq üçün internet bağlantısı tələb olunmur
  • Sadə bir istifadəçi dostu veb interfeysi.
  • Sıra gəldikdə yerli cihaz bildirişi.
  • Fiziki əlamət yoxdur.
  • Həyata keçirmək asandır.
  • Lazımsız gözləmə vaxtı yoxdur, növbəniz gəldikdə göstərin.

Addım 6: Arduino MKR WiFi 1010

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

Cihazın beyni Arduino MKR WiFi 1010-dur. Əsas IoT və pico-şəbəkə tətbiq dizaynına ən asan giriş nöqtəsidir. Lövhənin əsas prosessoru Arduino MKR ailəsindəki digər lövhələrdə olduğu kimi aşağı güclü Arm® Cortex®-M0 32 bit SAMD21-dir. WiFi və Bluetooth® bağlantısı u-blox, NINA-W10 modulu ilə həyata keçirilir.

Bu cihaz tamamilə Arduino MKR WiFi 1010 -un WiFi bağlantısına güvənir. Cihaz həm WiFi modulunun AP (Acces Point), həm də STA (Station) rejimindən istifadə edir. Cihaz, bu cihazın düzgün işləməsi üçün bu rejimlər arasında ağıllı şəkildə keçəcəkdir.

Addım 7: Arduino IDE

Arduino IDE
Arduino IDE

Arduino IDE burada Arduino MKR WiFI 1010 proqramlaşdırmaq üçün istifadə olunur. Cihazı işə salmaq üçün bura baxın. Arduino MKR wifi 1010 -u proqramlaşdırmaq üçün ən son Arduino IDE -dən istifadə edin. Proqramlaşdırmaya başlamazdan əvvəl cihaz üçün ən son firmware yeniləməsinin olub olmadığını yoxlayın. Zəhmət olmasa firmware proqramını necə yeniləyəcəyinizi bilmək üçün bura baxın.

Addım 8: Əsir Portal

Əslində Arduino MKR WiFI 1010 tərəfindən bir giriş nöqtəsi (AP) yaradırıq, hər hansı bir cihaz (mobil) bu AP -ə qoşula bilər. Keçmişdə veb interfeysinə girmək üçün bir insanın brauzerdə IP ünvanını və ya host adını yazması lazımdır. Demək olar ki, heç bir problem yoxdur, ancaq istifadəçinin brauzerə IP və ya host adını əl ilə qoyması lazımdır. Bu, həqiqətən də qəribə bir şeydir. Ancaq bu vəziyyətdə, QMN -ə qoşulan cihaz avtomatik olaraq Captive Portal vasitəsilə veb interfeysinə yönləndiriləcəkdir. Burada Captive Portal istifadəçinin səylərini azaltmaqda böyük rol oynayır. Espressif cihazları ilə bir çox Captive Portal layihəsi var, təəssüf ki, NINA kitabxanası yoxdur. Çünki MKR WiFi 1010 NINA kitabxanasından istifadə edir. Nəhayət, Arduino mərkəzində Captive Portal -ı JayV -in əsas şeyləri kimi istifadə edən bir layihə tapdım. Sonra layihəmi əsas kod olaraq götürərək başladım. Demək olar ki, yaxşı işləyir.

Əslində etdiyimiz şey, DNS qurmaq və Access Point (AP) - IP ünvanına sahib olmaq və UDP port 53 vasitəsilə əvvəlcə (16) DNS sorğularını yoxlamaqdır. İlk 16 sorğunu yoxladıqdan sonra DNS sorğularına cavab göndərəcəyik. öz Giriş Nöqtəsinin yönləndirilmiş IP ünvanı ilə. Sonra telefon veb brauzerlər vasitəsilə veb interfeysini avtomatik olaraq yükləyəcək. Son təsir, göstərilən AP -yə qoşulan bir cihaz, telefon avtomatik olaraq veb interfeysini yüklədikdə belə olacaq. UDP serveri və Webserver eyni anda işləyir. Veb server, telefon nömrəsini daxil etmək üçün forma düyməsinə malik sadə bir ana səhifədir.

Addım 9: Twilio & Things Speak

Twilio və Şeylər Danışır
Twilio və Şeylər Danışır
Twilio və Şeylər Danışır
Twilio və Şeylər Danışır

Təəssüf ki, mesajları göndərmək üçün GSM modulum yoxdur. OTP və cihaz bildirişini göndərmək üçün hər hansı bir SMS API istifadə etməliyik. Beləliklə, bu layihədə vəzifəni yerinə yetirmək üçün Twilio -nun SMS API -dən istifadə etdim. Bildiyimiz kimi, API -nin işləməsi üçün server üçün HTTP sorğusu verməmiz lazımdır. Əvvəlcə Twilio -ya heç bir şifrələnmədən normal HTTP sorğusu verdim, amma Twilio tələbimi nəzərə almadı. Təhlükəsizliyi təmin etmək üçün SSL barmaq izlərinə ehtiyacları var. NINA kitabxanalarında bu SSL -ləri dəstəkləyən heç bir funksiya görmədim. Twilio -nu işə salmaq üçün Thingsspeak -dən istifadə etdim. Bu xidmətlərdən istifadə etmək üçün hər iki platformada qeydiyyatdan keçməlisiniz.

Twilio -da yeni bir nömrə yaradın və bu məlumatı göndərdiyiniz nömrə olacaq. Twilio -da mesajlaşma üçün pulsuz kredit əldə edəcəksiniz. Sınaq hesabı üçün məlumatları göndərmək istədiyiniz nömrələri yoxlamalısınız.

Thingspeak.com saytına daxil olun, tətbiqlərə, sonra ThingHTTP -ə, sonra Yeni ThingHTTP -ə vurun. Bu sizi quraşdırma səhifəsinə aparacaq. Twilio hesab panelinizin səhifəsində Twilio hesabınızın SID və təsdiq kimliyini tapmalısınız.

  • Adını Twilio SMS göndər
  • URL https://api.twilio.com/2010-04-01/Accounts/ TWILIO HESAB SID/SMS/Mesajlarınızdır
  • HTTP Doğrulama İstifadəçi Adınız TWILIO HESAB SİDİNİZDİR
  • HTTP Doğrulama Şifrəsi TWILIO AUTH TOKEN -dir
  • Metodu POST olaraq təyin edin
  • Məzmun növü tətbiq/x-www-form-urlencoded
  • Başlıqları silin və hostu boş buraxın
  • Body = From = TWILIO NUMBER & To = %% number %% & Body = %% mesaj %%

Şeyi SaxlaHTTP düyməsini basın. ThingHTTp -in API açarı Arduino Sketch -ə daxil edilməlidir.

Addım 10: AP və ya STA rejimi

Nina modulu olan bütün Arduino lövhələri bir anda bir rol oynayır, yəni Stansiya rejimi və ya Giriş nöqtəsi rejimi. İşi başa çatdırmaq üçün bu rejimlər arasında daim keçid etməliyik. Birincisi, QMN nömrəni əldə etdikdən sonra AP rejimində olacaq, OTP göndərmək üçün STA rejiminə keçəcək. OTP göndərildikdən sonra QMN yenidən AP rejiminə keçəcək. Bir şəxs düyməni bassa, QMN SMS bildirişi vermək üçün STA rejiminə keçəcək. Bundan sonra AP rejiminə qayıdacaq. İnternet bağlantısı vermək üçün QMN -ni STA rejiminə keçiririk. SMS API internet bağlantısı tələb edir.

Addım 11: TM1637 4 Bit Rəqəmsal Boru LED Ekran və Push Button

TM1637 4 Bitlik Rəqəmsal Boru LED Ekran və Push Button
TM1637 4 Bitlik Rəqəmsal Boru LED Ekran və Push Button
TM1637 4 Bitlik Rəqəmsal Boru LED Ekran və Push Button
TM1637 4 Bitlik Rəqəmsal Boru LED Ekran və Push Button

TM1637 4 Bit Rəqəmsal Boru LED Ekran Modulu, quraşdırılmış layihənizin çıxış məlumatlarını göstərmək üçün əlverişli bir həlldir. Göstərilən məlumatlar rəqəmlərlə məhdudlaşdırılsa da, istifadəçilərə A, B, C və s kimi bəzi simvolları göstərməyə imkan verir. İşləyəcək cari mö'cüzə nömrəsi bu 4 bit yeddi seqmentli LED-də göstərilir. Bu 7 seqmentli LED Dsiplay, TM1637 Sürücü Çipi tərəfindən idarə olunan 4 rəqəmdən ibarətdir. Bu TM1637 4 Bit Digital Tube LED Ekran Modulunu idarə etmək üçün yalnız iki əlaqə lazımdır. Bu ekrana baxaraq hər kəs Token nömrəsini asanlıqla anlaya bilər. Bu cihazın əsl istifadəsi budur.

Bu modulla işləmək üçün TM1637Display.h adlı kitabxanaya ehtiyacınız var. Kitabxananı buradan yükləyin.

Burada düymələri çağırmaq üçün istifadə olunur. Düymə modulundan istifadə etdim, buna görə inteqrasiya etmək çox asandır. Burada düymə aşağı çəkmə rejimindədir. Bir rezistor və düymə ilə asanlıqla bir modul da edə bilərsiniz.

Addım 12: Dövrə

Dövrə
Dövrə
Dövrə
Dövrə

Dövrə çox sadədir, heç bir mürəkkəb aparatdan ibarət deyil. Yalnız sxemlərə görə bağlayın. Əvvəlcə çörək taxtasında dövrə düzəltdim. Sonra atlayıcılarla tel bağladım.

Addım 13: Dava

Dava
Dava
Dava
Dava
Dava
Dava

Bu işi yerli bir mağazadan aldım. İşarəni göstərmək üçün aparılmış yeddi seqmenti göstərmək üçün öndən kiçik bir parça kəsdim. Yan tərəfdən də iki hissəni cırmışam, biri düymə üçün, digəri USB kabel üçündür. Node üçün güc vermək. Bu vəziyyət çox uyğundur, bütün komponentlər çox yaxşı yerləşdirilib.

Addım 14: Arduino Sketch

İnterfeysdə göstərilən bütün HTML səhifələri Arduino MKR WiFi 1010 flash yaddaşında saxlanılır. Saxlamaq üçün PROGMEM yardım proqramından istifadə etdim.

PROGMEM, pgmspace.h kitabxanasının bir hissəsidir. IDE -nin müasir versiyalarına avtomatik olaraq daxil edilir. Bununla birlikdə, 1.0 (2011) -dən aşağı bir IDE versiyasından istifadə edirsinizsə, əvvəlcə kitabxananı eskizinizin üst hissəsinə daxil etməlisiniz:

#daxil edin.

PROGMEM tək bir dəyişkən üzərində istifadə oluna bilsə də, saxlanılması lazım olan daha böyük bir məlumat blokuna sahib olsanız, narahat olmağa dəyər. Burada böyük bir məlumat blokumuz var, buna görə də bunun üçün gedirik.

Bütün HTML faylları "source.h" sekmesinde saxlanılır. Bu layihənin bütün kodunu burada tapa bilərsiniz. Sadəcə bu kodu Arduino cihazına yükləyin.

Addım 15: QMN

QMN
QMN

Cihazın son görünüşü. Cihaz istifadəyə hazırdır. USB kabeli ilə işə salın və zövq alın!

Şəkil
Şəkil
Şəkil
Şəkil

"Buna toxunmaq olmaz" Ailə Yarışmasında ikinci yeri tutdu

Tövsiyə: