İçindekiler:

Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi: 6 Adım (Resimlerle)
Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi: 6 Adım (Resimlerle)

Video: Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi: 6 Adım (Resimlerle)

Video: Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi: 6 Adım (Resimlerle)
Video: Home Assistant 6 - Uzaktan Erişim 2024, Kasım
Anonim
Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi
Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi
Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi
Ultra Düşük Güçlü WiFi Ev Otomasyon Sistemi

Bu projede, birkaç adımda temel bir yerel ev otomasyon sistemini nasıl kurabileceğinizi gösteriyoruz. Merkezi bir WiFi cihazı olarak görev yapacak bir Raspberry Pi kullanacağız. Uç düğümler için ise, pille çalışan bir WiFi cihazı yapmak için IOT Cricket kullanacağız; sıcaklık sensörü ve tek bir kod satırı yazmadan RPi'ye bağlayın.

Sistemimiz, çoğu ev otomasyon sisteminde büyük ölçüde benimsenen MQTT iletişim protokolüne dayalı olacaktır. Kurmak için Mosquitto MQTT brokerini (sunucu) seçiyoruz ve Raspberry Pi'ye (merkez merkezimiz) kuruyoruz.

IOT Cricket ayrıca HTTP(S) ve MQTT protokolleri desteği ile birlikte gelir. Doğrudan RPi MQTT aracımızla iletişim kurmak için MQTT'yi kullanacak şekilde yapılandırıyoruz.

Bu proje, tüm beceri seviyelerindeki yapımcılar tarafından gerçekleştirilebilir. Bazı temel lehimleme gerektirebilir ancak herhangi bir kodlama veya programlama gerektirmez. Bu projenin sonunda, kendi IOT uç düğümlerinizi sisteme ekleyerek kendi sisteminizi nasıl kolayca kurabileceğiniz ve hızla genişletebileceğiniz konusunda sağlam bir fikir edineceksiniz.

Gereçler:

  • Raspberry Pi(Bu proje için 3. sürümü kullandık)
  • IOT Kriket WiFi modülü
  • 2xAAA pil tutucu
  • 2xAAA pil

Adım 1: MQTT Nedir?

MQTT protokolü, bir yayınlama/abone olma modelini kullanarak mesajlaşmayı gerçekleştirmek için hafif bir yöntem sağlar. Bu, düşük güçlü sensörler veya telefonlar, gömülü bilgisayarlar veya mikro denetleyiciler gibi mobil cihazlar gibi Nesnelerin İnterneti mesajlaşması için uygun hale getirir. (kaynak: mosquitto.org)

Konulara abone olmak ve gelen mesajları dinlemek için istediğimiz kadar cihaz kullanabiliriz. Bazı cihaz(lar) o konuyla ilgili mesaj yayınlarsa, konuya abone olan tüm cihazlar o mesajı anında alır. Konu, hiyerarşik konuların oluşturulmasına izin vermek için genellikle / karakterleriyle birleştirilen herhangi bir rastgele dize olabilir. MQTT'nin en tipik kullanımı, cihazların abone olabileceği ve mesaj yayınlayabileceği tek bir merkezi sunucuya sahip olmaktır. O sunucuya bağlı cihazlar arasındaki tüm iletişimi kolaylaştırır. Bu projede, merkezi MQTT aracımız olarak hareket etmek için RPi kullanacağız ve diğer tüm cihazlar bu aracı aracılığıyla mesaj gönderecek. Bunu öğrenmenin en iyi yolu, açıkçası bunu kendi başımıza yapmaktır. İnternette MQTT ile ilgili pek çok kaynak var. Ancak, bu proje için yukarıda verdiğimiz temel bir girişle sorun yaşamanız gerekir.

2. Adım: Raspberry Pi'ye MQTT Broker Kurulumu

Bu proje için açık kaynaklı bir Mosquitto MQTT komisyoncusu kullanıyoruz. Hafiftir ve düşük güçlü tek kartlı bilgisayarlardan tam sunuculara kadar tüm cihazlarda kullanıma uygundur.

Yüklemeye başlamadan önce sistem bileşenlerini güncellemek iyi bir uygulamadır:

$ sudo apt-get güncelleme $ sudo apt-get yükseltme

Mosquitto broker'ı yükleyin. Bir terminal açın ve aşağıdaki komutu yazın:

$ sudo apt-get install mosquitto -y

Mosquitto aracısını yapılandırın. Yapılandırma dosyasını düzenleyin:

$ sudo vi /etc/mosquitto/mosquitto.conf

ve en üste aşağıdaki satırları ekleyin:

bağlantı noktası 1883allow_anonymous true

Değişiklikleri uygulamak için RPi'yi yeniden başlatın:

$ sudo yeniden başlatma

Bu kadar! MQTT brokerimiz şimdi çalışıyor ve çalışıyor!

NOT: Bu projenin basitliği adına hesap oluşturmuyoruz. Böylece yerel ağımızdaki herkes bu MQTT aracısına kimlik bilgileri olmadan bağlanabilir. Kullanıcı kimlik doğrulaması eklemek ve daha güvenli hale getirmek istiyorsanız, internette bunun nasıl yapılacağına dair çok sayıda eğitim bulunmaktadır.

Şimdi, ağdaki diğer cihazlardan Mosquitto aracımıza mesaj gönderebilmemiz için sadece IP adresi almamız gerekiyor:

IP adresi al:

$ ana bilgisayar adı -I

sizin_RPi_IP_adresiniz (ör. 192.168.1.10)

3. Adım: IOT Cricket'i RaspberryPi'ye MQTT Üzerinden Bağlayın

IOT Cricket'i RaspberryPi'ye MQTT Üzerinden Bağlayın
IOT Cricket'i RaspberryPi'ye MQTT Üzerinden Bağlayın
IOT Cricket'i RaspberryPi'ye MQTT Üzerinden Bağlayın
IOT Cricket'i RaspberryPi'ye MQTT Üzerinden Bağlayın

Bu projede, sistemimize her 30 saniyede bir sıcaklık bildirmek için basit bir sensör için IOT Cricket WiFi modülünü kullanıyoruz. Pille çalışacak, böylece evde veya bahçede herhangi bir yere yapıştırabiliriz. Daha sonra çeşitli pille çalışan sensörler, alarmlar, düğmeler, anahtarlar oluşturmak ve bunları da kutudan çıktığı gibi RPi MQTT aracımıza bağlamak için IOT Cricket'i kullanabilirsiniz.

İlk adımda pilleri Cricket'e bağlayın.

Kriket, yerleşik bir sıcaklık sensörü ile birlikte gelir. Sadece RPi IP adresini ayarlayarak MQTT aracımıza sıcaklık değeri gönderecek şekilde yapılandırmamız gerekiyor. Bunu yapmak için Cricket'in yapılandırma panelini açın (buradaki adımlara bakın) ve aşağıdaki ayarları uygulayın (aşağıdaki resimde gösterildiği gibi, lütfen "url" kutusundaki IP adresini RPi'nize göre ayarlayın)

Artık konfigürasyon modundan çıkabiliriz. Cihaz hazır! Cricket zaten her 30 saniyede bir MQTT aracımıza veri gönderiyor.

4. Adım: MQTT Mesajlarını İnceleyin

MQTT Mesajlarını İnceleyin
MQTT Mesajlarını İnceleyin

MQTT aracımıza gönderilen mesajları görüntülemek/almak için çeşitli araçlar kullanabiliriz.

En kolayı bir komut satırı aracı mosquitto_sub olabilir. Bu komutla ister ağımızdaki herhangi bir bilgisayara ister RPi'mize kurabiliriz:

$ sudo apt-get install mosquitto-clients -y

Artık MQTT aracımız aracılığıyla gönderilen TÜM konuları ve mesajları dinlemek için aşağıdaki komutu uygulayabiliriz:

$ mosquitto_sub -v -h your_RPi_IP_address -p 1883 -t '#'

… / 59A98F494C / aygıt_adı MyTemperatureDev / 59A98F494C / device_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enabled 3763 / 59A98F494C / hwc_message_sent 3664 / 59A98F494C / sıcaklık 26.0 / 59A98F494C / io1_wake_up 0 / 59A98F494C / rtc_wake_up 1 …

Yukarıdaki, IOT Cricket'in komisyoncumuza gönderdiği şeyin bir çıktı örneğidir. Görebildiğimiz diğer veriler arasında bir sıcaklık var:

/59A98F494C/sıcaklık 26.0

MQTT'nin güzelliği, sadece ilgilendiğimiz konulara abone olmamıza izin vermesidir. Sadece bir sıcaklık almak istiyorsak, aşağıdaki komutu kullanarak /59A98F494C/temp konusuna abone olabiliriz:

$ mosquitto_sub -h sizin_RPi_IP_address -t '/59A98F494C/temp'

…26.126.527.227.6…

Adım 5: Özet

Özet
Özet

Bu projede WiFi tabanlı düşük güçlü, enerji verimli, ev otomasyon sistemleri oluşturmaya başlamak için gerekli bir donanım ve yazılımı gösterdik. MQTT, daha karmaşık sistemler için üzerine inşa edilecek esastır.

MQTT ile entegre edilebilen yazılım ve hizmet ekosistemi BÜYÜK! Kendi sisteminizde harika bir kullanıcı deneyimi yaşamanıza olanak tanıyan Home Assistant, Node RED, Grafana vb. gibi birçok harika sistem var. Sadece sıcaklığın basit çıktılarını almakla kalmıyor, aynı zamanda verileri görselleştiren ve cihazlarınızı yöneten harika panolara da sahip olabiliriz.

Artık bu temel sistem altyapısına sahip olduğumuz için, IOT Cricket modüllerini kullanarak inşa edebileceğimiz ve ev otomasyon sistemimize ekleyebileceğimiz diğer WiFi cihazlarının sınırı gökyüzüdür.

Buraya kadar geldiğin için teşekkürler. Umarız bu eğitimden keyif almışsınızdır!

Edge ekibindeki şeyler

Adım 6: Hakkımızda

Things On Edge, Cambridge, İngiltere merkezli bir şirkettir. Çeşitli elektronik cihazları akıllı telefonlara veya diğer internet hizmetlerine tam anlamıyla dakikalar içinde bağlamanızı sağlamak için ultra düşük pille çalışan Kriket Wi-Fi modülü tasarlıyoruz. Herhangi bir programlama ve kodlama gerektirmez. Cihazlarınızı MQTT ve HTTP apis üzerinden devasa bir IOT ekosistem hizmetlerine entegre etmenize olanak tanır.

Önerilen: