Otomasi Rumah dengan ioBroker

Sekarang, ketika potongan-potongan kontrol baru untuk bola lampu, AC dan peralatan rumah tangga lainnya muncul hampir setiap hari, pertanyaan menggabungkan semua kekayaan ini ke dalam satu jaringan sangat akut.
Tetapi dunia, untungnya, tidak tidur dan rajin terlibat dalam masalah ini. Ada dua solusi gratis kualitas yang layak, dan dibayar (bukan fakta yang berkualitas baik).
Seperti dunia, saya tidak bisa tidur juga, dan saya, seperti seluruh dunia, telah bertahun-tahun berturut-turut, dan selama tiga tahun terakhir saya telah bekerja sangat keras untuk mengintegrasikan semua jenis peralatan ke dalam rumah pintar.

Pada artikel ini saya ingin membahas otomatisasi rumah dan bagaimana menggunakan proyek Open Source Anda untuk menerangi (dan tidak hanya) rumah nyaman Anda. Oh ya, saya hampir lupa mengatakan bahwa semua otomatisasi terjadi dalam JavaScript!

Untuk semua pecinta JS, saya minta potongan


Sebagai permulaan, sedikit teori kering dan demagogi tentang topik rumah pintar.
Semua orang memahami istilah ini sebagai sesuatu yang berbeda. Seseorang menyalakan lampu di kamar mandi dengan sensor gerak dan menganggap rumah itu sudah pintar, tetapi bagi seseorang rumah IronMan (JARVIS) tidak cukup pintar, karena rumah ini akhirnya terkoyak, yang berarti itu bukan Saya bisa melindungi diri dari beberapa orang dengan helikopter .
Tapi bercanda samping - semua orang ini benar. Hanya saja tingkat "kecerdasan" di rumah juga berbeda, seperti IQ pada orang. Ada "anak-anak" kecil yang tahu cara menyalakan bola lampu, dan ada "akademisi" yang telah lulus dari universitas dan tidak hanya dapat menyalakan lampu, tetapi juga mematikannya :)

Di rumah, beberapa area otomatisasi dapat dibedakan:
- paling sering itu adalah cahaya
- lalu pemanasan
- Pemantauan lingkungan: suhu indoor dan outdoor, kelembaban
- keamanan dan alarm
- multimedia (TV, musik)
- jendela, jendela, gerbang, pintu, tenda
- ventilasi dan pendingin udara
- kontrol peralatan rumah tangga lainnya
- logging dan jadwal
-

Daftar pemberitahuan - Daftar pemberitahuan Anda dapat melanjutkan, tetapi saya ingin memikirkan arah yang paling sering digunakan. Setiap bidang otomasi memiliki sistem perangkatnya masing-masing, masing-masing dengan protokol, aplikasi, dan metode kontrolnya sendiri. Saat ini tidak adaprodusen yang mampu menyediakan perangkat di setiap bidang otomasi. Tetapi ada beberapa yang telah datang jauh: Samsung, Google, Apple.
Pada saat yang sama, masing-masing pabrikan menciptakan sepeda sendiri protokol interaksi dan tidak ada yang mau menyerah pada yang lain. Meskipun protokol interaksi dari Google Weave tampaknya paling dipikirkan.

Ada juga upaya untuk membuat protokol independen dari pabrikan. Dalam arah ini, IBM dengan MQTT telah maju terjauh. Namun, sayangnya, tidak ada saluran standar tentang menerima deskripsi tentang perangkat, seperti unit, lokasi / kamar, grup fungsional (tirai atau lampu) dan informasi meta lainnya.

Dan apa yang saya maksud dengan rumah pintar, atau, seperti yang disebutkan di atas, tingkat otomatisasi apa yang cocok untuk saya?
Saya banyak bereksperimen dan sampai pada kesimpulan bahwa semua kontrol ini dari telepon, kontrol suara atau grafik suhu hanya mainan.

Rumah pintar sejati seharusnya tidak mencolok. Seharusnya hanya terlihat ketika rumah pintar berhenti bekerja.

Rumah pintar harus memantau orang melalui sensor dan menyesuaikan lingkungan untuk mereka (tidak, tentu saja, itu tidak boleh mengirim informasi ini ke Google). Sesuaikan suhu, sambil menghemat panas pada pemanasan; Nyalakan, ketika seseorang memasuki ruangan, lampu latar tanpa mempesonanya atau menutupi kerai jendela jika TV menyala dan jendela menyorot gambar. Skenarionya tidak terbatas. Khususnya rumah cerdas harus mengenali urutan dan ketergantungan peristiwa serta menawarkan aturan otomasi baru.

Saya tahu apa yang saya katakan. Saya menutup tablet di dekat pintu depan dan menerapkan kontrol suara dan membuat semua jadwal yang mungkin dan tidak mungkin dan saya dapat membuka pintu apartemen dengan telepon, tetapi ini semua untuk menunjukkan kepada para tamu saya rumah pintar macam apa yang akan saya dengar dan katakan "Wow" . Saya dan keluarga saya hampir tidak pernah menggunakannya.

Tidak, ini tentu saja penting, kadang-kadang melihat keadaan sensor di rumah melalui telepon saat berlayar di Laut Mediterania atau menerima pemberitahuan dengan foto yang mengatakan bahwa seseorang telah memasuki rumah, meskipun ia tidak boleh, membuka pintu ke tukang pos dan memastikan bahwa dia tidak akan tahan setengah rumah dengan dia. Dan, pada akhirnya, mendengar dari teman Anda "Wow" yang sama juga bukan argumen terakhir. :) Semua ini harus, jika hanya untuk memahami bahwa ini sebenarnya tidak begitu penting :)

Otomasi adalah yang terbaik untuk apartemen di mana seorang sarjana teknofil hidup, akan bekerja pada waktu yang sama setiap hari dan memiliki jumlah liburan dan akhir pekan yang konstan (Rusia, sayangnya, tidak termasuk dalam kriteria ini. Apa liburan Tahun Baru di bulan Mei biayanya? :)).

Kemudian datanglah keluarga muda tanpa anak dengan kecintaan teknologi yang moderat. Penting bahwa masing-masing dari mereka tidak berpisah dengan ponsel.

Kasus yang paling sulit adalah keluarga dengan anak-anak (semakin besar semakin sulit). Anak-anak tidak bisa otomatis. “Jadi, apa ayah, bahwa saya lupa teleponnya? Saya tidak membutuhkannya di halaman. " Dan semua skrip untuk mengenali orang-orang di ruangan itu dan aturan untuk menyalakan alarm berdasarkan mereka tidak berguna. (Kasus saya)

Namun mari kita kembali ke bagaimana melakukan semua ini di rumah dan membuat ruang hidup kita lebih nyaman.

Apa itu ioBroker?
Ini adalah platform integrasi untuk Internet hal dan berfungsi sebagai server pusat untuk:
  • rumah pintar
  • otomatisasi bangunan
  • hidup berbantuan

* Ngomong-ngomong, saya akan berterima kasih untuk terjemahan dari istilah terakhir.

ioBroker adalah sistem yang mampu menghubungkan seluruh salad protokol dan perangkat satu sama lain.

Beberapa perusahaan konstruksi memutuskan untuk membangun rumah pintar di Hamburg dan mereka mengumpulkan semua perangkat yang mungkin di satu apartemen dan menawarkan delapan aplikasi telepon (omong-omong, hanya apel) untuk mengelola seluruh kebun binatang ini. Di sini saya mungkin perlu menulis: Anda dapat membayangkan delapan aplikasi, Carl!
Dengan ioBroker, ini tidak perlu dilakukan.

ioBroker memiliki struktur yang sangat modular. Setiap modul berjalan dalam proses yang terpisah dan ketika crash, modul ini akan restart dan seluruh sistem terus bekerja.

Perbedaan antara ioBroker dan sistem otomasi lainnya adalah modul visualisasi web di browser - vis. Setengah dari waktu yang dibutuhkan untuk mengembangkan seluruh ioBroker dihabiskan untuk pengembangannya.



Juga, keuntungan ioBroker terletak pada sejumlah besar paket npm yang tersedia - 286000.

* Informasi diambil dari http://www.modulecounts.com/ .

Tentu saja, kualitas paket tidak selalu di atas, tetapi sebagai aturan untuk masalah yang sama ada beberapa paket berbeda dan kuantitas dalam hal ini berkembang menjadi kualitas. Anda hanya perlu memilih paket yang tepat. Dengan demikian, koneksi protokol baru hanya masalah teknologi.
Dengan cara ini, saya mengimplementasikan koneksi OPC UA, Sonos, MQTT, Telegram, Pushover, Homematic, Z-Wave, Simatic dan banyak lagi sistem lainnya.

Penekanan besar ditempatkan pada kemampuan untuk dengan mudah mengkonfigurasi dan mengkonfigurasi dan ini memakan bagian terbesar waktu, tidak seperti FHEM dan, misalnya, OpenHAB, di mana pengaturan dilakukan melalui file konfigurasi.

Alternatif Sumber Terbuka.

- OpenHAB adalah platform otomatisasi Java yang populer. Saat ini, ada hingga 160 driver atau modul.

- FHEM adalah sistem otomasi yang tersebar luas di Perl di Jerman dengan sejumlah besar driver - 340. Tetapi pengaturan sistemnya buruk dan kurangnya model-meta terstandarisasi membuat sulit untuk memperluas sistem.

- MajorDomo adalah platform otomasi yang cukup matang di PHP. Anda dapat menemukan banyak artikel tentang sistem ini di sini di geektimes .

- Domoticz - sistem yang ditulis dalam C / C ++ dengan antarmuka grafis yang sangat baik. Tetapi karena fakta bahwa C / C ++ sulit untuk menulis dengan cepat, maka dengan set driver / modul yang terbatas.

Secara umum, banyak sistem otomasi rumah yang menarik dapat ditemukan di sini . Pada dasarnya, sistem dipisahkan oleh bahasa pemrograman (Java, C / C ++, Python, Javascript, PHP, ...) dan perangkat keras (Vera, Raspberry PI, Synology, Mediola, ...). Mereka semua berhak atas keberadaan, meskipun beberapa mungkin lebih dan beberapa mungkin lebih sedikit.

Saat ini, tingkat pengetahuan teknis orang yang menerapkan sistem otomasi cukup tinggi dan mereka tidak pingsan dari kata-kata: Linux, konsol, apt-get. Tetapi ketika pertanyaan muncul di forum: "Saya menginstal sistem, tapi saya tidak bisa mengubah folder rumah ke folder ioBroker. Tolong! " Itu adalah bel yang informatika mulai menyusul dan bahwa pengguna komputer sederhana dapat menggunakan sistem.

Semua antarmuka pengaturan diterjemahkan ke dalam 3 bahasa, dengan pengecualian driver khusus Jerman. Nah, mengapa pengguna yang berbahasa Rusia memerlukan pengemudi yang mengirimkan data harga gas di Jerman atau peringatan cuaca dari dinas cuaca Jerman? ..
Juga, pengemudi untuk pasar yang sepenuhnya berbahasa Rusia, seperti pengemudi alarm mobil starline, tetap tanpa terjemahan.

Dokumentasi ditulis dengan kemampuan terbaik kami dalam 3 bahasa, tetapi masih banyak pekerjaan. Meskipun selama sebulan terakhir sudah ada banyak deskripsi yang bagus.

JavaScript digunakan untuk menulis antarmuka, layanan, dan skrip. Salah satu bahasa pemrograman yang tersebar luas dan populer. Sekarang Python mulai populer, tetapi Anda tidak dapat menulis shell grafis untuk browser di python. (Ya, saya tahu tentang keberadaan py2js , tapi saya belum melihat sesuatu yang layak untuk itu)

Sedikit tentang proyek Open Source.
Sebagai orang yang berpartisipasi dalam proyek open source, saya dapat mengatakan: Saya dulu berpikir bahwa proyek open source ditulis oleh ribuan orang dari seluruh dunia dan mudah bagi mereka untuk menulis apa pun. Sekarang saya dapat mengatakan bahwa ada satu di belakang setiap sumber terbuka (kadang-kadang dalam proyek-proyek besar terutama - sekelompok orang) dan bahwa hanya satu persen pengguna yang aktif dari komunitas. Hanya saja proyek-proyek besar memiliki jutaan pengguna dan satu persen dari satu juta adalah sepuluh ribu orang. Tetapi proyek yang lebih kecil memiliki lusinan atau unit individu. Saya juga dapat mengatakan bahwa satu pengguna yang tertarik dapat melakukan lebih dari sepuluh programmer yang tidak tertarik dan penting untuk hanya mendapatkan banyak pengguna dan kemungkinan seseorang yang dapat membuat kontribusi signifikan menjadi lebih.

Kemungkinan
Saya dapat mengatakan bahwa kemungkinannya ... tidak terbatas. Lipat gandakan jumlah paket npm dengan jumlah besi dan Anda mendapatkan sejuta kemungkinan untuk menyalakan bola lampu:
- via telegram
- dengan suara
- API istirahat
- visualisasi web
- aplikasi android
- antarmuka untuk ponsel dan tablet (seluler)
- 340 driver dari FHEM
- MQTT

Ya, dan proyek ini aktif berkembang dan tumbuh dalam 3 bahasa.

Bagi mereka yang tertarik - google untuk membantu. Dan selanjutnya - saya akan mencoba untuk menggambarkan bukan bagaimana alam semesta bekerja, tetapi bagaimana komunikasi antara perangkat modbus dan pembangkit listrik tenaga nuklir terjadi.

Source: https://habr.com/ru/post/id394961/


All Articles