ขออภัย เบราว์เซอร์ของคุณไม่สนับสนุน JavaScript!

การสมัครรับข้อมูลพลังงานแบบเรียลไทม์ผ่าน MQTT Broker (ฉบับปี 2025)

1. บทนำ

IAMMETER-คลาวด์เป็นแพลตฟอร์มการตรวจสอบพลังงานและการจัดการพลังงานแสงอาทิตย์ระดับมืออาชีพ นอกจากฟังก์ชันการแสดงภาพและการรายงานอันทรงพลังแล้ว IAMMETER-Cloud ยังมีอินเทอร์เฟซข้อมูลที่ยืดหยุ่นอีกด้วย ซึ่งช่วยให้ผู้ใช้ที่มีความต้องการเฉพาะสามารถใช้ IAMMETER-Cloud เป็นแพลตฟอร์มมิดเดิลแวร์ข้อมูลการดึงข้อมูลผ่านโปรแกรมโดยใช้รหัส

มีสองวิธีหลักในการรับข้อมูลจาก IAMMETER-Cloud โดยใช้โค้ด:

  • สมัครรับข้อมูลผ่านทางโบรกเกอร์ MQTT ของ IAMMETER(จุดเน้นของบทความนี้)
  • โทรหาเจ้าหน้าที่ของ IAMMETER-CloudAPI

คู่มือนี้จะอธิบายวิธีสมัครรับข้อมูลหัวข้อ IAMMETER MQTT ตีความโครงสร้างข้อมูล (สำหรับมิเตอร์เฟสเดียวและสามเฟส) และนำตัวอย่าง Python และ Node.js ที่ใช้งานได้ไปใช้


2. ภาพรวมโบรกเกอร์ IAMMETER MQTT

บันทึก:IAMMETER MQTT Broker ได้รับการออกแบบมาในตอนแรกเป็นบริการพัฒนาและทดสอบเพื่อความสะดวก และไม่ได้เป็นส่วนหนึ่งของข้อเสนอ IAMMETER-Cloud มาตรฐาน (แม้ว่าจะมีความเสถียรและใช้งานมานานกว่า 5 ปีแล้ว) สำหรับการผลิตหรือการปรับใช้ขนาดใหญ่ เราขอแนะนำให้ตั้งค่าโบรกเกอร์ MQTT ของตัวเอง.

การกำหนดค่าโบรกเกอร์ IAMMETER MQTT

พารามิเตอร์ คำอธิบาย
ที่อยู่โบรกเกอร์ mqtt.iammeter.com
ท่าเรือ 1883(ไม่ใช่ SSL)
ชื่อผู้ใช้ / รหัสผ่าน จะต้องสร้างขึ้นในIAMMETER Cloud → การตั้งค่า → การตั้งค่า MQTTภาพหน้าจอการตั้งค่า MQTT
รูปแบบหัวข้อ อุปกรณ์/{SN}/เรียลไทม์
รูปแบบเพย์โหลด เจสัน

⚠️ สำคัญ:ทำไม่ใช้ข้อมูลเข้าสู่ระบบ IAMMETER Cloud ของคุณที่นี่ คุณต้องสร้างชื่อผู้ใช้และรหัสผ่าน MQTT เฉพาะในแดชบอร์ด IAMMETER Cloud

กำหนดค่ามิเตอร์ IAMMETER ให้ใช้โหมด MQTT

ตั้งค่ามิเตอร์ IAMMETER ของคุณเป็นโหมดอัปโหลด MQTT(ดูคู่มือการกำหนดค่าเฟิร์มแวร์) และป้อนพารามิเตอร์ IAMMETER MQTT Broker

ตั้งค่ามิเตอร์เป็นโหมดอัปโหลด MQTT และกำหนดค่าพารามิเตอร์ IAMMETER MQTT Broker


3. รูปแบบหัวข้อ MQTT

อุปกรณ์ IAMMETER แต่ละเครื่องจะเผยแพร่ข้อมูลเรียลไทม์ภายใต้หัวข้อต่อไปนี้:

อุปกรณ์/{SN}/เรียลไทม์

ที่ไหน{สส}คือหมายเลขซีเรียลของมิเตอร์ของคุณ ตัวอย่างเช่น หาก SN ของอุปกรณ์ของคุณคือDA2BED94หัวข้อจะเป็นดังนี้:

อุปกรณ์/DA2BED94/เรียลไทม์

คุณสามารถสมัครสมาชิกหัวข้อนี้เพื่อรับข้อมูลการวัดแบบเรียลไทม์อย่างต่อเนื่อง


4. รูปแบบข้อมูล

4.1 รูปแบบข้อมูลมิเตอร์เฟสเดียว

มิเตอร์ IAMMETER เฟสเดียวเผยแพร่ข้อมูลเรียลไทม์ในรูปแบบ JSON ดังต่อไปนี้:

{
"วิธีการ": "1-272",
"mac": "B0F8932A295C",
"เวอร์ชัน": "i.91.062T6",
"เซิร์ฟเวอร์": "em",
"SN": "DA2BED94",
"ข้อมูล": [227.02, 1.81, 296.0, 21699.98, 0.00, 50.01, 0.72]
}
ดัชนี สนาม คำอธิบาย หน่วย
1 แรงดันไฟฟ้า แรงดันไฟฟ้าสายปัจจุบัน วี
2 ปัจจุบัน กระแสไฟฟ้าในปัจจุบัน อา
3 พลัง พลังแอ็คทีฟ W
4 พลังงานไปข้างหน้า พลังงานนำเข้า (บริโภค) กิโลวัตต์ชั่วโมง
5 พลังงานย้อนกลับ พลังงานส่งออก (ป้อนเข้า, พลังงานแสงอาทิตย์) กิโลวัตต์ชั่วโมง
6 ความถี่ ความถี่กริด เฮิรตซ์
7 ตัวประกอบกำลัง ปัจจัยกำลังไฟฟ้าปัจจุบัน พีเอฟ

🟢 หมายเหตุ:

  • พลังบวก → การใช้พลังงาน
  • พลังงานเชิงลบ → การส่งออกพลังงาน (เช่น การป้อนพลังงานแสงอาทิตย์)

4.2 รูปแบบข้อมูลมิเตอร์สามเฟส (WEM3080T / WEM3046T / WEM3050T)

มิเตอร์ IAMMETER สามเฟสเผยแพร่ข้อมูลในรูปแบบ JSON ที่คล้ายกัน โดยมีอาร์เรย์สามชุดที่สอดคล้องกับแต่ละเฟส

{
"วิธีการ": "4-9",
"mac": "849DC2CEC625",
"เวอร์ชัน": "i.91.062T6",
"เซิร์ฟเวอร์": "em",
"SN": "CB0A0CFB",
"EA": {
"ปฏิกิริยา": [
[-111.0, 0.000, 176.750],
[-113.0, 0.000, 179.110],
[-114.0, 36.120, 144.410]
]
},
"ข้อมูล": [
[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]
]
}

ข้อมูลเป็นรายการที่มีสามอาร์เรย์แต่ละอันสอดคล้องกับเฟส A, B และ C. อาร์เรย์ภายในแต่ละอันมีโครงสร้างเดียวกันกับแบบเฟสเดียวข้อมูลอาร์เรย์

ดัชนี สนาม คำอธิบาย หน่วย
1 แรงดันไฟฟ้า แรงดันเฟส วี
2 ปัจจุบัน กระแสเฟส อา
3 พลัง พลังแอ็คทีฟ W
4 พลังงานไปข้างหน้า พลังงานนำเข้า กิโลวัตต์ชั่วโมง
5 พลังงานย้อนกลับ พลังงานส่งออก กิโลวัตต์ชั่วโมง
6 ความถี่ ความถี่กริด เฮิรตซ์
7 ตัวประกอบกำลัง ปัจจัยกำลังเฟส พีเอฟ

นอกจากข้อมูลพลังงานจริงเมื่อการวัดกำลังรีแอคทีฟเมื่อเปิดใช้งานแล้ว คุณจะเห็นอีเอส่วนดังต่อไปนี้:

"EA": {
"ปฏิกิริยา": [
[-111.0, 0.000, 176.750],
[-113.0, 0.000, 179.110],
[-114.0, 36.120, 144.410]
]
}

ส่วนนี้จะแสดงข้อมูลการวัดปฏิกิริยาซึ่งจะปรากฏเฉพาะเมื่อฟังก์ชันการทดสอบปฏิกิริยาเปิดใช้งานแล้ว (ดูภาพหน้าจอด้านล่าง)

เปิดใช้งานการวัดปฏิกิริยาในมิเตอร์

แต่ละอาร์เรย์แสดงถึงสามเฟส (A, B, C) โดยแสดงกำลังปฏิกิริยา (Q ในหน่วย kVar)และพลังงานปฏิกิริยา (kVARh).

Q (กิโลวาร์):กำลังปฏิกิริยา — บวก = เหนี่ยวนำ, ลบ = ความจุกิโลวาร์รห์:พลังงานปฏิกิริยา — แต่ละเฟสมีค่า kVARh สองค่า: หนึ่งค่าสำหรับโหลดอุปนัยและอีกหนึ่งสำหรับโหลดแบบเก็บประจุ.


5. ตัวอย่าง Python: การสมัครรับข้อมูลเรียลไทม์

ด้านล่างนี้เป็นสคริปต์ Python ที่ใช้งานได้โดยใช้ปาโฮ-เอ็มคิวทีทีห้องสมุด.

นำเข้า paho.mqtt.client เป็น mqtt
นำเข้า json

# การกำหนดค่าโบรกเกอร์ MQTT
MQTT_BROKER = "mqtt.iammeter.com"
MQTT_PORT = 1883
MQTT_USER = "ชื่อผู้ใช้_mqtt_your_username" # ตั้งค่าใน IAMMETER Cloud → การตั้งค่า MQTT
MQTT_PASS = "รหัสผ่าน_mqtt_your_password"
TOPIC = "อุปกรณ์/DA2BED94/เรียลไทม์" # แทนที่ด้วย SN ของอุปกรณ์ของคุณเอง

# เรียกกลับเมื่อเชื่อมต่อกับโบรกเกอร์
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("✅ เชื่อมต่อกับโบรกเกอร์ IAMMETER MQTT เรียบร้อยแล้ว)
client.subscribe(TOPIC)
print(f"📡 สมัครรับหัวข้อ: {TOPIC}")
else:
print(f"❌ การเชื่อมต่อล้มเหลวด้วยรหัส {rc}")

# เรียกกลับเมื่อได้รับข้อความ
def on_message(client, userdata, msg):
payload = json.loads(msg.payload.decode())
print("📊 ได้รับข้อมูลแบบเรียลไทม์:")
print(json.dumps(payload, indent=2, ensure_ascii=False))

# เริ่มต้นใช้งานไคลเอนต์ MQTT
client = mqtt.Client()
client.username_pw_set(MQTT_USER, MQTT_PASS)
client.on_connect = on_connect
client.on_message = on_message

# เชื่อมต่อกับโบรกเกอร์และเริ่มลูป
client.connect(MQTT_BROKER, MQTT_PORT, 60)
client.loop_forever()

6. ตัวอย่าง Node.js

เราขอแนะนำให้ลองใช้โครงการโอเพนซอร์สที่น่าสนใจนี้: ใช้โหนด jsเพื่อสมัครรับข้อมูลเรียลไทม์จากโบรกเกอร์ IAMMETER MQTT และแสดงภาพในส่วนต่อประสานผู้ใช้เว็บไซต์สร้างแดชบอร์ดแบบเรียลไทม์ที่เจ๋ง

🔗 https://github.com/lewei50/iammeter.JS


7. กรณีการใช้งานจริง

  1. ระบบบ้านอัจฉริยะรวมข้อมูลพลังงานแบบเรียลไทม์เข้าในผู้ช่วยที่บ้านหรือโหนด-REDเพื่อกระตุ้นการดำเนินการอัตโนมัติ (เช่น เริ่มเปิดเครื่องทำความร้อนเมื่อการผลิตพลังงานแสงอาทิตย์สูง)
  2. การแสดงภาพข้อมูลท้องถิ่นจัดเก็บข้อมูล MQTT ขาเข้าในอินฟลักซ์ดีบีและจินตนาการถึงมันด้วยแดชบอร์ด Grafana.
  3. คลาวด์ส่วนตัวหรือการประมวลผลแบบ Edgeดึงข้อมูลพลังงานแบบเรียลไทม์โดยตรงผ่าน MQTT สำหรับการวิเคราะห์ที่กำหนดเองหรือตรรกะการควบคุมโดยไม่ต้องพึ่งพา IAMMETER Cloud

8. การแก้ไขปัญหา

ปัญหา สาเหตุที่เป็นไปได้ / วิธีแก้ไข
ไม่สามารถเชื่อมต่อกับโบรกเกอร์ได้ ตรวจสอบว่าชื่อผู้ใช้/รหัสผ่าน MQTT ของคุณได้รับการตั้งค่าอย่างถูกต้องใน IAMMETER Cloud
ไม่ได้รับข้อมูล ตรวจสอบรูปแบบหัวข้อของคุณ (อุปกรณ์/{SN}/เรียลไทม์) และตรวจสอบให้แน่ใจว่ามิเตอร์เชื่อมต่อออนไลน์อยู่
ความล่าช้าของข้อมูล ตรวจสอบความเสถียรของเครือข่ายหรือความแรงของสัญญาณ Wi-Fi ของคุณ
หลายเมตร คุณสามารถสมัครรับหัวข้อหลายหัวข้อพร้อมกันได้ (หนึ่งหัวข้อต่อ SN)

9. บทสรุป

โดยใช้โบรกเกอร์ IAMMETER MQTTคุณสามารถเข้าถึงได้อย่างง่ายดายสตรีมข้อมูลพลังงานแบบเรียลไทม์จากอุปกรณ์ IAMMETER ของคุณ เป็นวิธีที่มีประสิทธิภาพและยืดหยุ่นในการสร้างแดชบอร์ดในพื้นที่ ระบบอัตโนมัติอัจฉริยะ หรือระบบเพิ่มประสิทธิภาพพลังงานที่ใช้ AI.


📘 อ้างอิง


คุณต้องการให้ฉันทำเวอร์ชันโพสต์บล็อกที่จัดรูปแบบมาร์กดาวน์(พร้อมที่จะเผยแพร่บนบล็อกอย่างเป็นทางการของ IAMMETER พร้อมไฮไลต์ไวยากรณ์และลิงก์รูปภาพที่ฝังไว้ครบถ้วน)

สูงสุด