- Gerekli malzemeler:
- Modüller Açıklaması:
- Şematik ve Donanım
- IFTTT kullanarak E-posta göndermek için bir API oluşturma:
- Arduino Programı
- -CircuitDigest
- Çalışma
Bu, birini tespit ettiğinde bir E-postayı tetikleyebilecek bir Güvenlik sistemi oluşturacağımız bir başka ilginç IOT projesidir. Bu proje ESP8266, PIR sensörü ve ISD1820 Ses modülünün gücüyle harmanlanmıştır. Bu makalenin sonunda, internet üzerinden uzaktan Kurulan / Devre Dışı Bırakılabilen (Etkinleştirilen / Devre Dışı Bırakılan) tamamen işlevsel bir Güvenlik sistemi oluşturmuş olacaksınız. Bir hareket algılandığında çalınacak olan kendi ses klibinizi kaydedebilir ve ayrıca belirli bir E-posta kimliğine izinsiz girişi belirten Tarih ve saat içeren bir posta gönderebilirsiniz. Yeteri kadar soğuk…..!!!??
Öyleyse onu inşa edelim..
Gerekli malzemeler:
Bu projeyi inşa etmek için gerekli malzemeler aşağıda listelenmiştir
- ESP8266
- PIR sensörü
- ISD1820 Ses Modülü
- LM317, LM7805
- BC547 (2 Adet)
- 1K, 200ohm, 330ohm dirençler
- 10 uf ve 0.1 uf Kapasitörler
- Kuruluma güç sağlamak için 12V adaptör / 9V pil
Modüller Açıklaması:
Proje, ESP8266 modülü, PIR sensörü ve ISD1820 Ses modülü olmak üzere üç önemli bileşeni barındırmaktadır. Bu modüllere aşina iseniz, şemaya geçerken bu bölümü atlayabilirsiniz, ancak nasıl çalıştıklarını öğrenmek istiyorsanız okumaya devam edin.
ESP8266 Modülü:
Eminim bu modüle bir ara rastlamışsınızdır. Çoğunlukla IOT projelerinde kullanılan çok ünlü ve güçlü bir WiFi modülüdür.
Bu proje, ESP8266 ile nasıl başlayacağınızı ve Arduino IDE'yi kullanarak nasıl programlayabileceğinizi açıkladığım aşağıdaki iki öğreticiyi ziyaret etmiyorsanız, bir ESP8266 modülünü nasıl programlayacağınızı bildiğinizi varsayar. Projeyi tamamlamak için bunu bilmelisiniz.
- ESP8266 ile Başlarken
- Arduino IDE kullanarak ESP8266'yı programlama
PIR sensörü:
PIR sensörü, Pasif Kızılötesi sensör anlamına gelir. İnsanların veya hayvanların varlığını tespit edebilen düşük maliyetli bir sensördür. Sensörde iki önemli malzeme bulunmaktadır; biri canlı bir organizmadan (insanlar / hayvanlar) gelen ısı imzalarını algılayabilen piroelektrik kristal ve diğeri sensörün menzilini genişletebilen bir Fresnel mercekleridir. Ayrıca PIR sensör modülleri, aşağıdaki resimde gösterildiği gibi sensörün çalışmasını ayarlamak için bize bazı seçenekler sunar.
İki potansiyometre (turuncu renk) hassasiyeti kontrol etmek ve sensörün zamanında tetiklenmesi için kullanılır. Temel olarak sensörün Dout pimi, Vcc ve Gnd pimleri arasında bulunur. Modül 3.3V ile çalışır ancak 5V ile de çalıştırılabilir. Sol üst köşede, modülün iki farklı modda çalışmasını sağlamak için kullanılabilen bir tetik pimi kurulumuna da sahiptir. Biri "H" modu ve diğeri "I" modudur.
"H" modunda, menzil içinde bir kişi algılandığında çıkış pini Dout yüksek (3,3V) olur ve belirli bir süre sonra düşer (süre potansiyometre ile ayarlanır). Bu modda, kişinin hala menzil içinde bulunup bulunmadığına veya alanı terk etmesine bakılmaksızın, çıkış pini yüksek olacaktır. Modülümüzü projemizde “H” modunda kullanıyoruz.
"I" modunda, menzil içinde bir kişi tespit edildiğinde çıkış pini Dout yüksek (3,3V) olacak ve Sensör aralığı sınırları içinde kaldığı sürece yüksek kalacaktır. Kişi alanı terk ettikten sonra, potansiyometre kullanılarak ayarlanabilen belirli bir süre sonra pin düşük olacaktır.
Not: Potansiyometrelerin veya pimlerin konumu, PIR sensörü satıcınıza bağlı olarak değişebilir. Bağlantılarınızı belirlemek için İpek ekranını takip edin
ISD1820 Ses modülü:
ISD 1820 Ses modülü, Projelerinizi Sesli duyurularla renklendirebilecek gerçekten harika bir modüldür. Bu modül, 10 saniye boyunca bir Ses klibi kaydedebilir ve ardından gerektiğinde oynatabilir. Modülün kendisi bir mikrofon ve bir hoparlör (8 ohm 0,5 watt) ile birlikte gelir ve aşağıda gösterildiği gibi görünmelidir.
Modül + 5V ile çalışır ve soldaki berg çubukları kullanılarak çalıştırılabilir. Ayrıca, altta Rec olan üç düğmeye sahiptir. düğmesine, PlayE. düğmesi ve PlayL. sırasıyla düğmesi. Rec tuşuna basarak sesinizi kaydedebilirsiniz. düğmesine basın ve PlayE düğmesini kullanarak oynatın. PlayL, düğmeyi basılı tuttuğunuz sürece sesi çalacaktır. Bir MCU veya ESP ile arayüz oluştururken soldaki pinleri kullanabiliriz. Bu pinler 3V-5V tolere edilebilir ve dolayısıyla doğrudan Arduino / ESP8266 tarafından çalıştırılabilir. Projemizde PLAYE pinini ESP8266 modülümüzün GPIO 0 pinini kullanarak kontrol ediyoruz. Böylece, bir davetsiz misafir tespit edildiğinde kaydedilen sesi çalabiliriz.
Şematik ve Donanım
Bu IoT güvenlik sistemi projesinin tam şeması aşağıda gösterilmiştir:
Devre iki voltaj regülatöründen oluşur. Biri LM317 kullanılarak tasarlanmış bir 3.3V regülatör, diğeri ise 7805 Regulator IC kullanılarak yapılan bir 5V regülatördür. LM317, 200ohm ve 330ohm dirençler kullanılarak çıkışı 3.3V'a ayarlanmış değişken bir voltaj regülatörüdür. Her iki regülatör de 12V adaptör kullanılarak çalıştırılır. Bu devrenin güç tüketimi çok azdır, dolayısıyla 12V adaptör yerine 9V'luk bir pil de kullanılabilir.
PIR sensörü ve Ses modülü, GPIO 2 pini yüksek yapılarak açılır. Bu pim, BC547'yi 1k akım sınırlama direnci üzerinden sürecek ve her iki modül için güç devresini tamamlayacaktır. GPIO_0 pini bir Giriş pini kullanılır. BC547 transistör aracılığıyla PIR sensörünün Dout pinine bağlanır. Bu pin yükseldiğinde, Arduino Programımız aracılığıyla izinsiz girişi belirten bir E-postayı tetikleyeceğiz.
Çıkış pinlerinin (Dout, GPIO_2 ve GPIO2) kaynak akımı çok daha az, bu yüzden onları sürmek için bir transistör kullandım. Ayrıca ESP8266'nın GPIO pinleri, modül açıldığında yüklenmemelidir, aksi takdirde modül sonsuz sıfırlama döngüsüne girecektir. Bundan kaçınmak için, güç verirken geçici olarak bağlantılarını kesmek için iki anahtar yerleştirdim.
Yukarıdaki devreleri bir Perf panosuna lehimleyebilir veya sadece bir devre tahtası kullanabilirsiniz. Modüllerin lehimlenmesini önlemek için dişi / erkek berg çubukları kullandım. Tamamlandıktan sonra panonuz aşağıdaki gibi görünmelidir
IFTTT kullanarak E-posta göndermek için bir API oluşturma:
Donanım hazır olduğunda, belirli bir E-posta kimliğine E-posta gönderebilen bir API (Uygulama Programı Arayüzü) oluşturalım. Bu, IFTTT.com adlı bir web sitesinin yardımıyla kolayca yapılabilir. Aynı IFTTT hizmetlerini kullanan PIC Mikroişlemci kullanarak ESP8266 kullanarak SMS ve E-posta gönderebilen bir projeyi de ele aldım.
Henüz IFTTT'yi kullanmadıysanız, bu eğitimin sonundaki videoyu ziyaret edin, aşina iseniz aşağıdaki adımları izleyin.
1. IFTTT hesabınıza giriş yapın
2. "Maker Web kancaları" nı arayın ve bağlan'a tıklayın
3. Şimdi "Gmail" i arayın ve bağlan'a tıklayın ve erişim vermek için adımları izleyin
4. Ardından, My Applet-> New Applet'e tıklayarak bir Applet oluşturun.
5. Burada, "Bu" işlevi web makerhooks hizmeti için olacak ve "o" işlevi Gmail Hizmetleri olacaktır.
6. Bu yüzden "Bu" üzerine tıklayın, Web yapıcı kancalarını arayın ve seçin. Etkinliğime "123" adını verdiğim etkinlik adını soracak, sizinkine istediğiniz adı verebilirsiniz
7. Ardından "O" seçeneğine tıklayın, Gmail'i arayıp seçin ve postanın konusunu ve metnini girin.
8. Gerekli tüm ayrıntılar girildikten sonra Apple'ınız hazır olmalı ve aşağıdaki gibi görünmelidir
9. Şimdi, Web Maker Hooks'u tekrar arayın ve girin ve "Belgeler" e tıklayın. Daha sonra olay adı altında, Uygulamada kullandığımız olay adını girin. Benim durumumda "123" ve URL'yi kopyalayın çünkü Arduino programımızda buna ihtiyacımız olacak. URL aşağıdaki gibi bir şey olmalıdır.
10. Bağlantınızın düzgün çalışıp çalışmadığını kontrol etmek için "Test et" düğmesine tıklayabilirsiniz ve bunu yaparak bir test postası almış olmalısınız.
Arduino Programı
Bu proje için Arduino Programı basit ve kolaydır. ESP'nin AP ve STA olarak hareket etmesini sağlamalıyız. Ardından, HTML kodunu kullanarak Alarm sistemini ARM / DISARM yapabileceğimiz bir web sayfası oluşturun. Kodun tamamı bu öğreticinin sonunda verilmiştir, kod da yorum satırları kullanılarak açıklanmıştır. Ayrıca önemli satırlar aşağıda açıklanmıştır.
const char * ssid = "BPAS ana sayfası"; // Wifi SSID'nizi buraya girin const char * password = "cracksen"; // Şifrenizi buraya girin
Yukarıdaki kod satırında, SSID adını ve Parolasını yönlendiricilerinizin SSID adı ve ilgili parolasıyla değiştirin.
ESP8266'nızın hangi IP'ye bağlı olduğunu bulmak istiyorsanız, seri monitörü açarak öğrenebilirsiniz, aşağıdaki kod satırları IP'nizi Arduino IDE seri monitöründe yazdıracaktır.
Serial.println (""); Serial.print ("Bağlı"); Serial.println (ssid); Seri.print ("IP adresi:"); Serial.println (WiFi.localIP ()); // Seri monitör, ESP modülünüzün IP adresini verecektir
Bir web sayfası oluşturmaktan sorumlu olan HTML kodu aşağıda verilmiştir. Web sayfanızı kendi kodunuzla özelleştirebilirsiniz. Geri bildirim bölümünü, sayfanın başarıyla yüklenip yüklenmediğini kullanıcıya bildirecek şekilde değiştirdim.
// Web sayfası için HTML kodu // mainPage + = "
IOT tabanlı güvenlik sistemi
-CircuitDigest
Alarm Durumu:
"; geribildirim ="Güvenlik sistemini etkinleştirmek için ARM'ye tıklayın
"; // HTML kodunun sonu //Aşağıdaki kod satırları, Alarm Devreye Alındığında veya Devre Dışı Bırakıldığında ne yapılması gerektiğini belirler. Programımda HTML kodunun geri bildirim kısmını değiştirdim ve aşağıda gösterildiği gibi düğmeyi temel alarak GPIO 2 pin HIGH / LOW yaptım
server.on ("/ switch2On", () {feedback = "
Alarm çalışıyor ve çalışıyor
"; // HTML kod değişikliği currentPage = mainPage + feedback; server.send (200," text / html ", currentPage); currentPage =" "; digitalWrite (GPIO_2, HIGH); // PIR ve Ses modülünü açın power_module = true; delay (1000);}); server.on ("/ switch2Off", () {feedback = "Alarm çalışmıyor
"; // HTML kod değişikliği currentPage = mainPage + feedback; server.send (200," text / html ", currentPage); currentPage =" "; digitalWrite (GPIO_2, LOW); // PIT ve Ses Modülünü kapatın power_module = yanlış; gecikme (1000);});Sistemin düzgün çalışması için değiştirilmesi gereken bir diğer Önemli satır, URL dizgi satırıdır. IFTTT web sitesinden kopyaladığınız satırı (”/ tetikleyiciden” sonra) buraya yapıştırın. Benimkini aşağıda gösterdim ama API anahtarımı kullanma burada kendi anahtarımı kullan
String url = "/ trigger / 123 / with / key / mDsoOV_EERS3xRfrh3_UQBhbcx0qlRHns-z2qXXXXX"; // API URL'nizle değiştirmelisiniz
Kodun geri kalanı kendinden açıklamalıdır, herhangi bir şüpheniz varsa yorum bölümünü kullanabilirsiniz ve size yardımcı olacağım.
Çalışma
Donanım ve kodlar ile hazır olduğunuzda, bir FTDI kartı kullanarak programı ESP8266 modülünüze yükleyebilirsiniz. Arduino IDE kullanarak ESP8266'ya nasıl program yükleyeceğinizden emin değilseniz bu öğreticiyi ziyaret edin.
Programı yükledikten sonra seri monitöre tıklayın ve aşağıdaki gibi bir şey göreceksiniz. ESP8266 modülünüzü sıfırlamazsanız ve tekrar deneyin
Burada, ESP8266 modülünüze ayrılan IP adresini de not edebilirsiniz. Ardından, tarayıcınızdaki web sayfasını yüklemek için IP'yi kullanabilir ve aşağıdaki resimde gösterildiği gibi IoT Güvenlik sisteminizi buradan Kurabilir / Devre Dışı Bırakabilirsiniz.
Tüm bunları doğruladıktan sonra artık ESP8266'nızı Perf panosuna aktarabilir ve AÇIK konuma getirebilir ve ardından Videoda gösterildiği gibi anahtarları kısa devre yapabilirsiniz.
Gücü açtıktan sonra IP'yi kullanarak yukarıda gösterilen web sayfasına girebilir ve Securtiy sistemini etkinleştirebilirsiniz. Etkinleştirdikten sonra PIR sensörünün kalibre edilmesi için 50-60 saniye bekleyin.
Artık projeksiyonunuz harekete geçmeye hazır, istediğiniz yerde bırakabilirsiniz ve herhangi biri bu yerleri geçip PIR sensörünün menziline girerse, bir sesli mesaj tetiklenecek ve E-postanıza bir E-posta gönderilecektir. Geçtiği Tarih ve saati gösteren kimlik. E-posta aşağıda gösterilmiştir.
İşte bu kadar.. Umarım projeyi beğenmişsinizdir ve kendi projenizi yapmaktan zevk alırsınız. Projenin tam çalışması aşağıdaki Videoda gösterilmektedir. Herhangi bir şüpheniz veya öneriniz varsa aşağıdaki yorum bölümüne yazabilirsiniz, mümkün olduğunca cevap vereceğim.