Obd ini что прописать

Опубликовано: 03.05.2024

УСТАНОВКА, НАСТРОЙКА E-SYS И EDIABAS 7.3.0 29.07.2017 13:05

УСТАНОВКА, НАСТРОЙКА E-SYS И EDIABAS 7.3.0

01) Запустите фаил "E-sys\E-Sys_Setup_3_25_3_RC_b40861.exe", чтобы установить программу. Используйте путь по умолчанию "C:\EC-Apps\ESG" (например "C:\EC-Apps\ESG\E-Sys\")

02) Во время установки E-Sys, когда программа предложит указать путь к базе данных измените путь по умолчанию "C:\Data\" на "C:\ESysData\".

03) Скопируйте папку "EDIABAS" в раздел диска "C:\" (например "C:\EDIABAS")

04) Запустите из папки фаил "C:\EDIABAS\Hardware\Ediabas-Konfigurator\Ediabas-Konfigurator.exe" и поставьте тип интерфейса "Interface:" на "INTERFACE=ENET". Либо вручную по старинке пропишите в файлах obd.ini, ediabas.ini.

05) Создайте папку "E-Sys EST" в директории "C:\ESysData\" (например "C:\ESysData\E-Sys EST")

06) Скопируйте фаил .EST Token (например "esys_v1.4.EST") в папку "E-Sys EST" (например "C:\ESysData\E-Sys EST\esys_v1.4.EST")

07) После установки удалите папку "psdzdata" в разделе "C:\ESysData\" (например "C:\ESysData\psdzdata"). Если она появилась после установки.

08) Скопируйте новую скачаную папку "psdzdata" в раздел "C:\ESysData\" (например "C:\ESysData\psdzdata"). Старайтесь использовать последние версии файлов PSdZData.

09) Убедитесь, что папка "Dist" присутствует в каждом разделе/папке с номером кузова (F01/F10/F20/F25/K001/RR01 и тд).
(например"C:\ESysData\psdzdata\mainseries\F010\F010_12_03_511\odx\dist")

(Эта папка должна уже присутствовать после подмены/замены папки PSdZData - если в каждом разделе с номером кузова её нет, то создайте пустую папку "Dist" по принципу, который указан выше)

10) Заглушите мотор автомобиля (оставьте зажигание включенным) и подсоедините провод с интерфейсом OBDII-Enet.

(Подождите некоторое время, пока не появится желтый значок с восклицательным знаком у иконки сетевого адаптера)

(The car does not have a DHCP server, so it does not assign an IP Address to the computer. Both the computer and the car will go into DHCP fallback mode, each assigning themselves a random Class-B IP Address so that they can talk to each other. This can take up to 60 seconds, so you have to wait until the PC has an IP address before you try to connect).

(Если вы используете E-Sys через виртуальную машину (VM), то убедитесь, что вы установили параметр вирт. машины NIC в режим моста "bridging mode", а не в режим NAT)

11) Запустите фаил "C:\EDIABAS\Hardware\ENET\ZGW_SEARCH.exe", чтобы убедиться что соединение и кабель работают исправно.

(Select Refresh Button until connection data appears (IP, ADR, MAC, & VIN) verifying actual communication to the car)

12) Для начала работы запустите фаил "C:\EC-Apps\ESG\E-Sys\E-Sys.exe" (Это займёт некоторое время, чтобы E-sys создал и записал Log фаил).
Under Options, Settings:
On the PROGRAM TAB, set the Directories - Data Path to "C:\ESysData"
On the EST Tab, set the Developer-Soft-Token EST Path to match EST Token installed in Step 06 above
(e.g. "C:\ESysData\E-Sys EST\Code Away.EST")
On the ODX Tab, set the ODX Rule Path to "C:\ESysData\Rules"

13) Hit the Connect Button on E-Sys toolbar and select desired Target Vehicle (e.g. TargetSelector:Project=F010-12-03-511m VehicleInfo=F010)

(DO NOT use the Target with the _DIRECT suffix (e.g. TargetSelector:Project=F010-12-03-511m VehicleInfo=F010_DIRECT)

(F001 psdzdata покрывает кузова F01/F02/F04 7-ой серии и кузов F07 5-ой серии Gran Tourismo)
(F010 psdzdata покрывает кузов F10 5-ой серии, кузова F12/F13 6-ой серии и кузов F06 6-ой серии Gran Coupe)
(F020 psdzdata покрывает кузов F20 1-ой серии и кузов F30 3-ей серии (Кузов Z4 F-серии пока отсутствует))
(F025 psdzdata покрывает кузов F25 X3-серии (Кузов X5 F-серии пока отсутствует))

14) Выберите соединение через VIN автомобиля "Connection via VIN" и нажмите соедениться "Connect".

(Должно появиться окошко, подтвержающее успешное соединение)

(Программа запомнит выбранный вами пункт соеднинения "Сonnection via VIN" для последующих подключений к автомобилю)

B) Coding KOMBI (Instrument Cluster) module will cause the car to chime and the dashboard to reset including the clock. Simply reset the vehicle Date and Time via iDrive when done coding module.

C) Some modules take a long time before the changes begin working (e.g. trunk and mirror close). If still not working after an hour or so of being off (asleep), try recoding the module again, even if it looks like the correct parameter (e.g."nicht_aktiv") is set.

D) If Coding for an extended period of time (>30 minutes or so) ensure car is on a charger to avoid killing the battery. You can safely code with the Engine Running to keep it charged with the exception of the DME module.

(e.g. Module CAFD Name cafd_000000f9.caf.007_003_167 = CAFD_000000F9_007_003_067.ncd)

F) If you want to look at an unread CAFD file, go to the "Editors & Viewers => CAF-Viewer", put your PIN in, and then navigate to your CAFD folder (C:\ESysData\psdzdata\swe\cafd) and select the desired CAFD. You DO NOT need to be connected to the car.

(e.g. Module CAFD Name cafd_000000f9.caf.007_003_167)

Замените оригинальные .JAR файлы другуми из раздачи:

скопируйте .EST Token фаил (например "esys_v1.4.est") в папку "E-Sys EST" (например "C:\ESysData\E-Sys EST\esys_v1.4.est")

Меня этот шнурок подтолкнул написать этот Блог просто потому что я и сам делал эти танцы с бубном, да ещё и на морозе, и долго понять не мог в чём дело, хотя в компах не профан. Перечитал кучу форумов, 2 раза закидывал его в угол, потом опять доставал и начинал ковырять, и был готов заказать ещё один, так как многие это и делали! Но давайте немного разберёмся с этим и может быть кому то это поможет!
Начнём с того что саму установку программы INPA я взял из блога на этом портале Виктора Щербатюка вот ссылка на его Блог www.drive2.ru/l/3371935/
Всё очень популярно описывается, даны ссылки на скачивание, и драйверы.Я советую всем ставить как описано у него, т.к. я и сам ставил именно так. Но вся соль начинается дальше, так как сам сносил 2 раза Win7, пытался ставить на Win XP, и тд. Но этот шнурок никак не конектился. А точнее я не мог понять что вообще происходит с ним, жив он или мёртв, так сказать.При подключении к машине, красный диод горел 15 сек. и гас-вроде живой, всё это было непонятно. Грешил на китайцев что прислали недопрошитый как пишут на форумах, в общем отчаявался. Можно много рассказывать про танцы и бубен, перейдём к делу.Прочитав много форумов и получив достаточно инфы могу описать многие проблеммы.
На самом деле всё очень оказалось просто, — в моей ситуации -это оказался Com PORT! Не могу к сожалению сказать насчёт того на чистую надо ли систему ставить INPA а может быть и нет, но я ставил на чистую, потому как в первые 2 раза она не работала и скорее всего из-за порта.
Когда вы всё установите как описывается у Виктора в блоге, и поставите драйвера под шнурок то при втыкании его(шнурка) в USB порт и запуске INPA с ярлыка на рабочем столе, в меню трея в нижнем правом углу должна всплывать иконка драйвера с его свойствами еcли на неё кликнуть, то должно открыться вот такое окно на рабочем столе

А вот его главное окно

Хорошо с этим разобрались и поняли, если у вас все так и есть значит драйвер для шнурка стоит нормально!
Может быть немного я упустил из виду, но программа INPA у вас должна запускаться с ярлыка на столе нормально, только после этого пляшем дальше. При запуске программы два черных кружка Батарея и зажигание не горят! Пока либо не вставлен шнурок в комп, либо неправильно установлен и настроен порт! Когда ИНПА у меня заработала, они загорелись даже если кабель не подключен к авто! А в нерабочем состоянии они мигают в верхнем левом углу.А заработала она когда я настроил порт.
Втыкаем кабель.Итак идём в меню компа в диспетчер устройств-открываем его и видим примерно такую картину.
co

И смотрим на то что у вас добавилось новый com port! Именно com! А не контроллер USB как некоторые начинают его искать именно там и открывают контроллеры и ищют шнурок там

Теперь что касается рабочй он (ШНУРОК) или не рабочий, можно с лёгкостью проверит.Это как раз для тех кто сомневается в его работоспособности, и в дальнейших действиях по INPA. Заходим в свойства порта и жмём на вкладку СВЕДЕНЬЯ, там откроется список в котором выбираем ИД Оборудования и жмём

смотрим значение PID должен быть не 0000! Если он у Вас 0000, то тогда кабель не пашет прошивка упала.Есть отдельные статьи по тому как восстановить его. У меня PID_6001

Настраиваем порт, заходим в свойства драйвера шнурка, т.е. кликаем в диспетчере устройств по нему 2 раза и открывается Свойства USB Serial Com port вот так

Затем идём во вторую вкладку Параметры порта и находим внизу кнопку ДОПОЛНИТЕЛЬНО-заходим туда и видим такую примерно картину

Видим сверху название ком порта и его номер, тот который вы указывали при установке, ну или комп сам присваивает свободный. У меня вся беда была из-за того что я присваивал любой номер порта 2,4,6,8 и тд.
Но чисто случайно прочитал на одном форуме что нужно выставить именно порт 1 и о счастье у меня всё заработало!
Соответственно фото моего рабочего порта время ожидания 1сек. ну как обычно. И ву аля! Заводим INPA если всё правильно сделано и стоят дрова то должны загореться 2 чёрных кружка Батарея и Зажигание.Всё, можно тестировать! Так же на диске С в папке EDIABAS дальше папка BIN в ней находим obd.ini, открываем ее и смотрим что порт стоит Com1, значит всё верно

Так же отдельно хотел поговорить о проверке порта. Проверку порта можно произвести при помощи програмки которая идёт на диске со шнурком назывется D-CAN к сожалению не понял как прогу вставить в текст но на диске она идет и называется d-can.exe. Запускаем её кликнув 2 раза, видим такое окно

В этом окне программа предлагает нам выбрать порт для тестирования, жмём 1-наш порт, и enter видим такое окно

Здесь она предлагает сделать пинг порта 1или выйти 0. Жмём 1 пинг!

Видим наши порты с 1по 9, но именно на первом порте показывает шину D-CAN с которой работает наш кабель. Жмём 1 и видим процесс проверки.и что всё ОК!

НО! Есть такая особенность это надо сделать всё быстро пока горит красная лампочка на шнурке, это ели кабель не подключён к авто. Если не горит то покажет что Error.Так что имейте ввиду.

Вместе с ростом экологического движения в начале 1990-х годов в США был принят ряд стандартов, которые ввели обязательность оснащения электронных блоков управления автомобилями (ЭБУ, ECU) системой за контролем параметров работы двигателя, имеющих прямое или косвенное отношение к составу выхлопа. Стандарты также предусмотрели протоколы считывания информации об отклонениях в экологических параметрах работы двигателя и другой диагностической информации из ЭБУ. OBD-II как раз и является системой накопления и считывания такой информации. Изначальная "экологическая направленность" OBD-II, с одной стороны, ограничила возможности по его использованию в диагностике всего спектра неисправностей, с другой стороны, предопределила его крайне широкое распространение как в США, так и на автомобилях других рынков. В США применение системы OBD-II (и установка соответствующей колодки диагностики) обязательны с 1996 г. (требование распространяется как на автомобили, производимые в США, так и на автомобили неамериканских марок, продаваемые в США). На автомобилях Европы и Азии протоколы OBD-II применяются также с 1996 г. (на небольшом количестве марок/моделей), но особенно - с 2001 г. для автомобилей с бензиновыми двигателями (с принятием соответствующего европейского стандарта - EOBD) и с 2004 г. для автомобилей с дизельными двигателями. Тем не менее, стандарт OBD-II частично или полностью поддерживают и некоторые автомобили, выпущенные ранее 1996 (2001) годов (pre-OBD автомобили).

Режимы диагностики

Протоколы OBD-II предоставляют диагносту ряд стандартизированных функциональных возможностей (режимов диагностики - modes):

Режим 1 - Считывание текущих параметров работы системы управления (Mode 1 PID Status & Live PID Information). Всего стандартом поддерживается около 20 параметров. Однако, каждый конкретный блок управления поддерживает ограниченное количество из них (например, в зависимости от установленных датчиков кислорода). С другой стороны, некоторые автопроизводители поддерживают расширенные наборы параметров - например, некоторые автомобили концерна GM поддерживают более 100 параметров. Через систему OBD-II диагностики можно считать (основные параметры):

  • режим работы системы топливной коррекции (PID 03 Fuel system status). При значении "Closed Loop" система работает в режиме обратной связи (замкнутой петли), при этом данные с датчика кислорода используются для корректировки топливоподачи. При значении "Open Loop" данные с датчика кислорода не используются для корректировки топливоподачи;
  • расчетная нагрузка на двигатель (PID 04 Calculated Load);
  • температура охлаждающей жидкости (PID 05 Coolant temperature);
  • краткосрочная коррекция подачи топлива по банку 1/2 (PID 06/08 Short Term Fuel Trim Bank 1/2);
  • долгосрочная коррекция подачи топлива по банку 1/2 (PID 07/09 Long Term Fuel Trim Bank 1/2);
  • давление топлива (PID 0A Fuel pressure);
  • давление во впускном коллекторе (PID 0B Manifold pressure);
  • обороты двигателя (PID 0C Engine speed - RPM);
  • скорость автомобиля (PID 0D Vehicle speed);
  • угол опережения зажигания (PID 0E Ignition Timing Advance);
  • температура всасываемого воздуха (PID 0F Intake Ait Temperature);
  • расход воздуха (PID 10 Air Flow);
  • положение дроссельной заслонки (PID 11 Throttle position);
  • режим работы системы подачи дополнительного воздуха (PID 12 Secondary Air Status);
  • расположение датчиков кислорода (PID 12 Location of O2 sensors);
  • данные с датчика кислорода №1/2/3/4 по банку 1/2 (PID 13-1B O2 Sensor 1/2/3/4 Bank 1/2 Volts).

Как правило, для анализа работы конкретной подсистемы системы управления двигателем, достаточно одновременно контролировать 2-3 параметра. Однако, иногда требуется одновременно просматривать и большее число. Число одновременно контролируемых параметров, а также формат их вывода (текстовый и/или графический) зависят как от возможностей конкретной программы-сканера, так и от скорости обмена информацией с блоком управления двигателем автомобиля (скорость зависит от поддерживаемого протокола). К сожалению, наиболее распространенный протокол ISO-9141 (см. ниже) является и самым медленным из всех - при работе с ним невозможно просматривать с приемлемой частотой дискретизации более 2-4 параметров.

Режим 2 - Получение сохраненной фотографии текущих параметров работы системы управления на момент возникновение кодов неисправностей (Mode 2 Freeze Frame).

Режим 3 - Считывание и просмотр кодов неисправностей (Mode 3 Read Diagnostic Trouble Codes (DTCs)).

Режим 4 - Очистка диагностической памяти (Mode 4 Reset DTC's and Freeze Frame data) - стирание кодов неисправностей, фотографий текущий параметров, результатов тестов датчиков кислорода, результатов тестовых мониторов.

Режим 5 - Считывание и просмотр результатов теста датчиков кислорода (Mode 5 O2 Sensor Monitoring Test Result).

Режим 6 - Запрос последних результатов диагностики однократных тестовых мониторов (тестов, проводимых один раз в течение поездки) (Mode 6 Test results, non-continuosly monitored) - эти тесты контролируют работу катализатора, системы рециркуляции выхлопных газов (EGR), системы вентиляции топливного бака.

Режим 7 - Запрос результатов диагностики непрерывно действующих тестовых мониторов (тестов, выполняемых постоянно, пока выполняются условия для проведения теста) (Mode 7 Test results, continuosly monitored) - эти тесты контролируют состав топливо-воздушной смеси, пропуски зажигания (misfire), остальные компоненты, влияющие на выхлоп.

Режим 8 - Управление исполнительными механизмами.

Режим 9 - Запрос информации о диагностируемом автомобиле (Mode 9 Request vehicle information) - VIN-кода и калибровочных данных.

Режим ручного ввода команды запроса диагностической информации.

Надо учитывать, что как далеко не на каждом автомобиле блок управления поддерживает все перечисленные функции, так и не каждый диагностический сканер для OBD-II может дать диагносту возможность использовать все перечисленные режимы.

Используемые протоколы и применяемость OBD-II-диагностики на автомобилях разных марок

В рамках OBD-II используются пять протоколов обмена данными - ISO 9141, ISO 14230 (также именуется KWP2000), PWM, VPW и CAN (также каждый из протоколов имеет несколько разновидностей - например, разновидности отличаются по скорости обмена информацией). В Интернете встречаются "таблицы применимости", где указываются перечни марок и моделей автомобилей и поддерживаемые ими OBD-II-протоколы. Однако, надо учитывать, что одна и та же модель с одним и тем же двигателем, одного года выпуска может быть выпущена для разных рынков с поддержкой разных протоколов диагностики (точно также протоколы могут различаться и по моделям двигателей, годам выпуска). Таким образом, отсутствие автомобиля в списках не означает, что он не поддерживает OBD-II, так же как и присутствие не означает, что поддерживает и, тем более, полностью поддерживает (возможны неточности в списке, различные модификации автомобиля и пр.). Еще сложнее судить о поддержке конкретной разновидности OBD-II-стандарта.

Общей предпосылкой для того, чтобы предположить, что автомобиль поддерживает OBD-II диагностику, является наличие 16-контактного диагностического разъема (DLC - Diagnostic Link Connector) трапециевидной формы (на подавляющем большинстве OBD-II автомобилей он находится под приборной панелью со стороны водителя; разъем может быть как открыт, так и закрыт легко снимаемой крышкой с надписью "OBD-II", "Diagnose" и т.п.). Тем не менее, это условие необходимое, но недостаточное! Получить справку о расположении разъемов (в том числе нестандартном) можно на странице "Информация и ПО". Также разъем OBD-II иногда устанавливается на автомобили, вообще не поддерживающие ни один из OBD-II-протоколов. В таких случаях необходимо пользоваться сканером, рассчитанным на работу с заводскими протоколами конкретной марки автомобиля - например, это касается автомобилей Opel Vectra B европейского рынка 1996-1997 гг. Для оценки применимости того или иного сканера для диагностики конкретного автомобиля необходимо определить, какой конкретно из OBD-II протоколов используется на конкретном автомобиле (если OBD-II вообще поддерживается). Для этого можно:


1. Посмотреть в технической документации непосредственно к данному автомобилю (но не в общем руководстве по данной марке/модели!). Также полезно осмотреть все идентификационные таблички на автомобиле - возможно наличие таблички "OBD-II compliant" (поддерживает OBD-II) или "OBD-II certified" (сертифицировано на поддержку OBD-II);

2. Посмотреть в информационной базе данных, типа Mitchell-on-Demand и т.п. Однако, это также не абсолютный способ, так как база может содержать неточности, включать информацию по автомобилям, выпущенным для другого рынка и т.п. Естественно, использование специализированных дилерских баз по отдельной марке повышает степень достоверности информации;

3. Использовать сканер, позволяющий определить, какой из OBD-II протоколов используется на машине. Из предлагаемых нами приборов автоматически это сможет сделать Х-431 и OZEN MOByDic 2600. С помощью комплекта ScanTool Вы сможете это сделать вручную путем последовательной смены используемых адаптеров и проверки наличия связи с ЭБУ автомобиля. Если никаких предположений по используемому протоколу нет, то начинать перебор стоит с протокола ISO как наиболее распространенного (либо с протокола, указанного для диагностируемой машины в таблице);

4. Осмотреть диагностический разъем и определить наличие выводов в нем (как правило, присутствует только часть задействованных выводов, а каждый протокол использует свои выводы разъема).


Назначение выводов ("распиновка") 16-ти контактного диагностического разъема OBD-II (стандарт J1962):

02 - J1850 Bus+

04 - Chassis Ground

05 - Signal Ground

06 - CAN High (J-2284)

07 - ISO 9141-2 K-Line

10 - J1850 Bus-

14 - CAN Low (J-2284)

15 - ISO 9141-2 L-Line

16 - Battery Power (напряжение АКБ)

По наличию выводов можно ориентировочно судить об используемом протоколе при помощи следующей таблицы:

- протокол ISO-9141-2 идентифицируется наличием контакта 7 в диагностическом разъеме (K-line) и отсутствием 2 и/или 10 контактов в диагностическом разъеме. Используемые выводы - 4, 5, 7, 15 (может не быть), 16.
- SAE J1850 VPW (Variable Pulse Width Modulation). Используемые выводы - 2, 4, 5, 16 (без 10)
- SAE J1850 PWM (Pulse Width Modulation). Используемые выводы - 2, 4, 5, 10, 16.

Протоколы PWM, VPW идентифицируются отсутствием контакта 7 (K-Line) диагностического разъема.

5. Подавляющее большинство автомобилей используют протоколы ISO. Некоторые исключения:

- большая часть легковых автомобилей и легких грузовиков концерна GM используют протокол SAE J1850 VPW;
- большая часть автомобилей Ford использует протокол J1850 PWM.
- прочие.

Дополнительные сведения об OBD-II диагностике.

В рамках OBD-II стандартизированы не только назначения выводов диагностического разъема, его форма и протоколы обмена, но и частично стандартизированы и коды неисправностей (DTC - Diagnostic Trouble Code) - это предусмотрено стандартом SAE J2012). OBD-II-коды имеют единый формат, однако по их расшифровкам подразделяются на две большие группы - основные (generic) коды и дополнительные (расширенные, extended) коды. Основные коды жестко стандартизированы и их расшифровка одинакова для всех автомобилей, поддерживающих OBD-II. При этом надо понимать, что это не означает, что один и тот же код вызывается на разных автомобилях одной и той же "реальной" неисправностью (это зависит от особенностей конструкции как разных марок и моделей авто, так и разных автомобилей одной модели)! Дополнительные коды различаются по разным маркам автомобилей и были введены автопроизводителями специально для расширения возможностей диагностики.

Как уже говорилось, структура и основных и дополнительных OBD-II кодов одинакова - каждый код состоит из буквы латинского алфавита и четырех цифр (частично уже используются и буквы):

Диагностический разъёm OBD-II

Pin No. Description
1 OEM
2 Bus + Line, SAE J1850
3 OEM
4 Ground, Chassis
5 Ground, Signal
6 OEM ( CAN High , J-2284 )
7 K Line, ISO 9141
8 OEM
9 OEM
10 Bus - Line, Sae J1850
11 OEM
12 OEM
13 OEM
14 OEM ( CAN Low , J-2284 )
15 L Line, ISO 9141
16 Positive, Vehicle Battery

Контакты диагностического разъема для используемых протоколов.

Контакты 4, 5, 7, 15, 16 - ISO 9141-2.
Контакты 2, 4, 5, 10, 16 - J1850 PWM.
Контакты 2, 4, 5, 16 (без 10) - J1850 VPW.

Протокол ISO 9141-2 идентифицируется наличием контакта 7 и отсутствием 2 и/или 10 контактов на диагностическом разъеме. Если отсутствует контакт 7, в системе используется протокол SAE J1850 VPW (Variable Pulse Width Modulation) или SAE J1850 PWM (Pulse Width Modulation). Все три протокола обмена данных работают через стандартный кабель OBD-II J1962 connector.

OBD-II TERMINOLOGY This document covers the new standardized OBD-II terms and acronyms.

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

у тебя же обычный к-лайн адаптер

если не веришь-можешь погуглить.

можешь смело забить болт на адс. это же только старые ведра им читать.
на 34 так там ваще мало че можно посмотреть по сравнению с 39

Меню пользователя kifa_ml
Посмотреть профиль
Найти все сообщения от kifa_ml
Меню пользователя ВАДИМ 53
Посмотреть профиль
Найти все сообщения от ВАДИМ 53
Меню пользователя леха 53
Посмотреть профиль
Найти все сообщения от леха 53
Меню пользователя kifa_ml
Посмотреть профиль
Найти все сообщения от kifa_ml
Меню пользователя ВАДИМ 53
Посмотреть профиль
Найти все сообщения от ВАДИМ 53

вот содержание файлов


[UNIT_A]
Port=Com2
Hardware=OBD

[UNIT_B]
Port=Com3
Hardware=OBD

[UNIT_C]
Port=Com4
Hardware=OBD

[UNIT_D]
Port=Com5
Hardware=OBD

[UNIT_E]
Port=Com6
Hardware=OBD

[UNIT_F]
Port=Com7
Hardware=OBD

[UNIT_G]
Port=Com8
Hardware=OBD

[UNIT_H]
Port=Com9
Hardware=OBD

[UNIT_I]
Port=Com10
Hardware=OBD

[UNIT_J]
Port=Com11
Hardware=OBD

[UNIT_K]
Port=Com12
Hardware=OBD

[UNIT_L]
Port=Com13
Hardware=OBD

[UNIT_M]
Port=Com14
Hardware=OBD

[UNIT_N]
Port=Com15
Hardware=OBD

;-----------------------------------------------------------------------------
; TraceSize
; Description : Maximum size of each trace file [KB]
; Value : 0..32767
; Default = 1024
TraceSize = 32767

;-----------------------------------------------------------------------------
; ApiTrace
; Description : Enable/Disable API/User trace
; Value : 0 = Trace disabled
; 1 = User trace
; 2 = User trace + time stamp
; 3 = User trace + time stamp + process id (Win32)
; 4 = Function trace
; 5 = Function trace + time stamp
; 6 = Function trace + time stamp + timing
; 7 = Function trace + time stamp + timing + process id (Win32)
; Default = 0
ApiTrace =0

;-----------------------------------------------------------------------------
; IfhTrace
; Description : Enable/Disable IFH trace
; Value : 0 = Trace disabled
; 1 = User trace
; 2 = User trace + interface
; 3 = User trace + interface + time stamp
; Default = 0
IfhTrace =0

;-----------------------------------------------------------------------------
; IfhnTrace
; Description : Enable/Disable IFH network trace (with XREMOTE)
; Value : 0 = Trace disabled
; 1 = User trace
; 2 = User trace + interface
; 3 = User trace + interface + time stamp
; Default = 0
;IfhnTrace = 0

;-----------------------------------------------------------------------------
; SystemTraceSys
; Description : Enable/Disable system trace (runtime system)
; Value : 0 = Trace disabled
; Trace levels 1..7
; Default = 0
SystemTraceSys = 0

;-----------------------------------------------------------------------------
; SystemTraceBip
; Description : Enable/Disable BIP trace (runtime system)
; Value : 0 = Trace disabled
; Trace levels 1..7
; Default = 0
SystemTraceBip = 0

;-----------------------------------------------------------------------------
; SystemTraceIfh
; Description : Enable/Disable IFH system trace
; Value : 0 = Trace disabled
; Trace levels 1..7
; Default = 0
SystemTraceIfh = 0

;-----------------------------------------------------------------------------
; SystemTraceNet
; Description : Enable/Disable network trace
; Value : 0 = Trace disabled
; Trace levels 1..7
; Default = 0
SystemTraceNet = 0

;-----------------------------------------------------------------------------
; BipDebugLevel
; Description : BIP debug level of ECU files
; Value : 0..32767
; Default = 0
BipDebugLevel = 0

;-----------------------------------------------------------------------------
; UbattHandling
; Description : Ubatt ON/OFF handling
; Value : 0 = Ubatt ON/OFF: No EDIABAS error
; 1 = Ubatt ON/OFF: EDIABAS error
; Default = 1
UbattHandling = 0

;-----------------------------------------------------------------------------
; IgnitionHandling
; Description : Ignition ON/OFF handling
; Value : 0 = Ignition ON/OFF: No EDIABAS error
; 1 = Ignition ON/OFF: EDIABAS error
; Default = 1
IgnitionHandling = 0

;-----------------------------------------------------------------------------
; ClampHandling
; Description : automatic check of clamps for Ubatt and Ignition
; Value : 0 = no automatic clamp check with send_and_receive
; 1 = automatic clamp check with send_and_receive
; Default = 1
;ClampHandling = 1

;-----------------------------------------------------------------------------
; TaskPriority
; Description : EDIABAS process/thread priority (only Win32/16)
; Value : 0 = Optimal EDIABAS performance = 8
; 1 = Minimal EDIABAS performance
; ..
; 10 = Maximal EDIABAS performance
; Default = 0
TaskPriority = 0

;-----------------------------------------------------------------------------
; LoadWin32
; Description : Map EDIABAS Win16 calls to EDIABAS Win32
; Value : 0 = Win16/32 Mapping disabled (Win16-->Win16)
; 1 = Win16/32 Mapping enabled (Win16-->Win32)
; Default = 0 for Windows 9x/Me
; Default = 1 for Windows NT4/2000/XP
;LoadWin32 = 0

;-----------------------------------------------------------------------------
; SystemResults
; Description : Enable/Disable system results (ubatt/ignition/jobstatus)
; Value : 0 = Disable system results
; 1 = Enable system results
; Default = 1
SystemResults = 1

;-----------------------------------------------------------------------------
; RetryComm
; Description : Repeat failed communication automatically (1x)
; Value : 0 = Retry disabled
; 1 = Retry enabled (1x)
; Default = 1
RetryComm = 1

;-----------------------------------------------------------------------------
; Simulation
; Description : Enable/Disable ECU simulation
; Value : 0 = Simulation disabled
; 1 = Simulation enabled
; Default = 0
Simulation = 0

; Additional information (in German) :
; Bitte beachten: Der HW-Treiber fuer das Interface muss installiert sein!

; Interface = STD:OBD
; Beschreibung : Serieller Pegelwandler (Nachfolger von ADS / Anschluss an OBD-Dose)
; Installation : \EDIABAS\HARDWARE\OBD\ODBSETUP (nur noetig fuer WIN NT4, WIN 2000, WIN XP)
; INI-Datei : Suchreihenfolge analog zu EDIABAS.ini
; Unterstuetzung : WIN3.xx : Nein
; WIN95,98 16-Bit : Ja
; WIN95,98 32-Bit : Ja
; WIN NT 4.0 : Ja
; WIN XP : Ja

; Interface = STD:FUNK
; Beschreibung : Funk-Diagnose Interface MDA von Fa. Siemens
; Installation : keine
; INI-Datei : FUNK.INI
; Unterstuetzung : WIN95,98 16-Bit : Ja
; WIN95,98 32-Bit : Ja
; WIN NT 4.0 : Ja
; WIN XP : Ja

; Interface = ADS
; Beschreibung : Serieller Pegelwandler (Anschluss an Diagnose-Dose)
; Installation : \EDIABAS\HARDWARE\ADS\ADS32\ADSSETUP (nur fuer WinNT4 noetig)
; INI-Datei : keine
; Unterstuetzung : WIN95,98 16-Bit : Ja
; WIN95,98 32-Bit : Nein
; WIN NT 4.0 : Ja
; WIN XP : Ja

; Interface = KBUS
; Beschreibung : Serieller Pegelwandler (Anschluss direkt an K-Bus oder I-Bus)
; Installation : \EDIABAS\HARDWARE\ADS\ADS32\ADSSETUP (nur fuer WinNT4 noetig)
; INI-Datei : keine
; Unterstuetzung : WIN95,98 16-Bit : Ja
; WIN95,98 32-Bit : Nein
; WIN NT 4.0 : Ja
; WIN XP : Ja

; Interface = EDIC
; Beschreibung : Serielles , PCMCIA , PC-Card Interface von Fa. Softing
; Installation : \EDIABAS\HARDWARE\EDIC\SETUP.EXE
; INI-Datei : EDICFW.INI, EDICHW.INI
; Unterstuetzung : WIN95,98 16-Bit : Ja
; WIN95,98 32-Bit : Ja
; WIN NT 4.0 : Ja
; WIN XP : Ja

; Interface = EDICC
; Beschreibung : EDIC-Card C oder EDIC-Card 2 CAN-Interface von Fa. Softing
; Installation : \EDIABAS\HARDWARE\EDIC\SETUP.EXE
; INI-Datei : XEDICC.INI
; Unterstuetzung : WIN95,98 16-Bit : Ja
; WIN95,98 32-Bit : Ja
; WIN NT 4.0 : Ja
; WIN XP : Ja

; Interface = STD:CAN
; Beschreibung : PCMCIA CAN-Interface CanCardX/XL von Fa. Vector
; Installation : keine (ausser Installation der CAN-Karte)
; INI-Datei : CAN32.INI
; Unterstuetzung : WIN95,98 16-Bit : Nein
; WIN95,98 32-Bit : Nein
; WIN NT 4.0 : Ja
; WIN XP : Ja
; Ansprechpartner: Hr. Jusko
; Telefon : +49-(0)89/382-35891 (Hotline)
; email : FLASH.SERVICE@BMW.DE (Hotline)

; Interface = STD:ADS4MOST
; Beschreibung : Most-Interfaces von Fa. Oasis
; Installation : keine (ausser Installation der Oasis-Karte)
; INI-Datei : ADS4MOST.INI
; Unterstuetzung : WIN95,98 16-Bit : ?
; WIN95,98 32-Bit : ?
; WIN NT 4.0 : Ja
; WIN XP : Ja
; Ansprechpart.: Hr. Rowedder
; Telefon : 089 / 382-29159
; email : Michael.Rowedder@bmw.de

; Interface = REMOTE
; Beschreibung : Anbindung eines EDIABAS-Interfaces ьber TCP/IP
; Installation : Anpassung der Eintrдge in [TCP] auf beiden Seiten (ins.: RemoteHost, Port)
; INI-Datei : keine
; Unterstuetzung : WIN95,98 16-Bit : Nein
; WIN95,98 32-Bit : Ja
; WIN NT 4.0, XP : Ja
; WIN XP : Ja
; Sonderfall : Interface OPPS
; Ansprechpart.: Hr. Rowedder
; Telefon : 089 / 382-29159
; email : Michael.Rowedder@bmw.de

; Interface = REMOTE:name
; Beschreibung : Anbindung eines EDIABAS-Interfaces ьber TCP/IP
; Installation : Anpassung der Eintrдge in [TCP] auf beiden Seiten (ins.: RemoteHost, Port)
; INI-Datei : REMOTE.INI (insbesondere fьr Parallelbetrieb notwendig)
; In REMOTE.INI stehen unter [name] spezif. Einstellungen(z.B.: RemoteHost, Port)
; Unterstuetzung : WIN95,98 16-Bit : Nein
; WIN95,98 32-Bit : Ja
; WIN NT 4.0, XP : Ja
; WIN XP : Ja
; Sonderfall : Interface OPPS
; Ansprechpart.: Hr. Rowedder
; Telefon : 089 / 382-29159
; email : Michael.Rowedder@bmw.de

;-----------------------------------------------------------------------------
;TimeoutConnect
; Description : Timeout for establishing the connection
; Default = 5000
TimeoutConnect = 2000

;-----------------------------------------------------------------------------
;TimeoutReceive
; Description : Timeout for receiving a message
; Default = 5000
TimeoutReceive = 2000

;-----------------------------------------------------------------------------
;TimeoutFunction
; Description : Timeout for a long function
; Default = 59000
TimeoutFunction = 10000

;-----------------------------------------------------------------------------
;DisconnectOnApiEnd
; Description : Enable/Disable Disconnection with function call ApiEnd
; Value : 0 = Disconnection disabled
; 1 = Disconnection enabled
; Default = 0
;DisconnectOnApiEnd = 1

Меню пользователя ВАДИМ 53
Посмотреть профиль
Найти все сообщения от ВАДИМ 53
Меню пользователя ВАДИМ 53
Посмотреть профиль
Найти все сообщения от ВАДИМ 53

Цитата(bmw728 @ 17.1.2010, 22:57)
Со многим из сказанного могу согласится, а заодно предложить решение вопроса:
собираем всю информацию, на этом ресурсе или стороннем - не суть дела. Раскладываем по пунктам, что нужно, чтобы система полноценно заработала , а выше приводим некий список предостережений от произвольных манипуляций. Вроде всё.
Ну а дальше каждый сам решает, стоит ли ему лезть в дебри диагностики или нет.

P.S. Переустановкой ОС тоже можно положить комп, что потом придётся нести в сервис, но когда у меня спрашивают как переустановить, у меня никогда не возникает желания сказать: да ты чё, куда лезешь, комп положишь, и т.п. В трёх словах буквально можно объяснить если есть желание, предостерег, что делаешь на свой страх и риск и люди тебе благодарны в итоге. Там человек сам выберет лезть ему в эти дебри или нет. Всё просто, было бы желание.

Добавлено через минуту:

Цитата(pashka_523iA @ 25.1.2010, 1:38)
Можно. Это раз 200-300 уже описывалось в инете. Сложно По_Гуглить . Делов то на пару минут

А сложно ТАК ответить? см.ниже.

Цитата(Vladimir @ 25.1.2010, 0:27)
По поводу DIS. Вопрос был задан 2 раза. Можно ли его подключить через адаптер ИНП`ы?

Поскольку rutracker задавил все вышеописанные темы, то чуть обновлю информацию:
DIS без проблем работает с адаптерами для INPA, но не всякий, вернее не все адаптеры для INPA одинаковые. Для некоторых нужен модифицированный файл tmode в DIS. Но заморачиваться сегодня с этим нет никакого смысла, т.к. хорошие люди уже все сделали за нас. Нам остается только установить vmvare, правильно его настроить и запустить уже установленный DIS.
Вот очень полезные ссылки, где все хорошо расписано и есть ссылки на скачивание всех нужных программ:
http://bmwpost.ru/forum/showthread.php?t=238
http://www.bmw5erclub.ru/forum/showthread.php?t=18853
Также там много полезной информации по кодированию и программированию.

Сам лично пользуюсь вот этой версией DIS:
http://free-torrents.org/forum/viewtopic.php?t=129576
Проверено - все работает отлично, в т.ч. и кодирование (кодировал блок DSC). Главное не забывайте в VMWARE настроить сетевые адаптеры и в конфигурации виртуальной машины выставить соответствующие значения количества процессоров и оперативной памяти.

И вот ещё основатели всего этого "движения", правда на английЦком: http://www.bmwecu.org/article001/

По поводу инпы, у кого какие проблемы при установке и запуске? Я уже столько раз её переустанавливал, что мне кажется что там всё элементарно. Если останутся какие вопросы после посещений моих ссылок, то задавайте - чем смогу, как говорится.
Из основного:
1. качаете по ссылке нормальную версию едиабаса/инпы.
2. устанавливаете всё по мануалу:
2.1. Файл на диске С:\autoexec.bat, должен получится таким: PATH=C:\WINDOWS;C\WINDOWS\COMMAND;C:\Ediabas\Bin , т.е. нужно добавить туда путь любым редактором "C:\Ediabas\Bin". Либо можно через свойства моего компьютера-> вкладка "Дополнительно" -> кнопка "Переменные среды" -> в окне "системные переменные" находим строчку "Path", два раза мышкой по ней и в конце строки "Значение переменной" добавляем ";c:\ediabas\bin".
3. Для работы в ОБД режиме: ищем файл c:\ediabas\bin\obd.ini и редактируем любым редактором:
-начало-
[OBD]
Port = Com1
TRACELEVEL = 3
RETRY = ON
MODE=NORMAL
HARDWARE=USB
-конец-
Это для работы адаптера инпа обд с кабелем USB (у меня USB-Carhelp2, не реклама - но работает чётко на все 100). Нужно чтобы адаптер стоял на COM1 (в дальнейшем это и для DIS понадобится).
По поводу COM-овских адаптеров и их настроек - инфы у меня нет, но в и-нете есть точно, много раз натыкался, но т.к. мне было не нужно не сохранял.
Дальше открываем файл: c:\ediabas\bin\EDIABAS.INI, кроме всех прочих строк должно стоять:
Interface =STD:OBD
RemoteHost =192.168.68.1
Port = 6801
Правда последние две только для DIS потом понадобятся. Если нужна инпа, то можно их и не трогать.
Всё. Больше нет там никаких настроек.
4. Запускаем (запускается через ярлык "INPA (_.IPO)", а именно: "C:\EC-APPS\INPA\BIN\INPALOAD.exe"), и всё работает. Если адаптер нормальный и контроль зажигания будет работать и батарею показывать. Если адаптер кривой, то нужно отключить контроль батареи и зажигания:
UBATT = OFF
IGNITION = OFF
всё это в файле: c:\ediabas\bin\obd.ini

5. Для работы в ADS режиме:
5.1 запускаем: C:\EDIABAS\Hardware\ADS\ADS32\ADSSETUP.EXE
5.2. редактируем: c:\ediabas\bin\EDIABAS.INI - а именно, заменяем строку
Interface =STD:OBD
на: Interface =ADS
5.3. В папке: C:\WINDOWS должен лежать файл ADS.ini, содержащий:
--начало--
[ADS]
Port = COM1
UBATT = ON
IGNITION = ON
--конец--
Также адаптер должны быть на COM1.
У меня есть ещё правленый файл ads32.dll, который лежит в c:\ediabas\bin\, но он нужен вроде как только для моего адаптера, если кому нужен - пишите.
Вот и всё. Запускаем инпу также и тестим. НО DME 3.3.1 не видит, всё остальное - на ура.

Вроде бы всё, вкратце. Но с кнопочками неизвестными, на самом деле, поосторожнее, можно и накосячить, люди правильно пишут, лучше 5 раз подумайте - а нужно ли нажимать эту кнопку и для чего, и только потом принимайте решение, а не так что - нажму, а там видно будет что произойдёт. Чтение/стирание ошибок, просмотр/контроль параметров - можно жать не опасаясь, там сложно сломать что-либо, а вот всякие "activation", "coding", стирание адаптаций - там аккуратнее, если не уверены - то лучше не надо, всё-равно если не разбираешься, то ничего там интересного нет. Лучше сначала почитать литературу.

Изначально необходимо пояснить что для подключения к авто будет использоваться ELM327 адаптер. ELM327 – это микросхема, которая позволяет преобразовать протоколы, используемые в диагностических шинах автомобилей в протокол RS232, которым мы и будем передавать данные. За счет того что передача данных по протоколу RS232 происходит последовательно возникает первая проблема – скорости передачи данных, которую мы постараемся обойти в одном из следующих пунктов.

Существует несколько вариаций адаптера ELM327, которые классифицируются по способу передачи данных – Bluetooth, WIFI, USB. Исходя из того что целью разработки является мобильное устройство под операционной системой Android можно подобрать две наиболее подходящие версии ELM327, такие как Bluetooth и WIFI. Так как способ получения и обработки данных один, а отличаются они всего лишь вариантами подключения к адаптеру, то можно выбрать всего один, организовать при помощи него диалог, а после добавить остальные варианты подключения.

ELM327 1.5 vs ELM327 2.1


Одной из первых проблем, с которыми можно столкнуться стала проблема выбора непосредственно адаптера, в нашем случае Bluetooth. Оказывается если вам необходимо поддерживать все (по крайней мере большинство) автомобилей необходимо выбирать версию v1.5 вместо v2.1, что на самом то деле необходимо несколько раз уточнить при покупке адаптера, потому как продавцы пытаются выдать версию адаптера не за ту, которая есть на самом деле, т.к. они особо ничем не отличаются. На деле же в версии v2.1 отсутствует поддержка протоколов J1850 PWM и J1850 VPW, что говорит о том, что у вас не получится подключиться к автомобилям, которые используют эти протоколы.

Подключение

Подключение к адаптеру происходит в несколько этапов:

  • Подключение к адаптеру (Bluetooth, WIFI)
  • Отправка инициализационных команд (инициализационной строки)

AT Z [reset all]
Сброс настроек адаптера до заводского состояния.
AT L1-0
Включить/Отключить символы перевода строки.
AT E1-0
Echo on – off
AT H1-0
Headers on – off
AT AT0-1-2
Adaptive Timing Off — adaptive Timing Auto1 — adaptive Timing Auto2
AT ST FF
Установить таймаут на максимум.
AT D [set all to Default]
Сброс настроек в исходное, настроенное пользователем состояние.
AT DP [Describe the current Protocol]
Сканер способен самостоятельно определять протокол автомобиля, к которому он подключен.
AT IB10 [set the ISO Baud rate to 10400]
Команда устанавливает скорость обмена данных для ISO 9141-2 и
ISO 14230-4 10400
AT IB96 [ set the ISO Baud rate to 9600]
Команда устанавливает скорость обмена данных для ISO 9141-2 и
ISO 14230-4 9600 для протоколов 3,4,5.
AT SP h [ Set Protocol h]
Команда выбора протокола h, где h:

0 – Automatic;
1 — SAE J1850 PWM (41.6 Kbaud);
2 — SAE J1850 VPW (10.4 Kbaud);
3 — ISO 9141-2 (5 baud init, 10.4 Kbaud);
4 — ISO 14230-4 KWP (5 baud init, 10.4 Kbaud);
5 — ISO 14230-4 KWP (fast init, 10.4 Kbaud);
6 — ISO 15765-4 CAN (11 bit ID, 500 Kbaud);
7 — ISO 15765-4 CAN (29 bit ID, 500 Kbaud);
8 — ISO 15765-4 CAN (11 bit ID, 250 Kbaud);
9 — ISO 15765-4 CAN (29 bit ID, 250 Kbaud);
AT SP Ah [Set Protocol h with Auto]

Команда устанавливает по умолчанию протокол h, если подключение по протоколу h не удалось, тогда адаптер начинает автоматический подбор протокола.

Исходя из описанных выше команд, формируем инициализационную строку.


Желательно давать возможность пользователю сменять инициализационные команды, потому как для того чтобы подобрать «ключ» к некоторым авто необходимо выбрать более подходящие настройки адаптера. В нашем же случае используются настройки, которые походят для большинства стандартных протоколов.

Так же желательно обратить внимание на команду APSP0, таким образом мы устанавливаем по умолчанию автоматический подбор протокола, это может занять некоторое время.

Соответственно если пользователь знает какой у его авто протокол, то используя возможность смены протокола подключения он может поменять 0 на номер его протокола.

Считывание диагностических данных

Для считывания диагностических данных используются специальные команды PID’s.
PID (Parameter id’s — Бортовые диагностические идентификаторы параметров) – коды, которые используются для запроса показателей определенных датчиков автомобиля.

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

Также есть возможность получать текущие данные от автомобиля при этом команда получения данных от авто будет иметь вначале 01, указывая на то что мы хотим получить real data. Если же мы хотим получить сохраненные данные автомобиля, то вначале команды необходимо указать 02. Например, команда для получения текущей скорости автомобиля – 010D, а для получения сохраненной скорости – 020D.

Если внимательно посмотреть на то количество команд, которое предоставляется открытыми ресурсами, то можно как раз и заметить ту проблему, о которой я писал в самом начале, а именно проблема скорости ответа адаптера. Так как отправка и получение команд идет последовательно, то для того чтобы получить показания датчика на текущий момент времени необходимо дождаться ответа на все предыдущие команды. Соответственно если запрашивать на получение все команды, то большая вероятность того что обновление реальных данных будет происходить очень медленно. Но и эту проблему можно решить, если воспользоваться командами, которые отобразят только те команды, что существуют в автомобиле. Например:

0100 – PIDs supported [01 — 20]
0120 – PIDs supported [21 — 40]
0140 – PIDs supported [41 — 60]
0160 – PIDs supported [61 — 80]
0180 – PIDs supported [81 – A0]
01A0 – PIDs supported [A1 — C0]

Я продемонстрирую как определить какие датчики присутствуют в автомобиле при помощи одного из пидов. Например:

  • 0100 \\ запрос
  • BB1E3211 \\ ответ от авто


Используя следующую табличку можем определить какие пиды поддерживаются нашим автомобилем, начиная от 01 до 20:


Исходя из получившихся данных можем определить, что наш автомобиль поддерживает следующие пиды:


Теперь вместо отправки всех 32 команд и ожидания ответа на них, несмотря на то, что некоторые могут отсутствовать, мы будем использовать всего 15 команд. Но и это не предел так называемой оптимизации. Для того чтобы данные обновлялись еще быстрее советую запрашивать только данные о тех датчиках, которые отображаются на экране. Хотя это ограничивает некоторый функционал приложения. Например, запись истории.

Считывание и расшифровка ошибок автомобиля

Ошибки автомобиля тоже могут быть различными и для них тоже существуют отдельные команды. Например:

  • 03 – Для отображения сохраненных кодов ошибок
  • 0A – Для отображения постоянных кодов ошибок.


А теперь пояснение.

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



3, 4, 5 символы формируются по этой таблице:


Исходя из этого можем попробовать разобрать следующий ответ 0001000000111110


Код ошибки: P103E

Эпилог

На данном этапе мы разобрались в том, каким образом организовать диалог с адаптером, посылать ему команды, получать и расшифровывать его ответы. Это большая часть работы, если считать то, сколько времени уходит на изучение материала, но в то же время довольно таки интересная. За пределами этой статьи осталось множество проблем связанных с визуальным интерфейсом, а также множество дополнительных функций, таких как добавление новых пидов из файла, стандартный и расширенный способ подключения к адаптеру и построения графиков.

Матвиенко Александр, Хоссейн Фахр.
P.S. Оригинальную английскую версию статьи можно найти здесь

  • Java
  • Разработка под Android
  • IT-стандарты
  • Автомобильные гаджеты

Читают сейчас

Редакторский дайджест

Присылаем лучшие статьи раз в месяц

Скоро на этот адрес придет письмо. Подтвердите подписку, если всё в силе.

  • Скопировать ссылку
  • Facebook
  • Twitter
  • ВКонтакте
  • Telegram
  • Pocket

Похожие публикации

  • 9 июня 2021 в 13:53

Контроль сонливости водителя, кресла с учётом женской анатомии: что нового в автомобильных технологиях безопасности?

Анонс: общаемся об Android-разработке с Senior Android Developer Spotify Славой Савицким

Google запустила новый Android Developer Challenge

Средняя зарплата в IT

AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Минуточку внимания

Комментарии 58

Сейчас как решил вопрос прямого общения с CAN шиной через elm327.
Obd2 это протокол который должны поддерживать все автомобили любой марки.
По Can ходит проприетарный протокол, у разных производителей свой набор команд.

Can управляет всему функциями авто. Obd2 для диагностики малого количества параметров.
Например через obd2 я не могу посмотреть открыта дверь или закрыта, по Can могу.

Я поправлю: CAN НЕ управляет всеми функциями авто.

CAN — это сеть из контроллеров которые сидят на одной шине и общаются между собой. Такие сети можно связать между собой только через Gateway.
Обычно же CAN'ом ошибочно называют два провода на корых сидят контроллеры.

ODB2 это протокол, по которому контроллеры могут общатся с внешним миром.

  • заставить его сделать себе диагностику
  • выдать информацию о контроллере, машине (например если VIN)
  • перепрошить / проапдейтить software, bootloader контроллера
  • перекодировать / пеменять параметры

Все верно. И простейший вариант: подключиться к CAN-шине через OBD-разъем, воткнув в него «китайский свисток» на основке ELM327 (адаптер).

А в документации этого адаптера есть описание и протокола CAN-шины, и команды управления, например, тут.

В ответ на команду вы получите код, расшифровку которого можно посмотреть, например, здесь. Но это только общая часть, действительная для практически всех производителей. А далее надо копать для каждого отдельно: Peugeot, Scoda, Reno, Volvo и т.д.

OBD — это грубо говоря стандарт на порт диагностики. CAN — это протокол обмена. В разъеме OBD2 может быть как CAN, так и что-то другое.

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

Конечно. Вопрос, какие именно данные.
Я заказал пятидолларовый свисток из китая, а приложений в сторе валом.

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

Ээээ, правильнен сказать: «Самое дешёвое профессиональное CAN-устройство — от 100 у.е.» ;)

А аот верхней границы, увы, нет. :)))

Устройство — это просто адаптер. Вся соль в программе, которая будет подавать команды и разбирать затем ответ. А вот тут без знаний протоколов конкретных производителей НИКУДА не шагнешь. Поэтому и так дорого стоят.

Есть программа на python PyRen. Там многое очень доступно прямо из кода

Ну, не совсем — если вам будет нужен высокоточный и многоканальный CAN-сниффер & логгер для отладки программ — то там само по себе железо будет тоже не одну тысячу у.е. стоить. :)

В общем из известных мне профессиональных, но самых простых решений — где чисто на USB идёт поток данных, но там и оболочка есть простая и удобная, и API, и ещё пара мелочей — это вот:

Кажется, в "классических работах" Миллера и Валасека их тоже видел. :)

Эээ, тут я, увы, не знаю, что сказать — не видел, опыта нет. :)

Ну вот у меня как-то забарахлила приборка.
Ехать оставалось километров 200, а скорость 0. Да и обороты не особо верно кажет.
Подрубаем EML'ку и вуаля. Аналогичные истории с загоранием чека внезапным.

Пока у вас машина новая, это все не нужно — когда вы ездите на винтаже, то вот тут оно нужно и даже очень.

Если под словом OBD-2 Вы понимаете протокол, то нет, нельзя. Этот стандарт изначально предназначался для контроля за выбросами двигателя, и там есть только параметры, которые явно или косвенно на эти выбросы влияют.
Список параметров можно найти в википедии, «OBD-II PIDs». Также можно почитать стандарты, например ISO 14230 (платный, но можно найти в интернетах).

А если под словом OBD-2 подразумевать разъем, всё становится интереснее. В дорогих машинах он соединяется с остальной шиной через гейт, и кроме диагностики там ничего нет, а вот во всём, что попроще, прямо в разъеме видно весь обмен на шине. И вот там есть и скорость (сама приходит, ничего спрашивать не надо), и обороты, и угол руля (если есть ESP или усилитель достаточно умный). Текущей передачи, правда, не будет (если задний ход не считать :-) ), но её можно самому посчитать по отношению скорости и оборотов двигателя.

Конечно, если «чисто случайно» подключить OBD-разъем не к Diagnostic-CAN, а к скажем Body-CAN (а CAN распределитель не трудно найти), то там столько самого прийдет, что только успевай подставлять HDD :-)

  • то что читается с OBD — это отложенные (delayed) значения. Т.е. никакого RealTime (ESP, руль и т.д.)
  • колличество таких сигналов очень ограниченно
  • по каждому идут споры, должен ли электрик в мастерской или клиент этот сигнал видеть

По сути-то — что и где будет видно, это решение архитекторов конкретной модели.

И настройки гейтвеев (если они есть).

Как пример: когда я в самообразовательных и тестовых целях подключился на OBD-разъём моей сейчас семилетней Хюндай i30 — то там прекрасно было видно весь поток CAN-информации. С реакцией отдельных байтов и битов на открывание дверей, окон и пр.

Но если есть гейтвеи и строгая фильтрация — то мало что будет видно.

Все машины разные, гарантированного набора данных просто нет.
Вы можете примерно ориентироваться на то, что есть на приборной панели. Эти данные передаются через моторный CAN, но не факт что все. Например на моей Toyota Isis датчик уровня топлива подключен к приборке аналоговым проводом, и в моторном CAN отсутствует. Информация о номере передачи и вообще режимах автомата тоже отсутствует (лампочки на консоли подключены проводами напрямую к контроллеру автомата).
Для информации о кузове (управление замками, состояние концевиков дверей), надо подключаться к кузовному CAN. Опять же, для моей машины второго CAN просто нет, и такую информацию снять нельзя.

Чисто ради примера — вот там одна точка с моей машины в движении. Указаны все параметры, которые удалось снять из моторного CAN по стандартному протоколу:

Toyota Isis OBDII info:

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