İçindekiler:

Raspberry Pi Kapı Bildirimi: 6 Adım (Resimli)
Raspberry Pi Kapı Bildirimi: 6 Adım (Resimli)

Video: Raspberry Pi Kapı Bildirimi: 6 Adım (Resimli)

Video: Raspberry Pi Kapı Bildirimi: 6 Adım (Resimli)
Video: Raspberry Pi ve IoT Uygulamaları 2024, Kasım
Anonim
Raspberry Pi Kapı Uyarıcısı
Raspberry Pi Kapı Uyarıcısı

İnsanların kapılara erişip erişmediğini veya ne zaman eriştiğini hiç merak ettiniz mi? Kapı hareketini izlemenin gizli, ucuz ve hızlı bir yolunu ve belki küçük bir projeyi mi istiyorsunuz? Başka yerde arama! Bu basit cihaz, hareketli kapılardan yayılan titreşimleri takip edecek ve belirli bir e-posta adresine bir e-posta göndererek kullanıcıya geri bildirimde bulunacaktır.

Bu proje size Flask, Raspberry Pis, GPIO sensörleri ve Mandrill API ile biraz pratik kazandıracak! Sadece inşa etmek eğlenceli değil, aynı zamanda çok fazla faydası var. Davetsiz misafirler dikkat…

Adım 1: Sarf Malzemeleri

Gereçler
Gereçler

Hâlâ bu mekanizmayı yapmayı mı planlıyorsun? İşte ihtiyacınız olacak:

  • Ahududu Pi 3
  • Mikro SD kart
  • 3 dişi-dişi kablo
  • 1 titreşim sensörü
  • bir güç bankası
  • Komut şeritleri

Bu projeyi birden fazla kapı için inşa etmeyi planlıyorsanız, sarf malzemelerinin her birini ihtiyacınız olan cihaz sayısıyla çarpın.

Bu cihazı oluşturma/test etme sürecindeyseniz, aşağıdakilere sahip olmanız gerekmez… ancak, kesinlikle çok yardımcı olacaktır.

  • bir bilgisayar monitörü
  • USB klavye
  • Mikro USB şarj kiti

Adım 2: Kablolama

kablolama
kablolama
kablolama
kablolama

Raspberry Pi, birçok farklı sensör ve çevre birimiyle birlikte gelen şık bir cihaz olsa da, ihtiyacımız olan ölçümleri yapabilmesi için ana sensörü Pi'nin kablolarına eklememiz gerekiyor. Bu projede kullanılan ana sensör yukarıdaki resimde görülebilir –– yüksek hassasiyete sahip bir titreşim sensörüdür. Bu sensörü yerleştirmek ve kablolarımızı çalıştırmak için bir devre tahtası veya başka bir montaj cihazı kullanabilirken, onu dişi-dişi kablolar aracılığıyla doğrudan Raspberry Pi cihazı üzerindeki pimlere bağladık.

Yukarıda bir kablolama şeması bulunabilir (https://www.piddlerintheroot.com/vibration-sensor/ kaynaklı). Tüm kabloları bu resimde gösterildiği gibi bağlamanız yeterlidir; titreşim sensörünüzün kullanıma hazır olması gerekir. Ayrıca, bu proje için eninde sonunda bir pil takımına ihtiyacınız olacağını unutmayın, ancak test yapıyorsanız, cihazı bir duvar prizine takmanız muhtemelen yardımcı olacaktır.

3. Adım: Eşyaları Ayarlama

Tebrikler! Buraya kadar yaptın. Hadi devam et!

Şimdi doğrudan Pi ile çalışmaya başlayacağız. Aşağıdakilerin tümü bir klavye ve monitörle (veya rahatsanız SSH aracılığıyla) cihazda yapılabilir.

Bir Pi ve Flask ile çalışan herhangi bir GPIO sensörünü elde etmek için çok sayıda ön kurulum var. Sabır bir erdemdir. Önce yüklemeniz gereken epeyce Python kitaplığı var. Bu, Python için bir kütüphane/paket yöneticisi olan Pip ile yapılabilir. Kullanmak için `pip install` yazın ihtiyacınız olacak kitaplıklardan bazılarını adlandırmak için:

  • istekler
  • RPi. GPIO
  • şişe
  • şişe_rahatlatıcı
  • şişe_wtf
  • ağırlık formları
  • e-posta
  • mandril

Bunların yüklenmesini beklerken bir kahve içmek isteyebilirsiniz-– biraz zaman alabilir.

Artık tüm kitaplıklarınız kurulduğuna göre Flask projenizi başlatmaya hazırsınız. Flask, üzerinde çalıştığı cihazdan sayfalar sunan hafif bir çerçevedir. Bu durumda Raspberry Pi bir sunucu olur. Oldukça şık, ha? Çok basit bir Flask uygulamasının nasıl kurulacağını buradan öğrenebilirsiniz. Lütfen bundan sonra herhangi bir talimatı denemeden önce bunu yapın.

Adım 4: Kodlama ve Çalıştırma

Bunu tamamladığınızda, proje dosyalarını oluşturmaya başlamaya hazırsınız. İhtiyaç duyacağınız tüm dosyaları aşağıya ekledim–– ancak muhtemelen kodu yeniden yazmalısınız ve yalnızca dosyaları kopyalamamalısınız (DAHA FAZLA ÖĞRENECEKSİNİZ!).

Dizin organizasyonlarının nasıl görünmesi gerektiği aşağıda açıklanmıştır:

+-- iotapp | +-- uygulamaKlasörü | +-- şablonlar | +-- index.html | +-- _init_.py | +-- formlar.py | +-- mcemail.py | +-- rotalar.py | +-- iotapp.py | +-- vibes.py

Tüm bu dosyaları bu doğru sırayla yerleştirin ve projenizi kısa sürede hazır hale getirebilmelisiniz. Flask sunucunuzu çalıştırmak için kök dizine gitmelisiniz. Daha sonra şunu yazmalısınız:

$ dışa aktarma FLASK_APP=iotapp.py

$ python -m şişesi çalıştırma --host 0.0.0.0

Bununla, sunucunuzun çalıştığını belirten bir mesaj almalısınız ve sayfayı cihazdan ağdaki başka bir cihaza sunabilmelisiniz.

Şimdi dosyalarınıza bakmanın ve gerçekten kodun ne yaptığına dair bir fikir edinmeye çalışmanın tam zamanı. Tabii ki, kodlardan hiçbiri sabit değildir… hepsi projeye özel ihtiyaçlara uyacak şekilde güncellenebilir/değiştirilebilir. Örneğin, şu andan itibaren cihaz, titreşim sensöründen girdi aldıktan sonra POST yaptığında, girişin ne zaman gerçekleştiğinin zaman damgasını gönderir. Ancak, sunucu bu verileri kaydetmiyor. Bu, kullanıcı geçmiş bilgileri saklamayı tercih ederse ve bir yerde göstermek isterse yapılabilir.

Muhtemelen fark edeceğiniz bir şey, KODUN TAM OLMADIĞIDIR. Bu proje, titreşim (kapı açılması) üzerine bildirim e-postaları göndermek için harici bir API kullanır. Bunu ayarlamak için bir Mandrill hesabı oluşturmanız ve bir API anahtarı oluşturmanız gerekir.

Gönderen etki alanınızı doğruladıktan ve bir API anahtarına sahip olduğunuzda, anahtarınızı 'mcemail.py' dosyasına (varsa) yerleştirebilir ve gönderme bilgilerini ayarlayabilirsiniz (aynı dosyadaki varsayılan parametreyi değiştirerek veya `routes.py` dosyasındaki farklı bir e-postada Mandrill ve nasıl kullanılacağı hakkında daha fazla belge istiyorsanız, onu burada bulabilirsiniz.

Adım 5: Test Etme

Test yapmak
Test yapmak

Cihazı kalıcı konumuna monte etmeden önce, yaptığı her şeyi test etmek muhtemelen iyi bir fikirdir. İşleri şu şekilde yürütürsünüz.

Cihaz aslında iki program çalıştırıyor: `vibes.py` ve Flask sunucusu. Birincisi arka planda çalıştırılmalı ve ardından Flask sunucusu çalıştırılabilir. `vibes.py` sadece sunucuya POST gönderiyor ve sunucu POST isteğini yorumluyor.

$ piton vibes.py &

$ python -m şişesi çalıştırma --host 0.0.0.0

Ardından doğru URI/IP'ye gidebilmeli ve tüm bildirimlerinizi göndermek istediğiniz e-posta adresini ayarlayabilmelisiniz. Bazı test e-postaları göndermeyi denemek ve projenin çalıştığından emin olmak için titreşim sensörüne dokunmalısınız.

Her şey iyi görünüyor mu? Tamam, iş için hazırız!

Adım 6: Montaj

Montaj
Montaj

Cihazın montajı oldukça açıklayıcıdır. Temel olarak, cihazın pil takımına bağlı olduğundan emin olmanız ve cihazı kapıya sabitlemek için komut şeritlerini kullanmanız yeterlidir.

Not: Sensörün kapının hareketini yakalaması için cihaz, titreşim sensörü kapıya dik olacak şekilde konumlandırılmalıdır

Bu tamamlandıktan sonra, cihaza SSH yapabilmeli ve önceki adımda belirtildiği gibi programları çalıştırabilmeli ve davetsiz misafirleri beklemelisiniz!

Ekstra puanlar için, izinsiz giriş yapanların akıllı cihazınızdan şüphelenmemesi için kabloları/cihazı gizlemeye çalışın!…ya da cam bir kapıya koymayın. ¯\_(ツ)_/¯

Önerilen: