Единые диагностические услуги - Unified Diagnostic Services
Единые диагностические услуги (UDS) - это диагностический протокол связи используется в электронные блоки управления (ЭБУ) в автомобильной электронике, которая указана в ISO 14229-1.[1] Он основан на ISO 14230-3 (KWP2000 ) и теперь устаревшие ISO 15765 -3 (Диагностическая связь завершена Сеть контроллеров (DoCAN)[2]). «Унифицированный» в этом контексте означает, что это международный стандарт, а не стандарт для конкретной компании. К настоящему времени этот протокол связи используется во всех новых ЭБУ, производимых поставщиками Tier 1 Производитель оригинального оборудования (OEM) и включен в другие стандарты, такие как АВТОСАР. ЭБУ современных транспортных средств управляют почти всеми функциями, включая электронный впрыск топлива (EFI), контроль двигателя, трансмиссия, антиблокировочная тормозная система, дверные замки, торможение, управление окнами и многое другое.
Средства диагностики могут связываться со всеми ЭБУ, установленными в автомобиле, на котором включены службы UDS. В отличие от CAN-шина протокол, который использует только первый и второй уровни Модель OSI, UDS использует пятый и седьмой уровни модели OSI. Идентификатор службы (SID) и параметры, связанные с услугами, содержатся в 8 байтах данных кадра сообщения.
Современные автомобили имеют диагностический интерфейс для внешней диагностики, который позволяет подключить компьютер (клиент) или диагностический прибор, называемый тестером, к системе связи автомобиля. Таким образом, запросы UDS могут быть отправлены контроллерам, которые должны предоставить ответ (он может быть положительным или отрицательным). Это дает возможность допросить память неисправностей отдельных блоков управления, чтобы обновить их новой прошивкой, иметь низкоуровневое взаимодействие с их оборудованием (например, для включения или выключения определенного выхода) или для использования специальных функций (называемых подпрограммами) попытаться понять окружающую среду и условия работы ЭБУ, чтобы иметь возможность диагностировать неправильное или иное нежелательное поведение.
Услуги
SID (идентификатор службы)
Группа функций | Запросить SID | SID ответа | Служба | Описание |
---|---|---|---|---|
Диагностика и управление коммуникациями | 0x10 | 0x50 | Диагностический контроль сеанса | UDS использует разные рабочие сеансы, которые можно изменить с помощью «Диагностического управления сеансом». В зависимости от того, какой сеанс активен, доступны разные службы. При запуске блок управления по умолчанию находится в «Сессии по умолчанию». Другие сеансы определены, но их реализация не требуется в зависимости от типа устройства:
Кроме того, существуют зарезервированные идентификаторы сеанса, которые можно определить для конкретных целей производителей и поставщиков транспортных средств. |
0x11 | 0x51 | Сброс ЭБУ | Услуга «Сброс ЭБУ» используется для перезапуска блока управления (ЭБУ). В зависимости от аппаратного обеспечения и реализации блока управления могут использоваться различные формы сброса:
Опять же, есть зарезервированные значения, которые могут быть определены для конкретного использования производителями автомобилей и поставщиками транспортных средств. | |
0x27 | 0x67 | Безопасный доступ | Проверка безопасности доступна для включения наиболее важных служб. Для этого блок управления генерирует "Seed" и отправляет его клиенту. Из этого «семени» клиент должен вычислить «ключ» и отправить его обратно в блок управления, чтобы разблокировать критически важные для безопасности службы. | |
0x28 | 0x68 | Коммуникационный контроль | С помощью этой услуги в блоке управления можно отключить как отправку, так и получение сообщений. | |
0x29 | 0x69 | Аутентификация | В обновлении (2020) стандарта эта служба была добавлена для обеспечения стандартизированного подхода к более современным методам аутентификации, чем разрешено службой Security Access (0x27), включая двунаправленную аутентификация с PKI Обмен сертификатами. | |
0x3E | 0x7E | Тестер присутствует | Если в течение длительного времени не происходит обмен данными с клиентом, блок управления автоматически завершает текущий сеанс и возвращается к «сеансу по умолчанию» и может перейти в спящий режим. Следовательно, существует дополнительная услуга, цель которой - сигнализировать устройству о том, что клиент все еще присутствует. | |
0x83 | 0xC3 | Параметры времени доступа | При общении между контроллерами и клиентом необходимо соблюдать определенное время. Если они превышены без отправки сообщения, следует предполагать, что соединение было прервано. Это время можно вызвать и изменить. | |
0x84 | 0xC4 | Защищенная передача данных | ||
0x85 | 0xC5 | Настройки контрольных кодов неисправности | Включите или отключите обнаружение любых или всех ошибок. Это важно при проведении диагностических работ в автомобиле, которые могут вызвать аномальное поведение отдельных устройств. | |
0x86 | 0xC6 | Ответ на событие | ||
0x87 | 0xC7 | Link Control | Service Link Control используется для установки скорости передачи диагностического доступа. Обычно это реализуется только на центральном шлюзе. | |
Передача данных | 0x22 | 0x62 | Прочитать данные по идентификатору | С помощью этой службы можно получить одно или несколько значений блока управления. Это может быть информация всех видов и разной длины, например, номер детали или версия программного обеспечения. Можно запросить динамические значения, такие как текущее состояние датчика. Каждое значение связано с идентификатором данных (DID) от 0 до 65535. Обычные сигналы CAN предназначены для информации, которую некоторые ЭБУ использует в своих функциях. Данные DID отправляются только по запросу и предназначены для информации, которую не использует ECU, но может извлечь выгоду сервисный инструмент или тестер программного обеспечения. |
0x23 | 0x63 | Чтение памяти по адресу | Считайте данные из физической памяти по указанному адресу. Эта функция может использоваться инструментом тестирования для чтения внутреннего поведения программного обеспечения. | |
0x24 | 0x64 | Чтение данных масштабирования по идентификатору | ||
0x2A | 0x6A | Чтение данных по периодическому идентификатору | С помощью этой службы значения периодически отправляются блоком управления. Значения, которые должны быть отправлены, должны быть определены только с использованием «динамического определения идентификатора данных». | |
0x2C | 0x6C | Динамически определять идентификатор данных | Эта служба предлагает возможность исправления для пула идентификаторов данных (DID), указанного устройством, для настройки другого идентификатора данных. Обычно это комбинация частей разных DID или просто конкатенация полных DID. Запрошенные данные могут быть настроены или сгруппированы следующим образом:
| |
0x2E | 0x6E | Запись данных по идентификатору | С тем же идентификатором данных (DID) значения также могут быть изменены. Помимо идентификатора отправляется новое значение. | |
0x3D | 0x7D | Запись в память по адресу | Услуга «Запись в память по адресу» позволяет внешнему диагностическому инструменту записывать информацию в ЭБУ в одной или нескольких непрерывных ячейках памяти. | |
Передача сохраненных данных | 0x14 | 0x54 | Очистить диагностическую информацию | Удалить все сохраненные коды неисправности |
0x19 | 0x59 | Прочтите информацию о кодах неисправности | DTC означает "Диагностические коды неисправностей ". Каждый DTC, обработанный неисправностью блока управления, сохраняется со своим собственным кодом в памяти ошибок и может быть прочитан в любое время. Помимо ошибки, будет сохранена дополнительная информация, которая также может быть прочитана. | |
Управление вводом / выводом | 0x2F | 0x6F | Контроль ввода вывода по идентификатору | Эта услуга позволяет внешней системе вмешиваться в внутренние / внешние сигналы через диагностический интерфейс. При указании так называемых байтов опции могут быть указаны дополнительные условия для запроса, указаны следующие значения: ReturnControlToECU: Устройство должно вернуть управление упомянутыми сигналами. Восстановление значений по умолчанию: Тестер предлагает сбросить сигналы до общесистемного значения по умолчанию. Заморозить текущее состояние: Устройство зафиксирует текущее значение сигнала. ShortTermAdjustment: Устройство должно использовать указанное значение для сигнала. |
Удаленная активация процедуры | 0x31 | 0x71 | Регулярный контроль | Могут быть выполнены все виды рутинных услуг службы управления. Есть три разных типа сообщений:
Можно указать параметры сообщения запуска и остановки. Это дает возможность реализовать все возможные услуги для конкретного проекта. |
Выгрузка загрузка | 0x34 | 0x74 | Запросить загрузку | Загрузка нового программного обеспечения или других данных в блок управления осуществляется с помощью «Запроса загрузки». Здесь указывается расположение и размер данных. В свою очередь, контроллер определяет размер пакетов данных. |
0x35 | 0x75 | Запросить загрузку | Услуга «Запрос на загрузку» практически идентична услуге «Запрос на загрузку». С помощью этой услуги программное обеспечение с блока управления переносится на тестер. Необходимо указать место и размер. Опять же, размер блоков данных определяет тестер. | |
0x36 | 0x76 | Передача данных | Для фактической передачи данных используется услуга «Передача данных». Этот сервис используется как для выгрузки, так и для скачивания данных. Направление перевода заранее сообщается сервисом «Запрос на загрузку» или «Запрос на загрузку». Эта служба должна пытаться отправлять пакеты максимальной длины, как указано в предыдущих службах. Если набор данных превышает максимальное значение, услугу «Передача данных» необходимо использовать несколько раз подряд, пока не будут получены все данные. | |
0x37 | 0x77 | Запросить перевод выхода | Передача данных может быть «завершена» при использовании услуги «Transfer Exit». Эта служба используется для сравнения между блоком управления и тестером. Когда он работает, блок управления может отрицательно ответить на этот запрос, чтобы остановить запрос на передачу данных. Это будет использоваться, когда объем данных (установленный в «Запросе загрузки» или «Запросе загрузки») не был передан. | |
0x38 | 0x78 | Запросить передачу файла | Эта служба используется для инициирования загрузки файла с клиента на сервер или загрузки с сервера на клиент. Дополнительно информация о файловой системе доступна через этот сервис. | |
0x7F | Отрицательный ответ | Этот ответ выдается, когда сервисный запрос не может быть выполнен, например, если имеется неподдерживаемый идентификатор данных. Будет включен код отрицательного ответа. |
Смотрите также
- Бортовая диагностика, общая статья о диагностических услугах в автомобилях
- OBD-II PID, о стандарте США
Рекомендации
внешняя ссылка
- Унифицированные диагностические услуги - ISO 14229 (плакат сайта softing.com)