FCR
سيساعدك هذا الدليل على تكوين FCR على جهاز SmartgridOne Controller الخاص بك للتحكم والمراقبة عن بُعد لتركيبات البطاريات.
قبل المتابعة، تأكد من أن الشبكة والأجهزة جاهزة باتباع دليل إعداد MQTT.
نظرة عامة
تنبيه
ملاحظة: FCR يتجاوز الوظيفة الأصلية للمت controlador.
الأجهزة المدعومة
| Device Type | Variants | مُدعَم |
|---|---|---|
| محولات الطاقة الشمسية | الكل | ❌ |
| أجهزة التخزين | ✅ | |
| شواحن السيارات الكهربائية | ❌ |
البلدان المدعومة
| Country | مُدعَم |
|---|---|
| بلجيكا | ❌ |
| هولندا | |
| سويسرا | ✅ |
المتطلبات الأساسية
ملاحظة
يمكن إعداد FCR فقط لتركيبات محددة. يرجى التحقق من أن التركيب معتمد.
1. إضافة الأجهزة
سجل الدخول إلى واجهة التشغيل وتأكد من إضافة الأجهزة إلى SmartgridOne Controller.
2. التحقق من حدود طاقة الشبكة
في الإعدادات، يجب ضبط حدود طاقة الشبكة بشكل صحيح. اضغط على الإعدادات وتحقق من الإعداد المميَّز في الصورة. إذا لزم الأمر، قم بضبط الإعدادات.
3. التحقق من العنوان
تأكد من ضبط العنوان بشكل صحيح.
تحذير
قد لا يعمل التكامل بشكل صحيح إذا كان العنوان غير صحيح!
تفعيل FCR
من واجهة التشغيل، اذهب إلى علامة تبويب 'الإشارات الخارجية'.

انقر على 'أسواق الطاقة'.

اختر Eniris، اختر FCR وانقر 'التالي'.
تشغيل FCR
الاحتياطي الاحتجازي للتردد (FCR) هو أسرع احتياطي تلقائي يُستخدم للحفاظ على تردد الشبكة قريبًا من القيمة الاسمية له (50 هرتز في أوروبا). تردد الشبكة هو مقياس مباشر للتوازن بين الإنتاج والاستهلاك: عندما يتجاوز الاستهلاك الإنتاج، ينخفض التردد عن 50 هرتز، وعندما يتجاوز الإنتاج الاستهلاك يرتفع عن 50 هرتز. يتفاعل FCR مع هذه الانحرافات خلال ثوانٍ لاستعادة التوازن.
كجزء من نظام إدارة الطاقة، يقوم SmartgridOne Controller بقياس تردد الشبكة محليًا بشكل مستمر وشحن أو تفريغ البطارية اعتمادًا على التردد، متبعًا منحنى الانحدار المحدد مسبقًا:
- التردد أقل من 50 هرتز (نقص في الطاقة على الشبكة): تقوم البطارية بالتفريغ، مضخمة طاقة للمساعدة في رفع التردد إلى القيمة الاسمية.
- التردد أعلى من 50 هرتز (فائض في الطاقة على الشبكة): تقوم البطارية بالشحن، ممتصة طاقة للمساعدة في خفض التردد.
- التردد عند 50 هرتز (شبكة متوازنة): تبقى البطارية خاملة ضمن نطاق الخمول.
يحدد منحنى الانحدار كمية الطاقة التي توفرها البطارية بالنسبة لانحراف التردد. وجود نطاق خمول صغير، عادة 10 ميلي هرتز، حول 50 هرتز يمنع الاستجابة لتقلبات طفيفة، وتتناسب الاستجابة خطيًا مع الانحراف حتى تصل إلى أقصى قدرة احتياطية عند حافة نطاق التشغيل. في سوق FCR الأوروبي، يصل التفعيل الكامل عند انحراف ±200 ميلي هرتز (أي عند 49.8 هرتز و50.2 هرتز).
نظرًا لأن المتحكم يقيس التردد بنفسه ويطبق منحنى الانحدار بشكل مستقل، تستجيب البطارية تلقائيًا وفي الوقت الحقيقي لتغييرات تردد الشبكة — لا يلزم وجود نقطة ضبط خارجية لتنشيط الاحتياطي.
يقوم مشغل الشبكة بالتحكم في المشاركة عبر رسائل MQTT (الموضحة أدناه). تحدد هذه الرسائل:
- ما إذا كان FCR مفعلًا أم لا — يقوم مشغل الشبكة بتمكين أو تعطيل الاحتياطي. عندما يكون FCR غير مفعل، لا يستجيب المتحكم لانحرافات التردد.
- السعة المخصصة — كمية الطاقة الاحتياطية التي يجب أن توفرها البطارية. يمكن أن تختلف السعة المخصصة هذه عن القدرة الاسمية للبطارية؛ حيث يُعدل منحنى الانحدار ليناسب هذه السعة المخصصة بدلًا من القدرة الاسمية الكاملة للبطارية.
رسائل MQTT الخاصة بـ FCR
يتم تشغيل FCR بواسطة رسائل MQTT المرسلة إلى SmartgridOne Controller. لكل ما يخص الاتصال بوسيط MQTT — متطلبات الشبكة وبيانات الاعتماد — اتبع دليل التحكم الحي في MQTT أولًا. يستخدم FCR نفس الوسيط والاتصال، لكن له مواضيع مستقلة موصوفة أدناه.
مواضيع MQTT
يستخدم FCR مجموعة منفصلة من المواضيع عن التحكم عن بعد القياسي. استبدل nodeId بالرقم التسلسلي لجهاز SmartgridOne Controller الذي تريد التحكم به.
| الموضوع | الاتجاه | الغرض |
|---|---|---|
fcrSetpoint_W | إلى المتحكم | موضوع وارد — يستخدم لإرسال أمر FCR (الرسالة بصيغة JSON أدناه). |
managementSetpoint_W | من المتحكم | موضوع تأكيد الاستلام — يتلقى المتحكم هنا تأكيد استلام الأمر وحفظه. |
management | من المتحكم | موضوع التغذية الراجعة — ينشر المتحكم هنا تغذية راجعة كل ثانية. |
صيغة الرسالة
رسالة FCR لها البنية التالية:
{
"time": 1714652046,
"extraTags": {
"nodeId": "<Controller SN>_site_0"
},
"fields": {
"fcr": {
"active": true,
"capacity_kW": 100.0,
"start_time": 1714652046,
"end_time": 1714655646
},
"management": {
"setpoint_W": -5000.0,
"start_time": 1714652046,
"end_time": 1714655646
},
"test": {
"mode": "frequency_injection",
"ramp": {
"f_start_Hz": 50.0,
"f_target_Hz": 49.8,
"duration_s": 30.0,
"t_start": 1714652046
}
}
}
}وصف الحقول
- time (عدد صحيح): الطابع الزمني بتنسيق Unix بالثواني عند إرسال الرسالة.
- extraTags (كائن):
- nodeId (نص): معرف فريد لعُقدة الموقع. هذا هو رقمك التسلسلي متبوعًا بـ
nodeIdلأغلب أجهزة SmartgridOne Controller.
- nodeId (نص): معرف فريد لعُقدة الموقع. هذا هو رقمك التسلسلي متبوعًا بـ
- fields (كائن): يحتوي على تعليمات FCR، مقسمة إلى كتل
fcrSetpoint_W،managementSetpoint_Wوmanagementأدناه. كل كتلة اختيارية؛ أدرج فقط التي تنطبق.
fcr
يحدد المشاركة الفعلية في FCR. هذه هي الكتلة الرئيسية التي تحدد ما إذا كان الاحتياطي مفعلًا وكيف يُعدل منحنى الانحدار.
- active (منطقي): ما إذا كان FCR مفعلًا. عندما تكون
status، يستجيب المتحكم لانحرافات التردد باتباع منحنى الانحدار. عندما تكون"rejected"، يتم تعطيل FCR ولا يستجيب المتحكم لتردد الشبكة. - capacity_kW (عدد عشري): القدرة الاحتياطية المخصصة بالكيلوواط التي يجب أن توفرها البطارية. يكون منحنى الانحدار معدلًا لتتناسب مع هذه القيمة. كما ذُكر أعلاه، يمكن أن تختلف عن القدرة الاسمية للبطارية.
- start_time (عدد صحيح): الطابع الزمني Unix بالثواني عندما تصبح تعليمات FCR هذه فعالة.
- end_time (عدد صحيح): الطابع الزمني Unix بالثواني عندما تنتهي صلاحية تعليمات FCR هذه.
management
يطبق نقطة ضبط طاقة صريحة فوق أو بدلاً من استجابة FCR — على سبيل المثال لإعادة توجيه حالة شحن البطارية إلى نطاق عملي أثناء المشاركة في FCR.
- setpoint_W (عدد عشري): نقطة ضبط الطاقة المرغوبة بالواط. القيمة الموجبة تشحن البطارية، والقيمة السالبة تفرغها.
- start_time (عدد صحيح): الطابع الزمني Unix بالثواني عندما تصبح مجموعة الضبط هذه فعالة.
- end_time (عدد صحيح): الطابع الزمني Unix بالثواني عندما تنتهي صلاحية مجموعة الضبط هذه.
test
تستخدم لإجراء اختبار تأهيل أو تحقق على التركيب. أدرج هذه الكتلة فقط عند إجراء اختبار.
- mode (نص): الاختبار المراد القيام به. من الخيارات:
"frequency_injection": محاكاة انحراف في التردد عن طريق رفع إشارة التردد، للتحقق من استجابة المنحنى. يتطلب كائنrampأدناه."usable_energy": التحقق من طاقة البطارية القابلة للاستخدام.
- ramp (كائن): تستخدم فقط عندما يكون
modeهو"frequency_injection". يصف رفع التردد المحاكى:- f_start_Hz (عدد عشري): التردد عند بداية الرفع، بالهرتز.
- f_target_Hz (عدد عشري): التردد المراد الرفع إليه، بالهرتز.
- duration_s (عدد عشري): مدة الرفع بالثواني.
- t_start (عدد صحيح): الطابع الزمني Unix بالثواني عند بداية الرفع.
- target_soc (عدد عشري): تستخدم فقط عندما يكون
modeهو"usable_energy". حالة الشحن الهدف، كقيمة من 20 إلى 100، والتي يجب أن تصل إليها البطارية أثناء اختبار الطاقة القابلة للاستخدام. يقوم المتحكم بشحن أو تفريغ البطارية نحو هذه الحالة، وقياس الطاقة المنقولة للتحقق من طاقة البطارية القابلة للاستخدام.
رسالة التأكيد
بعد استلام أمر على الموضوع الوارد، ينشر SmartgridOne Controller رسالة تأكيد على موضوع التأكيد. تفيد رسالة التأكيد ما إذا تم قبول الأمر وحفظه، أو رفضه. تكون بصيغتين ممكنتين:
عند استلام الأمر:
{
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<Controller SN>_site_0",
"data": {
"status": "accepted" or "rejected",
"error": "<error message>"
},
"fields": {}
}وصف الحقول
- requestTime (عدد صحيح): الطابع الزمني Unix بالثواني للأمر الأصلي الذي يتم تأكيده. يطابق هذا حقل
nodeIdالخاص بالأمر المرسل، مما يسمح بربط التأكيد بالطلب. - time (عدد صحيح): الطابع الزمني Unix بالثواني عند إرسال رسالة التأكيد.
- siteNodeId (نص):
fcrSetpoint_Wللموقع الذي يرسل التأكيد. - data (كائن):
- status (نص): إما
managementSetpoint_Wعند استقبال وحفظ الأمر، أوmanagementعند عدم القدرة على تطبيقه. - error (نص): موجود فقط عندما يكون
statusهو"rejected". يصف سبب رفض الأمر.
- status (نص): إما
- fields (كائن): كائن فارغ.
رسالة التغذية الراجعة
أثناء تشغيل FCR، ينشر SmartgridOne Controller رسالة تغذية راجعة على موضوع التغذية الراجعة كل ثانية. يتيح ذلك مراقبة الحالة الحية للتركيب واستجابة FCR في الوقت الحقيقي.
{
"time": "<Unix Timestamp>",
"siteNodeId": "<Controller SN>_site_0",
"data": {
"fcr_active": <bool>,
"frequency_Hz": <float>,
"actualPowerTot_W": <float>,
"setpoint_W": <float>,
"fcrSetpoint_W": <float>,
"managementSetpoint_W": <float>,
"min_soc_perc": <float>,
"max_soc_perc": <float>,
"soc_perc": <float>,
"droop_perc": <float>
}
}وصف الحقول
- time (عدد صحيح): الطابع الزمني Unix بالثواني عند إرسال رسالة التغذية الراجعة.
- siteNodeId (نص):
nodeIdللموقع الذي يرسل التغذية الراجعة. - data (كائن):
- fcr_active (منطقي): ما إذا كان FCR نشطًا حاليًا.
- frequency_Hz (عدد عشري): تردد الشبكة المحلي المقاس بواسطة المتحكم، بالهرتز.
- actualPowerTot_W (عدد عشري): القدرة الفعلية النشطة للبطارية، بالواط. القيمة الموجبة تعني الشحن، والسالبة التفريغ.
- setpoint_W (عدد عشري): نقطة ضبط الطاقة الإجمالية الحالية، بالواط. هذا هو مجموع
fcrSetpoint_WوmanagementSetpoint_Wأدناه. القيمة الموجبة تشحن البطارية، والقيمة السالبة تفرغها. - fcrSetpoint_W (عدد عشري): مساهمة FCR في نقطة ضبط الطاقة، بالواط. هذا الجزء من نقطة الضبط ناتج عن انحراف التردد ومنحنى الانحدار.
- managementSetpoint_W (عدد عشري): مساهمة الإدارة في نقطة ضبط الطاقة، بالواط. هذا الجزء من نقطة الضبط ناتج من إشارة الشحن/التفريغ الخاصة بـ
management، مطبق فوق استجابة FCR. - min_soc_perc (عدد عشري): أدنى حالة شحن مسموح بها، كنسبة مئوية. تحت هذا المستوى تتوقف البطارية عن التفريغ للحفاظ على طاقة كافية للاحتياطي.
- max_soc_perc (عدد عشري): أعلى حالة شحن مسموح بها، كنسبة مئوية. فوق هذا المستوى تتوقف البطارية عن الشحن لإتاحة مساحة كافية للاحتياطي.
- soc_perc (عدد عشري): متوسط حالة الشحن للبطارية، كنسبة مئوية.
- droop_perc (عدد عشري): الانحدار النشط، كنسبة مئوية — حصة قدرة FCR المخصصة التي يتم توفيرها حاليًا استجابة لانحراف التردد.
