OpenHAB 2 : Aeon Labs Multisensor 6 kontrolü

Akıllı bir ev sisteminin vazgeçilmez parçalarından birisi kuşkusuz evinizin çeşitli noktalarına yerleştirdiğiniz sensörler. Bir önceki makalemi hatırlarsanız akıllı ev sistemlerinde sıklıkla kullanılan Z-Wave protokolünden bahsetmiş ve Aeon Labs Z-Stick Gen5 cihazı üzerinden bir Z-Wave controller’ı nasıl OpenHAB 2 üzerinde kullanabileceğinizi göstermiştim. Kuşkusuz ki bir controller tek başına ise bize pek bir şey ifade etmeyecektir. Bu makalemde, kurulumunu yaptığımız bu controller’ın da yardımıyla Aeon Labs MultiSensor 6 cihazını nasıl kontrol edebileceğimizi sizlerle paylaşacağım.

AeoTec MultiSensor 6

Makaleye başlarken, öncelikle tamamlanmış olduğunu varsaydığım yapılandırmadan bahsetmekte fayda var. Tüm sistem Raspberry Pi (tercihen v3) üzerinde koşuyor ve OpenHAB 2 kurulu ve çalışır durumda. Sistem üzerinde önceki makalemde detaylarını paylaştığım şekilde bir Z-Wave binding’i kurulu. Yine detaylarını önceden paylaştığım şekilde Open Z-Wave Control Panel (OZWCP) kurulu.

Multisensor 6 yapılandırmasına geçmeden önce donanımsal yapılması gereken bir kaç iş söz konusu. Z-Stick Raspberry Pi’ye takılı ise çıkartarak Multisensor 6’nın yanına getiriniz. Aeon Labs USB Z-Stick bir aygıta bağlı iken eşleştirme yapmamaktadır. Cihazları eşleştirmek için Z-Stick ve Multisensor’ün aksiyon tuşlarına kısa süreliğine basıp bırakın.

Eşleşme için her iki cihazın da aksiyon tuşlarına basmalısınız

Bu işlem her iki cihazın birbirlerini bulmasını ve eşleşmelerini sağlayacaktır. Eşleştirmenin başarılı olduğunu teyit etmek için MultiSensor 6’nın aksiyon tuşunu basıp bırakın. Sağ üst köşesinde bulunan geri bildirim led’i devamlı ve yeşil yanıyorsa eşleştirme başarılıdır. Aksi durumda eşleştirme başarısız olmuş demektir, yukarıdaki adımları yeniden takip etmelisiniz. Eşleştirmenin başarıyla tamamlanması ardından Z-Stick’i yeniden Raspberry Pi’ye takabilirsiniz.

IMG_1612

Eşleştirme ardından sıra geldi MultiSensor 6’nın yapılandırmasına. Yapılandırma işlemi için Open Z-Wave Control Panel (OZWCP) kullanacağız. Alternatif olarak; eğer sisteminizde HABmin 2 kurulu ise yapılandırma adımlarını buradan da yapabilirsiniz. HABmin üzerinden yapılandırmayı gerçekleştirmeniz durumunda her ne kadar bu bölümdeki OZWCP adımlarına ihtiyacınız olmasa da yapılandırma için aynı bilgilere gerek olduğu için okumanızda fayda var. HABmin 2 ile yapılandırma detaylarını bir sonraki bölümde bulabilirsiniz.

OZWCP üzerinden yapılandırma için OpenHAB 2 çalışır durumda ise kapatalım;

sudo systemctl stop openhab

OZWCP klasörüne giderek çalıştıralım;

cd open-zwave-control-panel/
./ozwcp -p 8080

Tarayıcıdan uygulamayı açalım ve cihaz adı olarak daha önceki makalemde bulduğumuz cihaz path’ini girelim. Cihaz bağlanmak için Initialize butonuna basmalısınız.

Open Z-Wave Control Panel üzerinden cihazımıza bağlanalım

 

Bağlanma işleminin başarıyla sonuçlanması ardından alt bölümde yer alan cihazlar listesinde ağda bulunan ve eşleştirilmiş olan Z-Wave cihazlarınızın listesini bulabilirsiniz;

Eşleştirilmiş Z-Wave cihazları listesi

 

Gördüğünüz gibi Aeotec Z-Stick Gen5 ve Aeotec MultiSensor 6 cihazlarımız sıkıntısız şekilde sistemimizde görünmekte. Aeotec MultiSensor 6 satırına tıkladığımızda alt bölümde yer alan Current Values bölümünde cihazımızdan okunan değerler görülebilir.

Yukarıdaki ekran görüntüsüne dikkat ederseniz Aeotec MultiSensor 6 cihazımız 2 nolu düğüm (node) olarak kayıtlı durumda. Bu düğüm değerini not alalım. İlerideki adımlarda kullanacağız.

Sıra geldi cihazımızın ayarlarını yapmaya. Bunun için Configuration segmesine geçmeliyiz;

MultiSensor 6 yapılandırması

 

Ekrandaki değerlerden On time, cihazınızın hareket tespit ettikten sonra kaç saniye ON durum bildirimi yapacağını belirtir. Belirtilen süre sonunda bir hareket tespit edilemediğinde sistem OFF durumu bildirecektir.

MultiSensor 6 ışık, sıcaklık, nem, ultraviyole ve pil seviyesi bilgilerini 3 farklı periyodla bize raporlayabilir. Bu değerler, tercih ettiğimiz kombinasyon ve zamanlama ile raporlanır.

Raporlama grup tanımlamaları

Bu amaçla, ekranda göreceğiniz şekilde 3 raporlama grubu (Group 1/2/3 Reports) ve 3 raporlama sıklığı (Group 1/2/3 Interval) giriş alanı bulunmakta.

Öncelikle grup üyelerini belirlemeyeliz. Ekran görüntüsünde gördüğünüz gibi her bir grup için sadece tek bir tam sayı girilebilmekte. Grup üyelerini belirten tam sayı değeri aşağıdaki şekilde hesaplanmaktadır.

Her bir grup üyesini belirten tekil değerler bulunmaktadır;

  • Işık Sensörü : 128
  • Nem Sensörü : 64
  • Sıcaklık Sensörü : 32
  • Ultaviyole Sensörü : 16
  • Pil Sensörü : 1

Gruba dahil etmek istediğiniz sensörlerin değerlerini toplayarak arayüzdeki ilgili raporlamagrubu  alanına yazabilirsiniz. Örneğin; sadece Sıcaklık ve Pil sensörünü raporlamak istediğiniz grup için 32+1 = 33  değerini yazmalısınız.

Grupların gösterildiği yukarıdaki ekran görüntüsüne dikkat edecek olursanız 1. grup için 241 değeri yer almakta. Bu değer tüm sensör değerlerinin toplamıdır. 1. grup tüm sensörleri raporlamaktadır. 1. grubun güncelleme sıklığına bakacak olursanız 3600 saniye = 1 saattir. 2. ve 3. grupları için verilen 0 değeri bu gruplar için bir bildirim yapılmayacağını belirtmektedir.

Gruplarla ilgili aklınıza şöyle bir soru gelebilir. Cihaz neden tek bir adımda ve tüm sensör verisini göndermiyor? Neden bu şekilde bir grup mantığı oluşturulmuş? Buradaki hedef pil ömrünün maksimuma çıkartılmasıdır. Unutmayın ki ne kadar sıklıkla sensör ölçümü yapılırsa o kadar fazla pil tüketimi olacaktır.

Ayarlarla ilgili dikkat etmeniz gereken bir diğer nokta da cihaz tarafından işlenmesi. Cihaz pil modunda çalışırken düşük pil tüketimi amacıyla her an aktif durumda değildir. Bu sebeple ayarlarınız anında cihaza aktaramayabilir. Anında aktarılması için aksiyon butonu vasıtasıyla uyandırmanızda fayda var.

Gerekli yapılandırma değerini yaparak cihazımızı güncelledikten sonra Open Z-Wave Control Panel’i durdurup OpenHAB’ı yeniden başlatabiliriz.OpenHAB-Inbox

OpenHAB 2 açıldıktan sonra Inbox ekranında yer alan + butonu ile cihazımızı eklemeye başlayabiliriz.

Açılan ekrandan daha önce olduğu gibi yine Z-Wave Binding’i seçeceğiz;

add-binding

Açılan Search ekranında cihazımızı Unknown Device  olarak göreceğiz;

OpenHAB 2 Z-Wave Binding araması sonucunda cihazımızı bulacaktır

Bulunan cihazın node 2’de olduğuna dikkat edin. Bu düğüm değeri yukarıdaki adımlarda Open Z-Wave Control Panel içerisinde gördüğümüz değer ile aynıdır. Ekrandaki mavi check butonu vasıtasıyla ekleme ekranına geçelim;

Ekleme ekranında cihazımıza bir isim vererek sisteme ekleyelim

Bir isim vererek ADD AS THING butonu vasıtasıyla sistemimize ekleyelim. Eklediğimiz cihazımıza Configuration –> Things menüsünden ulaşabiliriz;

Eklediğimiz cihaz özellikleri

Gördüğünüz gibi OpenHAB cihazımızı tanıyarak sisteme eklemiş durumda.

Eğer sisteminize HABmin 2 eklentisini kurduysanız, bu arayüze geçerek daha önce Open Z-Wave Control Panel yardımıyla gerçekleştirdiğimiz yapılandırma adımlarını HABmin 2 üzerinden de yapabiliriz. Bunun için Configuration –> Thing Configuration ekranına geçerek bu ekranda az önce kaydettiğimiz Salon – Multisensor 6 cihazını seçiniz. Ekranın sağ tarafında cihaz hakkındaki bilgileri göreceksiniz. Bu bölümde Configuration Parameters bölümüne geçtiğinizde Open Z-Wave Control Panel ile değiştirdiğimiz cihaz parametrelerini görebilirsiniz;

HABmin ekranlarında cihaz yapılandırması

Daha önce yukarıda detaylarını paylaştığım cihaz yapılandırmasını bu ekrandan da yapabilirsiniz. Gerekli değişiklikleri gerçekleştirdikten sonra Save butonu yardımıyla yapılandırmayı kaydedebilirsiniz. Sitemaps –> Home –> Salon – MultiSensor 6 patikasından sensörümüzden gelen değerleri okumaya hemen başlayabilirsiniz;

HABmin arayüzünden MultiSensor 6'dan gelen değerleri okuyabilirsiniz

Tools->Z-Wave Network Viewer menüsü üzerinden Z-Wave ağınızı izleyebilirsiniz;

HABmin 2 Z-Wave Network Viewer ekranında Z-Wave ağınızı izleyebilirsiniz

Alternatif olarak kendi oluşturduğunuz site haritası üzerinden de bu değerleri görebilmeniz mümkün. Bunun için öncelikle, otomatik taramayla eklediğimiz cihazımız için oluşturulan nesneleri (items) bilmemiz gerekiyor. Bunun için OpenHAB 2 shell’inde aşağıdaki komutu kullanabiliriz;

items

OpenHAB shell'inde items komutu ile tanımlı nesneleri listeleyebilirsiniz

Gelen listede her bir satır bir nesneyi temsil etmektedir ve  satır nesnenin id’si ile başlamaktadır. Bu bilgiyi kullanarak aşağıdaki şekilde bir sitemap oluşturabilirsiniz;

sitemap ev label="Ev"
{
        Frame label="Salon - Sensörler" {               
                Switch item=zwave_device_controller_node2_alarm_general 
                Text item=zwave_device_controller_node2_sensor_relhumidity
                Text item=zwave_device_controller_node2_sensor_ultraviolet
                Text item=zwave_device_controller_node2_sensor_temperature
                Text item=zwave_device_controller_node2_sensor_luminance 
                Switch item=zwave_device_controller_node2_sensor_binary 
                Text item=zwave_device_controller_node2_battery_level       
        }
}

Site haritasına http://<OpenHAB2_ipsi>:8080/basicui/app?sitemap=ev adresini kullanarak Basic UI üzerinden erişebilirsiniz;

site_haritasi_ev

Fatih Boy

Ankara'da yaşayan Fatih, bir kamu kurumunda danışman olarak çalışmaktadır. ALM süreçleri, kurumsal veri yolu sistemleri, kurumsal altyapı ve yazılım geliştirme konularında destek vermektedir. Boş zamanlarında açık kaynak kodlu projeler geliştirmeyi ve bilgisini yazdığı makalelerle paylaşmayı seven Fatih, aynı zamanda Visual C# ve Visual Studio teknolojileri konusundan Microsoft tarafından altı yıl üst üste MVP (En Değerli Profesyonel) ödülüne layık görülmüştür. İş hayatı boyunca masaüstü uygulamaları, web teknolojileri, akıllı istemciler gibi konularda Asp.Net, Php, C#, Java programlama dilleri ve MySql, MsSql ve Oracle gibi veritabanı yönetim yazılımları ile çalışmıştır. İngilizce ve Türkçe olarak yayınlanan makalelerini gerek İngilizce bloğunda, gerekse de Türkçe bloğunda bulabileceğiniz gibi web sitesinden de açık kaynak kodlu geliştirdiği yazılımlarına ulaşabilirsiniz. vCard - Twitter - Facebook - Google+

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir