(Вперед) Говоря о протоколе диагностики UDS ISO-14229 для электромобилей

Стандарт ISO-14229, также называемый UDS (Unified Diagnostic Services), представляет собой единую диагностическую службу для автомобильных электронных блоков управления (ECU, Electronic Control Units).

UDS — это просто служба связи клиент/сервер, то есть тестер (диагностический прибор) отправляет запрос на диагностическую услугу (запрос) в ECU, а ECU отправляет ответ (Response) на тестер, соответствующий запросу на обслуживание. Что еще сложнее, так это то, что стандарт ISO-14229 определяет разные подфункции, методы адресации, параметры и т. д. для каждой диагностической службы, и ее ответное сообщение не является уникальным, что может сбить с толку новичков. Недавно я познакомился с диагностическим протоколом UDS (UDS on CAN) на основе CAN-шины и подытожил эту статью для всеобщего обсуждения.

1. Базовые знания стандарта ISO-14229

(1) Идентификатор службы (SID, идентификатор службы)

Стандарт ISO-14229 определяет различные диагностические службы 25. Чтобы различать конкретные диагностические службы, в качестве уникального идентификационного кода службы используется 1-байтовый идентификатор службы. Когда мы хотим выразить конкретную диагностическую службу, иногда более кратко и эффективно прямо указать ее идентификатор службы, чем полное имя. В таблице 1 приведен сводный список диагностических услуг, определенных стандартом ISO-14229. Конечно, не все диагностические службы должны поддерживаться, и те, которые отмечены символом *, являются широко используемыми диагностическими службами.

Таблица 1. Сводка диагностических сервисов UDS

(2) Подфункция (Подфункция)

Некоторые диагностические службы поддерживают подфункции для разделения на более конкретные типы служб. Например, служба 0x11 используется для сброса ЭБУ, а подфункции 01 и 03 можно интерпретировать как аппаратный сброс и программный сброс соответственно. Услуги, отмеченные символом $ в вышеупомянутой таблице 1, указывают на поддержку подфункций. Стоит отметить, что когда старший бит 1 байта (бит подавления положительного ответа), занимаемый подфункцией, установлен в 1, ее положительный ответ не требует ответа.

(3) Параметры

Дополнительная информация, используемая для описания диагностической службы (например, идентификатор данных), в основном содержится в службах, не поддерживаемых подфункциями, но службы, поддерживаемые подфункциями, не обязательно имеют информацию о параметрах.

(4) Режим адресации (Тип адресации)

Адрес целевого ЭБУ тестера, отправляющего запрос, указывается в соответствии со следующим методом:

①Физическая адресация (Physical Address): т. е. связь один-к-одному, которая используется для диагностики ЭБУ, известных тестировщику;

② Функциональная адресация (функциональный адрес): то есть связь «один ко многим», которая используется тестером для запроса диагностических услуг от всех ЭБУ.

(5) Код отрицательного ответа

Когда выполнение запрошенной службы завершается сбоем, код причины сбоя возвращается из ECU в тестер, называемый NRC. В таблице 2 перечислены распространенные коды отрицательных ответов.

Таблица 2 Распространенные коды отрицательного ответа

2. Анализ диагностических данных

(1) Основной формат сообщения

Основное различие в формате диагностического сообщения заключается в том, есть ли у службы подфункции, как показано в таблице 3. Очевидное правило заключается в том, что поле SID сообщения положительного ответа увеличивается на 0x40 на основе SID сообщения запроса, а кадр отрицательного ответа содержит 0x7F и код отрицательного ответа NRC.

Таблица 3 Основной формат сообщения

(2) Многокадровая передача сообщений

Когда сообщение превышает 8 байт, сообщение необходимо разделить на несколько кадров, и первый кадр, кадр управления потоком и непрерывный кадр используются для последовательной передачи.Для получения этой информации см. содержание протокола транспортного уровня, определенного стандартом ISO-15765.

(3) Краткое изложение механизма реагирования

ЭБУ в основном отвечает на каждое поле сообщения запроса на диагностическое обслуживание <SID> + <Sub-Function> + <Parameter>:

① В режиме физической адресации общий процесс обработки ЭБУ сообщений-запросов показан на рис. 4 (включая процессы положительного и отрицательного ответа). Только когда все процессы выполняются гладко, ЭБУ вернет положительный ответ, в противном случае ЭБУ вернет ошибку с отрицательным кодом ответа.

②В режиме адресации функций в большинстве случаев ЭБУ отвечает только положительно и не отвечает отрицательно.

Для получения более подробной информации о механизме ответа см. краткую информацию о прилагаемой таблице в конце этой статьи.Из-за нехватки места мы не будем объяснять их здесь по отдельности.

Supongo que te gusta

Origin blog.csdn.net/gonggong11qqqww/article/details/124966471
Recomendado
Clasificación