Mündəricat:

Raspberry Pi Qapı Bildiricisi: 6 addım (şəkillərlə)
Raspberry Pi Qapı Bildiricisi: 6 addım (şəkillərlə)

Video: Raspberry Pi Qapı Bildiricisi: 6 addım (şəkillərlə)

Video: Raspberry Pi Qapı Bildiricisi: 6 addım (şəkillərlə)
Video: My Raspberry Pi based, Wi-Fi enabled garage door opener 2024, Noyabr
Anonim
Raspberry Pi Qapı Bildiricisi
Raspberry Pi Qapı Bildiricisi

İnsanların qapılara girib -çıxmadığını heç düşünmüsünüzmü? Qapının hərəkətini izləmək üçün təmkinli, ucuz və sürətli bir yol istəyirsinizmi … və bəlkə də kiçik bir layihə? Başqa baxma! Bu sadə cihaz, hərəkət edən qapılardan gələn titrəmələri izləyəcək və müəyyən bir e -poçt ünvanına bir e -poçt ilə istifadəçiyə hesabat verəcəkdir.

Bu layihə sizə Flask, Raspberry Pis, GPIO sensorlar və Mandrill API ilə bir az təcrübə verəcək! Yalnız qurmaq əyləncəli deyil, həm də bir çox faydalı xüsusiyyətə malikdir. Daxil olanlara diqqətli olun …

Addım 1: Təchizat

Təchizat
Təchizat

Hələ də bu ziddiyyəti qurmağı düşünürsünüzmü? İşdə sizə lazım olan budur:

  • Moruq Pi 3
  • Micro SD kart
  • 3 dişi-qadın tel
  • 1 vibrasiya sensoru
  • Güc bankı
  • Əmr əmrləri

Bu layihəni birdən çox qapı üçün inşa etməyi planlaşdırırsınızsa, hər bir təchizatı nə qədər cihaza ehtiyacınız olduğunu vurun.

Bu cihazı qurmaq/sınamaq prosesindəsinizsə, aşağıdakılara sahib olmaq lazım deyil … ancaq bu, çox faydalı olardı.

  • Kompüter monitoru
  • USB klaviatura
  • Mikro USB şarj dəsti

Addım 2: Kabel çəkmə

Kablolama
Kablolama
Kablolama
Kablolama

Raspberry Pi, bir çox fərqli sensorlar və periferik qurğularla birlikdə gətirilən yaraşıqlı bir cihaz olsa da, ehtiyac duyduğumuz ölçüləri edə bilməsi üçün əsas sensoru Pi kabelinə əlavə etməliyik. Bu layihədə istifadə olunan əsas sensoru yuxarıdakı şəkildə görmək olar - yüksək həssaslığa malik bir titrəmə sensoru. Bu sensoru yerləşdirmək və tellərimizdən keçirtmək üçün bir çörək taxtası və ya başqa bir montaj qurğusundan istifadə edə bilsək də, sadəcə dişi-qadın telləri vasitəsi ilə birbaşa Raspberry Pi cihazındakı pinlərə bağladıq.

Bir kabel sxemini yuxarıda tapa bilərsiniz (https://www.piddlerintheroot.com/vibration-sensor/ saytından götürülmüşdür). Sadəcə olaraq, bütün telləri bu şəkildə göstərildiyi kimi bağlayın və vibrasiya sensörünüz işə düşməlidir. Nəhayət bu layihə üçün bir batareya paketinə ehtiyacınız olacağını da unutmayın, amma sınayırsınızsa, cihazın bir elektrik prizinə qoşulması faydalıdır.

Addım 3: Əşyaların qurulması

Təbriklər! Bu günə qədər uğur qazandınız. Davam edək!

İndi birbaşa Pi ilə işə başlayacağıq. Aşağıdakıların hamısı cihazda klaviatura və monitorla edilə bilər (və ya rahatsınızsa SSH vasitəsilə).

Bir Pi və Flask ilə işləyən hər hansı bir GPIO sensoru əldə etmək üçün çoxlu ilkin qurulma var. Səbir bir fəzilətdir. Əvvəlcə quraşdırmanız lazım olan bir neçə Python kitabxanası var. Bu, Python üçün kitabxana/paket meneceri Pip ilə edilə bilər. İstifadə etmək üçün sizə lazım olan bəzi kitabxanaları adlandırmaq üçün `pip install` yazın:

  • istək
  • RPi. GPIO
  • balon
  • flask_restful
  • flask_wtf
  • wtforms
  • e -poçt
  • mandril

Bunların quraşdırılmasını gözləyərkən bir qəhvə götürmək istəyə bilərsiniz - bir az vaxt ala bilər.

İndi bütün kitabxanalarınız quraşdırıldıqdan sonra Flask layihənizə başlamağa hazırsınız. Flask, işlədiyi cihazdan səhifələrə xidmət edən yüngül bir çərçivədir. Bu vəziyyətdə, Raspberry Pi bir serverə çevrilir. Çox yaraşıqlı, hə? Çox sadə bir Flask tətbiqinin necə qurulacağını burada öyrənə bilərsiniz. Zəhmət olmasa bundan sonra təlimatlardan hər hansı birini sınamadan əvvəl edin.

Addım 4: Kod və Çalışma

Bunu tamamladıqdan sonra, layihə fayllarını hazırlamağa hazırsınız. Ehtiyac duyduğunuz bütün faylları aşağıya daxil etdim --– ehtimal ki, kodu yenidən yazmalısınız və yalnız faylları kopyalamayın (DAHA ƏTRAFLI ÖĞRƏNMƏYİN!).

Kataloq təşkilatları necə görünməlidir:

+- iotapp | +- appFolder | +- şablonlar | +- index.html | +- _init_.py | +- formlar.py | +- mcemail.py | +- marşrutlar.py | +- iotapp.py | +- vibes.py

Bu sənədlərin hamısını bu düzgün qaydada yerləşdirin və layihənizi qısa müddətdə işə sala biləsiniz. Flask serverinizi işə salmaq üçün kök qovluğuna keçməlisiniz. Sonra yazmalısınız:

$ ixrac FLASK_APP = iotapp.py

$ python -m flask run --host 0.0.0.0

Bununla, serverinizin işlədiyini göstərən bir mesaj almalısınız və səhifəni cihazdan şəbəkədəki başqa bir cihaza xidmət edə bilməlisiniz.

İndi sənədlərinizə baxmaq və kodun nə etdiyini başa düşmək üçün yaxşı bir vaxt olardı. Əlbəttə ki, kodun heç biri daş üzərində qurulmamışdır … hamısı layihənin xüsusi ehtiyaclarına uyğun olaraq yenilənə/dəyişdirilə bilər. Məsələn, cihaz vibrasiya sensorundan giriş aldıqdan sonra poçt göndərdikdə, girişin nə vaxt baş verdiyini göstərir. Ancaq server bu məlumatları saxlamır. İstifadəçi tarixi məlumatları saxlamağı üstün tutsa və bunu bir yerdə göstərmək istəsəydi edilə bilərdi.

Çox güman ki, fərq edəcəyiniz bir şey KODUN TAM OLMADIĞIdır. Bu layihə vibrasiya zamanı (qapının açılması) bildiriş e -poçtları göndərmək üçün xarici API -dən istifadə edir. Bunu qurmaq üçün bir Mandrill hesabı yaratmalı və bir API açarı yaratmalısınız.

Göndərmə sahənizi təsdiqlədikdən və bir API açarına sahib olduqdan sonra açarınızı 'mcemail.py` faylına yerləşdirə və göndərmə məlumatlarını tənzimləyə bilərsiniz (ya eyni fayldakı standart parametri dəyişdirərək və ya keçərək 'route.py` faylında fərqli bir e -poçtda. Mandrill haqqında daha çox sənəd və necə istifadə etmək istəyirsinizsə, buradan tapa bilərsiniz.

Addım 5: Test

Test
Test

Cihazı daimi bir yerə bağlamadan əvvəl, etdiyini hər şeyi sınamaq yaxşı olar. İşi necə apardığınız budur.

Cihaz həqiqətən iki proqramla işləyir: `vibes.py` və Flask serveri. Birincisi əvvəlcə arxa planda işləməlidir və sonra Flask serveri işləyə bilər. 'vibes.py' sadəcə serverə POST edir və server POST sorğusunu şərh edir.

$ python vibes.py &

$ python -m flask run --host 0.0.0.0

Daha sonra düzgün URI/IP -ə gedə və bütün bildirişlərinizi göndərmək istədiyiniz e -poçt ünvanını təyin etməlisiniz. Bəzi test e -poçtları göndərmək və layihənin işlədiyini yoxlamaq üçün titrəmə sensoruna vurmalısınız.

Hər şey yaxşı görünür? Yaxşı, biz işə hazırıq!

Addım 6: Montaj

Montaj
Montaj

Cihazın quraşdırılması olduqca başa düşüləndir. Əsasən, cihazın batareya paketinə qoşulduğundan əmin olmalısınız və cihazı qapıya bağlamaq üçün əmr şeridlərindən istifadə etməlisiniz.

Qeyd: Sensorun qapının hərəkətini tutması üçün cihaz qapıya dik olan vibrasiya sensoru ilə yerləşdirilməlidir

Bu tamamlandıqdan sonra cihaza SSH daxil etməli və əvvəlki addımda qeyd edildiyi kimi proqramları işə salmalı və girənləri gözləməlisiniz!

Əlavə nöqtələr üçün, müdaxilə edənlərin ağıllı cihazınızdan şübhələnməməsi üçün telləri/cihazı gizlətməyə çalışın!… Və ya sadəcə şüşə qapıya qoymayın. ¯ / _ (ツ) _/¯

Tövsiyə: