Langganan Data Energi Real-Time melalui Broker MQTT (Edisi 2025)
1. Perkenalan
IAMMETER-awanadalah platform pemantauan energi dan manajemen fotovoltaik profesional. Selain fungsi visualisasi dan pelaporannya yang canggih, IAMMETER-Cloud juga menyediakan antarmuka data yang fleksibel. Hal ini memungkinkan pengguna dengan kebutuhan khusus untuk menggunakan IAMMETER-Cloud sebagaiperangkat lunak perantara data, mengambil data secara terprogram melalui kode.
Ada dua cara utama untuk mendapatkan data dari IAMMETER-Cloud menggunakan kode:
- Berlangganan data melaluiBroker MQTT IAMMETER(fokus artikel ini)
- Hubungi perwakilan resmi IAMMETER-CloudLebah
Panduan ini menjelaskan cara berlangganan topik IAMMETER MQTT, menafsirkan struktur data (untuk meter satu fase dan tiga fase), dan menerapkan contoh Python dan Node.js yang berfungsi.
2. Ikhtisar Broker MQTT IAMMETER
Catatan:Broker MQTT IAMMETER awalnya dirancang sebagailayanan pengembangan dan pengujianuntuk kenyamanan dan bukan bagian dari penawaran IAMMETER-Cloud standar (meskipun sudah stabil dan berjalan selama lebih dari 5 tahun). Untuk produksi atau penerapan skala besar, kami sarankan untuk menyiapkanbroker MQTT sendiri.
Konfigurasi Broker MQTT IAMMETER
| parameter | Keterangan |
|---|---|
| Alamat broker | mqtt.iammeter.com |
| Pelabuhan | 1883(non-SSL) |
| Nama Pengguna / Kata Sandi | Harus dibuat diIAMMETER Cloud → Pengaturan → Pengaturan MQTT![]() |
| Format topik | perangkat/{SN}/waktu nyata |
| Format muatan | JSON |
⚠️ Penting:MelakukanbukanGunakan kredensial login IAMMETER Cloud Anda di sini. Anda perlubuat nama pengguna dan kata sandi MQTT khususdi dasbor IAMMETER Cloud.
Konfigurasikan Meter IAMMETER untuk Menggunakan Mode MQTT
Atur meter IAMMETER Anda keMode unggah MQTT(melihatpanduan konfigurasi firmware) dan masukkan parameter IAMMETER MQTT Broker.

3. Format Topik MQTT
Setiap perangkat IAMMETER menerbitkan data waktu nyatanya di bawah topik berikut:
perangkat/{SN}/waktu nyata
Di mana{SN}adalah nomor seri meteran Anda.
Misalnya, jika SN perangkat Anda adalahDA2BED94, topiknya adalah:
perangkat/DA2BED94/waktu nyata
Anda dapat berlangganan topik ini untuk menerima data pengukuran waktu nyata yang berkelanjutan.
4. Format Data
4.1 Format Data Meter Fase Tunggal
Meter IAMMETER fase tunggal menerbitkan data waktu nyata dalam format JSON sebagai berikut:
{
"metode": "1-272",
"mac": "B0F8932A295C",
"versi": "i.91.062T6",
"server": "em",
"SN": "DA2BED94",
"Data": [227,02, 1,81, 296,0, 21699,98, 0,00, 50,01, 0,72]
}
| indeks | Bidang | Keterangan | Satuan |
|---|---|---|---|
| 1 | Voltase | Tegangan saluran arus | V |
| 2 | Saat ini | Arus garis saat ini | SEBUAH |
| 3 | Kekuasaan | Daya Aktif | W |
| 4 | Energi Maju | Energi yang diimpor (dikonsumsi) | kWh |
| 5 | Energi Terbalik | Energi yang diekspor (feed-in, tenaga surya) | kWh |
| 6 | Frekuensi | Frekuensi jaringan | Hz |
| 7 | faktor kekuatan | Faktor daya arus | PF |
🟢 Catatan:
- Daya positif → konsumsi energi
- Daya negatif → ekspor energi (misalnya, pasokan energi surya)
4.2 Format Data Meter Tiga Fasa (WEM3080T / WEM3046T / WEM3050T)
Meter IAMMETER tiga fase menerbitkan data dalam format JSON yang serupa, dengan tiga larik yang sesuai dengan setiap fase.
{
"metode": "4-9",
"mac": "849DC2CEC625",
"versi": "i.91.062T6",
"server": "em",
"SN": "CB0A0CFB",
"EA": {
"Reaktif": [
[-111.0, 0.000, 176.750],
[-113.0, 0.000, 179.110],
[-114.0, 36.120, 144.410]
]
},
"Data": [
[225.9, 1,260, 194,0, 305,110, 0,000, 49,99, 0,87],
[225,8, 1,260, 193,0, 302,690, 0,000, 49,99, 0,86],
[225,9, 1,260, 192,0, 300,890, 0,000, 49,99, 0,86]
]
}
Dataadalah daftar yang berisitiga susunan, masing-masing sesuai denganfase A, B, dan C.
Setiap array bagian dalam memiliki struktur yang sama dengan fase tunggalDatasusunan.
| indeks | Bidang | Keterangan | Satuan |
|---|---|---|---|
| 1 | Voltase | tegangan fasa | V |
| 2 | Saat ini | arus fasa | SEBUAH |
| 3 | Kekuasaan | Daya Aktif | W |
| 4 | Energi Maju | Energi impor | kWh |
| 5 | Energi Terbalik | Energi yang Diekspor | kWh |
| 6 | Frekuensi | Frekuensi jaringan | Hz |
| 7 | faktor kekuatan | Faktor daya fase | PF |
Selain data daya nyata, ketikaPengukuran Daya Reaktifdiaktifkan, Anda juga akan melihatKAMIbagian sebagai berikut:
"EA": {
"Reaktif": [
[-111,0, 0,000, 176,750],
[-113,0, 0,000, 179,110],
[-114,0, 36,120, 144,410]
]
}
Bagian ini menunjukkandata pengukuran reaktif, yang hanya muncul ketikafungsi uji reaktifdiaktifkan (lihat tangkapan layar di bawah).

Setiap array mewakili tiga fase (A, B, C), yang menunjukkandaya reaktif (Q dalam kVar)danEnergi Reaktif (kVARh).
Q (kVar):Daya reaktif — positif = induktif, negatif = kapasitifkVARh:Energi reaktif — setiap fase mencakup dua nilai kVARh: satu untukbeban induktifdan satu untukbeban kapasitif.
5. Contoh Python: Berlangganan Data Real-time
Di bawah ini adalah skrip Python yang berfungsi menggunakanpaho-mqttperpustakaan.
impor paho.mqtt.client sebagai mqtt
impor json
# Konfigurasi Broker MQTT
MQTT_BROKER = "mqtt.iammeter.com"
MQTT_PORT = 1883
MQTT_USER = "nama_pengguna_mqtt_Anda" # Diatur di IAMMETER Cloud → Pengaturan MQTT
MQTT_PASS = "kata sandi_mqtt_Anda"
TOPIK = "perangkat/DA2BED94/waktu_nyata" # Ganti dengan SN perangkat Anda sendiri
# Panggilan balik saat terhubung ke broker
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("✅ Berhasil Terhubung ke Broker MQTT IAMMETER")
client.subscribe(TOPIC)
print(f"📡 Berlangganan topik: {TOPIC}")
else:
print(f"❌ Koneksi gagal dengan kode {rc}")
# Panggilan balik saat pesan diterima
def on_message(client, userdata, msg):
payload = json.loads(msg.payload.decode())
print("📊 Data real-time diterima:")
print(json.dumps(payload, indent=2, sure_ascii=False))
# Inisialisasi klien MQTT
client = mqtt.Client()
client.username_pw_set(MQTT_USER, MQTT_PASS)
client.on_connect = on_connect
client.on_message = on_message
# Hubungkan ke broker dan mulai loop
client.connect(MQTT_BROKER, MQTT_PORT, 60)
client.loop_forever()
6. Contoh Node.js
Kami merekomendasikan untuk mencoba proyek sumber terbuka yang menarik ini: Proyek ini menggunakanNode.jsuntuk berlangganan data real-time dari broker IAMMETER MQTT dan memvisualisasikannya dalamantarmuka pengguna web, menciptakan dasbor waktu nyata yang menarik.
🔗 https://github.com/lewei50/iammeterJS
7. Kasus Penggunaan Praktis
- Otomatisasi rumah pintarIntegrasikan data daya waktu nyata ke dalamAsisten RumahatauNode-REDuntuk memicu tindakan otomatisasi (misalnya, menyalakan pemanas saat pembangkitan tenaga surya tinggi).
- Visualisasi Data LokalSimpan data MQTT yang masuk diMasuknya DBdan memvisualisasikannya denganDasbor Grafana.
- Cloud Pribadi atau Komputasi TepiAmbil data daya real-time langsung melalui MQTT untuk analisis khusus atau logika kontrol tanpa bergantung pada IAMMETER Cloud.
8. Pemecahan Masalah
| Masalah | Kemungkinan Penyebab / Solusi |
|---|---|
| Tidak dapat terhubung ke broker | Periksa apakah nama pengguna/kata sandi MQTT Anda diatur dengan benar di IAMMETER Cloud. |
| Tidak ada data yang diterima | Verifikasi format topik Anda (perangkat/{SN}/waktu nyata) dan pastikan meteran sedang online. |
| Penundaan data | Periksa stabilitas jaringan atau kekuatan sinyal Wi-Fi Anda. |
| Beberapa meter | Anda dapat berlangganan beberapa topik secara bersamaan (satu per SN). |
9. Kesimpulan
MenggunakanPialang MQTT IAMMETER, Anda dapat dengan mudah mengaksesaliran data energi waktu nyatadari perangkat IAMMETER Anda. Ini adalah metode yang ampuh dan fleksibel untuk membangundasbor lokal, otomatisasi pintar, atau sistem pengoptimalan energi berbasis AI.
📘 Referensi
- Fitur Firmware & Komunikasi IAMMETER
- Dokumentasi IAMMETER Cloud dan API MQTT
- Kembangkan Dasbor Pemantauan Energi Anda sendiri menggunakan NodeJS
Apakah kamu ingin aku membuatkannya?Versi postingan blog berformat Markdown(siap dipublikasikan di blog resmi IAMMETER, dengan penyorotan sintaksis dan tautan gambar tertanam utuh)?
