İçindekiler:
- 1. Adım: Demo Videosu
- 2. Adım: İhtiyacımız Olan Şeyler
- Adım 3: Nasıl Çalışır?
- Adım 4: Kullanıcı Arayüzü
- Adım 5: Kullanım Durumları ve Avantajları
- Adım 6: Arduino MKR WiFi 1010
- Adım 7: Arduino IDE
- Adım 8: Esir Portalı
- Adım 9: Twilio ve Şeyler Konuşur
- Adım 10: AP VEYA STA Modu
- Adım 11: TM1637 4 Bit Dijital Tüp LED Ekranı ve Basma Düğmesi
- Adım 12: Devre
- Adım 13: Vaka
- Adım 14: Arduino Kroki
- Adım 15: QMN.
Video: Eller Serbest Jetonları: 15 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Hey Geekler, Şimdi 12. Sınıfa denk gelen +2'de okuyorum. Bilgisayar bilimi ile çok ilgileniyorum ve ayrıca asıl konumum da bu. Gömülü projeler geliştirmek için çok zaman harcadım. Gömülü alanda yaklaşık 3 yıllık deneyime sahibim. Her zaman yenilikçi ve çeşitli çözümlere odaklanırım. Ailem bu projeyi yapmam için bana büyük destek verdi.
Yarışmanın ana teması eller serbest çözümler yaratmaktır.
Burada sanal bir belirteç oluşturabilen ve böylece sanal kuyruğu koruyabilen QMN(Kuyruk Yönetim Düğümü) adlı bir cihaz oluşturuyorum.
Bazı kuyruklarda, muhtemelen sizi tehlikeye atacak olan sayaçtan fiziksel jetonlar almamız gerekiyor. Bu sanal belirteçleri kullanarak bu tehlikeyi önleyebilirsiniz. Aslında akıllı telefonunuzda sanal jetonlar alıyorsunuz. Jeton tamamen eller serbesttir.
Arduino MKR WiFI 1010 tarafından desteklenen basit, kullanıcı dostu bir sanal kuyruk oluşturucudur.
1. Adım: Demo Videosu
Bunu öğrenmek için demo videosunu izleyin.
2. Adım: İhtiyacımız Olan Şeyler
Donanım bileşenleri
- Arduino MKR WiFi 1010 x 1
- Düğme Modülü x 1
- TM1637 4 Bit Dijital Tüp LED Ekran Modülü x 1
-
Süveter x 1
Yazılım bileşenleri
- Arduino IDE'si
- Twilio SMS API'si
- ThingSpeak API'si
Aletler
- Tel Sıyırıcı ve Kesici x 1
- Havya x 1
- Lehim x 1
Adım 3: Nasıl Çalışır?
Kuyruk Yönetimi Düğümü (QMN), akıllı belirteçler oluşturan cihazdır. Akıllı jetonları oluşturmak için kişinin Arduino MKR 1010'un wifi aralığında olması gerekir. İşlemin yapılabilmesi için kişinin ayrıca bir akıllı telefona ihtiyacı vardır. İş akışı şu şekilde olacak…
- Arduino MKR 1010 tarafından bir WI-FI erişim noktası oluşturulacaktır.
- Belirteç isteyen kişinin telefonu erişim noktasına bağlaması gerekir ve bu, yerel ana bilgisayara yönlendirilecektir.
- Bu sayfada, kişinin telefon numarasını girmesi gerekir. O anda, doğrulamak için ilgili numaraya OTP gönderilecektir. Telefon numarası kasıtlı olarak bilgilendirme amacıyla alınmıştır.
- Telefon numarasını doğruladıktan sonra, belirteç yerel ana bilgisayarda görüntülenecektir.
- Sırası geldiğinde cihaz(QMN) ilgili kişiye sırasını alması için bir mesaj bildirimi gönderir.
Bu cihaz aslında insanlardan gelen talebi alıyor ve onlara akıllı tokenleri veriyor. Mesajı göndermek için QMN cihazında bir Twilio SMS API kullanıyoruz. Turn bildirimi QMN'deki butona basılarak gönderilebilir.
Tüm jetonlar çağrıldığında Arduino MKR WiFi 1010 üzerindeki reset butonuna basarak hafızayı temizleyebilirsiniz.
Adım 4: Kullanıcı Arayüzü
*) Erişim noktasına bağlandığınızda ilk sayfadaki gibi sayfaya yönlendirileceksiniz.
*) Telefon numarasını gönderdikten sonra, o numaraya bir OTP alacaksınız. Ardından OTP numaranızı girmek için OTP sayfasını gösterir.
*) Doğru OTP'yi gönderdiğinizde, belirteci bu belirteç sayfasında alacaksınız.
*) Yanlış OTP girdiyseniz, geçersiz OTP gösterecektir.
*) Numaranız jetonu zaten aldıysa, size zaten kaydolduğunuzu söyleyecektir.
Hepsi Kullanıcı Arayüzü ile ilgili.
HTML hakkında fazla bilgim yok. Babam CSS kullanarak bu sayfaları daha çekici hale getirdi.
Adım 5: Kullanım Durumları ve Avantajları
Hastaneler, Mağazalar ve Oteller gibi her yerde kullanılabilir.
Avantajlar
- Jeton almak için internet bağlantısı gerekmez
- Basit, kullanıcı dostu bir web arayüzü.
- Sıra geldiğinde yerel cihaz bildirimi.
- Fiziksel jeton yok.
- Uygulaması kolay.
- Gereksiz bekleme süresi yok, sıranız geldiğinde görün.
Adım 6: Arduino MKR WiFi 1010
Cihazın beyni Arduino MKR WiFi 1010'dur. Temel IoT ve pico-network uygulama tasarımına en kolay giriş noktasıdır. Kartın ana işlemcisi, Arduino MKR ailesindeki diğer kartlarda olduğu gibi, düşük güçlü bir Arm® Cortex®-M0 32-bit SAMD21'dir. WiFi ve Bluetooth® bağlantısı, u-blox'un bir modülü olan NINA-W10 ile gerçekleştirilir.
Bu cihaz tamamen Arduino MKR WiFi 1010'un WiFi bağlantısına dayanmaktadır. Cihaz, wifi modülünün hem AP(Acces Point) modunu hem de STA(Station) modunu kullanır. Cihaz, bu cihazın düzgün çalışması için bu modlar arasında akıllıca geçiş yapacaktır.
Adım 7: Arduino IDE
Arduino IDE, Arduino MKR WiFI 1010'u programlamak için burada kullanılır. Lütfen cihazı kullanmaya başlamak için buraya bir göz atın. Arduino MKR wifi 1010'u programlamak için en son Arduino IDE'yi kullanın. Programlamaya başlamadan önce cihaz için herhangi bir en son ürün yazılımı güncellemesi olup olmadığını kontrol edin. Bellenimi nasıl güncelleyeceğinizi öğrenmek için lütfen buraya bakın.
Adım 8: Esir Portalı
Aslında Arduino MKR WiFI 1010 ile bir erişim noktası (AP) oluşturuyoruz, bu AP'ye herhangi bir cihaz (mobil) bağlanabilir. Geçmişte web arayüzüne girmek için, bir kişinin tarayıcıya IP adresini veya ana bilgisayar adını yazması gerekir. Bu neredeyse tamam, ancak kullanıcının IP'yi veya ana bilgisayar adını tarayıcıya manuel olarak koyması gerekiyor. Bu gerçekten garip bir şey. Ancak bu durumda QMN'ye bağlanan cihaz otomatik olarak Captive Portal üzerinden web arayüzüne yönlendirilecektir. Burada Captive Portal, kullanıcının çabasını azaltmada büyük bir rol oynar. Espressif cihazlarıyla çok sayıda Captive Portal projesi var, ne yazık ki NINA kütüphanesinde hiçbiri yok. Çünkü MKR WiFi 1010, NINA kitaplığını kullanır. Sonunda, Arduino hub'ında JayV tarafından kilit şeyler olarak Captive Portal'ı kullanan bir proje buldum Sonra projeme temel kod olarak alarak başladım. Neredeyse iyi çalışıyor.
Aslında yaptığımız şey, DNS ayarlıyoruz ve Erişim Noktası (AP) - IP adresine sahip oluyoruz ve ilk (16) DNS isteklerini UDP bağlantı noktası 53 üzerinden kontrol ediyoruz. İlk 16 isteği kontrol ettikten sonra, DNS istekleri için bir yanıt göndereceğiz. kendi Erişim Noktasının yeniden yönlendirilen IP adresiyle. Ardından telefon, web arayüzünü web tarayıcıları aracılığıyla otomatik olarak yükleyecektir. Belirtilen AP'ye bir cihaz bağlandığında nihai etki böyle olacak, telefon otomatik olarak web arayüzünü yükleyecektir. UDP sunucusu ve Web sunucusu aynı anda çalışır. Web sunucusu, telefon numarasını girmek için bir form düğmesi içeren basit bir ana sayfadır.
Adım 9: Twilio ve Şeyler Konuşur
Maalesef mesajları göndermek için bir GSM modülüm yok. OTP ve cihaz bildirimini göndermek için herhangi bir SMS API'sini kullanmamız gerekiyor. Bu projede, görevi tamamlamak için Twilio'nun SMS API'sini kullandım. Bildiğimiz gibi, API'nin çalışması için sunucuya HTTP isteği vermemiz gerekiyor. Önce Twilio'ya herhangi bir şifreleme olmadan normal HTTP isteği verdim, ancak Twilio isteğimi dikkate almadı. Güvenliği sağlamak için SSL parmak izlerine ihtiyaçları var. NINA kitaplıklarında bu SSL'leri destekleyen herhangi bir işlev görmedim. Bu yüzden Twilio'yu tetiklemek için Thingsspeak kullandım. Bu hizmetleri kullanmak için her iki platforma da kaydolmanız gerekir.
Twilio'da yeni bir numara oluşturun ve bu, verileri gönderdiğiniz numara olacaktır. Twilio'da mesajlaşma için ücretsiz kredi alacaksınız. Deneme hesabı için, verileri göndermek istediğiniz numaraları doğrulamanız gerekir.
Thingspeak.com'a gidin, uygulamalara, ardından ThingHTTP'ye ve ardından New ThingHTTP'ye tıklayın. Bu sizi kurulum sayfasına götürecektir. Twilio kontrol paneli sayfanızda Twilio hesabınızın SID'sini ve yetkilendirme belirtecinizi bulmanız gerekecek.
- Adını Twilio SMS Gönder
- URL https://api.twilio.com/2010-04-01/Accounts/TWILIO HESAP SID'İNİZ/SMS/Messages
- HTTP Yetkilendirme Kullanıcı Adı TWILIO HESAP SID SİZİNDİR
- HTTP Yetkilendirme Parolası, TWILIO DOĞRULAMA TOKENİNİZDİR
- Yöntemi POST olarak ayarlayın
- İçerik türü application/x-www-form-urlencoded şeklindedir
- Başlıkları kaldır'ı tıklayın ve ana bilgisayarı boş bırakın
- Gövde = Gönderen=TWILIO NUMBER&To=%%number%%&Gövde=%%message%%
ThingHTTP'yi Kaydet'i tıklayın. ThingHTTp'nin API anahtarı Arduino Sketch'e dahil edilmelidir.
Adım 10: AP VEYA STA Modu
Nina modülüne sahip tüm Arduino kartları, aynı anda bir rol, yani İstasyon modu veya Erişim Noktası modu yapar. İşi halletmek için sürekli olarak bu modlar arasında geçiş yapmamız gerekiyor. İlk olarak QMN, numarayı aldıktan sonra AP modunda olacak ve OTP'yi göndermek için STA moduna geçecektir. OTP'yi gönderdikten sonra QMN, AP moduna geri dönecektir. Bir kişi basma düğmesini tetiklerse, QMN, SMS bildirimi vermek için STA moduna geçecektir. Bundan sonra, AP moduna geri dönecektir. İnternet bağlantısını vermek için QMN'yi STA modu için değiştiriyoruz. SMS API'si internet bağlantısı gerektirir.
Adım 11: TM1637 4 Bit Dijital Tüp LED Ekranı ve Basma Düğmesi
TM1637 4 Bit Dijital Tüp LED Ekran Modülü, gömülü projenizin çıktı verilerini görüntülemek için uygun fiyatlı bir çözümdür. Görüntülenen veriler sayılarla sınırlı olsa da, kullanıcıların A, B, C vb. gibi bazı karakterleri görüntülemesine izin verir. Çalışan geçerli jeton numarası bu 4 bitlik yedi segmentli LED'de görüntülenir. Bu 7 segmentli LED Ekran, TM1637 Driver Chip tarafından kontrol edilen 4 haneye sahiptir. Bu TM1637 4 Bit Dijital Tüp LED Ekran Modülünü kontrol etmek için yalnızca iki bağlantı gerekir. Bu ekrana bakarak herhangi biri Token numarasını kolayca anlayabilir. Bu cihazın gerçek kullanımı budur.
Bu modülle çalışmak için TM1637Display.h adlı bir kitaplığa ihtiyacınız var. Sadece kütüphaneyi buradan indirin.
Burada jetonları çağırmak için basma düğmesi kullanılır. Buton modülünü kullandım, bu yüzden entegrasyonu çok kolay. Burada basma düğmesi aşağı çekme modundadır. Ayrıca bir direnç ve basma düğmesi ile kolayca bir modül yapabilirsiniz.
Adım 12: Devre
Devre çok basittir, herhangi bir karmaşık donanımdan oluşmaz. Sadece şemalara göre bağlayın. Önce devreyi breadboard üzerinde yaptım. Daha sonra jumper'ları bağladım.
Adım 13: Vaka
Bu kılıfı yerel bir mağazadan aldım. Jetonu gösteren yedi parçayı göstermek için önden küçük bir parça kestim. Ayrıca yandan iki parça yırttım, biri buton için diğeri USB kablosu için. Düğüme güç vermek için. Bu kasa çok uygun, Tüm bileşenler çok iyi yerleştirilmiş.
Adım 14: Arduino Kroki
Arayüzde gösterilen tüm HTML sayfaları Arduino MKR WiFi 1010'un flash belleğinde saklanmaktadır. Bunu saklamak için PROGMEM yardımcı programını kullandım.
PROGMEM, pgmspace.h kitaplığının bir parçasıdır. IDE'nin modern sürümlerine otomatik olarak dahil edilir. Ancak, 1.0 (2011) altında bir IDE sürümü kullanıyorsanız, önce kütüphaneyi çiziminizin en üstüne eklemeniz gerekir, şöyle:
#Dahil etmek.
PROGMEM tek bir değişken üzerinde kullanılabilirken, saklanması gereken daha büyük bir veri bloğunuz varsa, ki bu genellikle bir dizide en kolay olanıdır. Burada büyük bir veri bloğumuz var, bu yüzden bunun için gidiyoruz.
Tüm HTML dosyaları "source.h" sekmesinde saklanır. Bu projenin tüm kodu burada bulunabilir. Sadece bu kodu Arduino cihazına yükleyin.
Adım 15: QMN.
Cihazın son görünümü. Cihaz kullanıma hazırdır. Sadece USB kablosuyla açın ve keyfini çıkarın!
"Buna Dokunamam" Aile Yarışmasında İkincilik
Önerilen:
Eller Serbest Karton Gumball Makinesi: 18 Adım (Resimlerle)
Eller Serbest Karton Sakız Makinesi: Micro:bit, Crazy Circuits Bit Board, mesafe sensörü, servo ve karton kullanarak Dokunmasız Gumball Makinesi yaptık. Onu yapmak ve kullanmak bir "PATLAMA"ydı! ? ? Elinizi roketin tabanına koyduğunuzda, bir mesafe sensörü
Raspberry Pi için Eller Serbest Google Asistanı: 14 Adım (Resimlerle)
Raspberry Pi için Eller Serbest Google Asistanı: Merhaba ve ilk Eğitilebilir Kitabıma hoş geldiniz! Bu talimatta size Raspberry Pi'nize şarkı söyleyen, dans eden bir Google Asistanı kurmanın en kolay yolu olarak düşündüğüm şeyi göstereceğim. OK Googl ile tamamen eller serbest
Serbest Biçimlendirilebilir Devre - Gerçek Serbest Biçimli Devre!: 8 Adım
Serbest Biçimlendirilebilir Devre | Gerçek Serbest Biçim Devresi!: Serbest biçimlendirilebilir bir IR uzaktan kumandalı LED devresi. Arduino kontrollü desenlere sahip hepsi bir arada uygulanabilir bir DIY ışık avcısı.Öykü: Serbest biçimli devreden ilham aldım… Bu yüzden az önce serbest biçimli bir serbest biçimli devre yaptım hatta serbest biçimlendirilebilir (
Eller Serbest Diş Fırçası: 6 Adım (Resimlerle)
Eller Serbest Diş Fırçası: Eller serbest diş fırçası, Michael Mitsch, Ross Olsen, Jonathan Morataya ve Mitch Hirt tarafından yapılmış bir projedir. İnşa etmek için eğlenceli bir çözümü olabilecek bir soruna yaklaşmak istedik, bu yüzden onu çözebilecek bir şey yapmaya karar verdik, böylece siz
Eller Serbest Bisiklet Kamera Tripod: 6 Adım (Resimlerle)
Eller Serbest Bisiklet Kamera Tripod: Bisikletime binmeyi seviyorum. Ben de fotoğrafçılığı severim. Fotoğraf ve bisikletleri birleştirmek her zaman işe yaramaz. Giysilerinizde büyük cepler yoksa, fotoğraf çekmediğiniz zamanlarda fotoğraf makinenizi saklama sorunu yaşarsınız.