ISO 15765-2
معيار ISO 15765-2 ، [ 1 ] أو ISO-TP (طبقة النقل) ، هو معيار دولي لإرسال حزم البيانات عبر ناقل CAN . [ 2 ] يسمح هذا البروتوكول بنقل الرسائل التي يتجاوز حجم حمولتها الحد الأقصى البالغ ثمانية بايتات لإطارات CAN . يقوم ISO-TP بتقسيم الرسائل الطويلة إلى عدة إطارات، مع إضافة بيانات وصفية (رأس CAN-TP) تُمكّن المُستقبِل من تفسير كل إطار على حدة وإعادة تجميعه في حزمة رسالة كاملة. يمكنه حمل ما يصل إلى 2 ^32 - 1 (4294967295) بايت من الحمولة لكل حزمة رسالة بدءًا من إصدار 2016. [ 2 ] كانت الإصدارات السابقة محدودة بحجم حمولة أقصى يبلغ 4095 بايت.
في نموذج OSI ، يغطي ISO-TP الطبقة 3 (طبقة الشبكة) والطبقة 4 (طبقة النقل).
إن التطبيق الأكثر شيوعًا لـ ISO-TP هو نقل رسائل التشخيص مع المركبات المجهزة بنظام OBD-II باستخدام KWP2000 و UDS ، ولكنه يستخدم على نطاق واسع في تطبيقات CAN الخاصة الأخرى حيث قد يحتاج المرء إلى إرسال رسائل أطول مما تسمح به الطبقة المادية لبروتوكول CAN (ثمانية بايتات لـ CAN، و 64 بايتًا لـ CAN FD، و 2048 بايتًا لـ CAN-XL).
يمكن تشغيل بروتوكول ISO-TP باستخدام نظام العنونة الخاص به، والذي يُعرف باسم العنونة الموسعة، أو بدون عنوان باستخدام مُعرّف CAN فقط (ويُعرف باسم العنونة العادية ). تستخدم العنونة الموسعة أول بايت من بيانات كل إطار كعنصر إضافي في العنوان، مما يُقلل حجم حمولة التطبيق بمقدار بايت واحد. ولتوضيح الأمر، يعتمد وصف البروتوكول أدناه على العنونة العادية مع إطارات CAN ذات ثمانية بايتات. إجمالاً، يسمح بروتوكول ISO 15765-2 بستة أنواع من العنونة.
يُضيف بروتوكول ISO-TP بايتًا واحدًا أو أكثر من البيانات الوصفية إلى بيانات الحمولة في إطار CAN ذي الثمانية بايتات، مما يُقلل الحمولة إلى سبعة بايتات أو أقل لكل إطار. تُسمى هذه البيانات الوصفية معلومات التحكم في البروتوكول (PCI). تتكون معلومات التحكم في البروتوكول من بايت واحد أو اثنين أو ثلاثة بايتات. يتكون الحقل الأولي من أربعة بتات تُشير إلى نوع الإطار، وتصف ضمنيًا طول معلومات التحكم في البروتوكول.
يُعدّ معيار ISO 15765-2 جزءًا من معيار ISO 15765 (المعنون " المركبات على الطرق - الاتصال التشخيصي عبر شبكة منطقة التحكم (DoCAN)" )، والذي يتضمن الأجزاء التالية:
- ISO 15765-1 الجزء 1: معلومات عامة وتعريف حالة الاستخدام
- ISO 15765-2 الجزء 2: بروتوكول النقل وخدمات طبقة الشبكة
- المعيار الدولي ISO 15765-3 الجزء 3: تطبيق خدمات التشخيص الموحدة (UDS على CAN) – تم استبداله بالمعيار الدولي ISO 14229-3 المركبات البرية — خدمات التشخيص الموحدة
- المواصفة القياسية الدولية ISO 15765-4 الجزء 4: متطلبات الأنظمة المتعلقة بالانبعاثات
قائمة أنواع حقول معلومات التحكم في البروتوكول (PCI)
تحدد ISO-TP أربعة أنواع من الإطارات:
| يكتب | رمز PCI | وصف |
|---|---|---|
| إطار واحد (SF) | 0 | تحتوي الإطار الواحد المنقول على الحمولة الكاملة التي تصل إلى 7 بايت (عنونة عادية) أو 6 بايت (عنونة موسعة). |
| الإطار الأول (FF) | 1 | الإطار الأول من حزمة متعددة الإطارات، يُستخدم عند الرغبة في إرسال بيانات تتجاوز 6 أو 7 بايتات. يحتوي الإطار الأول على طول الحزمة الكاملة والبيانات الأولية. |
| الإطار المتتالي (CF) | 2 | إطار يحتوي على بيانات لاحقة لحزمة متعددة الإطارات |
| إطار التحكم في التدفق (FC) | 3 | رد من المُستقبِل، يُؤكد بدء حزمة بيانات متعددة الإطارات. يُستخدم لإدارة وتيرة الإطارات المتتالية. |
| البايت 0 | البايت 1 | البايت 2 | البايت 3 | البايت 4 | البايت 5 | البايت 6 | بايت 7 | ||
|---|---|---|---|---|---|---|---|---|---|
| هاي نيبِل | قضمة خفيفة | بايت كامل (0x00-0xFF) | بايت كامل (0x00-0xFF) | بايت كامل (0x00-0xFF) | " | " | " | " | |
| أعزب | 0x0 | الطول (0x1..0x7) | البيانات أ | البيانات ب | البيانات ج | ... | ... | ... | ... |
| أولاً | 0x1 | الطول (0x008..0xFFF) | البيانات أ | البيانات ب | ... | ... | ... | ... | |
| متتابع | 0x2 | الفهرس (0x0..0xF) | البيانات أ | البيانات ب | البيانات ج | ... | ... | ... | ... |
| التحكم في التدفق | 0x3 | علم FC (0x0,0x1,0x2) | حجم الكتلة | STmin | ... | ... | ... | ... | ... |
تُرسل رسالة بحجم سبعة بايتات أو أقل في إطار واحد، ويحتوي البايت الأول على نوع الرسالة (0) وطولها (من 1 إلى 7 بايتات). وبوجود الصفر في حقل النوع، يمكن اعتبار هذا بروتوكولًا أبسط بتنسيق بيانات الطول، وغالبًا ما يُساء فهمه على هذا النحو.
تتطلب الرسالة التي يزيد طولها عن 7 بايتات تقسيم حزمة الرسالة إلى عدة إطارات. يبدأ النقل المُجزأ بإطار أول. يتكون مُعرّف نوع البيانات (PCI) من بايتين في هذه الحالة، حيث يُمثل الحقل الأول (4 بتات ) نوع الرسالة (النوع 1)، بينما تُمثل البتات الـ 12 التالية طول الرسالة (باستثناء بايتات النوع والطول). يُؤكد المُستلم عملية النقل بإطار تحكم في التدفق. يحتوي إطار التحكم في التدفق على ثلاثة بايتات من مُعرّف نوع البيانات (PCI) تُحدد الفاصل الزمني بين الإطارات المتتالية وعدد الإطارات المتتالية التي يُمكن إرسالها ( حجم الكتلة ).
بالنسبة لبروتوكول CAN FD، تم توسيع بروتوكول ISO 15765-2 ليشمل الإطار الفردي والإطار الأول، للسماح بقيم حجم أكبر، ولكنه لا يزال متوافقًا مع الإصدارات السابقة من ISO 15765 التقليدي. انظر CAN FD .
| البايت 0 | البايت 1 | البايت 2 | البايت 3 | البايت 4 | البايت 5 | البايت 6 | بايت 7 | ||
|---|---|---|---|---|---|---|---|---|---|
| هاي نيبِل | قضمة خفيفة | بايت كامل (0x00-0xFF) | بايت كامل (0x00-0xFF) | حشوة | " | " | " | " | |
| وصف | حالة التدفق | حجم الكتلة | وقت الفصل (ST)، وهو الحد الأدنى لوقت التأخير بين الإطارات (نهاية إطار وبداية إطار آخر) | ||||||
| أعزب | 0x3 | ٠ = استمرار الإرسال ١ = انتظار ٢ = تجاوز السعة/إلغاء | 0 = عدد "الإطارات" المتبقية التي سيتم إرسالها بدون تحكم في التدفق أو تأخير | <= 127 (0x00 إلى 0x7F)، وقت الفصل بالمللي ثانية. | 0x00 | 0x00 | 0x00 | 0x00 | 0x00 |
| أعزب | 0x3 | ٠ = استمرار الإرسال ١ = انتظار ٢ = تجاوز السعة/إلغاء | > 0 إرسال عدد "الإطارات" قبل انتظار إطار التحكم في التدفق التالي | 0xF1 إلى 0xF9 UF (100-900 ميكروثانية). | 0x00 | 0x00 | 0x00 | 0x00 | 0x00 |
| توجيه الرسالة | نوع الإطار | بايتات البيانات (تنسيق سداسي عشري) | تفسير |
|---|---|---|---|
| إرسال | الإطار 1 | 10 0F 11 22 33 44 55 66 | رمز PCI = 0x1، طول الرسالة بالكامل = 0x00F، أول 6 بايتات من البيانات |
| الاستلام | التحكم في التدفق | 30 00 00 00 00 00 00 00 | رمز PCI = 0x3، 0x0 = استمرار، بدون تأخير، حشو |
| إرسال | الإطار 2 | 21 77 88 99 AA BB CC DD | رمز PCI = 0x2، فهرس الرسالة = 0x1، البيانات السبعة التالية |
| إرسال | الإطار 3 | 22 EE FF | رمز PCI = 0x2، فهرس الرسالة = 0x2، آخر بايتين من البيانات |
تحتوي البايتة الأولى على نوع البيانات (النوع = 3) في أول أربع بتات، وعلامة في الأربع بتات التالية تُشير إلى ما إذا كان النقل مسموحًا به (0 = متابعة الإرسال، 1 = انتظار، 2 = تجاوز السعة/إلغاء). البايتة التالية هي حجم الكتلة، أي عدد الإطارات التي يُمكن إرسالها قبل انتظار إطار التحكم في التدفق التالي. القيمة صفر تسمح بإرسال الإطارات المتبقية دون تحكم في التدفق أو تأخير. البايتة الثالثة هي الحد الأدنى لوقت الفصل (STmin)، وهو الحد الأدنى لوقت التأخير بين الإطارات. تُحدد قيم STmin حتى 127 (0x7F) الحد الأدنى لعدد المللي ثواني للتأخير بين الإطارات، بينما تُحدد القيم في النطاق من 241 (0xF1) إلى 249 (0xF9) تأخيرات تتزايد من 100 إلى 900 ميكروثانية. تجدر الإشارة إلى أن وقت الفصل يُعرَّف بأنه الحد الأدنى للوقت بين نهاية إطار وبداية الإطار التالي. ينبغي أن تكون التطبيقات القوية مستعدة لقبول الإطارات من مُرسِل يُسيء تفسير هذا على أنه معدل تكرار الإطار، أي من بداية إطار إلى بداية إطار آخر. حتى التطبيقات الدقيقة قد لا تأخذ في الحسبان التأثير الطفيف لحشو البتات في الطبقة الفيزيائية.
يرسل المرسل بقية الرسالة باستخدام الإطارات المتتالية. يحتوي كل إطار متتالي على بايت واحد لرمز معلومات المنتج (PCI)، بنوع مكون من أربعة بتات (النوع = 2) متبوعًا برقم تسلسلي مكون من أربعة بتات. يبدأ الرقم التسلسلي من 1 ويزداد مع كل إطار مُرسل (1، 2، ...، F، 0، 1، ...)، والذي يُستخدم لاكتشاف الإطارات المفقودة أو المهملة. يبدأ كل إطار متتالي من 0، حيث تُعتبر المجموعة الأولى من البيانات في الإطار الأول هي البيانات رقم 0. لذا، تبدأ المجموعة الأولى من الإطارات المتتالية (CF) من 0x1. بعد ذلك، عندما تصل إلى 0x2F، تبدأ من 0x20 (على سبيل المثال، 0x21، 0x22، 0x23، ...، 0x2F، 0x20، 0x21، ...). يسمح حقل الطول ذو 12 بت (كما هو موضح في الإطار الأول) بما يصل إلى 4095 بايت من بيانات المستخدم في رسالة مجزأة، ولكن في الواقع يكون الحد النموذجي الخاص بالتطبيق أقل بكثير بسبب قيود المخزن المؤقت للاستقبال أو قيود الأجهزة.
معلمات التوقيت
يجب ذكر معايير التوقيت، مثل مؤقتات P1 و P2.
المعايير
مراجع
- ↑ "ISO 15765-2:2016" . المنظمة الدولية للمقاييس . تم الاطلاع عليه بتاريخ 5 أبريل 2019 .
- 1 2 "ISO 15765-2 (ISO-TP) — وثائق نواة لينكس" . docs.kernel.org . تم الاطلاع عليه بتاريخ 12-09-2025 .
- شبكات الحاسوب
