Sign in to follow this  
Slava.Vrn

FAQ по самостоятельной диагностике

  • Ответить в эту тему
  • Ответить в эту тему

4 posts in this topic

Recommended Posts

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

В связи с техническими ограничениями форума, просьба не писать в эту тему сообщения. Если есть что добавить/исправить - пишите личные сообщения автору темы.

Share this post


Link to post
Share on other sites

В этом сообщении сам FAQ

Огромные благодарности: Shr-lnm, Мышун, Diag-centr, и всем остальным, принимающим активное участие в теме диагностики

  • Основные понятия и определения
    Скрытый текст

    Электронные блоки управления (ЭБУ) в автомобиле - это устройства с аппаратно-программным управлением, по сути, они являются микроконтроллерами.
    Когда мы говорим "сделать диагностику", "прошить ЭБУ", "чипануть движок", мы подразумеваем взаимодействие с ЭБУ по специальным каналам связи, заложенным производителем автомобиля. Эти специальные каналы связи обычно называются "диагностический интерфейс". Чаще всего сделать более того, что заложил производитель в возможности диагностического интерфейса не представляется возможным. Как и в любой микропроцессорной технике, работа с диагностическим интерфейсом состоит из аппаратной и программной частей.
    В 80-е и 90-е годы диагностические интерфейсы были простые. Для диагностики достаточно было воткнуть в диагностический разъем светодиод или лампочку и при включении зажигания смотреть, сколько раз лампочка моргает, чтобы понять, какие ошибки покажет ЭБУ.
    Сейчас скорость работы ЭБУ многократно выросла, поэтому сам человек уже не может "считать" данные с ЭБУ как в случае с лампочкой. Теперь приходится использовать другие аппаратно-программные устройства для считывания данных с диагностического интерфейса. Таким образом, сейчас для подключения к диагностическому интерфейсу нам нужно:

    • Шнур для диагностического разъема. До появления стандарта OBD-II, каждый производитель делал свои разъемы. Сейчас все проще и разъем один стандартизованный.
    • Адаптер. Это микроконтроллер, который преобразует данные из "автомобильного стандарта" в более универсальный стандарт (например, пригодный для передачи через USB-порт). Именно поэтому часто адаптеры являются специализированными для каждого производителя, поскольку у каждого производителя свой специфичный "язык автомобиля", хотя стандарт OBD-II обязывает производителей использовать несколько одинаковых "фраз", единых для всех автомобилей.
    • Оконечное устройство. Это то, с чем уже может работать человек. Это компьютер, телефон, планшет, специальный монитор и т.п. Он получает данные от адаптера и показывает их в понятном человеку виде. Так же через него принимаются "человеческие" команды, преобразуются адаптером, и отправляются в автомобиль уже на "автомобильном языке".

    Немного про OBD-II. Это всеохватывающий стандарт, регламентирующий аппаратную часть (вид диагностического разъема, назначение выводов на нем) и программную часть, как низкоуровневую (физические протоколы обмена - K,L-line, CAN-шина, которые обеспечивают передачу данных в/из ЭБУ, примерно как радиоволна, они только несут данные, им все равно, какие данные передавать), так и высокоуровневую (непосредственно полезные данные, в частности, какую команду надо послать в ЭБУ, чтобы получить нужные данные от него, т.е. какой код запроса послать в физический канал передачи данных (K-line или CAN-шина), и в каком виде ЭБУ обязан вернуть запрашиваемые данные). Все, что не входит в стандарт OBD-II, каждый производитель может городить по своему усмотрению. Стандарт нужен для универсальной диагностики автомобилей на ТО. Чтобы одним адаптером и универсальным ПО можно было протестировать ВСЕ автомобили. На ТО обязательно тестируют состояние экологических параметров двигателя, поэтому стандарт OBD-II регламентирует только то, что касается экологических показателей двигателя. Например, стандартными запросами можно определить пропуски зажигания, состояние катализатора, неисправности лямбда-зондов. Но не более того.

     

  • Диагностические стандарты (протоколы)
    Скрытый текст
    • Физические линии K-line + L-line: аппаратно-программный протокол KWP2000 (стандарты ISO 14230, ISO 9141). Подробнее в википедии
    • Физические линии CAN: аппаратно-программный протокол, стандарт ISO 15765, является промышленным стандартом. Подробнее в википедии

     

  • Адаптеры
    Скрытый текст
    • Платформа Logan
    • Платформа Clio
    • Платформа Megane
    Скрытый текст

    Лично я сталкивался с ними не часто. Но насколько я видел, поскольку Меган появился в 2003-м, несколько позже Лагуны 2 фаза 1, в нем уже сделано все так же, как в Лагуне 2 фаза 2 (2005г). Т.е. уже блок управления двигателем (на бензинках точно) Sagem S3000, работает только по CAN.

    • Платформа Laguna и VelSatis
    Скрытый текст

    Laguna1: Свой разъем, нужен переходник. Есть K+L-line, подключаются по своему стандарту, не как на ВАЗах (кажется, на L-line подается инвертированный сигнал K-line, не помню точно). Диагностируется с помощью ПО D3E.

    Laguna2/VelSatis: На диагностический разъем выведены K-line и CAN-шина. CAN-шина в соответствии со стандартом OBD-II, на контактах 6 (CAN-High) и 14 (CAN-Low), скорость 250 кБод. K-line так же по стандарту - на контакте 7. L-line отсутствует.
    Для диагностики по K-line подойдет любой KL-адаптер (простой преобразователь уровней с интерфейсом USB, например, на основе MAX232). Все основные блоки работают через K-line (впрыск, АКПП, ЦЭКБС, АБС, подушки, климат, расширенная (с цветным экраном) приборная панель). Остальные блоки работают только через CAN (ксенон точно, а парктроник, штатное газовое - не знаю, не видел никогда). Проще всего диагностировать с помощью ПО DDT2000 (необходимо знание технического французского или умение обращаться с translate.google.com :)).
    Для диагностики по CAN-шине нужен или специальный адаптер Derelek (который никто никогда не видел), или ELM327 или поделка на Arduino.

    Laguna2/VelSatis фаза 2: Дополнительно есть отдельная мультимедийная CAN-шина, 500 кБод, на контактах 12 и 13 (??? не помню точно, надо смотреть схему).
    Все то же самое, что и в фазе 1, но ЭБУ двигателя работает только по CAN (по крайней мере в бензинках ЭБУ Sagem S3000), по K-line выдает только идентификационные данные, что может ввести в заблуждение - данные через K-line получить нельзя! Кроме того, приборная панель также работает только через CAN (или в DDT2000 нет описателя для этой версии панели

    • другие

    Виды адаптеров:

    • Простой KL-адаптер
    Скрытый текст

    Элементарнейший и самый дешевый вид адаптера, чаще всего на основе MAX232, преобразующей сигнал из ЭБУ автомобиля по KL-line в сигнал стандартного COM-порта компьютера, или ее преемников, умеющих работать непосредственно с USB. Универсального ПО для работы с этим адаптером - море. Но специализированный - только DDT2000 (для Рено 2000- ~2007 гв) и D3E (для авто 90-х годов, требует изменений в конструкцию адаптера, поскольку Рено 90-х используют свой особый формат использования L-line)

    • ELM327
    Скрытый текст

    ELM327 - легендарный диагностический адаптер. Физически представляет собой обычный микроконтроллер PIC серии PIC18F2455 с хитрой прошивкой. Вся соль в самой прошивке (программный код, зашитый в этом универсальном микроконтроллере) - она позволяет подключаться к диагностическому интерфейсу автомобиля по всем самым распространенным стандартам и протоколам, в том числе и используемым в Рено KWP2000 и CAN.

    ELM327 для работы и управления со стороны пользователя (компьютером, планшетом, смартфоном) использует подобие специализированных AT-команд (про то, откуда есть пошли AT-команды см википедию)

    Достать оригинальный ELM327 на территории РФ весьма проблематично. Сейчас легко доступны лишь множество китайских клонов различной степени паршивости, начиная от весьма неплохих поделок на базе более простых PIC-контроллерах (ради удешевления производства), сохраняющих максимальную совместимость с оригиналом, заканчивая непонятными устройствами на непонятных китайских микросхемах, которые вообще непонятно как работают (часто - просто показывают ответ "ок" на запрос установления связи с ЭБУ автомобиля, но реально даже не пытаются установить связь с ЭБУ автомобиля)

    Для работы напрямую с ELM327 можно использовать HyperTerminal (как в старые добрые времена для работы с модемом, когда компьютеры были лишь у Избранных, а доступ во Всемирную Паутину - лишь у Полубогов-Получеловеков, обладающих модемами, подключенными в городскую телефонную линию).

    Примеры команд, для работы с ELM327 через терминал:

    Скрытый текст

    Надеюсь, понятно, где команда, а где комментарий к команде :)

    Работа по протоколу CAN:

    Скрытый текст

    ATZ
    ATWS - программный сброс ELM327
    ATE0 -  ECHO OFF
    ATH0 - HEADER OFF
    ATSP6 - выбор протокола ISO 15765-4 CAN (11 bit ID, 500 kbaud)
    ATSH7E0 - устанавливаем связь с двигателем
    10C0 - команда начала диагностики, подается, если с предыдущей команды прошло более 5 сек, ответ должен быть 50С0. Как правило, все ответы начинаются с команды-запроса +40(hex) (например, запрос 10C0 -> ответ 50С0)
    2180

    10C0
    17FF00 - посмотреть ошибки
    10C0
    14FF00 - стереть ошибки

    Ответ на 2180 (чтение идентификаторов, CAN):

    Скрытый текст

    4. На запрос 10С0 должен прийти ответ 50С0. Это запрос начала диагностики, ECU переводится в режим диагностики.
    5. В течении 5 сек нужно отправить следующую команду, например 2180 (команда получения идентификаторов).
    6. Должен быть ответ 6180 и еще 24 байта данных:


    0: 61 80 30 36 34 37
    1: 52 45 34 42 45 30 30
    2: 33 37 52 00 83 97 00
    3: 1F 31 01 01 01 88 AA
    Дальше расшифровка данных: цифра 0: или 1: или 2: - это номера строк, нам не нужны.
    6180 - ответ на запрос 2180
    8 по счету байт (у Вас 45) - код диагностики
    9,10,11 байты в кодировке ASCII (у Вас 34 42 45) соответствуют 4BE (этот код написан на блоке управления на
    этикетке)
    17,18 байты это номер софта (программа в ECU), у Вас 00 83
    19,20 байты - это версия калибровок, у Вас 97 00.

    Пример работы по K-line:

    Скрытый текст

    К-линию инициализировать нужно так:

     

    ATZ
    ATL1
    ATSP5
    ATSTFF
    ATAT0
    ATSH827AF1
    81
    ATAT1
    17FF00

    atz - это сброс ELM в исходное состояние. Можно использовать atws если вы изменяли дефолтный битрейт на COM порту. 
    atl1 - эта команда для удобства работы через терминал. 
    atsp5 - это активирование протокола работы по К-линии (KWP 2000 fast-init). 
    atstff - установка максимального времени ожидания отклика от ECU. Если оставить дефолтные настройки ELM то вместо откликов от ECU вы можете получать сообщение "NO DATA". 
    atat0 - это отключение адаптивного тайминго и нужно для того чтобы заработала предидущая команда. 
    atsh827af1 - это настройка заголовка для протокола KWP2000, 7a здесь означает адрес ECU а f1 это адрес нашей ELM. 
    Все вышеописанные команды нужно подать перед открытием сессии. 
    81 - это открытие сессии работы с ECU. После этого можно снова включить адаптивный тайминг (atat1) чтобы быстрее получать отклик от ECU. Теперь собственно можно давать команды ECU
    17ff00 - это, например, команда чтения ошибок.
    82 - это команда закрытия сессии. Ее можно и не подавать, но для порядка можно и подать.
    atpc - закрытие протокола - тоже для порядка.

     

    Но для простых смертных, не желающих работать напрямую с ELM327 через AT-команды, есть множество неплохих программ, которые сделают за вас всю "грязную" низкоуровневую работу. Например, SCAN-master и прочие подобные. Впрочем, эти все программы универсальны (соответствуют стандарту OBD-II), и не позволят увидеть подавляющее большинство специфичных параметров Рено.
    На данный момент апофеозом ПО для работы именно с Рено через ELM327 является скрипт "Pyren".

    • Самодельный адаптер на Arduino
    • Самодельный хардкорный адаптер на микроконтроллере
    •  

     

  • Диагностический софт
    Скрытый текст
    • Clip
    Скрытый текст

    Официальный диагностический прибор для Рено, а также его близнецов-сестер Ниссан Альмера и Примьера. Особо писать нечего, умеет максимум возможного, стоит тоже максимум возможного :) Имеет китайского клона по более-менее приемлемой цене, который пригоден для простого использования в качестве электронного диагностического прибора. Для перепрошивки ЭБУ нужно быть магом высокого уровня :) Но это возможно.
    Если кому интересно про него - подавайте заявки, будем тоже FAQ делать по нему. Хотя, на мой взгляд, здесь это излишне.

    • DDT2000
    Скрытый текст

    Отдельная обширнейшая тема. Может почти все то же, что и Clip, но на более "низком" уровне и только по протоколу KWP2000 (K-line). Протокол CAN вроде как умеет, но только с полумифическим адаптером Derelek. Огромный минус - язык ПО исключительно французский. Предпринимались попытки переписать интерфейс ПО на русском, но получалось очень громоздко и все равно непонятно для непосвященных.
    Если кому-то интересно узнать более подробно об этом ПО - подавайте заявки.

    • Скрипт Pyren
    Скрытый текст

    Описание

    Установка на смартфон

    Установка на Windows

    Что означают ошибки, выводимые по окончании работы скрипта

    Скрытый текст

    По окончании работы, скрипт всегда должен выдавать такую табличку

    ****************************************

    *       ERRORS STATISTIC

    * error_frame      =  0
    * error_bufferfull =  0
    * error_question   =  0
    * error_nodata     =  0
    * error_timeout    =  0
    * error_rx         =  0
    * error_can        =  0
    *
    *       RESPONSE TIME (Average)

    * response_time    =  0.034

    ****************************************

    В идеальном случае, как здесь, ошибок быть не должно. Ошибки error_nodata могут быть, если вы в этот запуск скрипта сканировали блоки, и тогда на них можно не обращать внимание.

    Теперь кратко по каждому типу ошибок: 

    error_frame - не нулевое значение обычно указывает на то, что у вашего ELM не работает режим автоматического FlowControl. Такие адаптеры иногда попадаются. При сканировании они не находят блоков на CAN шине. Обычно исправляется если использовать режим CFC0. Для этого в файле mod_elm.py нужно найти строчки (в районе 381 строки)

    #ATCFC0 = True
    ATCFC0 = False

    и заменить их на

    ATCFC0 = True
    #ATCFC0 = False

    (нужно бы в следующих версиях скрипта сделать такой параметр запуска)

    error_bufferfull - наличие таких ошибок означает что адаптеру не хватает скорости на COM порте, чтобы передать скрипту все данные которые он получает от автомобиля. Для BT адаптеров с этим без паяльника ничего не поделать. Для USB адаптеров можно увеличить скорость указав ключик -r при запуске скрипта

    error_question - если таких много, особенно после сканирования, то у вас, скорее всего, китайский клон "v2.1" на ARM процессоре. Скрипт с таким адаптером полноценно работать не сможет.

    error_nodata - наличие таких ошибок означает, что ELM не получает от ЭБУ запрошенные данные. Проверьте что машина не "заснула" и что у вас правильно включено зажигание в диагностическом режиме.

    error_timeout - обычно такие ошибки возникают когда во время диагностики теряется связь с ELM 

    error_rx и error_can - соответствуют ошибкам "RX ERROR" и "CAN ERROR", которые выдает ELM. Это достаточно специфические ошибки и их описание методы борьбы с ними лучше посмотреть в DataSheet на ELM

    response_time это время отклика вашего адаптера в секундах. Здесь на примере среднее время отклика за диагностическую сессию составляло 34 миллисекунды. Для USB адаптера при работе на CAN шине это нормальное значение. При работе по К-линии это значение обычно поднимается до 100-300 миллисекунд

     

    • Другое

     

 

Edited by Slava.Vrn

Share this post


Link to post
Share on other sites

Из-за ограничений форума по редактированию сообщений, тут вести ФАК невозможно (если ты не модератор), поэтому я сделал WIKI по диагностике Рено

http://rdiag.kotpusk.ru/ Прошу всех знатоков поучаствовать в наполнении!

Сейчас редактирование доступно всем, но я прошу всех редакторов зарегистрироваться.

Если будут какие-то неудобства или вопросы - задавайте вопросы здесь или в личку!

Share this post


Link to post
Share on other sites
В 17.09.2016 at 18:53, Slava.Vrn сказал:

Из-за ограничений форума по редактированию сообщений, тут вести ФАК невозможно (если ты не модератор), поэтому я сделал WIKI по диагностике Рено

http://rdiag.kotpusk.ru/ Прошу всех знатоков поучаствовать в наполнении!

Сейчас редактирование доступно всем, но я прошу всех редакторов зарегистрироваться.

Если будут какие-то неудобства или вопросы - задавайте вопросы здесь или в личку!

Может у вас есть Datasheet на сканер RLT2002  и  его схема. Буду очень признателен.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this