Mündəricat:

LEIDS - Aşağı Enerji IOT Qapı Sensoru: 8 Addım (Şəkillərlə)
LEIDS - Aşağı Enerji IOT Qapı Sensoru: 8 Addım (Şəkillərlə)

Video: LEIDS - Aşağı Enerji IOT Qapı Sensoru: 8 Addım (Şəkillərlə)

Video: LEIDS - Aşağı Enerji IOT Qapı Sensoru: 8 Addım (Şəkillərlə)
Video: 40 полезных автотоваров с Aliexpress, которые упростят жизнь любому автовладельцу #6 2024, Noyabr
Anonim
LEIDS - Aşağı Enerji IOT Qapı Sensoru
LEIDS - Aşağı Enerji IOT Qapı Sensoru

LEIDS nədir?

LEIDS, ESP8266 ətrafında qurulmuş bir IOT sensordur. Bu sensor, bu lövhədən, yumşaq kilidləmə sxemindən, qamış açarından və bəzi maqnitlərdən istifadə edərək qapınız açılaraq bağlandıqda sizə xəbərdarlıq göndərəcək bir qapı sensoru yaradır. Bu sensor MQTT serverinizə, IFTTT -ə və ya ESP8266 -nı dəstəkləyən bir çox digər çərçivəyə bağlana bilər. Bu təlimatçı, harada olmağınızdan asılı olmayaraq mobil cihazınıza xəbərdarlıq göndərəcək bir sensor yaratmaq üçün IFTTT -dən istifadə edəcək. Sensor ayrıca ayrı qapılardan, poçt qutularından, sobalardan və açıq/bağlanan və ya açılan/söndürülmüş fiziki mövqedə olan hər hansı bir şeydən birdən çox xəbərdarlığa icazə vermək üçün qurula bilər. LEIDS -in faydası minimal gücdən istifadə etməsidir və yalnız bir qapı açıq olduqda gücdən istifadə edir, sonra qapı bağlandıqda qapının bağlandığını və söndüyünü bildirmək üçün bir mesaj göndərir. Bu, qapının açılmaması halında heç bir enerji sərf etmədiyi üçün modulun dərin yatmasından daha yaxşıdır.

Addım 1: Təchizat

Təchizat
Təchizat
Təchizat
Təchizat
Təchizat
Təchizat
Təchizat
Təchizat

Aşağıdakı siyahılar bu layihə üçün istifadə etdiyim alətləri və hissələri göstərir. Sensor fərqli hissələrdən istifadə etmək və fərqli baxmaq/işləmək və oxşar anlayışlardan istifadə etmək üçün yenidən dizayn edilə bilər.

Alətlər:

  • Lehimleme dəmir
  • ESP01-UART və ya Arduino Uno (ESP8266 üçün proqramçı)
  • 3D printer (isteğe bağlı)
  • Keçid kabelləri (isteğe bağlı)
  • Çörək paneli (isteğe bağlı)

Parçalar:

  • ESP8266 ESP-01S x 1
  • Reed Switch x 1 (tercihen NC, yalnız normal olaraq açıq ola bilərdi, buna görə də normal olaraq işləməsi üçün iki maqnit istifadə etməliyəm)
  • AMS1117 3.3v tənzimləyicisi
  • 2n3904 NPN Transistor x 1
  • P-Channel Mosfet x 1 (aşağı VGS, tercihen NDP6020P olan bir şey istəyirik)
  • 3.7v 100 mAh Lipo batareya x 1
  • Müxtəlif rezistorlar (100k ohm, 10k ohm, 220 ohm, 3k3 Ohm)
  • 6x3mm maqnit x 2
  • İki tərəfli montaj lenti
  • Tel
  • Lehim
  • Perfboard

3D çaplı hissələr:

Sensor üçün qutu

Addım 2: Yumşaq kilidləmə dövrəsi - Avadanlıq

Yumşaq kilidləmə dövrəsi - Avadanlıq
Yumşaq kilidləmə dövrəsi - Avadanlıq

İstifadə etdiyim yumşaq mandal dövrəsi, İnternetdə tapdığım bir sxematik bir dəyişiklikdir. Mən bir mütəxəssis deyiləm və bu dövrəni qurmağın daha yaxşı yollarının olduğuna inanıram, amma mənim məqsədim üçün bu dövrə işi görür!

İşləmə üsulu, qamışın bir maqnit sahəsi ilə bağlandığı zaman NPN tranzistoruna cərəyan verməsidir. NPN tranzistoru daha sonra cərəyanın ESP8266 -ya axmasına imkan verən PNP mosfetini əsaslandırır. ESP8266 aktivdir, ESP8266 -nı gücləndirməyə davam edən PNP mosfetini əsaslı saxlamaq üçün pinlərindən birini istifadə edir. Sonra ESP8266 öz vəzifələrini yerinə yetirdikdə, bu çıxış pinini NOW transistorunu kəsən və PNP mosfetindəki qapını bağlayan LOW olaraq təyin edir.

Belə bir dövrə istifadə edərək ESP8266 bir açarla açıla bilər və sonra siqnal vasitəsilə özünü tamamilə söndürə bilər. Bu, sensor bağlandıqda/söndürüldükdə dövrə heç bir cərəyan çıxarmamağa imkan verir.

Addım 3: ESP8266 - Avadanlıq

ESP8266 - Avadanlıq
ESP8266 - Avadanlıq

İstifadə etdiyim ESP8266, bir qapı (və ya başqa bir şey) açıq olduqda xəbərdarlıq etmək üçün bir mesaj göndərəcək və sonra qapının yaxın bir mesaj göndərməsini və özünü bağlamasını gözləyəcək. ESP8266, yumşaq mandal dövrəsi ilə təchiz ediləcək və qamış açarını oxumaq üçün bir sancaqdan, özünü açıq saxlamaq və sonra söndürmək üçün başqa bir pindən istifadə edəcək. Kiçik forma faktoruna görə ESP-01-ləri seçdim. ESP, sensor "açılmış" və "bağlı" olaraq dəyişdirildikdə bizə məlumat vermək üçün veb sorğusu göndərəcək. Tapdığım ən asan üsul IFTTT və Google Sheets istifadə etmək idi. Bu aşağıdakı addımlarda izah olunur.

Addım 4: Uzaqdan Bildirişlər üçün IFTTT - 1 -ci hissə

Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 1 -ci hissə

Bu təlimatda, IFTTT -dən istifadə edərək mobil cihazımızda uzaqdan bildirişlər almaq üçün webhooks və google vərəqləri tətbiq olunacaq. Bu xidmətlərdən istifadə etmək üçün aşağıdakılara ehtiyacınız olacaq:

  • Google hesabı
  • IFTTT hesabı (Google hesabı ilə daxil ola bilər/girməlidir)
  • Mobil cihazınız üçün IFTTT tətbiqi

Hesablarınızı yaratdıqdan/daxil etdikdən sonra iki applet yaradacağıq. Bu bölmənin yuxarısındakı fotoşəkillər veb səhifənin necə manevr ediləcəyini göstərir. Aşağıdakı addımlar, ilk tətbiq üçün, hadisənin ləğvi tələbidir. Bu tətbiq sensordan bir mesaj alacaq və hadisəni Google vərəq sənədində saxlayacaq. Sonra sensorunuzun tarixçəsinə baxa bilərsiniz və nə vaxt açılıb bağlandığını görə bilərsiniz.

  1. Yuxarıda yerləşən "Appletlərim" bağlantısına keçin
  2. "Yeni Applet" düyməsini basın
  3. Mavi "+bu" düyməsini basın
  4. "Webhooks" axtarın və üzərinə vurun
  5. Növbəti səhifədə "Veb sorğusu al" kartını seçin
  6. Sonra tədbirin adını istədiyiniz kimi təyin edin, "sensor_aktivləşdirilmiş" adlandırmağı seçdim
  7. Növbəti səhifədə mavi "+o" düyməsini basın
  8. "Google Vərəqlər" xidmətini axtarın və seçin
  9. Növbəti səhifədə "Cədvələ satır əlavə et" funksiyasını seçin
  10. Əməliyyatı aşağıdakı kimi doldurun:

    • Elektron cədvəl adı, özümə "Sensor Tarixi" adını verdim
    • Formatlanmış sətrin aşağıdakı kimi görünməsi lazımdır

      {{OccurredAt}} ||| {{Dəyər1}} ||| {{Dəyər2}}

    • Appletin sensorun vəziyyətini saxlayacağı yeri dəyişdirmək istəməyincə, son sahəni olduğu kimi buraxın
  11. Sonra "Fəaliyyət Yarat" düyməsini basın
  12. Son olaraq son ekranda "Bitir" düyməsini basın

İndi işlədiyini sınayaq

  1. Bu linkə keçin
  2. Sonra "Sənədləşdirmə" düyməsini basın (bu "Sənədlər" səhifəsini daha sonra yenidən istifadə edəcəyik)
  3. İndi IFTTT Webhooks proqramı üçün öz şəxsi bölmənizdə olacaqsınız
  4. Tədbirin adı ilə "{event}" yazılan sahəni doldurun, bu halda tədbirin adı "sensor_aktivləşdirilmişdir"
  5. İndi "dəyər1" sahəsini doldurun, bu sensorunuzun yerini tutacaq sahədir, "Ön qapı" ilə dolduracağam
  6. İndi "dəyər2" sahəsini doldurun, bu sensor vəziyyətinə malik olan sahədir, yalnız test üçün "açılmış" ilə dolduracağam
  7. Sonra mavi "Test et" düyməsini basın
  8. Hər şey yaxşı olarsa, yaşıl "Tədbir tetiklendi" almalısınız. yuxarıdakı mesaj
  9. İndi mesajınızı necə saxladığını görmək istəyirsinizsə, google vərəqlərinizi açıb əlavə etdiyi cədvəli tapa bilərsiniz, cədvəlin necə görünəcəyini göstərmək üçün bir şəkil əlavə etdim.

Vəziyyət dəyişikliyi barədə bizi xəbərdar etmək üçün bir applet əlavə edərək növbəti addıma keçin.

Addım 5: Uzaqdan Bildirişlər üçün IFTTT - 2 -ci hissə

Uzaq Bildirişlər üçün IFTTT - 2 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 2 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 2 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 2 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 2 -ci hissə
Uzaq Bildirişlər üçün IFTTT - 2 -ci hissə

Vəziyyət cədvəlinə bir sıra əlavə edildikdə bizə bildirmək üçün indi bir applet əlavə edəcəyik; başqa sözlə, sensor bir hadisəni söndürəndə. Əvvəlki kimi yeni bir applet yaradacağıq. Aşağıdakı addımlar ikinci appletin yaradılmasında sizə yol göstərəcək. Əvvəlki addımda bənzər bir şey etdiyimiz üçün yalnız bu addıma fərqli olan slaydları əlavə edəcəyəm.

  1. Yuxarıda yerləşən "Appletlərim" bağlantısına keçin
  2. "Yeni Applet" düyməsini basın
  3. Mavi "+bu" düyməsini basın
  4. "Google vərəqləri" axtarın və üzərinə vurun
  5. Növbəti səhifədə "Cədvələ yeni satır əlavə edildi" kartını seçin
  6. Sonra digər tətbiqetmənin yazdığı elektron tabloya işarə etmək üçün sahələri doldurun

    • Bu nümunədə yol "IFTTT/MakerWebooks/sensor_activated" dir
    • Fayl adı "Sensor Tarixi" dir
  7. Növbəti səhifədə mavi "+o" düyməsini basın
  8. "Bildirişlər" xidmətini axtarın və seçin
  9. İndi bildiriş xidməti sahələrini doldurmalıyıq

    • Başlıq olaraq dəyişdirilir

      {{SütunB}} {{SütunC}} idi

    • Mesaj ayarlanır

      {{SütunB}}, {{SütunA}} tarixində {{SütunC}} idi

    • Bağlantı tək qalır
  10. Sonra "Fəaliyyət Yarat" düyməsini basın
  11. Son olaraq son ekranda "Bitir" düyməsini basın

IFTTT bildiriş sisteminin ikinci hissəsini sınamaq üçün IFTTT tətbiqini mobil cihazınıza yüklədiyinizə və etimadnamənizlə daxil olduğunuza əmin olun. Mənim vəziyyətimdə google hesabımla daxil oluram. İndi bunu "Documentation" səhifəsinə qayıdıb "sensor_aktivləşdirilmiş" hadisə adı ilə, "dəyər1" yerini məkana və "dəyər2" sahəsini vəziyyətə qoyaraq sınağı ataraq sınaya bilərik.

Bu sizə bir bildiriş göndərməlidir. Birini almırsınızsa, eyni hesabla daxil olduğunuzdan və tətbiqin sizə bildiriş göndərməsinə icazə verdiyinizdən əmin olun.

Addım 6: Arduino IDE və Sketch

Arduino IDE və Sketch
Arduino IDE və Sketch
Arduino IDE və Sketch
Arduino IDE və Sketch

Kart üçün istifadə olunan proqram Arduino IDE istifadə edərək tərtib edilmişdir.

Məntiq belədir:

  • Qamış açarı qapını açaraq bağlanır
  • ESP daha sonra işə salınır və WiFi şəbəkəsinə qoşulur
  • WiFi bağlantısı qurulduqdan sonra bir qapının və ya başqa bir şeyin açıldığını bildirən bir http sorğusu göndərir (internetə bir əmr göndərir).
  • Sonra qapının bağlı olub olmadığını müəyyən etmək üçün qamış açarından bir siqnal oxuyur
  • ESP lövhəsi qamış açarının açıldığını (yəni qapının bağlı olduğunu) aşkar etdikdə, qapının bağlı olduğunu bildirən başqa bir http sorğusu göndərir.
  • Daha sonra lövhənin gücünü kəsmək üçün yumşaq mandal dövrəsinə siqnal verir

Arduino IDE proqramını yükləyin

Yükləmək üçün arduino kodunu bu hissəyə əlavə etdim. Arduino IDE yoxdursa, https://www.arduino.cc/en/Main/Software ünvanından onlayn olaraq yükləyə bilərsiniz.

Müvafiq lövhə menecerini quraşdırın

Kodu ESP lövhənizə yükləmək üçün aşağıdakı addımlardan istifadə edərək Arduino IDE -də bir idarəçi qurmalısınız.

  • Tercihlər pəncərəsini açmaq üçün Fayl> Tercihlərə gedin
  • Tercihlər pəncərəsində "Əlavə İdarəçi URLləri" yazan sahəni tapın
  • Aşağıdakı linki bu sahəyə yapışdırın https://arduino.esp8266.com/stable/package_esp8266com_index.json və "OK" düyməsini basın
  • İndi Tools> Board -a gedərək lövhələr menecerini açın, sonra ilk giriş Panolar Meneceri olacaq
  • Lövhə menyusuna "ESP8266" yazın və "esp8266" qurun, yeni versiyalarla bağlı bəzi problemlərim olduğu üçün 2.5.0 versiyasını seçirəm.
  • İndi geri qayıdın və Alətlər> Kart> Ümumi ESP8266 Modulundan lövhənizi seçin
  • Sonra dəyişikliklərin baş verdiyinə əmin olmaq üçün arduino ideasını bağlayın və yenidən açın

Eskizi Arduino IDE -də açın

Sensorun sizin üçün işləməsi üçün kodun dörd sətrini dəyişdirməliyik

  1. SSID -ni WiFi SSID olaraq dəyişdirin, wifi adınız
  2. Şifrənizi wifi parolunuza uyğun olaraq dəyişdirin
  3. "Webhook" xidmətinin "Documentation" səhifəsindəki url ilə uyğun gəlmək üçün url dəyişdirin
  4. Sensorun yerini yerləşdirməyi planlaşdırdığınız yerə dəyişdirin, bu ön qapı, arxa qapı, poçt qutusu və s.

İndi kodu ehtiyaclarınıza uyğun olaraq dəyişdirdiyiniz üçün onu lövhəyə yükləməliyik. Mənim vəziyyətimdə bir USB proqramçısı istifadə edirəm və bunun üçün təlimatları izləyirəm. Bu çox problem həll etməyi tələb edə bilər, buna görə daha dərindən bir dərs üçün onlayn baxmağı təklif edirəm. Mənim vəziyyətimdə ESP-01-ləri proqramçıya bağlayıram, sonra kompüterə bağlayıram, sonra keçiddən uart-dan prog-a çevirirəm, sonda proqramçını ayırıb yenidən qoşuram. Bu artıq ESP-ni proqramlaşdırma rejimində buraxır. İndi yalnız yükləmə düyməsini vururam və yükləmənin bitməsinə icazə verirəm. Bağlandığını görmək istəyirsinizsə, serial monitorunu açıb status mesajlarına baxa bilərsiniz. Eskizi yüklədikdən sonra hər şeyi bir yerdə lehimləyəcəyik, bir qəfəsə qoyub istədiyimiz yerə bağlayacağıq.

Addım 7: Kassa (3D Çaplı)

Korpus (3D çaplı)
Korpus (3D çaplı)
Korpus (3D çaplı)
Korpus (3D çaplı)
Korpus (3D çaplı)
Korpus (3D çaplı)

Bütün komponentləri yerləşdirmək, maqnit yerləşdirmək və qamış açarını hizalamaq üçün aşağıdakı korpusu hazırladım. İkinci hissə, açarın açılmasına və bağlanmasına imkan verəcək ikinci bir maqnit tutmaq üçün istifadə olunur.

Bütün komponentlər bir -birinə lehimləndikdən sonra onları korpusun içinə sıxa bilərik, əgər istəsəniz hər şeyi tutmaq üçün dibinə bir az isti yapışqan əlavə edə bilərsiniz. Sonra elektronikanın olduğu qutuya bir maqnit basaraq hizalamalıyıq. lazım olduqda qamış açarı. Digər maqnit digər korpusa basılmalıdır. Hər iki korpus tamamlandıqda, iki korpusu bir araya gətirərək, sonra ayıraraq yenidən bir araya gətirərək sınaya bilərik. İndi iki bildiriş almalıyıq: biri sensoru açdı, birini də sensoru bağladı. Batareyanın boşalmaması üçün ikisini bir yerdə saxlayın.

Sensorların arxasına montaj lentini yapışdırın və istədiyiniz yerə tətbiq edin. Mən poçt qutuma minmişəm. İndi hizalanmanın düzgün olduğunu və sensorun açıq və qapalı bir mesaj göndərə biləcəyini yoxlayın.

Voila, indi açıldıqda və bağlandıqda sizi xəbərdar edəcək öz sensorunuz var. Bəyəndiyinizi və yaxşılaşdırıla biləcəyini düşündüyünüz bir şey varsa mənə bildirin.

Mən də bu təlimatı IOT müsabiqəsinə təqdim edirəm, buna görə də bəyəndiyinizə və zövq aldığınız digər IOT layihələrinə səs verməyinizə əmin olun

Addım 8: Gələcək Təkmilləşdirmələr

Bu layihə üçün bir neçə problemlə qarşılaşdım. Qarşılaşdığım ilk problem, Vgs çox yüksək olan bir mosfetin istifadəsi idi, buna görə fərqli bir problemə keçməli oldum. İkincisi, istifadə etdiyim qamış açarı normal olaraq açıqdır və mənim vəziyyətimdə normal olaraq qapalı bir keçid tətbiq etmək daha asan olardı və çox yer qənaət edərdi. Nəhayət, esp 01 -lərlə işləmək çox çətin idi və düzgün işləməsi üçün gpio pinləri ilə qarışmaq məcburiyyətində qaldım, amma yenə də bəzi problemlərim var idi. Düşünürəm ki, bu layihə mənə çoxlu anlayışlar öyrədə bildi və esp8266 lövhələri və IFTTT -dən istifadə edərək daha çox fikir və həyata keçirməyimə kömək etdi.

IoT Challenge
IoT Challenge
IoT Challenge
IoT Challenge

IoT Challenge -da ikinci yer

Tövsiyə: