İçindekiler:
- Gereçler
- Adım 1: Akışı Anlayın
- 2. Adım: Ngrok
- 3. Adım: Düğüm-KIRMIZI
- Adım 4: İntegramat
- Adım 5: Sivrisinek
- Adım 6: Pushbullet
- Adım 7: Arduino IDE
- 8. Adım: Gösterge Tablosu
- Adım 9: Işık Sensörü
- Adım 10: Akıllı Çıkış Aktivatörü
- Adım 11: Kapı Aktivatörü
- Adım 12: Pencere Sensörü
- Adım 13: Alan Isıtıcı Sensörü
- Adım 14: Basın Aktivatörünü Değiştirin
Video: ForgetMeNot - Akıllı Ev Bildirim Platformu: 14 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Meşgul üniversite öğrencileri olarak, dersler, işler ve aile yükümlülükleri arasında koşuştururken, küçük şeyleri unutma eğilimindeyiz. Bir doğum günü gelir ve biz fark etmeden geçer, tamamen unutkanlık nedeniyle önemli bir son teslim tarihi kaçırılır ve bazen, sadece bazen, ısıtıcıyı açık unuttuğunuz için yangın çıkar ve odanızı yakar.
Endişelenme sevgili dostlar - kurtarmaya geliyoruz.
ForgetMeNot, günlük hayatımızda karşılaştığımız gerçek bir ihtiyaçtan (ve tamamen dürüst olursak, biraz Bilgisayar Bilimleri dersinde bir final projesi tarafından yönlendirilen) oluşturulan bir Akıllı Ev Bildirim Platformudur.
Özünde, donanım ve yazılımın bir birleşimidir. Evden çıkarken yapmayı unuttuğunuz şeylerin farkında olmanızı (ve harekete geçmenizi!) sağlar.
Remiks mi?
Yalnızca birkaç sensör (gözlemleyen şeyler) ve etkinleştiriciler (işleyen şeyler) kullanırken, her bir bileşenin genelliği, onu minimum donanım ve yazılım değişikliği ile çeşitli kullanım durumları için uygun hale getirir. Projenin bir kısmını (veya tamamını!) yeniden karıştırdıysanız bize bildirin - ortak çalışmalar için deli oluyoruz!
Kim?
Mizpe Ramon, McCann Valley'deki IDC Herzliya'dan Red Panda ekibi (bir alt kümesi) tarafından gururla yaratılmıştır. ForRealTeam'den Zvika Markfeld'e, ülkemizin en güzel bölgesinin ortasında inanılmaz şeyler inşa etmek üzere bizimle birlikte çöle gittiği için tam anlamıyla bir teşekkür paketi geliyor.
Özel teşekkür
Node-RED ve ESP8266'larımızla, özellikle burada test edebileceğimiz ilginç, yeni kavramların hiç bitmeyen akışı için Random Nerd Tutorials'taki insanlara.
Gereçler
Vay, o kadar çok şey var ki…
Bu oldukça kapsamlı bir proje ve kullandığımız donanım, yazılım ve diğer güzelliklerle ilgili bazı erken tasarım seçimleri yaptık.
Takip etmeyi planlıyorsanız aşağıdaki listeyi önersek de, daha kolay elde edilen öğeler için birçok parça değiştirilebilir. Bir örnek WeMos panolarıdır - panonun ucuz versiyonu ne olursa olsun, muhtemelen çok fazla değişiklik yapmadan çalışmasını sağlayabilirsiniz.
Farklı türden bir örnek, Smart Outlet'in kasasıdır. Güzel ve sağlam olsa da, herhangi bir (metal olmayan) kutu yapacaktır. Bir lazer kesiciye erişimimiz oldu ve bir lazer kesiciye erişimi olan herkesin birdenbire lazer kesim için pek çok kullanımı oldu. BÜTÜN HER ŞEY. Aynı şey 3D Baskılı parçalarımız için de geçerli.
Yani - sadece kendi donanımınızı sallayın ve bir parçayı başka bir parçayla değiştirmek için yardıma ihtiyacınız olursa aşağıya bir yorum bırakın.
Mikro Kontrolörler, kartlar ve kalkanlar
- 4 x ESP8266 kartı (LoLin yapımı WeMos D1 minis kullandık)
- 1 x D1 Mini Röle Kalkanı
- 1 x L293N Hbridge (Kapı Aktivatörünün DC motoru için kullanılır)
Güç
- 50 x Arduino tarzı atlama kablosu (kullandığınız panoya bağlı olarak, daha fazla dişi-erkek veya daha fazla erkek-erkek gerekebilir. Her birinden bir demet alın, her zaman işe yararlar) - unutmayın ki bazıları Kapı Aktivatörü için soyulabilir
- 3 x 10 Ohm direnç
- 1 x Xuanshi XS-XB6 16A ~250v maks. 3500W anahtarlı uzatma kablosu + uzatma kablosu (herhangi bir uzatma kablosu + 220V prizler için ayırıcı yapılmalıdır) - Smart Outlet için soyulacağını unutmayın
- 3 x Mikro-USB Kabloları
- 3 x USB Duvar Şarj Cihazı
- 1 x DY-0120200 (Giriş: 100-240V, 50-60Hz Çıkış: 12V---2A) DC kovan erkek başlı AC/DC Adaptör (veya eşdeğer adaptör)
- 1 x dişi DC varil jakı
- 1 x 220V - 5V trafo (Akıllı Çıkış kartına ek bir güç kaynağı olmadan doğrudan anahtarlı uzatma kablosundan güç sağlamak için)
Sensörler
- 1 x LDR Işık Sensörü
- 1 x Reed Röle (pencere için sensör görevi görür)
- 1 x DHT Sıcaklık sensörü
motorlar
- 1 x DC motor (çekirdeksiz metal fırçalı bir motor kullandık, ancak 3D baskılı kapı aktivatör kasasına uyan herhangi bir motor işinizi görecektir)
- 1 x Servo motor (muhtemelen herhangi bir boyutta olacaktır, ancak gerekli anahtarı çevirmek için yeterince güçlü bir motor kullandığınızdan emin olun)
Lazer Kesim Parçaları
1 x Akıllı Çıkış Kutusu
3D Baskılı Parçalar
1 x Kapı aktivatörü kasası
Cep telefonu
Bu eğitim, Android telefonlar düşünülerek oluşturuldu ve şimdilik Integromat'ın iOS cihazlarını desteklemediği görülüyor. Bu nedenle, ne yazık ki, bu talimat bir Android telefon gerektirir.
Yazılım
-
Arduino IDE (Entegre Geliştirme Ortamı - temelde süslü bir kod düzenleyici)
- Kolay yükleme için panonuzu IDE'ye yükleyin
- İlgili tüm kütüphaneler için ekli eskizlere bakın
-
Node-RED Entegrasyon Platformu
Birkaç istisna dışında çoğunlukla stok düğümleri kullanıyoruz - ilgili tüm düğümler için ekteki akışa bakın
-
Integromat.com (birden çok hizmetin birbirine bağlanmasına izin veren hizmet bağlayıcısı - bizim durumumuzda ve Android uygulaması ve Node-RED sunucumuz)
Platformun günlük kullanımı için yeterli olan ücretsiz katmanı kullandık
-
PushBullet.com (push bildirim hizmeti)
Platformun günlük kullanımı için yeterli olan ücretsiz sürümü kullandık
-
ngrok (güvenli tünel açma hizmeti)
Bu ücretsiz tünel yazılımını, yerel olarak çalışan panomuzdan dünyaya bir bağlantı göstermek için kullanıyoruz, böylece panoya bir URL'den Anında iletme bildiriminde erişebiliriz
-
Sivrisinek MQTT Broker
MQTT, bağlı cihazlarımız ile Node-RED arasında mesaj aktarmak için kullanılan bir protokoldür. Node-RED yerleşik bir MQTT sunucusuna sahip olmadığı için harici bir sunucu kullanmamız gerekiyor
Adım 1: Akışı Anlayın
Sistemin bir gösterimi için yukarıdaki videoya bakın. Sistemin genel akışının (sonrasında Düğüm-KIRMIZI akışının oluşturulduğu) aşağıdaki gibi olduğuna dikkat edin:
- evini terk ediyorsun
- Telefonunuzun evinizin WiFi bağlantısıyla bağlantısı kesiliyor
- Integromat haber alır ve Node-RED'e haber verir
- Node-RED, evinizdeki sensörlerin ve gösterge tablonuzdaki anahtarların durumunu kontrol eder.
- Açık veya açık bir şey kalırsa PushBullet'a haber verir.
- PushBullet, Node-RED Dashboard bağlantısıyla telefonunuza bir bildirim gönderir.
- Kontrol Paneline gidebilir ve ilgili şeyleri kapatabilir/devre dışı bırakabilirsiniz.
Özünde, evinizdeki çeşitli nesneleri yönetmek ve evinizden çıkarken bunların doğru durumda olduklarını doğrulamak için merkezi bir yaklaşım sunuyoruz.
Uygulamada, bu projede aşağıdaki yeteneklere sahibiz:
- Pencerenin Durumu - açık/kapalı (Reed Relay durumu ile gösterilir)
- Işıkların Durumu - açık/kapalı (LDR durumu ile gösterilir)
- Alan Isıtıcı Durumu - açık/kapalı (DHT sıcaklık sensörü ile gösterilir)
- Kapı Aktivatörü - açık/kapalı (DC motor için özel yapım 3D kasa)
- Akıllı Çıkış Aktivatörü - açık/kapalı (bir anahtarlı uzatma kablosuna bağlı bir D1 rölesi)
- Pres Aktivatörü - açık/kapalı (bir panoya bağlı bir Servo)
Bu, kitabımızda platformun yeteneklerini göstermek için yeterlidir. Gerekirse daha fazla durum göstergesi / etkinleştirici eklemek için (Node-RED kullanılarak) kolayca genişletilebilir.
2. Adım: Ngrok
ngrok bir tünel açma hizmetidir. Yerel olarak çalışan bir hizmeti (bizim durumumuzda, Node-RED) dış dünyaya - bir sunucu kurma veya DNS kayıtlarıyla uğraşma zahmetine girmeden - göstermemize olanak tanır. Bilgisayarınızda Node-RED'i çalıştırmanız ve ardından Node-RED'in çalıştığı bağlantı noktasında ngrok'u çalıştırmanız yeterlidir. İşte bu kadar - hangi ağa bağlı olduğuna bakılmaksızın dünyanın herhangi bir yerinden Node-RED'e erişmek için kullanabileceğiniz bir URL alacaksınız.
Kurulum ve Yapılandırma
- İşletim sisteminiz için ngrok'u buradan indirin.
- İndirme sayfasındaki adımı "Ateşle" adımına kadar izleyin.
- "Ateşleme adımında" 80'i 1880 ile değiştirin - işletim sisteminize bağlı olarak./ngrok http 1880 veya ngrok http 1880 gibi.
- Komut satırınızda göreceğiniz http URL'sini not edin - buna daha sonra ihtiyacımız olacak. Örnek için resme bakın.
3. Adım: Düğüm-KIRMIZI
Kurulum ve Yapılandırma
Projenin ana mantık denetleyicisi olan Node-RED, birleşik bir uygulama oluşturmak için çeşitli yazılım (ve donanım!) hizmetlerini birbirine bağlamanıza izin veren görsel bir programlama ortamıdır. Bir bonus olarak, çeşitli servislerden bilgi alabilen ve hatta kontrol edebilen güzel panoların oluşturulmasına izin verir.
Düğüm-RED'e aşina iseniz, bu Gist'ten akışımızı alın ve aşağıdaki 8. adımdan ngrok kimliğinizi ekleyin.
Node-RED'e aşina değilseniz veya kurulu değilse, Node-RED akışımızı yerel bilgisayarınıza yüklemek için aşağıdaki adımları izleyin:
- Node-RED, kendi özel geliştirme ortamına sahip bir programlama dili olan Node.js'yi gerektirir. İşletim sisteminizle ilgili yükleyiciyi buradan alın ve talimatları izleyin.
- Şimdi buradaki yönergeleri kullanarak Node-RED'in kendisini yükleyebilirsiniz. Bir sonraki adım için ihtiyacınız olacağından, lütfen Node-RED'in kurulduğu yeri not edin.
- Artık Node-RED'i yüklediğinize göre, yukarıdaki adımdaki talimatları kullanarak çalıştırın ve boş bir tuval sayfası görebildiğinizi doğrulayın. https://127.0.0.1:1880'de bulunmalıdır.
- Şimdi, bu projede kullanılan birkaç ek düğüm (Node-RED'in uzantıları veya modülleri dediği) yüklemeniz gerekecek. Lütfen buradaki ve buradaki talimatları izleyin ve bu modüllerin ikisini de kurun.
- Düğümler yüklendiğine göre, düğüm kırmızısı sunucuyu yeniden başlatın (hizmeti sonlandırmak ve yeniden başlatmak işe yarayacaktır). Artık akışınızda her iki düğüme de sahip olmalısınız.
- Bu projenin Node-RED akışını buradan indirin ve Node-RED kurulumunuza aktarmak için buradaki talimatları izleyin.
- Akışın resmini ekranınızda yukarıda göründüğü gibi görebildiğinizden emin olun.
- Son adımdaki ngrok URL'sini hatırlıyor musunuz? Push Notification Derleme düğümüne girin. Bu, bildirim almak için kullandığımız herhangi bir cihazda kontrol panelinin (yerel makinemizde çalışan) canlı bir bağlantısını görmemizi sağlayacaktır.
Akış Açıklaması
Akışın iki kısma ayrıldığına dikkat edin - üst kısım ana mantık ve alt kısım bileşen mantığıdır.
Ana mantık, evden çıkıp çıkmadığınızı (Integromat WiFi Ayrılma Uç Noktası düğümünde Integromat'tan bir GET isteği alarak), bir başarı yanıtı göndermeyi (yani Integromat'ın Başarı Mesajını Integromat'a Gönderin içinde askıda kalmamasını) öğrenmekle ilgilenir.) ve ardından mevcut durumlarını kontrol etmek için tüm sensörleri ve etkinleştiricileri kontrol etme (bu, bilgileri almak için global bağlam deposunu kullanarak Anında Bildirim Oluştur işlev düğümünde gerçekleşir). Bu kontrol, bir şeyin açık veya açık olduğunu algılarsa, bir PushBullet push bildirimini tetikler (en üstteki Push Notification Gönder düğümünde). En alttaki Push Bildirimi Gönder düğümü, gecikmiş push bildirimleri göndermekle ilgilenir (alan ısıtıcısı için - arkasındaki mantık hakkında daha fazla bilgi için adımına bakın). Ayrıca, gelen tüm istekleri günlüğe kaydeden bir hata ayıklama düğümü (Talep Al olarak adlandırılır) olduğunu unutmayın, böylece Integromat'ın çitin tarafındaki herhangi bir sorunu yakalayabiliriz.
Bileşen mantık akışı, küresel bağlam deposunu her etkinleştiricinin/sensörün durumuyla güncellemekle ilgilenir, böylece push bildirimimizde hangi (varsa) bilgileri göndermemiz gerektiğine karar verebiliriz. Bu akışların iki farklı varyantı olduğunu unutmayın:
Aktivatör Akışları (Switch Press/ Door/Smart Outlet) - Bunlar, gösterge tablosunda bir anahtar çevrildikten sonra gösterge tablosunu güncellemesi + gerçek dünyada bazı etkinlikleri tetiklemesi gereken akışlardır. Spesifik olarak, her ikisi de gösterge tablosunda (Anahtar düğümlerinde) bir eylemin gerçekleşmesini bekler, ardından Durum Mantığı işlev düğümleri içindeki durumu çevirir ve gösterge tablosunu çevrilmiş anahtara göre günceller (LED'i açar/kapatır). LED düğümlerini belirtin ve Durum Göstergesi düğümlerindeki metni değiştirin). Ek olarak, anahtar çevrildikten sonra, fiziksel dünyada bir eylem yaratmak (yani bir kapıyı açmak/kapatmak veya Akıllıyı öldürmek/etkinleştirmek) için aktivatörleri kontrol eden (MQTT-out Aktivatör düğümlerini kullanarak) WeMos kontrolörlerine bir MQTT mesajı gönderilir. Çıkış).
Sensör Akışları (Işık/Pencere/Uzay Isıtıcı) - MQTT üzerinden bir sensör mesajı geldikten sonra gösterge tablosunu güncellemesi gereken akışlardır. Spesifik olarak, her ikisi de bir MQTT mesajının gelmesini bekler (MQTT-in Sensör düğümlerini kullanarak), ardından bilgiyi ayrıştırır ve Durum Mantığı fonksiyon düğümlerinin içindeki durumu çevirir. Bundan sonra, gelen mesaja göre kontrol panelini güncellerler (Durum LED düğümlerinde LED'i açar/kapatırlar ve Durum Göstergesi düğümlerinde metni değiştirirler).
Her bir bileşene bağlı enjektör düğümlerini görüyor musunuz? Bunlar, ilk yüklemede komik bir iş olmamasını sağlamak için ilk kez çalıştırıldığında gösterge tablosu için makul varsayılanlar sağlamaya özen gösterir.
Not: Düğüm-RED'in iki "modu" vardır: tuval ve UI. Kanvas, düğümleri oluşturduğunuz ve düzenlediğiniz yerdir (https://127.0.0.1:1880 veya https://YOUR_NGROK_ID.ngrok.io'dadır) ve UI, gösterge tablolarınızı gördüğünüz yerdir (https://127.0.0.1'dedir).:1880/ui veya
Adım 4: İntegramat
Üye olmak
Kendi kendini "İnternetin Tutkalı" olarak tanımlayan Integromat, çeşitli yazılım parçalarını ilginç şekillerde birbirine bağlayan bir hizmettir. Bizim durumumuzda, evinizin WiFi bağlantısının ne zaman kesildiğini kontrol etmek için Android uygulamasını kullanıyoruz, ardından Node-Red Sunucumuza bir HTTP isteği tetikliyoruz. Bu istek, önceki adımda gösterilen tüm akışı tetikleyecektir.
- Buradan bir Integromat hesabı için kaydolun.
- Android uygulamasını buradan indirin.
- Integromat web konsolunda (Integromat'a kaydolduktan sonra görmelisiniz), sol tarafta, ortada Cihazlar sekmesini açın.
- Sol üstteki "Cihaz ekle"yi tıklayarak ve gösterilen adımları izleyerek cihazınızı ekleyin.
- Uygulamayı web konsolu ile yetkilendirdikten sonra açın ve sağ alttaki ayarlara gidin.
- WiFi'ye tıklayın ve ardından (Olaylar altında) WiFi bağlantısı kesildi olayı kutusunu işaretleyin. Bu, uygulamanın telefonunuzun bir WiFi ağından ne zaman ayrıldığını görmesini sağlar.
Senaryomuzu Oluşturma
Integromat'taki eylem akışlarına Senaryolar denir. Herhangi bir WiFi ağının bağlantısının kesilmesini bekleyen bir senaryo oluşturacağız, ardından yalnızca evimizin WiFi ağıyla eşleşenleri filtreleyeceğiz.
- Senaryo açıklaması için yukarıdaki resme bakın.
- Favoriler'in yanındaki alt "+" işaretini tıklayarak ve gerekli üç düğümü ekleyerek düğümlerin ("baloncuklar") her birini oluşturun - Android (WiFi Bağlantısının Kesilmesi), JSON (JSON Oluştur) ve HTTP (Bir İstek Yap).
- Android düğümünü JSON düğümüne ve JSON düğümünü HTTP düğümüne bağlayın.
- Yukarıdaki resme göre Android ve JSON düğümleri arasındaki filtreyi yapılandırın.
- Her düğümü yukarıdaki resimlere göre yapılandırın. HTTP düğümü için önceki adımda oluşturulan ngrok URL'sinin kullanımına dikkat edin. ngrok URL'niz https://ac72hs.ngrok.io ise, ngrok kimliğiniz ac72hs'dir.
Adım 5: Sivrisinek
Node-RED'in kendi MQTT aracısı olmadığından ve sensörlerimiz ve aktivatörlerimizle MQTT üzerinden iletişim kurmamız gerekeceğinden, özel bir MQTT aracısı kullanacağız. Node-RED, Mosquitto'yu önerdiğinden, kullanacağımız şey bu. MQTT ve neden IoT projesinde sıklıkla kullanıldığı hakkında bazı bilgiler için buraya bakın.
Kurulum ve Yapılandırma
- Mosquitto'yu buradan indirin ve işletim sisteminize göre kurun.
- Normalde, Node-RED'i Mosquitto'ya bağlamak için buradaki talimatları izlemeniz gerekir. Ancak, akışımızı kullandıysanız, sizin için önceden yapılandırılmıştır. Akışı ve Mosquitrro'yu düzgün bir şekilde yüklediğiniz ve Mosquitto, 1883 numaralı bağlantı noktasında (varsayılan olarak çalıştığı) çalıştığı sürece, kutunun dışında çalışması gerekir.
- Bunun, MQTT aracısının ve Node-RED sunucunuzun aynı makinede çalıştığı anlamına geldiğini unutmayın. Bu, sistem içindeki iletişimi basitleştirmek için kullanışlıdır. Daha fazla bilgi için aşağıdaki nota bakın.
Yerel ağ hakkında not
Cihazlarınızın Node-RED ile düzgün bir şekilde çalışması için, onların aracıya erişimlerinin olması gerekir. Bir proxy tanımlayıp bunu Mosquitto ile iletişim kurmak için kullanabilirken, hırslı komplikasyonlara basit bir çözüm öneriyoruz: Bilgisayarınızın (Node-RED ve Mosquitto çalıştıran) ve ESP8266 anakartlarınızın aynı WiFi'ye bağlı olduğundan emin olun. Bu şekilde cihazlarınız herhangi bir aracı olmadan doğrudan aracınızla iletişim kurabilir.
Başka bir cihazdan kontrol paneline göz atmak için kullandığımız şekilde, bunun için neden ngrok kullanmadığımızı sorabiliriz. Basit cevap, yapabileceğinizdir - ancak ngrok (ücretsiz sürümde) her kullanıcıdan bir tünel ile sınırlıdır. Bu, bizim durumumuzda Node-RED'i açığa çıkarmak için kullanılan dış dünyaya yalnızca bir bağlantı noktası açabileceğiniz anlamına gelir. Bunun yerine, bunu atlamak için yerel ağları kullanıyoruz.
Bu, her çizimde aracının IP adresini yerel ağdaki bilgisayarınızın IP adresine uyacak şekilde değiştirmeniz gerekeceği anlamına gelir. Bu adrese ipconfig (Windows'ta) ve ifconfig (Mac/Linux'ta) çalıştırılarak ve ilgili WiFi arayüzü aranarak erişilebilir. inet adresi altında listelenmelidir.
Ancak, yine de yol boyunca bazı MQTT sorunlarıyla karşılaşabilirsiniz. Bunun için tüm gelen ve giden MQTT trafiğini izlemek yararlıdır.
MQTT trafiğini izleme
Mosquitto, bu işlevi mosuitto_sub kullanarak kutudan çıkarırken sağlarken, daha GUI odaklı insanlar için grafik arayüze sahip bir istemcinin kullanımı daha kolay olabilir. MQTTfx, bu projedeki çalışmalarımız boyunca yoğun olarak kullandığımız harika bir araçtır ve bunu yürekten tavsiye ediyoruz. Bu harika araç için teşekkürler Jens Deters!
Adım 6: Pushbullet
Pushbullet bir push bildirim hizmetidir. Cihazınızı servise abone etmenize ve ardından birkaç olası entegrasyona dayalı olarak bildirimleri göndermenize olanak tanır. Evdeki şeylerden biri açık veya açık bırakıldığında cihazımızı bilgilendirmek için kullanacağız ve evden çıkmadan önce bakmayı unuttuklarımızı kapatabilmemiz veya kapatabilmemiz için kontrol paneline bir bağlantı ekleyeceğiz.
Kaydolma ve Yapılandırma
- Google hesabınızı kullanarak buradan bir Pushbullet hesabına kaydolun.
- Pushbullet Android uygulamasını buradan indirin.
- Pusbullet'e giriş yaptıktan sonra buraya tıklayın ve soldaki butonu kullanarak cihazınızı ekleyin.
- Ardından buraya gidin ve Erişim Simgesi Oluştur'u seçin. Bu jetonu not edin, bir sonraki adımda ihtiyacımız olacak.
- Node-RED'e gidin ve Push Notification Gönder düğümüne tıklayın.
- Kenar çubuğunda (resme bakın) "PushBullet Config" öğesini ve ardından kalem simgesini seçin.
- 4. adımdaki Erişim Simgesini "API Anahtarı" alanına ekleyin.
- Artık telefonunuzda push bildirimleri alabilmeniz gerekir.
Adım 7: Arduino IDE
Kullandığımız çeşitli donanımları kontrol etmek için bu eğitimde ESP8266 kartlarını kullanıyoruz. Yazılımımızı kartlara yüklemek için bir USB kablosu kullanarak onları flashlamamız gerekecek. İşlem çok basit: Kartı bilgisayarınıza bağlayıp bir düğmeye basıyorsunuz. Ancak, oraya ulaşmak için bazı ön kurulum yapmamız gerekecek.
Kurulum ve Yapılandırma
- Arduino IDE'yi kurmak için buradaki kılavuzu izleyin.
- ESP8266 kartları için ilgili "sürücüleri" Arduino IDE'nize kurmak için buradaki kılavuzu izleyin.
- Eskizleri (.ino dosyaları) panolarınıza yüklerken uygun bir USB kablosu (güç kablosu değil, veri kablosu) kullandığınızdan emin olun.
Eskizlerin panolara yüklenmesi
Donanımı mevcut yazılım arayüzümüze bağlamayı ele alacak olan sonraki adımlarda, sadece "taslağı tahtaya yükle" diyeceğiz. Aşağıdaki adımların her birini donanımla ve yazılımla daha az ilgili tutmak için, yükleme akışını burada bir kez ayrıntılı olarak açıklıyoruz:
- USB kablosunu kullanarak kartı bilgisayarınıza bağlayın.
- Arudiono IDE'yi açın.
- İlgili adım için indirdiğiniz krokiyi açın.
- "Araçlar" Menüsünde "Board" seçeneği altında ilgili panoyu seçin.
- Aynı menüde, "Port" seçeneğinin kartınızın bağlı olduğu portu seçtiğinden emin olun. bunu varsayılan olarak yapmalıdır, ancak yalnızca yaptığından emin değilse. Bilgisayarınızdaki hangi bağlantı noktasının hangisi olduğundan emin değilseniz, sonraki adıma bakın.
- Ekranın sağ üst köşesindeki ok düğmesini (onay işareti simgesinin hemen yanında) tıklayarak taslağı panoya yükleyin. Bu, çizimi derleyecek ve tahtaya yüklemeye çalışacaktır.
- Aşağıdaki adım başarısız olursa, araçlar menüsünde başka bir bağlantı noktası veya başka bir kart seçmeyi deneyin.
- Hala takılırsanız, takip adımları için bu Quora yanıtına göz atmayı deneyin.
8. Adım: Gösterge Tablosu
Yukarıdaki resim, nihai gösterge panosunun nasıl görüneceğini gösterir. Anahtarlara dikkat edin? Sonraki adımlarda kuracağımız çeşitli donanım parçalarını etkinleştirirler. LED'ler, bir sensör bir tür değişiklik algıladığında ve anahtarları çevirdiğimizde değişen durum göstergeleridir.
Adım 9: Işık Sensörü
Bu ışık sensörü, evinizdeki odalardan birinde ışığı açık mı yoksa kapalı mı bıraktığınızı anlamanızı sağlar. Bir kutuya düzgün bir şekilde yerleştirildiğinde ve ışığa yaklaştırıldığında, birbirine yapıştırılmış iki kibrit kutusundan daha büyük olamaz.
Montaj + Konfigürasyon
- Devreyi birlikte verilen Fritzing şemasına göre bağlayın.
-
Çizimi açın ve aşağıdaki değişkenleri değiştirin:
- mqtt_server - Bilgisayarınızın yerel IP adresi (çalışan Mosquitto olarak, MQTT aracısı)
- ssid - Bilgisayarınızın bağlı olduğu ve anakartınızın bağlanmasını istediğiniz WiFi ağının adı
- şifre - Söz konusu WiFi ağının şifresi
- Dahil edilen taslağı panonuza yükleyin.
- Kontrol panelinde test edin!
Pano "Işık" sekmesinin LED'ine bakın - ışığın açık veya kapalı olduğunu gösterecektir.
Adım 10: Akıllı Çıkış Aktivatörü
Akıllı Çıkış, normal bir uzatma kablosu alır ve onu Akıllı Nesneye dönüştürür - yani, WiFi özellikli bir röle, Node-RED'den bir düğmeyi tıklatarak açıp kapatmayı halleder. Gösterge Paneli. Bu şekilde, prize takılı bir şeyi kapatmayı unuttuysanız, onu manuel olarak kapatabileceksiniz!
Montaj + Yapılandırma
- Güç kablosunu ortasından kesin ve kabloları soyun.
- Soyulmuş kabloları Fritzing Şemasına göre vidalı terminale yerleştirin.
- Çizimi açın ve aşağıdaki değişkenleri değiştirin:
- mqtt_server - Bilgisayarınızın yerel IP adresi (çalışan Mosquitto olarak, MQTT aracısı)
- ssid - Bilgisayarınızın bağlı olduğu ve anakartınızın bağlanmasını istediğiniz WiFi ağının adı
- şifre - Söz konusu WiFi ağının şifresi
- Krokiyi tahtaya yükleyin.
- Röle kalkanını panoya bağlayın.
- Devreyi Fritzing şemasına göre kurunuz.
- Kontrol panelinde test edin!
Bonus puanlar - Kasa
- Mümkünse, ekli SmartOutletCasing görüntüsünü kullanarak kasayı lazerle kesin. Lazer kesiciler azsa, bir karton kutu alın, resmi bir tarafına yapıştırın ve parçaları kesin.
- Kutunun yan tarafında iki delik açın ve ekteki resimde olduğu gibi anahtarlı uzatma kablosunu içeri kaydırın.
- Devrenin deliklerden çekilmemesini sağlamak için kutunun içindeki şeridin uçlarını bağlayın.
Gösterge Paneli
"Akıllı Çıkış" sekmesinin LED'ine bakın - Akıllı Çıkışın açık mı yoksa kapalı mı olduğunu gösterecektir. Ayrıca, eğlence ve kâr için anahtarı açıp kapatın!
Adım 11: Kapı Aktivatörü
Bu güzel mekanizma, bir anahtarı ileri geri çevirerek bir kapıyı kilitleyip açmamızı sağlar. Özellikle, evinizden çıkarken kapınızı açık bıraktıysanız, uzaktan kilitleyebilirsiniz!:)
Montaj + Yapılandırma
- Çizimi açın ve aşağıdaki değişkenleri değiştirin:
- mqtt_server - Bilgisayarınızın yerel IP adresi (çalışan Mosquitto olarak, MQTT aracısı)
- ssid - Bilgisayarınızın bağlı olduğu ve anakartınızın bağlanmasını istediğiniz WiFi ağının adı
- şifre - Söz konusu WiFi ağının şifresi
- Krokiyi ESP8266 panosuna yükleyin.
- Devreyi şemaya göre monte edin. (nispeten güçlü) DC motoru kontrol etmek için harici bir güç kaynağı kullandığımızı unutmayın. Bunun için bir L298-N HBridge ve harici güç kaynağı gerekiyordu. Hem dişi namlu jakı hem de HBridge'in kullanabileceğimiz güzel vidalı terminalleri olduğu için herhangi bir lehime ihtiyaç duymadık - bu bağlantılar uğruna birkaç atlama kablosunun bir ucunu çıkardık. Barış içinde dinlenebilirler mi.
- Kontrol panelinde test edin!
Bonus Puanlar - Kasa
Jack Lew'in mevcut bir tasarımını kullandık. Bir 3D yazıcıya erişiminiz varsa, kapınıza yapıştırıp cıvata veya sıcak tutkalla tutturabileceğiniz harika bir kılıf.
Pano "Kapı" sekmesinin LED'ine bakın - kapının açık mı yoksa kapalı mı olduğunu gösterecektir. Ayrıca, eğlence ve kazanç için anahtarı açıp kapatın!
Adım 12: Pencere Sensörü
Kedinin dışarı çıkmasına izin verme! Bu sensör, bir pencerenin açık mı yoksa kapalı mı olduğunu kontrol etmek için bir Reed Röle kullanır. Bir pencereyi sadece örnek olsun diye seçtiğimize dikkat edin - bir kapının açık olup olmadığını kontrol etmek dahil, ev, oda ve buzdolabı kapıları dahil olmak üzere birçok başka şey için kullanılabilir.
Montaj ve Yapılandırma
- Devreyi yukarıdaki Fritzing şemasına göre monte edin.
- Çizimi açın ve aşağıdaki değişkenleri değiştirin:
- mqtt_server - Bilgisayarınızın yerel IP adresi (çalışan Mosquitto olarak, MQTT aracısı)
- ssid - Bilgisayarınızın bağlı olduğu ve anakartınızın bağlanmasını istediğiniz WiFi ağının adı
- şifre - Söz konusu WiFi ağının şifresi
- Çiziminizi tahtaya yükleyin.
- Reed Rölenin bir parçasını pencere pervazına, diğerini pencerenin kendisine (veya sensörü takmaya karar verdiğiniz açıklığa) takın.
- Kontrol panelinde test edin!
Gösterge Paneli
"Pencere" sekmesinin LED'ine bakın - pencerenin açık mı yoksa kapalı mı olduğunu gösterecektir.
Adım 13: Alan Isıtıcı Sensörü
Bir ısıtıcıyı açık bırakmak garantili bir yangın tehlikesidir! Güvende kalın ve bu devreyi kullanarak ısıtıcınızı uzaktan izleyin. Spesifik olarak, devre üzerindeki ısı sensörü, ısıyı uzun bir süre boyunca izler - aklı başında bir varsayılan için 5 dakikaya sabit kodlanmıştır - ve bu süreden sonra hala buhar verir, gösterge panelindeki LED'i çevirir. Bu, yayılan ısıyı (örneğin, ısıtıcıyı kapattıktan sonra) kazara LED'i açmasını önlemek için yapılır.
Montaj ve Yapılandırma
- Devreyi ekteki Fritzing şemasına göre monte edin.
- Çizimi açın ve aşağıdaki değişkenleri değiştirin:
- mqtt_server - Bilgisayarınızın yerel IP adresi (çalışan Mosquitto olarak, MQTT aracısı)
- ssid - Bilgisayarınızın bağlı olduğu ve anakartınızın bağlanmasını istediğiniz WiFi ağının adı
- şifre - Söz konusu WiFi ağının şifresi
- Ekteki çizimi panonuza yükleyin.
- Bir ısıtıcının yanına koyun, 5 dakika bekleyin ve kontrol panelini kontrol edin!
Gösterge Paneli
"Space Heater" sekmesinin LED'ine bakın - alan ısıtıcısının açık veya kapalı olduğunu gösterecektir.
Adım 14: Basın Aktivatörünü Değiştirin
Bu, fiziksel bir anahtarı açıp kapatabilen çok basit bir Servo motordur (bir ışık anahtarı, bir su kazanı anahtarı, bir güç şeridi anahtarı vb.). Evinizdeki anahtarla kontrol edilen öğelerden birini açık bıraktıysanız - örneğin bir ışık veya su kazanı - uzaktan kapatabilirsiniz.
Montaj ve Yapılandırma
- Çizimi açın ve aşağıdaki değişkenleri değiştirin:
- mqtt_server - Bilgisayarınızın yerel IP adresi (çalışan Mosquitto olarak, MQTT aracısı)
- ssid - Bilgisayarınızın bağlı olduğu ve anakartınızın bağlanmasını istediğiniz WiFi ağının adı
- şifre - Söz konusu WiFi ağının şifresi
- Krokiyi panonuza yükleyin.
- Devreyi Fritzing şemasına göre monte edin.
- Servoyu sıcak tutkal veya kendi yaptığınız uygun bir kasa kullanarak ilgili anahtara takın. Bir resim yaptıysanız bize bir resim gönderin!
- Kontrol panelini test edin!
Gösterge Paneli
"Switch Press" sekmesinin LED'ine bakın - anahtara basmanın açık mı yoksa kapalı mı olduğunu gösterecektir. Ayrıca, eğlence ve kazanç için anahtarı açıp kapatın!
Önerilen:
SONIC LED GERİ BİLDİRİM: 7 Adım (Resimlerle)
SONIC LED GERİ BİLDİRİM: Tekrar merhaba, Robotunuzun her şeye çarpmasından nefret mi ediyorsunuz? Bu sorunu çözecektir. 8 sonik sensörle bu karmaşık görünüyor…ama aslında bunu çok kolaylaştırdım. Arduino'yu öğrenmenize yardımcı olacak ve bir 'kutunun dışında' göstermenize yardımcı olacak projeler yayınlamaya çalışıyorum
Bildirim Bayrağı - Wi-Fi, IFTTT ve Huzzah ESP8266'ya Harika Giriş: 9 Adım (Resimlerle)
Bildirim Bayrağı - Wi-Fi, IFTTT ve Huzzah'a Harika Giriş ESP8266: Her zaman önemli şeyleri kaçırıyorum… bu yüzden Bayrağı yarattım. Bu önemli şeyleri bana bildirmek veya hatırlatmak için bir Nesnelerin İnterneti (IoT) cihazı! Şimdi masama hızlıca bir göz attığımda görebiliyorum… Bir e-postam var mı?
Arduino Yıkayıcı Kurutucu Uyarısı - Blynk ile Telefona Anında Bildirim: 5 Adım (Resimlerle)
Arduino Yıkayıcı Kurutucu Uyarısı - Blynk ile Telefona Anında Bildirim: Çamaşır makinemiz garajda ve yıkamanın tamamlandığını belirten bip seslerini duyamıyoruz. Evin neresinde olursak olalım döngü bittiğinde haberdar olmanın bir yolunu bulmak istedim. Arduino, ESP8266 WiFi ile uğraşıyorum
Basit ISS Bildirim Sistemi: 6 Adım (Resimlerle)
Basit ISS Bildirim Sistemi: Uluslararası Uzay İstasyonu nedir ve neden nerede olduğunu tahmin etmek istiyorsunuz? İlk soruyu yanıtlamak için NASA web sitesine bakabiliriz. Hangisi kısaca: Uluslararası Uzay İstasyonu büyük bir uzay aracıdır. Etrafında dönüyor
Telefonda Nodemcu Kullanarak IoT Anında Bildirim (Her Şey İçin): 5 Adım (Resimlerle)
Telefonda Nodemcu Kullanarak IoT Anında Bildirim (Her Şey İçin): Mesajlar için bildirim gönderme, e-postalar eski moda…Yani çok kolay ve basit yeni bir şey yapalım. su pompası seviyesi, bahçe sulama, otomatik pet f