resimkoy

پروتکل KWP2000 نرم افزار تشخیصی خودرو

۲۹ اردیبهشت ۱۳۹۶

پروتکل KWP2000 تبدیل شده است عملا استاندارد در برنامه های کاربردی تشخیصی خودرو. آن را به عنوان ISO 14230-3 استاندارد شده است. KWP2000 توصیف پیاده سازی سرویس های مختلف تشخیصی شما می توانید پروتکل accethrough. شما می توانید KWP2000 در چند لایه حمل و نقل مانند K-خط (سریال) و یا می توانید اجرا کنید.

پروتکل حمل و نقل

به عنوان KWP2000 با استفاده از پیام با طول بایت متغیر، یک پروتکل انتقال لازم در لایه تنها با (کوتاه) طول پیام به خوبی تعریف شده، مانند CAN است. پروتکل حمل و نقل تجزیه یک پیام KWP2000 طولانی را به قطعات است که می تواند بر روی شبکه منتقل شده و دوباره آن قطعه برای بازیابی پیام اصلی است.

KWP2000 قابل اجرا بر روی CAN در پروتکل های حمل و نقل های مختلف مانند ISO TP (ISO 15765-2 )، TP 1.6، TP 2. 0 (فولکس واگن)، و SAE J1939-21. برای KWP2000 از خودرو تشخیصی مجموعه دستورات را پشتیبانی تنها ISO TP (استاندارد شده در استاندارد ISO 15765-2) و VW TP پروتکل ۲٫۰ حمل و نقل تولید کننده خاص.

خدمات

تشخیصی

خدمات تشخیصی موجود در KWP2000 در واحدهای عملیاتی گروه بندی شده و مشخص شده توسط یک کد یک بایت (ServiceId). استاندارد ها تمام کدهای تعریف نیست. برای برخی از کدهای، استاندارد اشاره به دیگر استانداردهای SAE یا ISO، و برخی از آنها برای پسوند خاص تولید کننده می باشد. خودرو تشخیصی مجموعه دستورات خدمات زیر پشتیبانی می کند:

• مدیریت تشخیصی

• انتقال داده

• داده های ذخیره شده انتقال (کدهای مشکل تشخیصی)

• ورودی / خروجی کنترل

• فعال سازی از راه دور از معمول

آپلود / دانلود و خدمات تمدید بخشی از خودرو تشخیصی مجموعه دستورات است.

فرمت خدمات تشخیصی

خدمات تشخیصی یک فرمت رایج پیام. هر یک از خدمات یک پیام درخواست، پیام پاسخ مثبت، و پیام پاسخ منفی تعریف می کند. درخواست پیام است ServiceId به عنوان اولین بایت، به علاوه پارامترهای سرویس تعریف اضافی. پیام مثبت پاسخ است اکو از ServiceId با کمی ۶ مجموعه ای به عنوان اولین بایت، به علاوه پارامترهای پاسخ سرویس تعریف شده

پیام پاسخ منفی معمولا یک پیام سه بایت: از آن است که ServiceId پاسخ های منفی به عنوان اولین بایت، اکو از ServiceId اصلی به عنوان بایت دوم، و یک ResponseCode به عنوان بایت سوم. تنها استثنا در این فرمت پاسخ منفی به یک سرویس EscapeCode است. در اینجا، بایت سوم اکو از کد سرویس تعریف شده توسط کاربر است، و بایت چهارم ResponseCode است. استاندارد KWP2000 تا حدی تعریف ResponseCodes است، اما جایی برای پسوند خاص تولید کننده وجود دارد. برای برخی از ResponseCodes، KWP2000 یک روش رفع خطا تعریف می کند. آنجا که هر دو پاسخ های مثبت و منفی دارای یک اکو از سرویس درخواست شده، شما همیشه می توانید پاسخ به درخواست مربوط به خود را اختصاص دهید.

اتصال / قطع

KWP2000 انتظار جلسه تشخیصی با StartDiagnosticSession شروع شود و فسخ با StopDiagnosticSession. با این حال، StartDiagnosticSession دارای یک پارامتر DiagnosticMode که نوع جلسه تشخیصی تعیین می کند. با توجه به این نوع، ECU ممکن است یا ممکن سایر خدمات تشخیصی پشتیبانی نمی کند، یا در یک حالت محدود که در آن تمام توابع ECU در دسترس هستند به کار گیرند. مقادیر پارامتر DiagnosticMode تولید کننده خاص و در استاندارد تعریف نشده است. برای یک جلسه تشخیصی برای فعال باقی می ماند، باید آن را خدمات TesterPresent به صورت دوره اگر هیچ سرویس دیگری اجرا شده است را اجرا کند. اگر خدمات TesterPresent است برای یک دوره معینی از زمان از دست رفته، جلسه تشخیصی خاتمه یافته است، و ECU به حالت عملیات عادی باز می گردد.

GetSeed / باز

مکانیسم GetSeed / باز کردن ممکن است برخی از خدمات تشخیصی محافظت می کند. با این حال، خدمات قابل اجرا هستند به تولید کننده به سمت چپ و توسط standard.You تعریف نشده می تواند مکانیسم GetSeed / باز کردن از طریق سرویس SecurityAccess اجرا. این تعریف چندین سطح از امنیت، اما تولید کننده اختصاص این سطوح به خدمات خاص است.

خواندن / نوشتن حافظه

با استفاده از خدمات خواندن / WriteMemoryByAddress برای آپلود / دانلود داده ها به آدرس های حافظه خاصی بر روی ECU. آدرس یک مقدار سه بایت در KWP2000 و مقدار پنج بایت (چهار بایت آدرس و یک بایت پسوند) در پروتکل کالیبراسیون است. آپلود / دانلود خدمات واحد عملکردی بسیار خاص تولید کننده و به خوبی در استاندارد تعریف شده است، به طوری که آنها یک راه خوب برای ارائه یک آپلود عمومی / مکانیزم دانلود نیست.

اندازه گیری

با استفاده از خدمات ReadDataByLocal / CommonIdentifier برای دسترسی به داده ECU در روشی مشابه به یک لیست DAQ. محلی / CommonIdentifier یک لیست از مقادیر ECU که هستند و سپس از ECU به تستر منتقل شده است. انتقال می تواند به صورت مقدار واحد یا دوره ای، با یک سرعت کم، متوسط ​​و یا نرخ انتقال سریع می باشد. نرخ انتقال هستند تولید کننده خاص؛ شما می توانید خدمات SetDataRates به آنها را استفاده کنید، اما این تنظیم تولید کننده خاص است. خودرو تشخیصی مجموعه دستورات پشتیبانی از اندازه گیری تک نقطه.

کدهای مشکل تشخیصی

یکی از ویژگی های تشخیصی عمده بازخوانی از کدهای مشکل تشخیصی (کد های خطا) است. KWP2000 چندین خدمات که کد های خطا دسترسی بر اساس گروه و یا وضعیت خود را تعریف می کند.

ورودی / خروجی کنترل

KWP2000 خدمات به تغییر سیگنال ECU داخلی یا خارجی تعریف می کند. یکی از نمونه های هدایت ورودی سنسور ECU به سیگنال های تحریک شده است. پارامترهای کنترل این دستورات تولید کننده خاص و در استاندارد تعریف نشده است.

فعال از راه دور از یک روال

این خدمات مشابه به توابع اقدام به و DiagService از حزب کمونیست چین می باشد. شما می توانید یک روال داخلی ECU مشخص شده توسط A / CommonIdentifier محلی و یا آدرس حافظه فراخوانی کنید. برخالف CCP، اجرای این روال را می توان ناهمگام؛ که هستند، جداگانه شروع، توقف، و خدمات RequestResult وجود دارد. پارامترهای کنترل این دستورات تولید کننده خاص و در استاندارد تعریف شده است.

اشارات خارجی

برای کسب اطلاعات بیشتر در مورد استاندارد KWP2000، با استاندارد ISO 14230-3 مراجعه کنید.