إذا كنت تشغّل محطات شحن السيارات الكهربائية أو تركّبها أو تشتريها، فستسمع مصطلح OCPP في كل نقاش تقريبًا. فهو السبب في إمكانية إدارة شاحن من مصنّع معيّن ببرنامج من شركة أخرى، وهو من أول الأمور التي ينبغي التحقق منها قبل شراء أي معدات.
يشرح هذا الدليل بلغة مبسّطة ما هو OCPP: من يتولى تطويره، وكيف يتواصل الشاحن مع النظام المركزي، وما الإصدارات المتاحة، وما الذي تقدّمه لك منصة برمجيات OCPP فعليًا. لا تحتاج إلى أي معرفة برمجية.
- OCPP (Open Charge Point Protocol) معيار مفتوح ومحايد تجاه المورّدين لتنظيم الاتصال بين محطة الشحن ونظام الإدارة المركزي (CSMS).
- يفتح الشاحن اتصال WebSocket مع نظام CSMS ويتبادل معه رسائل JSON قصيرة مثل BootNotification وHeartbeat وStatusNotification وMeterValues.
- لأن البروتوكول مفتوح، يمكنك تغيير مزوّد البرنامج دون استبدال الشواحن، والجمع بين علامات تجارية مختلفة من المعدات في شبكة واحدة.
- لا يزال OCPP 1.6J الإصدار الأوسع انتشارًا، بينما يضيف OCPP 2.0.1 و2.1 أمانًا أقوى ونموذج أجهزة أغنى ووظائف جديدة في مجال الطاقة.
ما هو OCPP؟
OCPP اختصار لـ Open Charge Point Protocol، وهو بروتوكول اتصال يحدد كيفية تبادل محطة شحن السيارات الكهربائية للمعلومات مع نظام خلفي. يُسمّى هذا النظام عادةً CSMS (Charging Station Management System)، أي نظام إدارة محطات الشحن، بينما تطلق عليه الوثائق الأقدم اسم "النظام المركزي".
تتولى تطوير البروتوكول Open Charge Alliance (OCA)، وهي تحالف عالمي غير ربحي يضم شركات معدات وبرمجيات الشحن. تُنشر المواصفات بشكل مفتوح، ما يتيح لأي مصنّع أو مطوّر برمجيات تطبيقها. كما اعتُمد OCPP 2.0.1 معيارًا دوليًا باسم IEC 63584، وهو ما يمنحه ثقلًا إضافيًا في المناقصات العامة والأطر التنظيمية.
لا يصف OCPP طريقة تواصل السيارة مع الشاحن، فهذه طبقة منفصلة تتولاها معايير مثل IEC 61851 وISO 15118. يغطي OCPP فقط الرابط بين الشاحن وبرنامج الإدارة.
من يستخدم OCPP ولماذا هو مهم
تعتمد جميع الأطراف تقريبًا في سوق الشحن على OCPP:
- مشغلو نقاط الشحن (CPO) يستخدمونه لمراقبة المحطات العامة وشبه العامة، والتحقق من صلاحية السائقين، وجمع بيانات الطاقة.
- مشغلو الأساطيل يستخدمونه لمعرفة أي مركبة شُحنت وأين، وكمية الطاقة التي استهلكها كل سائق.
- مواقف السيارات والفنادق والمجمعات السكنية تستخدمه للتحكم في من يحق له الشحن ولإعداد تقارير الاستهلاك.
- شركات التركيب والموزّعون يستخدمونه لتشغيل الشواحن ودعم العملاء عن بُعد.
أهم فائدة هي التحرر من الارتباط بمورّد واحد. فبدون بروتوكول مفتوح، لن يعمل الشاحن إلا مع برنامج الشركة المصنّعة له. أما مع OCPP، فيمكنك اختيار المعدات المناسبة لكل موقع والبرنامج المناسب لنشاطك، وتغيير أيٍّ منهما لاحقًا دون استبدال الآخر.
كيف يعمل الاتصال عبر OCPP
في الإصدار الأكثر شيوعًا، OCPP 1.6J، يشير الحرف "J" إلى JSON عبر WebSocket. يعمل الشاحن كعميل، فيفتح اتصال WebSocket مع عنوان URL يوفّره نظام CSMS، مثل wss://ocpp.example.com/ocpp/CP001، حيث يمثّل الجزء الأخير من المسار معرّف نقطة الشحن (Charge Point ID). يبقى الاتصال مفتوحًا، فيستطيع الطرفان إرسال الرسائل في أي وقت.
كل رسالة عبارة عن مصفوفة JSON صغيرة تتضمن نوع الرسالة ومعرّفًا فريدًا لها واسم الإجراء والبيانات المرسلة. ويتلقى كل طلب ردًا يحمل معرّف الرسالة نفسه، ما يتيح لكل طرف مطابقة الإجابات بالطلبات.
تسلسل نموذجي للرسائل
- BootNotification: عند تشغيل الشاحن، يعرّف بنفسه ويرسل اسم المصنّع والطراز وإصدار البرنامج الثابت (firmware). يرد نظام CSMS بـ Accepted أو Pending أو Rejected، ويحدد الفاصل الزمني لرسائل Heartbeat.
- Heartbeat: يرسل الشاحن إشارة قصيرة على فترات منتظمة، عادةً كل 60 إلى 300 ثانية، ليعرف نظام CSMS أنه متصل. ويتضمن الرد الوقت الحالي، ما يساعد على ضبط ساعة الشاحن.
- StatusNotification: كلما تغيّرت حالة أحد الموصلات، يُبلغ الشاحن عنها، مثل Available أو Preparing أو Charging أو Finishing أو Faulted، مع رمز خطأ عند حدوث مشكلة.
- Authorize: عندما يقدّم السائق بطاقة RFID، يرسل الشاحن المعرّف الفريد للبطاقة (UID) بصفته idTag. ويرد نظام CSMS بحالة مثل Accepted أو Blocked أو Expired أو Invalid.
- StartTransaction وStopTransaction: يُبلغ الشاحن عن بدء جلسة الشحن وانتهائها، بما في ذلك قراءات العدّاد.
- MeterValues: خلال الجلسة، يرسل الشاحن قياسات مثل الطاقة (kWh) والقدرة (kW)، ونسبة شحن البطارية إذا وفّرتها السيارة.
يستطيع نظام CSMS أيضًا إرسال أوامر إلى الشاحن. ومن الأمثلة الشائعة في OCPP 1.6: RemoteStartTransaction وRemoteStopTransaction وReset وUnlockConnector وChangeAvailability وChangeConfiguration وTriggerMessage.
نظرة سريعة على إصدارات OCPP
هناك عدة إصدارات مستخدمة اليوم، وهي ليست متوافقة كلها مع بعضها، لذا من المهم معرفة الإصدار الذي تدعمه شواحنك.
| الإصدار | سنة الإصدار | الخصائص الرئيسية |
|---|---|---|
| OCPP 1.6J | 2015 | JSON عبر WebSocket؛ الإصدار الأوسع انتشارًا؛ أُضيف الأمان لاحقًا عبر امتداد الأمان من OCA |
| OCPP 2.0.1 | 2020 | رسالة TransactionEvent موحّدة، ونموذج الأجهزة، وملفات أمان مدمجة، وشحن ذكي محسّن، ودعم ISO 15118؛ غير متوافق مع الإصدار 1.6 |
| OCPP 2.1 | 2025 | مبني على 2.0.1 ومتوافق معه؛ يضيف الشحن ثنائي الاتجاه (V2X)، والتحكم في موارد الطاقة الموزعة (DER)، وحساب التكلفة محليًا، ودعم أجهزة الدفع |
صدر OCPP 2.0 في عام 2018، لكن الإصدار 2.0.1 هو النسخة المصحّحة التي يعتمدها القطاع. للاطلاع على مقارنة مفصّلة ونصائح الترحيل، اقرأ مقارنتنا بين OCPP 1.6J و2.0.1 و2.1.
ما الذي يقدّمه برنامج OCPP (نظام CSMS)
البروتوكول وحده مجرد لغة. أما القيمة الحقيقية فتأتي من البرنامج الذي يستقبل رسائل شواحنك ويحوّلها إلى معلومات وإجراءات مفيدة. يغطي نظام CSMS الجيد عادةً المجالات التالية:
- المراقبة: حالة الموصلات لحظيًا، والقدرة الحالية، والطاقة المسلّمة، وتنبيهات عند انقطاع اتصال الشاحن أو إبلاغه عن عطل.
- التحكم عن بُعد: إعادة تشغيل الشاحن، أو إيقاف جلسة، أو تحرير كابل عالق، أو تعطيل موصل دون إرسال فني.
- التحكم في الوصول: إدارة بطاقات RFID والسائقين، وتحديد من يحق له الشحن وفي أي محطة.
- سجلات الجلسات والتقارير: الطاقة لكل محطة أو سائق أو مركبة، مع إمكانية التصدير لأغراض المحاسبة.
- التكامل: واجهة API وwebhooks لتتمكن الأنظمة الأخرى، مثل أنظمة ERP أو برامج إدارة الأساطيل، من استخدام بيانات الشحن.
تُعدّ Üreticy مثالًا على نظام CSMS سحابي مصمم حول هذه المهام، إذ يستقبل شواحن OCPP 1.6J و2.0.1 و2.1 في لوحة التحكم نفسها ويعرض الحالة والقدرة والطاقة لحظيًا على خريطة. يمكنك الاطلاع على القائمة الكاملة في صفحة مزايا Üreticy.
الأمان في OCPP
يجب حماية أي شاحن متصل بالإنترنت. يحدد OCPP ثلاثة ملفات أمان (security profiles): يستخدم الملف 1 مصادقة HTTP Basic دون تشفير، ويضيف الملف 2 تشفير TLS إلى مصادقة Basic، بينما يستخدم الملف 3 بروتوكول TLS مع شهادات العميل، بحيث يثبت كل طرف هويته بالشهادات.
في OCPP 1.6، أُدخلت هذه الملفات لاحقًا عبر امتداد الأمان من OCA، لذا لا تدعمها جميع شواحن 1.6. أما في OCPP 2.0.1 و2.1، فملفات الأمان وتسجيل الأحداث الأمنية جزء من المواصفات الأساسية. وكقاعدة عملية، فضّل دائمًا اتصال wss:// المشفّر على اتصال ws:// غير المشفّر متى دعمته معداتك.
كيف تبدأ مع OCPP
إذا كنت تخطط لأول موقع تديره عبر OCPP، فاتبع الخطوات التالية:
- تحقق من معداتك. تأكد من ورقة المواصفات الفنية من إصدار OCPP الذي يدعمه الشاحن ومن دعمه لبروتوكول TLS.
- اختر نظام CSMS. تأكد من أنه يدعم إصدارات شواحنك ويناسب نموذج عملك.
- احصل على بيانات الاتصال. يوفّر نظام CSMS عنوان URL للخادم، وتختار أو تتلقى معرّف نقطة شحن لكل شاحن.
- اضبط إعدادات الشاحن. أدخل عنوان URL والمعرّف وكلمة المرور الاختيارية في واجهة الويب للشاحن أو في تطبيق التركيب.
- اختبر الاتصال. تأكد من قبول رسالة BootNotification ووصول رسائل Heartbeat وصحة حالة الموصل.
للاطلاع على شرح مفصّل لخطوات الإعداد، راجع دليلنا حول كيفية ربط الشاحن بخادم OCPP. مع Üreticy، يحصل كل عميل على عنوان OCPP URL خاص به، وأي شاحن يتصل بمعرّف غير معروف يظهر بحالة "قيد الانتظار" لتضيفه إلى حسابك بنقرة واحدة.
الأسئلة الشائعة
هل استخدام OCPP مجاني؟
نعم. تنشر Open Charge Alliance مواصفات OCPP بشكل مفتوح، ويمكن لأي مصنّع أو مطوّر برمجيات تطبيقها. ستدفع ثمن الشواحن وبرنامج الإدارة، لكن ليس البروتوكول نفسه.
هل تدعم جميع شواحن السيارات الكهربائية OCPP؟
لا. كثير من الشواحن التجارية تدعم OCPP، لكن بعض الشواحن المنزلية البسيطة لا تدعمه، وبعضها يعمل فقط مع تطبيق الشركة المصنّعة. تحقق دائمًا من إصدار OCPP المدعوم في ورقة المواصفات قبل الشراء.
هل يمكنني استخدام شواحن OCPP 1.6 وOCPP 2.0.1 في الشبكة نفسها؟
نعم، إذا كان نظام CSMS لديك يدعم الإصدارين. فالإصداران غير متوافقين على مستوى الرسائل، لذا يجب أن يتعامل البرنامج مع كلٍّ منهما على حدة. ويدير كثير من المشغلين شبكات مختلطة خلال الترحيل التدريجي.
ما الفرق بين OCPP وOCPI؟
يربط OCPP الشاحن بنظام إدارته، بينما يربط OCPI (Open Charge Point Interface) منصات الإدارة المختلفة ببعضها، مثلًا لإتاحة التجوال (roaming) بين شبكات الشحن. فهما يحلّان مشكلتين مختلفتين، وكثيرًا ما يُستخدمان معًا.
هل أحتاج إلى مهارات برمجية لاستخدام OCPP؟
لا. في معظم الحالات، يكفي إدخال عنوان URL للخادم ومعرّف نقطة الشحن في إعدادات الشاحن. ويتولى نظام CSMS معالجة رسائل البروتوكول ويعرض النتائج في لوحة تحكم. وتفيد المهارات البرمجية فقط إذا أردت دمج بيانات الشحن مع أنظمة أخرى عبر واجهة API.
هل أنت مستعد لربط شواحنك؟ اكتشف برنامج OCPP من Üreticy الذي يدعم الإصدارات 1.6J و2.0.1 و2.1، مع تسعير لكل موصل ودون أي عمولة على إيرادات الشحن.
