برنامج تشغيل Neargrid MQTT
يمكن استخدام التكامل التالي لإرسال قياسات الموقع عبر MQTT، واستقبال الأوامر للأنواع المختلفة من الأجهزة المثبتة.
سكريبت تجريبي بلغة بايثون
اتصل بـ Sofar لطلب سكريبت تجريبي.
المتطلبات المسبقة
متحكم السحابة
سيتم التحكم في المواقع عبر متحكم سحابي. يرجى الاتصال بـ EMS لإعداد متحكم سحابي جديد.
إعداد الموقع
بعد إنشاء متحكم السحابة، سيحتوي على رقم تسلسلي فريد (standard1/rp_one_s/neargrid_ack/<site_filter>/<Controller SN>).
يمكن إنشاء مواقع جديدة على متحكم السحابة باستخدام فلاتر موقع فريدة standard1/outbound/neargrid_cmd/<site_filter>/<Controller SN>/
يجب استخدام هذين المتغيرين في مواضيع MQTT وجسم الرسالة.
تحذير
استخدام فلاتر موقع متطابقة سيؤدي إلى حدوث أخطاء.
اختيار الجهاز
| Device Type | مدعوم |
|---|---|
| محولات الطاقة الشمسية | ✅ |
| أجهزة التخزين | |
| مضخات الحرارة | |
| عدادات الشبكة والاستهلاك | |
| شواحن السيارات الكهربائية | ❌ |
ملاحظة
لا يمكن تعديل الأجهزة في الموقع بعد إنشائه.
بيانات اعتماد MQTT
سيزود Sofar بيانات اعتماد MQTT. يجب إدخال اسم مستخدم MQTT عند إنشاء موقع جديد.
ملاحظة
يجب توفير بيانات الاعتماد مرة واحدة فقط. يمكن استخدام مجموعة واحدة من بيانات اعتماد MQTT للتحكم في جميع المواقع.
إرسال القياسات
لإرسال القياسات إلى Sofar EMS، يمكن استخدام موضوع MQTT التالي للنشر: standard1/outbound/neargrid_meas/<site_filter>/<Controller SN>/
الحقول الاختيارية مذكورة بخط مائل *.
يمكن إرسال الحقول التالية حسب نوع الجهاز:
-
التخزين
- mean_soc_perc
- active_power_W
- today_charged_Wh
- today_discharged_Wh
- energy_stored_Wh
-
الطاقة الشمسية
- active_power_W
- today_energy_Wh
-
مضخات الحرارة
- operation_modes
- أوضاع التشغيل المحتملة هي off, on
- active_power_W
- تعادل القدرة الاسمية بينما تكون المضخة في وضع التشغيل
- operation_modes
-
العدادات
- active_power_W
- today_imported_energy_Wh
- today_exported_energy_Wh
يجب أن تكون الرسالة مصممة بالشكل التالي:
{
"time": "<Unix Timestamp>",
"data": {
"state": {
"grid": {
"active_power_W": <القدرة النشطة للشبكة بوحدة الواط>,
"today_imported_energy_Wh": <الطاقة المستوردة من الشبكة بوحدة واط-ساعة>,
"today_exported_energy_Wh": <الطاقة المصدرة للشبكة بوحدة واط-ساعة>,
},
"meter": {
"active_power_W": <القدرة النشطة للعداد بوحدة الواط>,
"today_imported_energy_Wh": <الطاقة المستوردة للعداد بوحدة واط-ساعة>,
"today_exported_energy_Wh": <الطاقة المصدرة للعداد بوحدة واط-ساعة>,
},
"storage": {
"energy_stored_Wh": <الطاقة المخزنة بوحدة واط-ساعة>,
"mean_soc_perc": <متوسط نسبة حالة الشحن>,
"active_power_W": <القدرة النشطة بوحدة الواط>,
"today_charged_Wh": <الطاقة المشحونة اليوم بوحدة واط-ساعة>,
"today_discharged_Wh": <الطاقة الممتصة اليوم بوحدة واط-ساعة>,
},
"solar": {
"active_power_W": <القدرة النشطة للطاقة الشمسية بوحدة الواط>,
"today_energy_Wh": <الطاقة المنتجة اليوم بوحدة واط-ساعة>.
},
"heat_pump": {
"active_power_W": <القدرة النشطة لمضخة الحرارة بوحدة الواط>,
"operation_modes": <وضع تشغيل مضخة الحرارة>
}
},
"response_code": <رمز الاستجابة>
},
"fields": {},
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<معرف_الموقع>"
}تأكيد الاستلام
عند استلام القياس بنجاح، سيتم إرسال تأكيد على الموضوع التالي: standard1/rp_one_s/neargrid_ack/<site_filter>/<Controller SN>
يمكن استخدام هذا التأكيد لـ:
- التحقق من أن رسالة القياس تم استلامها بنجاح.
- التحقق من أن رسالة القياس تحتوي على جميع البيانات اللازمة.
استقبال الأوامر
لتلقي الأوامر من Sofar EMS، اشترك في موضوع MQTT التالي: standard1/outbound/neargrid_cmd/<site_filter>/<Controller SN>/
الاستجابة مصممة بالشكل التالي:
{
"extraTags": {
"nodeId": "<Controller SN>_site_0"
},
"time": "<Unix Timestamp>",
"fields": {
"solar_policy": "<السياسة>",
"solar_power_setpoint_w": 5000,
"storage_policy": "<السياسة>",
"storage_power_setpoint_w": -5000
}
}قائمة السياسات التي يمكن استقبالها موجودة هنا: List of Potential Policies
