Maaf, browser Anda tidak mendukung JavaScript!
Masuk

Pemantauan Energi MQTT Docker: Penyiapan Lanjutan IAMMETER-Docker

Pemantauan Energi MQTT Docker dan Konfigurasi Lanjutan

Setelah server IAMMETER-Docker dasar berjalan, server tersebut dapat diperluas menjadi server pemantauan energi MQTT lokal, menggunakan MySQL untuk kumpulan data yang lebih besar, meneruskan data solar ke PVOutput, dan menerima pengukuran pihak ketiga yang kompatibel.

Panduan ini membahas jalur data lanjutan dan opsi penyimpanan. Untuk instalasi, volume persisten, login pertama, penyiapan meter, pencadangan, dan peningkatan container, mulailah dengan Pemantauan Energi Self-Hosted dengan Docker.

IAMMETER meter / perangkat kompatibel / aplikasi khusus
                         │
             ┌───────────┼───────────┐
             │           │           │
            HTTP        MQTT       REST API
             │           │           │
             └───────────┼───────────┘
                         ▼
                  IAMMETER-Docker
                         │
       ┌─────────────────┼─────────────────┐
       ▼                 ▼                 ▼
 SQLite / MySQL     Pelanggan MQTT     PVOutput

Gunakan hanya antarmuka yang dibutuhkan oleh proyek Anda. Instalasi pemantauan lokal yang sederhana tidak memerlukan MySQL, klien MQTT eksternal, atau penerusan data.

1. Sebelum Mengaktifkan Fitur Lanjutan

Pastikan instalasi dasar sudah stabil:

  • container IAMMETER-Docker berjalan;
  • /app/data dipetakan ke penyimpanan persisten;
  • host Docker menggunakan alamat LAN yang stabil;
  • zona waktu situs sudah benar;
  • setidaknya satu meter atau sumber data uji berfungsi;
  • kata sandi bawaan sudah diubah;
  • tersedia cadangan terbaru.

Deployment bawaan mengekspos:

  • 5050 untuk aplikasi web dan API;
  • 1883 untuk MQTT.

Jangan publikasikan salah satu port tersebut langsung ke Internet. Gunakan firewall, VPN, atau lapisan akses terkendali lainnya bila akses jarak jauh diperlukan.

2. Pilih SQLite atau MySQL

IAMMETER-Docker menggunakan SQLite untuk deployment bawaan yang sederhana dan mendukung MySQL untuk instalasi dengan kumpulan data yang lebih besar.

Basis data Paling cocok untuk Kelebihan Pertimbangan
SQLite Rumah, pengujian, dan deployment lokal yang lebih kecil Tidak perlu layanan basis data terpisah; penyiapan awal mudah Basis data tetap terikat pada volume aplikasi
MySQL Instalasi yang lebih besar atau berjalan lebih lama Layanan basis data terpisah dan lebih cocok untuk kumpulan data yang terus bertambah Memerlukan deployment basis data, kredensial, pencadangan, dan pemeliharaan

Jangan beralih ke MySQL hanya karena fiturnya tersedia. Gunakanlah ketika volume data yang diharapkan, periode penyimpanan, atau kebutuhan pengelolaan basis data memang membenarkan layanan tambahan tersebut.

2.1 Siapkan MySQL terlebih dahulu

Sebelum memilih MySQL di IAMMETER-Docker:

  1. deploy server MySQL yang dapat dijangkau;
  2. buat basis data dan pengguna khusus;
  3. batasi pengguna tersebut hanya pada basis data yang diperlukan;
  4. pastikan akses jaringan dari container IAMMETER-Docker;
  5. konfigurasikan pencadangan basis data secara berkala;
  6. catat host, port, nama, dan kredensial basis data dengan aman.

Kemudian masukkan pengaturan koneksi MySQL di IAMMETER-Docker dan pastikan pengukuran baru sudah tersimpan.

Konfigurasikan MySQL di IAMMETER-Docker

Cadangkan data IAMMETER-Docker yang ada sebelum mengubah mode basis data. Verifikasi data historis dan unggahan baru setelah perubahan.

3. Gunakan IAMMETER-Docker sebagai Server Pemantauan Energi MQTT

IAMMETER-Docker menyertakan dukungan MQTT untuk dua arah yang berbeda:

  1. Publikasikan ke IAMMETER-Docker: meter atau aplikasi kompatibel mengirim pengukuran ke server Docker.
  2. Berlangganan dari IAMMETER-Docker: Node-RED, layanan khusus, atau klien MQTT lain menerima pengukuran real-time dari server.

Kedua jalur ini menggunakan pola topik yang sama, tetapi mode autentikasinya berbeda.

3.1 Topik MQTT

Topik real-time yang didokumentasikan adalah:

device/<SN>/realtime

Ganti <SN> dengan nomor seri yang terdaftar di IAMMETER-Docker. SN pada topik MQTT dan konfigurasi klien harus sama dengan meter yang dibuat di platform lokal.

3.2 Publikasikan data energi ke IAMMETER-Docker

Untuk perangkat atau aplikasi yang memublikasikan data:

Pengaturan Nilai
Broker Alamat IP atau hostname server IAMMETER-Docker
Port 1883 secara bawaan
Autentikasi Client ID
Client ID SN meter yang terdaftar di IAMMETER-Docker
Topik device/<SN>/realtime
Payload Format data unggahan yang didukung IAMMETER

Publikasikan data energi ke IAMMETER-Docker melalui MQTT

Sebelum menggunakan data produksi:

  1. daftarkan SN di IAMMETER-Docker;
  2. publikasikan satu payload uji;
  3. verifikasi medan tegangan, arus, daya, dan energi;
  4. pastikan jumlah fase atau kanal;
  5. verifikasi satuan dan arah daya aktif;
  6. baru setelah itu aktifkan publikasi berkelanjutan.

3.3 Berlangganan data energi real-time

Untuk pelanggan MQTT:

Pengaturan Nilai
Broker Alamat server IAMMETER-Docker
Port 1883 secara bawaan
Autentikasi Nama pengguna dan kata sandi IAMMETER-Docker
Topik device/<SN>/realtime

Berlangganan data real-time IAMMETER-Docker

Pelanggan yang umum digunakan meliputi:

  • alur otomatisasi Node-RED;
  • layanan pemrosesan data lokal;
  • klien debugging MQTT;
  • gateway yang meneruskan pengukuran terpilih;
  • dasbor khusus atau layanan peringatan.

Jika Node-RED adalah aplikasi utama dan penyimpanan historis di IAMMETER-Docker tidak diperlukan, meter juga dapat terhubung langsung ke Node-RED melalui MQTT, Modbus TCP, atau API lokalnya. Bandingkan pilihannya di panduan meter energi Node-RED.

4. Uji dan Atasi Masalah MQTT

Mulailah dengan satu meter dan topik yang persis, bukan langganan wildcard yang luas.

Periksa hal-hal berikut bila tidak ada data yang muncul:

  • port 1883 dipetakan dari container;
  • klien dapat menjangkau host Docker melalui LAN;
  • SN tersebut ada di IAMMETER-Docker;
  • client ID dan topik MQTT menggunakan SN yang sama;
  • topiknya adalah device/<SN>/realtime dengan kapitalisasi yang sesuai;
  • mode autentikasi publikasi dan langganan tidak tertukar;
  • payload JSON sesuai dengan urutan medan dan satuan yang didukung;
  • tidak ada klien MQTT lain yang memutus sesi karena memakai client ID yang sama.

Untuk alur yang andal:

  • gunakan client ID unik untuk setiap pelanggan;
  • tangani koneksi ulang dan pesan duplikat;
  • validasi payload sebelum menuliskannya ke basis data;
  • catat SN sumber pada setiap pengukuran yang disimpan;
  • gunakan isolasi jaringan daripada mengekspos port MQTT tanpa enkripsi ke publik.

5. Teruskan Data Solar ke PVOutput

PVOutput adalah layanan pihak ketiga untuk berbagi dan membandingkan data pembangkitan solar serta konsumsi energi. IAMMETER-Docker dapat meneruskan data situs ke PVOutput.

Gunakan opsi ini ketika IAMMETER-Docker tetap menjadi server pengumpulan lokal tetapi PVOutput diperlukan untuk pelaporan solar publik atau eksternal.

Sebelum mengaktifkan penerusan:

  1. buat atau pilih sistem PVOutput yang benar;
  2. dapatkan kredensial PVOutput yang diperlukan;
  3. pastikan kanal Grid dan Inverter sudah ditetapkan dengan benar di IAMMETER-Docker;
  4. periksa zona waktu situs;
  5. aktifkan penerusan hanya untuk situs yang dimaksud;
  6. bandingkan total harian di kedua sistem setelah hari pertama yang lengkap.

Teruskan data solar IAMMETER-Docker ke PVOutput

Penerusan PVOutput memerlukan akses Internet dari host Docker. Ini terpisah dari pemantauan lokal: kegagalan koneksi PVOutput sementara tidak boleh menghalangi meter untuk terus mengunggah ke server lokal.

6. Terima Data dari Perangkat Tasmota yang Kompatibel

IAMMETER-Docker menyertakan alur kerja MQTT yang terdokumentasi untuk perangkat berkemampuan pengukuran yang menjalankan Tasmota. Contoh aslinya menggunakan Sonoff POW R2.

Ini adalah jalur kompatibilitas untuk payload energi yang didukung, bukan klaim bahwa setiap perangkat atau template Tasmota menghasilkan struktur pengukuran yang sama. Uji perangkat dan firmware yang sebenarnya sebelum deployment.

Gunakan struktur MQTT Tasmota berikut:

Pengaturan Nilai
Host Alamat IP IAMMETER-Docker
Port Port MQTT IAMMETER-Docker, biasanya 1883
Client SN yang terdaftar di IAMMETER-Docker
User Biarkan kosong untuk alur kerja publikasi yang terdokumentasi ini
Password Biarkan kosong untuk alur kerja publikasi yang terdokumentasi ini
Topic SN yang terdaftar di IAMMETER-Docker
Full Topic device/%topic%/%prefix%/

Konfigurasikan meter Tasmota yang kompatibel untuk IAMMETER-Docker

Setelah konfigurasi, verifikasi setiap nilai yang dilaporkan di IAMMETER-Docker, termasuk tegangan, arus, daya aktif, energi, dan faktor daya bila didukung oleh perangkat.

Data listrik Tasmota di IAMMETER-Docker

7. Gunakan REST API IAMMETER-Docker

IAMMETER-Docker menyediakan dokumentasi API interaktif di server lokal:

http://<docker-host-ip>:5050/docs

REST API dapat digunakan untuk:

  • mengunggah pengukuran yang didukung dari gateway khusus;
  • menanyakan data untuk dasbor privat;
  • menghubungkan aplikasi lokal ke server self-hosted;
  • menguji payload sebelum mengotomatiskan integrasi.

Jaga akses API tetap pada jaringan tepercaya. Jika sistem eksternal harus terhubung dari jarak jauh, tempatkan layanan di belakang lapisan akses aman yang sesuai daripada mengekspos port aplikasi tanpa perlindungan.

Untuk pengembang yang membangun penerima lengkap atau platform khusus alih-alih menggunakan IAMMETER-Docker, lihat Kembangkan Sistem Pemantauan Energi Anda Sendiri.

8. Gabungkan Penyimpanan Lokal dan Layanan Cloud

Self-hosting tidak harus berarti semua layanan eksternal dinonaktifkan. IAMMETER-Docker dapat menjadi sistem pencatatan lokal sementara data terpilih diteruskan ke tempat lain.

Arsitektur Data lokal Ketergantungan Internet Paling cocok untuk
Hanya lokal IAMMETER-Docker Tidak diperlukan setelah deployment Privasi, situs offline, dan dasbor LAN
Lokal + IAMMETER-Cloud IAMMETER-Docker dan IAMMETER-Cloud Diperlukan untuk penerusan Salinan lokal plus laporan IAMMETER-Cloud dan akses jarak jauh
Lokal + PVOutput IAMMETER-Docker dan PVOutput Diperlukan untuk penerusan Pengguna solar yang memakai PVOutput
Lokal + pelanggan MQTT IAMMETER-Docker plus penyimpanan yang ditentukan pelanggan Tidak diperlukan dengan pelanggan lokal Node-RED, otomatisasi, dan pemrosesan khusus

Aktifkan hanya tujuan yang melayani keperluan yang jelas. Semakin banyak tujuan berarti semakin banyak kredensial, ketergantungan jaringan, dan jalur penelusuran masalah.

9. Daftar Periksa Deployment Lanjutan

  • Pengumpulan IAMMETER-Docker dasar sudah stabil.
  • Data persisten dan cadangan basis data sudah diverifikasi.
  • MySQL digunakan hanya ketika beban operasionalnya memang dibenarkan.
  • Port MQTT 1883 hanya dapat dijangkau dari jaringan tepercaya.
  • Setiap klien MQTT menggunakan client ID yang sesuai dan unik.
  • SN meter, topik, dan perangkat yang terdaftar sudah cocok.
  • Satuan payload, jumlah fase, dan arah daya sudah diuji.
  • Kegagalan penerusan ke PVOutput atau cloud tidak mengganggu pengumpulan lokal.
  • Kompatibilitas Tasmota sudah dipastikan dengan perangkat dan firmware yang sebenarnya.
  • Perubahan diuji pada satu meter sebelum diterapkan pada deployment yang lebih besar.

10. Riwayat Versi dan Catatan Lama

Bagian di atas menjelaskan alur kerja IAMMETER-Docker yang didokumentasikan saat ini. Halaman aslinya ditulis sekitar V1.8 dan V1.9; riwayat berikut dipertahankan untuk pengguna yang memelihara instalasi lama.

V2.4

V2.3

  • Memperbaiki masalah unggahan PVOutput.

V2.2

  • Menambahkan log untuk kegagalan penerusan ke IAMMETER-Cloud.

V2.1

V1.9

  • Menambahkan dukungan MySQL.
  • Menambahkan opsi gambar khusus untuk setiap Place.

IAMMETER-Docker V1.9

V1.8

  • Menambahkan unggahan MQTT ke IAMMETER-Docker.
  • Menambahkan langganan MQTT untuk data real-time.
  • Menambahkan penerusan langsung ke PVOutput.
  • Menambahkan alur kerja pengukuran Tasmota/Sonoff yang terdokumentasi.

11. Sumber Daya Terkait

Terakhir diperbarui: 17 Juli 2026.

Atas