Протокол KWP2000 в автомобильных диагностических приложениях
Протокол KWP2000 фактически стал стандартом в автомобильных диагностических приложениях. Он стандартизирован как ISO 14230-3. KWP2000 описывает реализацию различных диагностических сервисов, с которыми вы можете войти. Вы можете запустить KWP2000 на нескольких транспортных уровнях, таких как K-line (последовательный) или CAN.
Транспортный протокол
Поскольку KWP2000 использует сообщения переменной длины байта, на уровнях требуется транспортный протокол с только четко определенной (короткой) длиной сообщения, такой как CAN. Транспортный протокол разбивает длинное сообщение KWP2000 на части, которые могут быть переданы по сети, и перестраивает эти части, чтобы восстановить исходное сообщение.
KWP2000 работает по CAN по различным транспортным протоколам, таким как ISO TP (ISO 15765-2), TP 1.6, TP 2.0 (Volkswagen) и SAE J1939-21. Для KWP2000 набор диагностических команд для автомобильной промышленности поддерживает только ISO TP (стандартизированный в ISO 15765-2) и специфичные для производителя транспортные протоколы VW TP 2.0.
Диагностические службы
Диагностические службы, доступные в KWP2000, сгруппированы в функциональные единицы и идентифицируются однобайтовым кодом (ServiceId). Стандарт не определяет все коды; для некоторых кодов стандарт относится к другим стандартам SAE или ISO, а некоторые зарезервированы для расширений, специфичных для производителя. Набор диагностических команд для автомобильной промышленности поддерживает следующие службы:
• Управление диагностикой
• Передача данных
• Передача хранимых данных (коды неисправностей диагностики)
• Управление вводом / выводом
• Удаленное управление Активация управляющей подпрограммы
Загрузка / выгрузка и расширенные сервисы не являются частью набора команд автомобильной диагностики.
Формат диагностической службы
Диагностические службы имеют общий формат сообщений. Каждый сервис определяет сообщение запроса, сообщение с положительным ответом и сообщение с отрицательным ответом. Сообщение запроса имеет ServiceId в качестве первого байта плюс дополнительные параметры, определенные сервисом. Сообщение с положительным ответом имеет ответ ServiceId с битом 6, установленным в качестве первого байта, плюс параметры ответа, определенные службой.
Сообщение с отрицательным ответом обычно является трехбайтовым сообщением: оно имеет отрицательный ответ ServiceId в качестве первого байта, эхо-сигнал исходного ServiceId в качестве второго байта и ResponseCode в качестве третьего байта. Единственным исключением из этого формата является отрицательный ответ на EscapeCode; третий байт является эхом пользовательского сервисного кода, а четвертый байт является ResponseCode. Стандарт KWP2000 частично определяет коды отклика, но есть место для расширений, специфичных для производителя. Для некоторых ResponseCodes KWP2000 определяет процедуру обработки ошибок. Поскольку как положительные, так и отрицательные ответы отвечают на запрошенную услугу, вы всегда можете назначить ответы на соответствующий запрос.
Connect / Disconnect
KWP2000 ожидает, что диагностический сеанс будет запущен с StartDiagnosticSession и завершен с StopDiagnosticSession. Однако StartDiagnosticSession имеет параметр DiagnosticMode, который указывает тип диагностического сеанса. В зависимости от этого типа, ECU может поддерживать или не поддерживать другие диагностические службы или работать в ограниченном режиме, где не все функции ECU доступны. Значения диагностических параметров зависят от производителя и не определены в стандарте. Чтобы сеанс диагностики оставался активным, служба TesterPresent должна выполняться периодически, если никакая другая служба не выполняется. Если TesterPresent отсутствует в течение некоторого времени, сеанс диагностики прекращается, и ЭБУ возвращается в нормальный рабочий режим.
GetSeed / Unlock
Механизм GetSeed / Unlock может защитить некоторые диагностические службы. Тем не менее, соответствующие услуги предоставлены производителю и не определены стандартом. Вы можете выполнить механизм GetSeed / Unlock через SecurityAccess. Это определяет несколько уровней безопасности, но производитель назначает эти уровни определенным службам.
Чтение / запись памяти
Используйте Read / WriteMemoryByAddress для загрузки / выгрузки данных по определенным адресам памяти в ECU. Адрес представляет собой трехбайтовую сумму в KWP2000 и пятибайтовую сумму (четырехбайтовый адрес и однобайтовое расширение) в протоколах калибровки. Функциональные блоки загрузки / выгрузки сильно зависят от производителя и плохо определены в стандарте, поэтому они не являются хорошим способом обеспечения общего механизма выгрузки / выгрузки.
Измерение
Используйте сервис ReadDataByLocal / CommonIdentifier для доступа к данным ECU способом, аналогичным DAQ. Local / CommonIdentifier перечисляет ECU, которые затем передаются из ECU в тестер. Передача может быть одноразовой или периодической, с медленной, средней или высокой скоростью передачи. Скорость передачи зависит от производителя; Вы можете установить SetDataRates, но этот параметр зависит от производителя. Набор диагностических команд для автомобильной промышленности поддерживает измерения в одной точке.
Диагностические коды неисправностей
Считывание диагностических кодов неисправностей (DTC) является основной диагностической функцией. KWP2000 определяет несколько сервисов, которые обращаются к DTC, основываясь на их группе или статусе.
Управление вводом / выводом
KWP2000 определяет сервисы для изменения внутренних или внешних сигналов ЭБУ. Одним из примеров является перенаправление входов датчика ECU на стимулированные сигналы. Параметры управления этими командами зависят от производителя и не определены в стандарте.
Процедура удаленной активации
Эти службы аналогичны функциям ActionService и DiagService CCP. Вы можете вызвать внутреннюю процедуру ECU, указанную по адресу Local / CommonIdentifier или адресу памяти. В отличие от случая CCP, выполнение этой подпрограммы может быть асинхронным; то есть существуют отдельные службы Start, Stop и RequestResult. Параметры управления этими командами зависят от производителя и не определены в стандарте.
Внешние ссылки
Для получения дополнительной информации о стандарте KWP2000 см. ISO 14230-3.
——————————————————————-
Мотозапчасти оптом
Велозапчасти оптом
Запчасти для скутеров оптом
Запчасти для снегоходов оптом
Запчасти для бензопил оптом



