Keyword Protocol 2000

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Keyword Protocol 2000, сокращённо KWP2000, является спецификацией канала связи с диагностическим оборудованием транспортных средств (On-Board Diagnostics). KWP2000 протокол охватывает несколько уровней в OSI модели: физический уровень, уровень канала передачи данных, прикладной уровень, а также сеансовый уровень) с точки зрения запуска, поддержания и завершение сеанса связи).

  • Команды для синхронизации связи и параметров;
  • Идентификация ECU;
  • Память неисправностей: — чтение, стирание ошибок, стоп-кадр;
  • Чтение измеренных значений;
  • Запуск тестовых приводов;
  • Запуск дополнительных функций (параметры ЭБУ и т. д.).
  • Обновление прошивки ЭБУ;

Формат данных отдельных команд, в большинстве случаев, зависит от выбора реализации.

Стандарт (OBD II) регламентирует обязательный минимум параметров, вывод которых должен поддерживаться блоком управления по заводскому (ОЕМ) протоколу, в том числе и по KWP2000:

  • Температура охлаждающей жидкости;
  • Температура всасываемого воздуха;
  • Расход воздуха и/или Абсолютное давление во впускном коллекторе;
  • Относительное положение дроссельной заслонки;
  • Угол опережения зажигания;
  • Значение рассчитанной нагрузки;
  • Частота вращения коленчатого вала;
  • Скорость автомобиля;
  • Напряжение датчика (датчиков) кислорода до катализатора;
  • Напряжение датчика (датчиков) кислорода после катализатора;
  • Показатель (показатели) топливной коррекции;
  • Показатель (показатели) топливной адаптации;
  • Статус (статусы) контура (контуров) лямбда.

Keyword Protocol 2000 (K-Line)

[править | править код]

KWP2000 стандартизован Международной организации по стандартизации, как ISO 14230.

Первый основной физический уровень для KWP2000 идентичен ISO 9141 с двунаправленной последовательной линией связи на одном проводе и называется К-линией. Кроме того, может быть дополнительная L-линия для «пробуждения». Скорость передачи данных от 1,2 до 10,4 Кбит/сек, при этом сообщение может содержать до 255 байт данных.

При реализации на К-линии физического уровня, KWP2000 требует специальных сигналов пробуждения: 5 Baud init или Fast init. Оба эти методы требуют WakeUp синхронизации задержек сигнала K-шины и реализуются специальным программным обеспечением.

Стандарты ISO 14230 и ISO 9141 схожи по аппаратной реализации линий передачи данных (ISO 14230 является развитием ISO 9141[1]). Различаются они требованиями к электрическим параметрам линии, а также протоколами верхних уровней. Сканер, использующий стандарт ISO 9141, обычно может работать и с ISO 14230, но не наоборот.

ISO 14230 (Road vehicles — Diagnostic systems — Keyword Protocol 2000) структурирован следующим образом:

  • ISO 14230-1 Физический уровень (Physical layer). Диагностические сообщения по К-Line.
  • ISO 14230-2 Уровень канала передачи данных (Data link layer). Диагностическая связь по К-Line.
  • ISO 14230-3 Прикладной уровень (Application layer). Системы диагностического контроля.
  • ISO 14230-4 Требования к системам, связанным с выбросами.

На физическом уровне, в соответствии с ISO 14230-1, KWP2000 реализован в виде двунаправленной однопроводной K-Line шины передачи данных. K-Line предназначена исключительно для выполнения диагностических функций в двунаправленных соединениях с двумя участниками. Напряжение сигнала является рабочим напряжением транспортного средства по отношению к его «массе». Максимальная длина K-Line не специфицирована[2].

На уровне обмена данными, в соответствии с ISO 14230-3, KWP2000 работает по асинхронной схеме передачи данных с управлением доступа в режиме «задающий/ведомый», при этом использует однонаправленный протокол передачи, который позволяет передавать данные и команды с проверкой на корректность, но без исправления ошибок.

Структура сообщения, в общем виде, состоит из следующих частей: 1 start bit; 8 data bits; 1 stop bit; опционально контрольная сумма (Checksum). В свою очередь, какие данные передаёт блок управления, зависят от производителя автомобиля.

Скорость передачи K-Line шины по протоколу KWP2000 составляет от 1,2 до 10,4 Кбит/сек[3].

Согласно ISO 14230-4 протокол установления соединения:

— при «Fast init» (100 ms, Bitrate always 10,4 kBit/s):

  • Master sends Wake Up pattern (25 ms low, 25 ms pause);
  • Master sends Start Communication Request, includes dest address;
  • ECU answers with keyword, after max. 50 ms;
  • Keyword encodes supported protocol variants takes values from 2000 .. 2031 (KWP 2000).

— при «5 Baud init»:

  • Master sends destination address (using 5 Bit/s);
  • ECU answers: 0x55 (01010101), keyword low Byte, keyword high Byte (with desired data rate);
  • Master derives bit rate from pattern, sends Echo (inv. High Byte);
  • ECU sends Echo (inv. Destination address).

Стандарт ISO-9141-2 идентифицируется наличием контакта 7 в диагностическом разъеме (K-line) и отсутствием 2 и/или 10 контактов в диагностическом разъеме OBD-II. Используемые выводы — 4, 5, 7, 15 (может не быть), 16.

Keyword Protocol 2000 (CAN)

[править | править код]

KWP2000 также совместим с ISO 11898 (Controller Area Network) и поддерживает высокую скорость передачи данных до 1 Мбит/с.

Использование KWP2000 на CAN с ISO 15765 Transport/Network layers является наиболее распространенным. Кроме того, используя KWP2000 на CAN, не требуется специальной функции пробуждения.

KWP2000 может быть реализован на CAN, используя только service layer и session layer; или с использованием всех слоев (заголовок и контрольная сумма заключены в CAN кадре). Однако при использовании всех слоев KWP2000 является избыточным, в отличие от ISO 15765, который обеспечивается своим Transport/Network layers.

Примечания

[править | править код]
  1. «This part of ISO 14230 describes the physical layer, based on ISO 9141, on which the diagnostic services will be implemented. It is based on the physical layer described in ISO 9141-2, but expanded to allow for vehicles with either 12 or 24 voltage supply.» — ISO/WD 14230-1
  2. http://lib.madi.ru/fel/fel1/fel09E043.pdf Архивная копия от 16 мая 2018 на Wayback Machine Шины передачи данных в электронных системах автомобилей.
  3. http://www.ccs-labs.org/teaching/c2x/2014s/03-proto1.pdf Архивная копия от 12 июля 2017 на Wayback Machine K-Line Bus, CAN Bus.