Daftar Isi:

Monitor Daya Berbasis Raspberry PI Peralatan Rumah: 14 Langkah
Monitor Daya Berbasis Raspberry PI Peralatan Rumah: 14 Langkah

Video: Monitor Daya Berbasis Raspberry PI Peralatan Rumah: 14 Langkah

Video: Monitor Daya Berbasis Raspberry PI Peralatan Rumah: 14 Langkah
Video: How to network monitor using Raspberry PI | Zabbix | NETVN 2024, Juli
Anonim
Monitor Daya Berbasis Raspberry PI Peralatan Rumah Tangga
Monitor Daya Berbasis Raspberry PI Peralatan Rumah Tangga
Monitor Daya Berbasis Raspberry PI Peralatan Rumah Tangga
Monitor Daya Berbasis Raspberry PI Peralatan Rumah Tangga

Ini adalah proyek kecil yang saya lakukan untuk memantau penggunaan daya masing-masing peralatan di sekitar rumah dan menampilkan grafik penggunaan dayanya dari waktu ke waktu. Ini sebenarnya salah satu proyek berbasis Raspberry PI yang lebih mudah yang pernah saya lakukan, tidak perlu menyolder atau meretas produk terbuka. Itu tidak harus menjadi proyek Raspberry PI, itu dapat dengan mudah dilakukan di kotak Linux atau mungkin Windows.

Biayanya adalah $50 AUD untuk satu set 4 monitor daya/colokan pintar dan biaya Raspberry PI. Ini dapat berjalan pada Pi Zero atau PI Asli meskipun saya merasa agak lambat. Satu-satunya PI lain yang saya miliki adalah PI 3 dan menurut saya itu sangat tajam, jadi itulah yang akan saya rekomendasikan. Perhatikan jika Anda ingin menjalankannya pada PI yang lebih lama, Anda dapat mengurangi frekuensi pengumpulan data (saya menggunakan 10 detik).

Proyek ini juga memiliki manfaat tambahan atau membebaskan smart plug dari firmware pabrikan, jadi Anda tidak perlu menggunakan aplikasi dan layanan cloud khusus mereka. Jadi mereka dapat digunakan dengan Home Assist atau hanya dengan skrip python Anda sendiri.

Harap dicatat saya berasumsi Anda tahu cara menginstal OS pada PI, sambungkan dan jalankan beberapa perintah dasar linux. Saya juga berasumsi Anda tahu cara menemukan alamat IP steker pintar Anda setelah terhubung ke WiFi Anda.

Perlengkapan

2 bungkus atau 4 bungkus colokan pintar dari sini:

www.kogan.com/au/buy/kogan-smarterhome-sma…

1 Raspberry PI

Keterampilan:

Kemampuan untuk mengatur PI raspberry

Baris perintah dasar linux

Editor teks seperti vi atau nano (nano lebih ramah pengguna, vi lebih cepat setelah Anda mengenalnya)

Kemampuan untuk menemukan IP perangkat di jaringan Anda.

Langkah 1: Beli Beberapa Colokan Pintar

Beli Beberapa Colokan Pintar
Beli Beberapa Colokan Pintar

Steker pintar yang saya gunakan berasal dari sini:

www.kogan.com/au/buy/kogan-smarterhome-sma…

Perhatikan bahwa ada berbagai macam colokan pintar yang kompatibel, sebagian besar (semua?) Adalah perangkat berbasis ESP8266 (WEMOS) dan sangat mudah untuk di-flash. Pastikan untuk mendapatkan sesuatu yang memiliki pemantauan daya karena banyak yang tidak. Halaman ini menampilkan daftar besar perangkat yang kompatibel:

templates.blakadder.com/plug.html

Langkah 2: Mem-flash Perangkat

Bagian ini ternyata sangat mudah. Anda pada dasarnya hanya mengunduh perangkat lunak, menjalankannya dan itu membantu Anda.

Untuk ini, Anda memerlukan kotak Raspberry PI atau Linux dengan WiFi. Anda harus memiliki koneksi utama ke perangkat ini BUKAN WiFi. Untuk PI3 saya, ini mudah karena saya terhubung melalui Ethernet. Jika Anda memiliki PI Zero maka Anda harus menghubungkan dengan cara lama, dengan keyboard dan monitor.

Saya berasumsi Anda tahu cara mengatur PI dan menghubungkannya dengan SSH atau keyboard jadi saya tidak akan membahasnya. Jika Anda tidak yakin ada banyak tutorial di web.

Sebelum kita mulai, hanya sedikit latar belakang pada perangkat. Ada sebuah perusahaan di Cina bernama Tuya yang memompa colokan pintar untuk pelanggan yang berbeda. Mereka membuat kustomisasi untuk pelanggan yang berbeda dan menyediakan firmware default dan memungkinkan perusahaan untuk membuat modifikasi mereka sendiri. Masalah dengan ini adalah jika Anda memiliki banyak produk dari vendor yang berbeda maka Anda akhirnya harus menjalankan banyak aplikasi, beberapa di antaranya bekerja lebih baik daripada yang lain. Dengan mem-flash firmware open source, Anda membebaskan diri dari semua itu. Jadi ini bagus untuk otomatisasi rumah umum.

Jadi …. tanpa basa-basi lagi, berikut petunjuknya:

1) Jalankan perintah ini pada PI, ini akan menginstal perangkat lunak yang diperlukan.

# git clone https://github.com/ct-Open-Source/tuya-convert# cd tuya-convert#./install_prereq.sh

2) Pasang steker pintar ke daya

3) Nyalakan dengan tombol

4) Tahan tombol daya hingga lampu biru mulai berkedip

5) Tunggu 10 detik. Ini tidak penting tetapi saya menemukan itu bekerja lebih baik jika Anda melakukannya.

6) Jalankan perintah ini

./start_flash.sh

Dari sini Anda tinggal mengikuti petunjuknya kecuali di akhir pilih "2. Tasmota". Ada opsi untuk firmware yang berbeda tetapi saya belum mencobanya jadi tidak yakin seperti apa.

Perhatikan bahwa saya harus melakukan ini lebih dari sekali, pada awalnya saya pikir saya telah merusak perangkat, saya tidak memiliki lampu, tidak ada klik relai, tidak ada tanda-tanda kehidupan. Tapi saya mematikannya dan menjalankan perintah terakhir lagi dan itu berhasil. Saya harus melakukan ini dengan 3 dari 4 perangkat yang saya flash, hanya satu yang langsung berhasil, saya pikir karena langkah 5.

Instruksi lengkap di sini:

github.com/ct-Open-Source/tuya-convert

Langkah 3: Menghubungkan ke Firmware untuk Pertama Kalinya

Menghubungkan ke Firmware untuk Pertama Kali
Menghubungkan ke Firmware untuk Pertama Kali
Menghubungkan ke Firmware untuk Pertama Kali
Menghubungkan ke Firmware untuk Pertama Kali
Menghubungkan ke Firmware untuk Pertama Kali
Menghubungkan ke Firmware untuk Pertama Kali

Setelah Anda mem-flash tasmota ke perangkat, itu tidak akan menunjukkan banyak tanda kehidupan. Alasan untuk ini adalah bahwa itu perlu dikonfigurasi. Melakukan ini cukup mudah, saya menemukan yang terbaik untuk melakukannya dengan telepon saya. Langkah-langkahnya adalah:

1) Cari titik akses WiFi

2) Hubungkan ke yang berlabel tasmota_xxxx (di mana x adalah angka)

3) Telepon harus mengarahkan Anda ke halaman default, jika tidak pergi ke 192.168.4.1

Catatan pada beberapa telepon mungkin memberi Anda pesan yang mengatakan "tidak ada akses internet, apakah Anda ingin tetap terhubung", pilih ya.

4) Pada halaman yang muncul masukkan nama jaringan WiFi Anda dan kata sandi di 2 kotak pertama. Klik opsi untuk menampilkan kata sandi dan periksa tiga kali bahwa Anda telah memasukkan kata sandi yang benar. Jika Anda memasukkan kata sandi yang salah, saya yakin akan sulit untuk kembali ke layar konfigurasi ini. Perhatikan bahwa Anda juga dapat memindai jaringan WiFi, meskipun Anda jelas masih perlu memasukkan kata sandi.

5) Steker sekarang seharusnya terhubung ke jaringan WiFi Anda. Anda harus pergi ke halaman konfigurasi untuk router Anda dan menemukan IP perangkat Anda.

6) Buka browser web di PC Anda dan buka https://[device_ip] Anda akan melihat layar konfigurasi dari Tasmota.

Selamat, Anda telah berhasil mem-flash steker.

Langkah 4: Mengkonfigurasi Plug

Mengonfigurasi Steker
Mengonfigurasi Steker

Perusahaan yang membuat perangkat ini ternyata membuat 10.000 perangkat dengan banyak konfigurasi berbeda. Kami baru saja mem-flash firmware baru dan firmware tidak tahu perangkat apa yang telah di-flash. Jadi sebelum semuanya berfungsi, kita perlu mengonfigurasinya. Untuk melakukannya, kita perlu menemukan detail perangkat kita di web dan memuat konfigurasi tertentu.

Untuk ini, temukan perangkat Anda di halaman ini:

templates.blakadder.com/plug.html

Untuk perangkat yang saya gunakan, konfigurasinya ada di sini:

templates.blakadder.com/kogan-KASPEMHUSBA….

Untuk mengatur konfigurasi kita cukup menyalin teks di bawah Template. Dalam hal ini adalah:

Kemudian

1) Buka halaman konfigurasi perangkat Anda https://[IP smart plug]

2) Klik konfigurasikan, konfigurasikan lainnya

3) Tempel di string templat Anda

4) Centang "Aktifkan MQTT"

5) Klik aktifkan dan Simpan.

Untuk menguji apakah ini berhasil, klik "Menu utama" untuk kembali ke halaman beranda dan Anda sekarang akan melihat angka penggunaan daya. Mereka semua akan menjadi nol, bahkan tegangannya tetapi ini pertanda baik. Klik tombol sakelar dan Anda akan mendengar klik relai dan melihat voltase naik.

Langkah 5: Kalibrasi Tegangan

Kalibrasi Tegangan
Kalibrasi Tegangan

Saya menemukan pembacaan tegangan menunjukkan cukup tinggi. Jika Anda memiliki sumber pembacaan tegangan lain di rumah (misalnya smart meter mungkin??) maka Anda dapat mengkalibrasi steker dengan sangat mudah. Untuk melakukan ini

1) Dapatkan pembacaan tegangan yang benar

2) Nyalakan relai di steker pintar

3) Klik Konsol di halaman beranda perangkat

4) Masukkan perintah "VoltageSet 228" dan tekan enter (ganti 228 dengan tegangan Anda)

Tegangan sekarang harus ditampilkan dengan benar.

Langkah 6: Menginstal Perangkat Lunak di PI

Ada beberapa paket yang perlu diinstal pada PI. Ini mudah dipasang dan dapat dilakukan dengan mengikuti petunjuk dari berbagai paket. Saya akan memberikan instruksi di sini tetapi perhatikan bahwa mereka dapat berubah seiring waktu sehingga instruksi saya akan tanggal. Paket-paket tersebut adalah:

Grafana (untuk menampilkan grafik)

Influxdb (database deret waktu yang akan menyimpan data kita)

Telegraf (digunakan untuk mendorong data ke Influxdb)

Nyamuk (bus pesan yang digunakan untuk meneruskan data, steker pintar mendorong data ke sini)

Rantai aliran datanya seperti ini:

Smart Plug -> Mosquitto -> Telegraf -> InfluxDB -> Grafana

Jika Anda bertanya mengapa kami tidak bisa melewatkan Mosquitto dan Telegraf, itu pertanyaan yang bagus. Secara teori, Smart Plug dapat mendorong ke Influx. Masalahnya adalah bahwa itu harus dapat dikonfigurasi untuk 100-an titik akhir yang berbeda dan itu akan mengunci kita dari beberapa pilihan. Sebagian besar barang di otomatisasi rumah menggunakan Mosquitto untuk menyampaikan pesan. Sebagai contoh, kita dapat menghidupkan dan mematikan steker dengan mengirim pesan ke Mosquitto dan steker pintar akan menerimanya dan merespons.

Langkah 7: Menginstal Grafana

Menginstal Grafana
Menginstal Grafana

Dari:

grafana.com/grafana/download?platform=arm

Atau banyak pilihan lain di sini:

grafana.com/grafana/download

Untuk Pi 1 dan Pi Nol (ARMv6)

sudo apt-get install -y adduser libfontconfig1#temukan versi terbaru dari halaman di topwget https://dl.grafana.com/oss/release/grafana-rpi_7….sudo dpkg -i grafana-rpi_7.0.1_armhf. debsudo /bin/systemctl daemon-reloadsudo /bin/systemctl aktifkan grafana-serversudo /bin/systemctl mulai grafana-server

Untuk PI yang lebih baru (ARMv7)

sudo apt-get install -y adduser libfontconfig1#temukan versi terbaru dari halaman di topwget https://dl.grafana.com/oss/release/grafana_7.0.1_…sudo dpkg -i grafana_7.0.1_armhf.debsudo / bin/systemctl daemon-reloadsudo /bin/systemctl aktifkan grafana-serversudo /bin/systemctl mulai grafana-server

Untuk mengetes:

Buka https://[IP PI]:3000

nama pengguna/kata sandi adalah admin/admin, itu akan meminta Anda untuk mengubahnya, Anda dapat melewati untuk saat ini

Jika Anda mendapatkan GUI maka semuanya baik-baik saja, lanjutkan ke langkah berikutnya

Langkah 8: Menginstal InfluxDB

Jalankan perintah ini di PI:

curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -source /etc/os-releasetest $VERSION_ID = "7" && echo "deb https://repos.influxdata.com/debian wheezy stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $VERSION_ID = "10" && echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.listsudo apt-get updatesudo apt-get install influxdbsudo systemctl aktifkan influxdbsudo systemctl start influxdb

Uji dengan mengetik "influx". Ini akan menempatkan Anda ke dalam baris perintah influxdb. Ketik "tampilkan database", tidak akan ada database tetapi jika Anda mendapatkan daftar kosong tanpa kesalahan maka semuanya baik-baik saja.

Langkah 9: Memasang Telegraf

Yang ini sangat mudah, karena kami menambahkan repo influxdb, kami cukup mengetik:

sudo apt-get install telegrafsudo systemctl aktifkan telegrafsudo systemctl start telegraf

Pada titik ini Telegraf sudah akan mencatat metrik sistem ke influxdb. Anda dapat melihatnya dengan mengetikkan perintah ini:

database influxshowmenggunakan telegrafshow seriesSELECT * FROM cpu LIMIT 10;

Langkah 10: Instal Nyamuk

Bagian ini mudah karena kita hanya menginstal versi default yang dikemas dengan raspian:

sudo apt-get -y install mosquittosudo apt-get -y install mosquitto-clientssudo systemctl enable mosquittosudo systemctl start mosquitto# buat kata sandi untuk mosquittosudo mosquitto_passwd -c /etc/mosquitto/tasmota tasmota#masukkan kata sandi. Tuliskan kata sandi ini karena kami perlu memberikan ini ke smart plug

Untuk mengetes:

jalankan ini dalam satu sesi SSH:

tes mosquitto_sub-t

Jalankan ini di tempat lain

mosquitto_pub -t test -m pesan saya

Anda akan melihat pesan Anda di sesi SSH pertama

Langkah 11: Mengirim Data Dari Smart Plug ke Mosquitto

Mengirim Data Dari Smart Plug ke Mosquitto
Mengirim Data Dari Smart Plug ke Mosquitto

Sekarang kita menjalankan mosquitto, kita perlu mengkonfigurasi smart plug untuk mengirim data ke mosquitto. Ini cukup mudah dilakukan. Kami akan membutuhkan kata sandi yang dimasukkan untuk nyamuk dari langkah sebelumnya.

1) Masuk ke halaman web colokan pintar Anda

2) Klik Konfigurasi, lalu Konfigurasikan Logging

3) Atur periode telemetri ke 10 dan klik simpan.

4) Klik Konfigurasikan MQTT

5) Untuk host masukkan alamat IP PI Anda

6) Untuk nama pengguna masukkan tasmota

7) Untuk kata sandi masukkan kata sandi dari langkah sebelumnya

8) Untuk topik masukkan tasmota1

9) Klik simpan

Untuk mengetes:

Di PI, ketik perintah di bawah ini. Dalam 10 detik Anda akan melihat data masuk.

mosquitto_sub -t tele/tasmota1/SENSOR

Datanya akan terlihat seperti ini:

Langkah 12: Gunakan Telegraf untuk Mendorong Data Dari Nyamuk ke Influx

Sekarang kita akan mengkonfigurasi Telegraf untuk membaca data dari mosquitto dan mendorong ke influxdb. Di PI:

1) sudo mv /etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf.bak

2) sudo vi /etc/telegraf/telegraf.conf

Catatan vi tidak super ramah untuk pengguna baru, jika Anda lebih suka editor teks berbasis menu gunakan nano sebagai gantinya:

sudo nano /etc/telegraf/telegraf.conf

3) Tempel di konfigurasi dari file terlampir

4) sudo systemctl restart telegraf

Untuk menguji ketik ini pada PI:

arus

tampilkan database

Anda akan melihat database pengujian. Jika Anda tidak menyukai tes nama, Anda dapat mengubah dest_db di file telegraf.conf.

Langkah 13: Terakhir, Buat Grafik di Grafana

Terakhir, Buat Grafik di Grafana
Terakhir, Buat Grafik di Grafana

Akhirnya kita bisa melihat beberapa data:-):-)

Pertama kita perlu membuat koneksi ke database. Pergi ke halaman web grafana http:[ip PI]:3000

1) Masuk dengan admin/admin

2) Di kolom kiri klik ikon roda gigi dan sumber data

3) Klik tambahkan sumber data

4) Klik influxdb

5) Untuk URL masukkan

6) Untuk database masukkan tes

7) Untuk HTTP masukkan GET

8) Untuk interval waktu min, masukkan 10 detik

9) Klik Simpan dan Uji, seharusnya tertulis "Sumber data berfungsi"

OK, sekarang kita memiliki koneksi ke database kita bisa membuat grafik … akhirnya.

1) Di kolom kiri klik + lalu Dasbor dan Tambahkan Panel Baru

2) Untuk database klik InfluxDB

3) Klik pengukuran dan pilih Kogan

4) Untuk bidang pilih Energy_Power.

5) Untuk alias, beri nama seri Anda (misalnya Pencuci Piring)

6) Di sisi kanan untuk Judul Panel beri nama, misalnya Power.

7) Itu saja, Anda akan melihat data. Klik tombol panah kiri untuk keluar dari edit dan kemudian klik simpan, beri nama dasbor Anda.

Jika Anda sampai sejauh ini, kerja bagus, serius.

Langkah 14: Beberapa Tips Lainnya

Beberapa Tips Lainnya
Beberapa Tips Lainnya
Beberapa Tips Lainnya
Beberapa Tips Lainnya

Konfigurasi Telegraf default yang saya berikan sedikit perawatan intensif karena bagian baru perlu ditambahkan untuk setiap perangkat dan restart Telegraf perlu dilakukan. Dengan perubahan di bawah ini membuat segalanya jauh lebih dinamis di mana perangkat dapat ditambahkan atau diganti namanya di konfigurasi Tasmota tanpa perlu mengubah Telegraf.

Perubahan pertama adalah menempatkan + di nama topik, ini pada dasarnya adalah wildcard. Ini saja sudah cukup kecuali ketika Anda membuat grafik di Grafana, perangkat muncul dengan nama seperti "tele/WashingMachine/SENSOR". Bagian kedua dari konfigurasi Telegraf di bawah ini adalah prosesor regex. Itu menarik teks "WashingMachine" dari tengah dan mengubahnya menjadi tag baru yang didorong ke InfluxDB.

Catatan: pastikan untuk mengatur nama topik yang berbeda di konfigurasi Tasmota untuk setiap perangkat

[inputs.mqtt_consumer.tags] dest_db = "tes"

Setelah ini selesai, sangat mudah untuk mengonfigurasi Grafana untuk menampilkan beberapa perangkat pada satu grafik. Gambar terlampir pada langkah ini menunjukkan apa yang perlu dilakukan. Cukup klik tanda + pada grup demi baris dan pilih tag(perangkat). Di bagian bawah Alias By masukkan $tag_device. Anda sekarang akan melihat beberapa seri pada satu grafik. Anda dapat mengklik teks setiap item untuk menghidupkan dan mematikannya (klik ctrl berfungsi untuk memilih kelipatan)

Direkomendasikan: