Can obd2 ms300 инструкция по эксплуатации

Обновлено: 02.07.2024

Если Вы приобрели диагностический адаптер на базе чипа ELM 327
и у Вас возникли сложности с его настройкой, то на данной странице, Вы найдете инструкцию на русском языке для ELM327. На нашем сайте присутствуют инструкции для elm327
различных модификаций (USB, Bluetooth, Wi-Fi
)

Видео инструкция по подключению elm327 Bluetooth

Сравнение версий адаптеров elm327 Bluetooth v1.5 и версии 2.1. В чем их отличия и почему возможно не подключение к автомобилю.

Наши адаптеры elm327 Bluetooth

Итак, приступим, если у Вас имеется
диагностический адаптер ELM327 Bluetooth
то для его работы с программой
Torque
Вам необходимо:

1. Подключить диагностический адаптер ELM 327 Bluetooth
к диагностическому разъему OBD II Вашего авто после чего необходимо включить зажигание.

2. Затем включите модуль Bluetooth на Вашем устройстве (смартфон или планшетный ПК на платформе Android).


4. После этого откройте программу Torque.



Мобильное приложение VAG Virtual Cockpit

Мобильное приложение VAG Virtual Cockpit

Я продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.

По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.

Программный сниффер VCDS

Программный сниффер VCDS: CAN-Sniffer

Программный сниффер VCDS: CAN-Sniffer

Чтобы узнать по какому протоколу общаются электронные блоки я использовал специальную версию VCDS с программным сниффером в комплекте. В этот раз никаких железных снифферов на Arduino или RPi не пришлось изобретать. С помощью CAN-Sniffer можно подсмотреть общение между VCDS и автомобилем, чтобы затем телефон мог прикинуться диагностической утилитой и отправлять те же самые запросы.

Я собрал некоторую статистику по использованию диагностических протоколов на разных моделях автомобилей:

VW/Skoda/Seat (2006-2012) - приборная панель UDS. Двигатель и трансмиссия VW TP 2.0

Audi (2006-2012) - приборная панель VW TP 2.0. Двигатель UDS. Трансмиссия VW TP 2.0

VW/Skoda/Seat/Audi (2012-2021) - везде UDS

Протокол UDS

Unified Diagnostic Services (UDS) - это диагностический протокол, используемый в электронных блоках управления (ЭБУ) автомобильной электроники. Протокол описан в стандарте ISO 14229-1 и является производным от стандарта ISO 14230-3 (KWP2000) и ныне устаревшего стандарта ISO 15765-3 (Diagnostic Communication over Controller Area Network (DoCAN)). Более подробно в википедии.

Диагностические данные от двигателя по протоколу UDS (Skoda Octavia A7)

Диагностические данные от двигателя по протоколу UDS (Skoda Octavia A7)

Разбор UDS пакета в формате Single Frame

Разбор UDS пакета в формате Single Frame

Пример запроса и ответа температуры моторного масла:

Запрос температуры моторного масла:

7E0 - Адрес назначения (ЭБУ двигателя)

Байт 0 (0x03) - Размер данных (3 байта)

Байт 1 (0x22) - SID идентификатор сервиса (запрос текущих параметров)

Байт 2, 3 (0x11 0xBD) - PID идентификатор параметра (температура моторного масла)

Байт 4, 5, 6, 7 (0x55) - Заполнитель до 8 байт

Ответ температуры моторного масла:

7E8 - Адрес источника (Диагностический прибор)

Байт 0 (0x05) - Размер данных (5 байт)

Байт 1 (0x62) - Положительный ответ, такой SID существует. 0x22 + 0x40 = 0x62. (0x7F) - отрицательный ответ

Байт 2, 3 (0x11 0xBD) - PID идентификатор параметра (температура моторного масла)

Байт 4, 5 (0x0B 0x74) - значение температуры моторного масла (20.1 °C формулу пока что не смог подобрать)

Байт 6, 7 (0x55) - Заполнитель до 8 байт

Первая версия мобильного приложения VAG Virtual Cockpit умела подключаться только к приборной панели по UDS.

VAG Virtual Cockpit - экран с данными от приборной панели по протоколу UDS

VAG Virtual Cockpit - экран с данными от приборной панели по протоколу UDS

VW Transport Protocol 2.0

Volkswagen Transport Protocol 2.0 используется в качестве транспортного уровня, а данные передаются в формате KWP2000. Keyword Protocol 2000 - это протокол для бортовой диагностики автомобиля стандартизированный как ISO 14230. Прикладной уровень описан в стандарте ISO 14230-3. Более подробно в википедии.

Диагностические данные от двигателя по протоколу KWP2000 (Skoda Octavia A5)

Диагностические данные от двигателя по протоколу KWP2000 (Skoda Octavia A5)

Разбор протокола VW TP 2.0 на примере подключения к первой группе двигателя:

200 01 C0 00 10 00 03 01

Настраиваем канал с двигателем. Байт 0: 0x01 - двигатель, 0x02 - трансмиссия. Байт 5,4: 0x300 - адрес источника

201 00 D0 00 03 40 07 01

Получили положительный ответ. Байт 5,4: 0x740 - к двигателю обращаемся по этому адресу

740 A0 0F 8A FF 32 FF

Настраиваем ЭБУ на отправку сразу 16 пакетов и выставляем временные параметры

300 A1 0F 8A FF 4A FF

Получили положительный ответ

740 10 00 02 10 89

Отправляем команду KWP2000 startDiagnosticSession. Байт 0: 0x10 = 0b0001 - последняя строка данных + 0x0 счетчик отправляемых пакетов 0 (0x0 - 0xF)

Получили первый ACK

300 10 00 02 50 89

Получили положительный ответ. Байт 0: 0x10 - cчетчик принимаемых пакетов 0

Мы отправили первый ACK, что получили ответ

740 11 00 02 21 01

Делаем запрос. Байт 0: 0x11 - счетчик отправляемых пакетов 1. Байт 3: 0x21 - запрос параметров. Байт 4: 0x01 - из группы 1

Получили второй ACK

300 22 00 1A 61 01 01 C8 13

Байт 0: 0x22 - 0b0010 (не последняя строка данных) + 0x02 (cчетчик принимаемых пакетов 2). Байт 1,2: 0x00 0x1A длина 26 байт. Байт 3,4: 0x61 0x01 - положительный ответ на команду запроса параметров 0x21+0x40=0x61 из 0x1 группы. Байт 5: 0х01 - Запрос RPM (соответсвует протоколу KW1281). Байт 6,7: (0xC8 * 0x13)/5 = 760 RPM (формула соответствует протоколу KW1281)

300 23 05 0A 99 14 32 86 10

Байт 1: 0x05 - запрос ОЖ. Байт 2,3: (0x0A * 0x99)/26 = 57.0 C. Байт 4: 0x14 = запрос лямбда контроль %. Байт 5,6: 0x32*0x86; Байт 7: 0х10 - двоичная настройка

300 24 FF BE 25 00 00 25 00

0x25 0x00 x00 - Заполнитель, до 8 параметров

300 15 00 25 00 00 25 00 00

Байт 0: 0x15 - 0b0001 (последняя строка данных) + 0x5 (счетчик принимаемых пакетов 5)

Отправляем ACK. Прибывляем к нашему предыдущему ACK количество полученных пакетов 0xB1 + 0x4 = 0xB5

Запрос KeepAlive, что мы еще на связи

740 A1 0F 8A FF 4A FF

Мы разрываем связь

ЭБУ в ответ тоже разрывает связь

Во второй версии мобильного приложения VAG Virtual Cockpit появилась возможность диагностировать двигатель и трансмиссию по протоколу VW TP 2.0.

VAG Virtual Cockpit - экран с данными от двигателя по протоколу VW TP 2.0

VAG Virtual Cockpit - экран с данными от двигателя по протоколу VW TP 2.0

Диагностический адаптер ELM327

Для меня некоторое время было вопросом, как получить данные из CAN шины и передать на телефон. Можно было бы разработать собственный шлюз с Wi-Fi или Bluetooth, как это делают производители сигнализаций, например Starline. Но изучив документацию на популярный автомобильный сканер ELM327 понял, что его можно настроить с помощью AT команд на доступ к CAN шине.

Копия диагностического сканера ELM327

Копия диагностического сканера ELM327 Не все ELM327 одинаково полезны

Оригинальный ELM327 от компании elmelectronics стоит порядка 50$, в России я таких не встречал в продаже. У нас продаются только китайские копии/подделки, разного качества и цены 10-30$. Бывают полноценные копии, которые поддерживают все протоколы, а бывают и те которые умеют отвечать только на несколько команд, остальные игнорируют, такие адаптеры не имеют доступ к CAN шине. Я например пользуюсь копией Viecar BLE 4.0, который поддерживает 100% всех функций оригинала.

Последовательность ELM327 AT команд для работы с UDS по CAN шине:

Для работы с протоколом KWP2000 через ELM327 нужно только указать адреса назначения и источника.

Последовательность ELM327 AT команд для работы с VW TP 2.0 по CAN шине:

Мобильное приложение VAG Virtual Cockpit

Для разработки мобильного приложения подключаемого к автомобилю требовалось:

Сниффером собрать трафик от диагностической утилиты VCDS

Изучить работу протоколов UDS, VW TP 2.0, KWP2000

Настроить диагностический сканер ELM327 на работу с UDS и VW TP 2.0

Изучить новый для меня язык программирования Swift

В итоге получилось приложение, которое сочетает в себе функции отображения точных данных панели приборов и диагностика основных параметров двигателя и трансмиссии.

Пару слов про точность данных. Штатная панель приборов не точно показывает скорость - завышает показания на 5-10 км/ч, стрелка охлаждающей жидкости всегда на 90 °C, хотя реальная температура может быть 80 - 110 °C, стрелка уровня топлива до середины идет медленно, хотя топлива уже меньше половины и при нуле на самом деле топливо еще есть в баке. Производитель это делает для удобства и безопасности водителя.

На данный момент приложение показывает следующие параметры:

Приборная панель

Двигатель

Трансмиссия (температура)

1) Какая дверь открыта
2) Скорость
3) Обороты
4) Температура масла
5) Температура ОЖ
6) Топливо в баке в л.
7) Запас хода в км.
8) Средний расход
9) Время в машине
10) Пробег
11) Температура за бортом

1) Обороты
2) Массовый расход воздуха
3) Температура забора воздуха
4) Температура выхлопа (рассчитанная)
5) Критический уровень масла
6) Уровень масла
7) Наддув турбины (реальный)
8) Наддув турбины (ожидаемый)
9) Пропуски зажигания в цилиндрах
10) Углы откатов зажигания в цилиндрах

1) ATF AISIN (G93)
2) DSG6 (G93)
3) Блок управления DSG6 (G510)
4) Масло диска сцепления DSG6 (G509)
5) Мехатроник DSG7 (G510)
6) Процессор DSG7
7) Диск сцепления DSG7

Я стремлюсь чтобы приложение поддерживало как можно больше моделей автомобилей. Пока что поддерживаются производители: Volkswagen, Skoda, Seat, Audi. На разных комплектациях могут отображаться не все параметры, но это поправимо.

Сейчас я провожу тестирование версии 3.0. Приложение доступно только на iOS, после релиза 3.0 перейду к разработке версии для Android.

ELM327 адаптеры

Вся информация про ELM327 - от совместимости до использования

ELM327 адаптеры

Время прочтения

Сложность материала:

Для любителей - 3 из 5

ELM327 — микросхема, преобразующая ряд протоколов, используемых в диагностических шинах автомобилей, в протокол RS-232, разработанная компанией Elm Electronics.

Изначальная оригинальная реализация ELM327 выполнена на микроконтроллере PIC18F2480 фирмы Microchip Technology. Бывают проводные и беспроводные модели.

❗❗❗ Адаптер ELM327 совместим исключительно с автомобилями, которые оборудованы специальным диагностическим разъемом OBD2 16 пин. Такие авто впервые стали выпускаться в США в 1996 году, в остальных странах оснащение диагностическим разъемом произошло намного позднее. Автомобильные концерны на территории Японии комплексно оборудовали все типы производимых машин начиная с 2000 г. В европейских государствах машины, работающие на бензине были оборудованы в 2001 г., дизельные с 2004 г. Китайские авто оснастили в 2008, 2009 годах соответственно.

Отечественные автозаводы начали укомплектовывать 16 контактными разъемами модели выпускаемые с 2010 года. До 2010 на Российских моделях устанавливали 12 pin GM (VAG) разъем, для подключения к таким интерфейсам потребуются переходники.

Диагностика бортового оборудования OBD-II

  • ISO 9141-2
  • ISO 14230-4
  • SAE PWM J1850 (Pulse-Width Modulation)
  • SAE VPW J1850 (Variable Pulse Width)
  • ISO 15765-4 Controlled Area Network (CAN)

Назначение выводов разьема приведено в таблице. Использование контактов 1, 3, 8, 9, 11-13 стандартом SAE не определо и производили могут использовать их по своему усмотрению.

КонтактНазначение
1Не определен
2Положительня линия SAE J1850
3Не определен
4Корпус
5Общий
6CAN(H)ISO 15765
7K линия ISO 9141/14230
8Не определен
9Не определен
10Отрицательная линия SAE J1850
11Не определен
12Не определен
13Не определен
14CAN(L) ISO 15765
15L линия ISO9141/142300
16+12 вольт батареи

Что может дать OBD-II? Достаточно много, он позволяет определять и стирать коды неисправности, контролировать параметры работы двигателя в реальном времени, считывать информацию о серийном номере автомобиля и пр. Однако для чип-тюнинга производители используют собственные нестандартные проколы достула к ЭБУ, совместимые по электрических параметрам с ISO 9141/14230, например KW1281 (Audi, Volkswagen, Seat, Skoda), KW71 (BMW), KW82 (Opel). В новых автомобилях используется CAN протокол как для OBD-II так и для чип-тюнинга.

PinSignalDescription
2J1850 Bus+
4CGNDChassis ground
5SGNDSignal ground
6CAN HighJ-2284
7K-LINE(ISO 9141-2 and ISO/DIS 14230-4)
10J1850 Bus-
13TCTiming check - ignition advance angle adjustment or ABS slow codes out
14CAN LowJ-2284
15ISO 9141-2 L-LINE(ISO 9141-2 and ISO/DIS 14230-4)
16+12VBattery power

Использование протколов:
1999-2003: ISO 9141
2004-2006: ISO 9141 or CAN
с 2007: TBD


Поддерживает ли мой автомобиль OBD-II?

Как определить какой протокол поддерживает электронным блоком управления автомобиля? Первое – можно поискать информацию в Инернете, хотя там много неточной и непроверенной информации. К тому же, многие автомобили выпускаются для разных рынков с различными протоколами диагностики. Второе – найти разьем и посмотреть какие контакты в нем присуствуют. Разьем обычно находистя под приборной панелью со стороны водителя. Протокол ISO 914-2 или ISO 14230-4 определяется наличием контакта 7 и отсуствием контактов 2 и 10, как показано в таблице. Замечу, что контакта 15 скорее всего не будет, так как L линия сегодня почти не используется.

ПротоколPin 2Pin 6Pin 7Pin 10Pin 14
ISO 9141/14230 +
J1850 PWM+ +
J1850 VPW+
ISO 15765 CAN + +

EOBD стал стандартом в Европе начиная с 2001 года, а для дизельных двигателей начиная с 2004. Если ваш автомобиль выпущен до 2001 года то он может вообще не поддерживать OBD даже при наличии соответсвуещего разьема! Евросоюз даже оштрафовал Peugeot за не соответвие EOBD стандарту и после 2001 года. Например, Renault Kangoo 99 года не поддерживает EOBD, а Renault Twingo поддерживает! Те же самые автомобили сделанные для других рынков, например Турции, могут тоже не быть совместимыми с OBD протоколом. Вот далеко не полный список ЭБУ до 2001 года которые могут не поддерживать OBD:

  • Alfa Romeo
  • Citroen
  • Fiat
  • Peugeot
  • Renault

OBD II Руководство пользователя

Начнем с режима $01 – Real-time powertrain data.

$02 (Freeze Frame)

$03 (Read Stored DTC)

$04 (Clear/information)

$05 (O 2 monitoring test results)

$06 (Monitoring test results for noncontinuously monitored systems)

$07 (Monitoring test results for continuously monitored systems)

$08 (Bidirectional controls)

Управление исполнительными компонентами. При активации данного режима сканер получает возможность прямого управления некоторыми исполнительными компонентами. Аналогичные функции поддерживаются практически всеми заводскими протоколами. Разница состоит в том, что в протоколе OBD II эта функция ориентирована прежде всего на исполнительные компоненты систем уменьшения токсичности, такие, как клапаны систем рециркуляции ОГ, продувки адсорбера и т.п. Сделано это для того, чтобы можно было оперативно проверить функционирование той или иной системы, не затрачивая время на тестовые поездки и мониторинг. Но такие проверки во многих случаях требуют наличия дополнительного оборудования и специальной информации. Поэтому пока режим $08 широкого распространения не получил. Возможно, ситуация изменится в лучшую сторону в ближайшие два-три года.

$09 (Vehicle information)

Описание интерфейса универсального сканера ELM327.
Схема подключения сканера ELM327.
PID'ы Toyota/Lexus.

Читайте также: