İçindekiler:

BAHÇENİZİ İZLEYİN: 16 Adım (Resimlerle)
BAHÇENİZİ İZLEYİN: 16 Adım (Resimlerle)

Video: BAHÇENİZİ İZLEYİN: 16 Adım (Resimlerle)

Video: BAHÇENİZİ İZLEYİN: 16 Adım (Resimlerle)
Video: 15 Yaşında Milyoner Oldum - 16 Yaşında Tüm Paramı Kaybettim 2024, Temmuz
Anonim
BAHÇENİZİ İZLEYİN
BAHÇENİZİ İZLEYİN

Bahçenizi her yerden izleyin, toprak koşullarını yerel olarak izlemek için yerel ekranı kullanın veya uzaktan izlemek için Mobil'i kullanın. Devre, toprak ortam koşullarından haberdar olmak için sıcaklık ve nem ile birleştirilmiş toprak nem sensörü kullanır.

Adım 1: Bileşenler:

  1. Arduino uno
  2. Nodemçu
  3. Sıcaklık ve Nem sensörü DHT 11
  4. Toprak Nemi sensörü - FC28
  5. Pil bankası 10000mah (arduino ve nodemcu'ya güç sağlamak için)
  6. Nokia LCD 5110
  7. Direnç (5 x 10k, 1 x 330ohms)
  8. Potansiyometre Döner tip (LCD parlaklığını ayarlamak için) 0-100K
  9. Atlama telleri
  10. ekmek tahtası

Adım 2: TEMEL SENSÖR: Toprak Nemi FC 28

TEMEL SENSÖR: Toprak Nemi FC 28
TEMEL SENSÖR: Toprak Nemi FC 28

Nemi ölçmek için, temel prensibi aşağıdaki gibi olan toprak nemi sensörü FC 28 kullanıyoruz:-

FC-28 toprak nem sensörünün özellikleri aşağıdaki gibidir:Giriş Voltajı: 3,3 – 5V

Çıkış Voltajı: 0 – 4.2V

Giriş Akımı: 35mA

Çıkış Sinyali: Hem Analog hem Dijital

FC-28 toprak nemi sensörünün dört pimi vardır: VCC: Güç

A0: Analog Çıkış

D0: Dijital Çıkış

GND: Zemin

Analog ModSensörü analog modda bağlamak için sensörün analog çıkışını kullanmamız gerekecek. FC-28 toprak nem sensöründen analog çıkış alırken sensör bize 0 ile 1023 arasında bir değer veriyor. Nem yüzde olarak ölçüldüğü için bu değerleri 0 ile 100 arasında haritalandıracağız ve ardından bu değerleri ekranda göstereceğiz. seri monitör. Nem değerlerinin farklı aralıklarını ayarlayabilir ve buna göre su pompasını açıp kapatabilirsiniz.

Modül ayrıca eşik değerini ayarlayacak bir potansiyometre içerir. Bu eşik değeri, LM393 karşılaştırıcısı tarafından karşılaştırılacaktır. Çıkış LED'i bu eşik değerine göre yukarı ve aşağı yanacaktır.

Toprak nem sensörü ile arayüz oluşturma kodu sonraki adımlarda ele alınır

3. Adım: MQTT'yi Anlamak: Uzaktan Veri Yayınlama için

MQTT'yi Anlamak: Uzaktan Veri Yayınlama için
MQTT'yi Anlamak: Uzaktan Veri Yayınlama için

Daha fazla başlamadan önce, önce IOT için Uzaktan veri yayınlamayı inceleyelim.

MQTT, MQ Telemetri Taşımacılığı anlamına gelir. Kısıtlı cihazlar ve düşük bant genişliği, yüksek gecikme süresi veya güvenilmez ağlar için tasarlanmış, yayınla/abone ol, son derece basit ve hafif bir mesajlaşma protokolüdür. Tasarım ilkeleri, ağ bant genişliğini ve cihaz kaynak gereksinimlerini en aza indirirken aynı zamanda güvenilirliği ve bir dereceye kadar teslimat güvencesini sağlamaya çalışmaktır. Bu ilkeler aynı zamanda protokolü, gelişmekte olan “makineden makineye” (M2M) veya bağlı cihazların “Nesnelerin İnterneti” dünyası ve bant genişliği ve pil gücünün yüksek olduğu mobil uygulamalar için ideal hale getiriyor.

Kaynak:

MQTT[1] (MQ Telemetri Aktarımı veya Message Queuing Telemetri Aktarımı) bir ISO standardıdır (ISO/IEC PRF 20922)[2] yayınla-abone ol tabanlı mesajlaşma protokolü. TCP/IP protokolünün üstünde çalışır. "Küçük kod ayak izinin" gerekli olduğu veya ağ bant genişliğinin sınırlı olduğu uzak konumlara sahip bağlantılar için tasarlanmıştır.

Kaynak:

Adım 4: MQTT: MQTT Broker Hesabının Kurulması

Çeşitli MQTT broker hesabı var, bu eğitim için cloudmqtt kullandım (https://www.cloudmqtt.com/)

CloudMQTT, bulutta yönetilen Mosquitto sunucularıdır. Mosquitto, bir yayınla/abone ol mesaj kuyruğa alma modelini kullanarak mesajlaşmayı gerçekleştirmek için hafif yöntemler sağlayan MQ Telemetri Taşıma protokolünü (MQTT) uygular.

cloudmqtt hesabını komisyoncu olarak ayarlamak için aşağıdaki adımların gerçekleştirilmesi gerekir

  • Bir hesap oluşturun ve kontrol paneline giriş yapın
  • yeni bir örnek oluşturmak için Oluştur+'ya basın
  • Başlamak için bir müşteri planına kaydolmamız gerekiyor, CuteCat planıyla CloudMQTT'yi ücretsiz deneyebiliriz.
  • "Örnek" oluşturduktan sonraki adım, kullanıcı oluşturmak ve kullanıcıya mesajlara erişim için daha fazla izin atamak (ACL kuralları aracılığıyla)

cloudmqtt'de MQTT broker hesabı kurmak için tam kılavuza şu bağlantıdan erişilebilir: -

Yukarıdaki tüm adımlar aşağıdaki slaytlarda birer birer konulmuştur

Adım 5: MQTT: Bir Örnek Oluşturma

MQTT: Örnek Oluşturma
MQTT: Örnek Oluşturma

"myIOT" adında bir Örnek oluşturdum

plan: Şirin plan

6. Adım: MQTT: Örnek Bilgisi

MQTT: Örnek Bilgisi
MQTT: Örnek Bilgisi

Örnek, kaydolduktan hemen sonra sağlanır ve bağlantı bilgileri gibi örnek ayrıntılarını ayrıntılar sayfasında görüntüleyebilirsiniz. Yönetim arayüzüne oradan da ulaşabilirsiniz. Bazen bir bağlantı URL'si belirtmeniz gerekir

Adım 7: MQTT: Kullanıcı Ekleme

MQTT: Kullanıcı Ekleme
MQTT: Kullanıcı Ekleme

“nodemcu_12” adında bir kullanıcı oluşturun ve bir şifre verin

Adım 8: MQTT: ACL Kuralı Atama

MQTT: ACL Kuralı Atama
MQTT: ACL Kuralı Atama

Yeni kullanıcı (nodemcu_12) oluşturulduktan sonra yeni kullanıcıyı kaydedin, şimdi yeni kullanıcıya daha fazla ACL sağlanacaktır. Ekli resimde, kullanıcıya hem okuma hem de yazma erişimi sağladığım görülmektedir.

Lütfen dikkat: Konu, gösterildiği şekilde eklenecektir (bu, düğümden MQTT istemcisine okuma ve yazma için ayrıca gereklidir)

Adım 9: Nodemcu: Yapılandırma

Bu özel projede, Knewron Technologies'den nodemcu kullandım, bağlantıyı takip ederek daha fazla bilgi edinilebilir: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Guide.pdf?dl=0)

NodeMCU'nun Espressif'ten ESP8266 WiFi SOC için eLua tabanlı bir üretici yazılımı olduğu görülebilir. Knowron'dan Nodemcu, bellenim ile önceden yüklenmiştir, bu nedenle uygulama yazılımını yüklememiz gerekiyor: -

  • init.lua
  • setup.lua
  • config.lua
  • app.lua

Yukarıdaki tüm lua betikleri aşağıdaki bağlantıyı takip ederek Github'dan indirilebilir: Github'dan İndir

Yukarıdaki lua komut dosyalarından, config.lua komut dosyalarını MQTT ana bilgisayar adı, parola, wifi ssid vb. ile değiştirin.

Yukarıdaki betikleri nodemcu'ya indirmek için "ESPlorer" gibi bir araç kullanmamız gerekiyor, daha fazla bilgi için docs'a bakın:

ESPlorer ile çalışmak bir sonraki adımda açıklanmıştır

Adım 10: Nodemcu: Lua Scriptlerini ESPlorer_1 ile Nodemcu'ya Yükleme

Nodemcu: ESPlorer_1 ile Lua Scriptlerini Nodemcu'ya Yükleme
Nodemcu: ESPlorer_1 ile Lua Scriptlerini Nodemcu'ya Yükleme
  • Yenile düğmesini tıklayın
  • COM(İletişim) bağlantı noktasını ve baud hızını seçin (Yaygın olarak kullanılan 9600)
  • Aç'ı tıklayın

Adım 11: Nodemcu: Lua Scriptlerini ESPlorer_II ile Nodemcu'ya Yükleme

Nodemcu: Lua Scriptlerini ESPlorer_II ile Nodemcu'ya Yükleme
Nodemcu: Lua Scriptlerini ESPlorer_II ile Nodemcu'ya Yükleme

Adım 12: Nodemcu: Lua Scriptlerini ESPlorer_III ile Nodemcu'ya Yükleme

Nodemcu: ESPlorer_III ile Lua Scriptlerini Nodemcu'ya Yükleme
Nodemcu: ESPlorer_III ile Lua Scriptlerini Nodemcu'ya Yükleme

Kaydet ve derle düğmesi, bu nodemcu arduino'muzla konuşmaya hazır olduktan sonra, dört lua komut dosyasının tümünü nodemcu'ya gönderir.

CHIP ID bilgilerinin toplanması:

Her nodemcu'nun bir çip kimliği vardır (muhtemelen bazı no.), bu çip kimliği ayrıca MQTT aracısına mesaj yayınlamak için gereklidir, çip kimliğini bilmek için "ESPlorer" da Chip kimliği düğmesine tıklayın

Adım 13: Nodemcu: Arduino'yu Nodemcu ile Konuşacak Şekilde Yapılandırma

Aşağıda belirtilen kod, toprak nemi, sıcaklık ve nemi belirler ve ayrıca verileri nokia LCD 5110'da ve seri olarak görüntüler.

Arduino kodu

Arduino RX --- Nodemcu TX'i bağlayın

Arduino TX ---Nodemcu RX

Yukarıdaki kod ayrıca, DO pinlerinin seri pin olarak da kullanılabileceği softserial kütüphaneyi kullanmanın yollarını içerir, nodemcu seri portuna bağlanmak için RX/TX pinlerini kullandım.

Dikkat:nodemcu 3.3V ile çalıştığı için seviye değiştirici kullanılması tavsiye edilir, ancak herhangi bir seviye değiştirici olmadan doğrudan bağlandım ve performans yukarıdaki uygulama için doğru görünüyor.

Adım 14: Nodemcu: Android'de MQTT İstemcisini Ayarlama

Nodemcu: Android'de MQTT İstemcisini Ayarlama
Nodemcu: Android'de MQTT İstemcisini Ayarlama

Bilgileri android istemcisi ile mobil cihazlarda görüntülemek için son adım: -

Çeşitli MQTT android uygulaması var, google play'den olanı aşağıdaki bağlantıyla kullandım:

.https://play.google.com/store/apps/details?

Android uygulaması için yapılandırma oldukça basittir ve aşağıdakileri yapılandırmanız gerekir

  • MQTT Ana bilgisayar adresi ve bağlantı noktası numarası
  • MQTT kullanıcı adı ve adresi
  • MQTT aracı düğüm adresi

Yukarıdaki detayları ekledikten sonra, uygulamayı bağlayın, eğer uygulama MQTT brokerine bağlıysa, arduino'dan gelen tüm giriş durum/seri iletişim verileri log olarak görünür.

Adım 15: Ek Adımlar: Nokia LCD 5110 ile Çalışma

Ek Adımlar: Nokia LCD 5110 ile Çalışmak
Ek Adımlar: Nokia LCD 5110 ile Çalışmak

LCD 5110 için pin konfigürasyonu aşağıdadır

1) RST – Sıfırla

2) CE – Çip Etkinleştirme

3) D/C – Veri/Komut Seçimi

4) DIN – Seri Giriş

5) CLK – Saat Girişi

6) VCC – 3.3V

7) IŞIK – Arka Işık Kontrolü

8) GND – Toprak

Yukarıda gösterildiği gibi, arduino'yu yukarıdaki sırayla 1-10 K direnç ile LCD 5110'a bağlayın.

LCD 5110 - Arduino uno için pinden pine bağlantılar aşağıdadır

  • CLK - Arduino Dijital pin 3
  • DIN - Arduino Dijital pin 4
  • D/C - Arduino Dijital pin 5
  • RST - Arduino Dijital pin 6
  • CE - Arduino Dijital pin 7

LCD 5110'un diğer "BL" pimi, LCD'nin parlaklığını kontrol etmek için potansiyometre (0-100K) ile birlikte kullanılabilir

Yukarıdaki kod için kullanılan kütüphane: - PCD8544'ü aşağıda belirtilen bağlantıdan indirin

DHT11, sıcaklık ve nem sensörünün arduino ile entegrasyonu aşağıdaki DHT11 bağlantısından incelenebilir.

Adım 16: Son Birleştirme

Son Montaj
Son Montaj

Son adım, yukarıdakilerin tümünü tercihen bir kutuda bir araya getirmektir, tedarik için hem Arduino'ya hem de Nodemcu'ya güç sağlamak için 10000mah powerbank kullandım.

Dilerseniz duvar prizli şarj cihazını da uzun süre kullanabiliriz.

Önerilen: