تُحدد الحدود الزمنية لإزالة الارتداد المستندة إلى الوقت لأحداث التشخيص عند تهيئة شاشة المراقبة.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: beb974918ec8المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُحدد الحدود الزمنية لإزالة الارتداد المستندة إلى الوقت لأحداث التشخيص عند تهيئة شاشة المراقبة.
تُستخدم بنية البيانات ara::diag::TimeBased لتكوين إزالة الارتداد المستندة إلى الوقت لأحداث التشخيص [SWS_DM_00539]. وتقوم بتمرير قيم العتبة بالمللي ثانية إلى دالة بناء ara::diag::Monitor، والتي يصنف الحدث بعد انقضائها على أنه تم تعافيه أو به خطأ. ويبدأ Diagnostic Management مؤقت إزالة الارتداد الداخلي ويتحكم فيه بناءً على هذه العتبات عند ورود رسائل الحالة. ولا يتم دعم التخزين الدائم لقيمة العداد الداخلية عبر عمليات إعادة التشغيل لطرق إزالة الارتداد المستندة إلى الوقت AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.5.2 «Time-based debouncing».
السياق
تُحدد بنية C++ ara::diag::TimeBased معلمات التكوين لإزالة الارتداد المستندة إلى الوقت (time-based debouncing) لأحداث التشخيص في Diagnostic Management الخاص بـ AUTOSAR Adaptive Platform [SWS_DM_00539]. وهي تُغلّف المدتين الزمنيتين بالمللي ثانية اللتين تعدان حاسمتين لانتقالات حالة حدث التشخيص: failedMs كعتبة للخطأ [SWS_DM_00629] و passedMs كعتبة للتعافي [SWS_DM_00630].
في النظام الإجمالي، تربط البنية ثلاثة مكونات أساسية: وظيفة التطبيق المشخِّصة، والفئة ara::diag::Monitor، بالإضافة إلى Diagnostic Management (DM) [SWS_DM_00550]. يُنشئ التطبيق مثيلًا للبنية لتحديد أوقات إزالة الارتداد الخاصة بالحدث ويمررها إلى دالة بناء شاشة مراقبة التشخيص [SWS_DM_00550]. وبعد ذلك، يُفعل DM خوارزمية إزالة الارتداد المستندة إلى الوقت لهذا الحدث [SWS_DM_00015] ويحسب بت حالة الحدث بناءً على المؤقت الداخلي وقيم العتبة المكوّنة kTestFailedAUTOSAR_AP_SWS_Diagnostics §7.3.4.1.5.2 «Time-based debouncing».
كبائع بيانات بسيط بدون موارد ديناميكية، تمتلك ara::diag::TimeBased دورة حياة غير معقدة [SWS_DM_00539]. وعادةً ما يتم إنشاء البنية محليًا على المكدس (stack) أو في منطقة الذاكرة الثابتة بواسطة التطبيق، وتتم تهيئتها بالأوقات المستهدفة وتمريرها كقيمة إلى دالة بناء ara::diag::Monitor[SWS_DM_00550] (AUTOSAR_AP_SWS_Diagnostics §8.40.1.1.2.3 «Monitor»).
تفسير: من خلال التمرير بالقيمة، يتم نسخ المعلمات عند إنشاء شاشة المراقبة، بحيث يمكن التخلص من كائن TimeBased الأصلي بأمان بعد اكتمال استدعاء دالة البناء. سؤال (مفتوح) ويدير DM الحالة الديناميكية لمؤقت إزالة الارتداد بشكل مستقل بدءًا من تلك اللحظة ويضبط قيمته مبدئيًا على 0 عند بدء تشغيل النظام [SWS_DM_00085]. ونظرًا لأن TimeBased لا تحتوي على آليات مزامنة داخلية، فيجب استبعاد عمليات الكتابة المتزامنة على مثيل مشترك من جانب التطبيق.
مسار الاستخدام
ينقسم الاستخدام النموذجي إلى الخطوات التالية:
تحديد المعلمات والتهيئة: يُنشئ التطبيق مثيلًا لـ ara::diag::TimeBased، ويضبط failedMs[SWS_DM_00629] بالإضافة إلى passedMs[SWS_DM_00630]، ويُمرر البنية إلى دالة بناء ara::diag::Monitor[SWS_DM_00550].
تهيئة المؤقت: يبدأ DM خدمة إزالة الارتداد ويهيئ المؤقت الداخلي للحدث بالقيمة صفر [SWS_DM_00085].
الإبلاغ عن نتائج الفحص الأولي: إذا اكتشفت شاشة المراقبة شرطًا خاليًا من الأخطاء، فإنها تستدعي ReportMonitorAction مع kPrepassed. ويبدأ DM المؤقت في اتجاه حالة التعافي [SWS_DM_00878] ويُحدّث باستمرار عدّاد اكتشاف الأخطاء (Fault Detection Counter, FDC) [SWS_DM_00030].
التأهيل: إذا وصل المؤقت إلى العتبة passedMs، يُؤهل DM الحدث كـ kFinallyHealed[SWS_DM_00878]. وإذا أبلغت شاشة المراقبة بدلًا من ذلك عن kFailed، يتم ضبط المؤقت مباشرة على failedMs وتتم معالجة الحدث كـ kFinallyDefective[SWS_DM_00033].
التجميد والاستئناف: عبر ReportMonitorAction(kFreezeDebouncing)، يمكن إيقاف إزالة الارتداد مؤقتًا عند الحاجة [SWS_DM_00880] واستئنافها عند حدوث إجراءات جديدة (kPrepassed أو kPrefailed) بدءًا من قيمة العداد المجمدة [SWS_DM_00038].
عند استخدام إزالة الارتداد المستندة إلى الوقت، تنطبق شروط مسبقة ولاحقة وظيفية:
بدء المؤقت المشروط: عند الإبلاغ عن kPrepassed، يبدأ DM المؤقت في اتجاه kFinallyHealed فقط إذا لم يكن يعمل بالفعل في هذا الاتجاه ولم يكن الحدث يعتبر متعافيًا بالفعل [SWS_DM_00878].
تأهيل الخطأ المختصر: إذا تم الإبلاغ عن kFailed أو kPassed مباشرة، يضبط DM مؤقت إزالة الارتداد فورًا على قيمة العتبة المعنية ويُكمل التصنيف دون وقت انتظار [SWS_DM_00033]، [SWS_DM_00036].
حصرية التجميد: يدعم DM الإجراء kFreezeDebouncing حصريًا للأحداث ذات إزالة الارتداد المستندة إلى الوقت [SWS_DM_00880].
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني