İçindekiler:

UCL-lloT-Dış mekan ışığı Gün doğumu/gün batımı tarafından tetiklenir.: 6 Adım
UCL-lloT-Dış mekan ışığı Gün doğumu/gün batımı tarafından tetiklenir.: 6 Adım

Video: UCL-lloT-Dış mekan ışığı Gün doğumu/gün batımı tarafından tetiklenir.: 6 Adım

Video: UCL-lloT-Dış mekan ışığı Gün doğumu/gün batımı tarafından tetiklenir.: 6 Adım
Video: 1.BÖLÜM 🍀 ''VADİDEKİ ZAMBAK'' 🍀 HONORE DE BALZAC🍀(SESLİ KİTAP - DÜNYA KLASİKLERİ) 2024, Kasım
Anonim
UCL-lloT-Dış mekan ışığı Gün doğumu/gün batımı tarafından tetiklenir
UCL-lloT-Dış mekan ışığı Gün doğumu/gün batımı tarafından tetiklenir

Herkese merhaba! Biraz çalışmayla, bazı parçalar ve kodlarla, bu dış mekan ışığının nasıl üretileceğini baştan sona tam olarak gösterecek olan bu talimatı bir araya getirdim. Fikir, yazın ışıklar yandığında manuel olarak dışarı çıkmak ve değiştirmek zorunda kalan babamdan kaynaklandı. Tüm yıl boyunca hızla değişen gün batımı ve gün doğumu saatlerinde, bunu yapmanın otomatik bir yolunu bulup bulamayacağımı sordu. Ve böylece buradayız. Nispeten küçük bir proje.

Adım 1: IO Listesi ve İhtiyacınız Olan Şeyler

IO Listesi ve İhtiyacınız Olan Şeyler
IO Listesi ve İhtiyacınız Olan Şeyler
IO Listesi ve İhtiyacınız Olan Şeyler
IO Listesi ve İhtiyacınız Olan Şeyler
IO Listesi ve İhtiyacınız Olan Şeyler
IO Listesi ve İhtiyacınız Olan Şeyler

Arduino MEGA 2560. En azından benim kullandığım bu, diğerini rahatlıkla kullanabileceğinizi biliyorum.

DS3231 ve kütüphanesi. (https://rinkyydinkelectronics.com/library.php?id=73… Hangi Arduino'yu kullandığınıza bağlı olarak SDA ve SCL için ayarlanan pinlerin farklı olduğunu bilmek önemlidir.

I052116 IR Kızılötesi Hareket Dedektörü Sensör Modülü. Bu özel modül, seçtiğiniz sensörle değiştirilebilir, dürüst olmak gerekirse, her şey için isteğe bağlıdır.

Adım 2: Akış Şeması

Akış çizelgesi
Akış çizelgesi

Basit akış şemasında görüldüğü gibi, ağır kaldırmanın çoğu Node-Red'de bulunur. Nispeten basit düğümlerle, fikir şu ki, Node-Red'den güneşin ne zaman battığını ve doğduğunu bilen bir web sitesine ulaşacaksınız. Bir kez sahip olduğunda, bilgiyi Arduino'ya anlatarak gönderir. Arduino'dan, Işıkların tam olarak ne zaman açık olduğunu gösteren bir sinyal alacağız, böylece ışıklar yandığında evinizden kontrol edebilirsiniz. Ayrıca Arduino'dan yakınlık sensörünün etkinleştirildiği bilgisini alacağız., ışığın x süre boyunca açık olduğu.

Adım 3: Fritzing

Fritzing
Fritzing

Diğer projelerle karşılaştırıldığında burada kablolama oldukça basittir. Bilmeniz gereken şey, Node-Red sunucusuyla bağlantı kurmak için bir WIFI modülüne ihtiyacınız olacak veya Arduino'ya bağlı Node-Red sunucusunu barındırmak için kullanabileceğiniz bir bilgisayar edinmeniz gerektiğidir. Resimde gösterilmeyen Arduino ve Laptop arasındaki bağlantıdır ve zavallı Fritzing resmi için şimdiden özür dilerim!

Adım 4: Kodlama

kodlama
kodlama
kodlama
kodlama

Bulduğum bir şey varsa, Firmata (Node-Red ile Arduino iletişimi için), DS3231 kütüphanesi ve daha fazlası ile çok sayıda yüklenmiş kütüphane vardı. Yayınlandığı gibi, kodlama tam olarak yapılmadığı için sözde kod dahil edilmiştir.

DS3231'den kütüphanede, Arduino kartlarının her biri için önceden ayarlanmış pinler bulunur ve Mega durumunda, mega üzerindeki SDA ve SCL pinleri oldukları için pin 20 ve 21'dir. Bir kez bağlandıktan sonra, saatin tam olarak hangi gün olduğu ve neyi takip etmesi gerektiği söylenebilir. Sayıları takip etmek söz konusu olduğunda çalışmayı daha kolay bulduğum şey, string yerine int kullanmak. Yaptığım şey, bir dizgenin sayılarını int'e dönüştürmek, ancak int kullanamayacağı için bir saati ayırmak için başka bir şey yapmaya karar verdim. Saatlerle çalışmak yerine, çalışacağız. dakika ile. Çok fazla dakika. Örneğin saat 13:21 ise, ilk iki haneyi altmışla ayırıp zamanlamasını sağlayacağım. Şu anda 801 dakikadayız, 13 çarpı 60 eşittir 780 ve son 21 dakikayı siz ekleyin. Düğüm-Kırmızı, güneşin 16:58'de battığını söylüyorsa (kış olması durumunda), dış mekan ışıklarının 1018 dakika ile 1380 (23:00) olacak önceden tanımlanmış bir kapanma süresi arasında açılmasını sağlarız.). Zamanlayıcımız bunlar arasındaysa ışıklar yanar. Yukarıdaki matematik, Arduino'ya bağlanmak ve iletişim kurmak için Node-Red'i alma adımları olmadan temel olarak programın tamamıdır. Ayrıca ışıkların yanmasını sağlayan bir sensöre sahip olmak (Geçmiş gün batımı, zaten) kullanılacaktır, ancak aksi takdirde yukarıdaki programın tamamı budur.

Adım 5: Düğüm-Kırmızı

Düğüm-Kırmızı
Düğüm-Kırmızı
Düğüm-Kırmızı
Düğüm-Kırmızı
Düğüm-Kırmızı
Düğüm-Kırmızı
Düğüm-Kırmızı
Düğüm-Kırmızı

Özellikle büyük bir akış değil, bu durumda olması gerekmiyor. İlk 2 sıra düğüm, programın büyük kısmıdır. Bir GET işlevi kullanarak, güneşin nasıl doğup batacağına dair bugünün tahminini alırız. Oradan, özel bilgilerimizi almak için bir CSS seçici kullanıyoruz, genellikle resimlerde gösterildiği gibi bir firefox'ta "Elemanları İncele" web sitesinde erişilir. Tüm web sitelerinin bu şekilde çalışmadığını ve kullandığım sitenin bu şekilde mükemmel çalıştığını unutmayın. Oradan pin 13'e bilgi yazacak çünkü ben bunu belirledim, ancak testler henüz bir pinin farklı zamanlara ulaşmasının işe yarayıp yaramadığını belirlemedi. Kodlama bölümünde anlatıldığı gibi, Arduino'dan Node-Red'e bilgi gelecek ve daha sonra kolayca kontrol edilebilecek erişilebilir bir web sitesinde belirtilecektir. Arduino fonksiyonlarını kullanmak istiyorsanız bunun için Firmata'ya ihtiyacınız olacak. Node-Red'deki node-red-node-arduino kitaplığı aracılığıyla edinildi. Henüz tam olarak kurulmamış ve projeyi bitirdikçe güncellenecek olsa da, kolay erişim için Düğüm-Kırmızı Akış kodunu bir metin belgesine ekledim.

Adım 6: Dağıtım ve Kullanım

Dağıtım ve Kullanım
Dağıtım ve Kullanım

Ve öğretilebilirliğimizi bitirmek, bunun pratik kısmı. Bu düzeyde otomatik aydınlatmaya sahip birkaç ev ile, birçok ev sahibi tüm yıl boyunca bir çözüme açıktır. Bunu gerçekten Arduino olmayan elektrik kullanan lambalarla bağlamak için, tam olarak ne yaptığınızı bilmiyorsanız, bunu kendiniz yapmanızı önermiyorum. Proje bittiğinde, emin olmak için bir elektrikçinin yardımıyla bu görevi üstleneceğim. Araba yolunuzu sensörle veya kesinlikle zamana göre aydınlatmak, eğer aslında onu şu anda içinde bulunduğu bu test aşamasının ötesinde kullanmak anlamına geliyor. Projeyle ilgili sorunumun çoğu kesinlikle Düğüm-Kırmızıdan Arduino'ya kısımdaydı ve umarım bunun nasıl olduğunu olabildiğince açık bir şekilde açıklamayı başardım. yapıldı.

Önerilen: