Вернуться   SubaruRf.Ru - форум автомобилей Subaru > Технический Форум > Кузов и салон

Ответ
 
LinkBack Опции темы Опции просмотра
Старый 19.03.2012, 20:09   #1
Новичок
 
Аватар для Алена Зеленкова
 
Регистрация: 07.08.2009
Адрес: Североуральск
Сообщений: 91
Отправить сообщение для Алена Зеленкова с помощью ICQ
По умолчанию

Изучив первоисточники:

Здесь -,

Потом -,

И наконец -, решил сделать диагностику самостоятельно.

Собирал схему на макетке. Стабилизатор U1 – любой с выходным напряжением – 5В. У меня простая советская КРЕН5А. MAX232 – 30руб – не проблема. И наконец кабель RS232 – нашел донора, прозвонкой убедился, что в наличии как минимум 3 провода идущие на контакты 2, 3, 5, один коцец безжалостно откусил, второй в макетку, согласно схеме. OBD-II разъем – этого так просто не найти, решил - для эксперимента сойдут просто штыри. Провода пометил бирками. Плату заизолировал скотчем. Распечатал страницу EN(SOHC)-31 - ту где рисунок и цоколевка DATA LINK COnECTOR. На ноут поставил .
Чтобы проще попадать штырьками в разъем, снял панель под рулем на которой смонтирован диагностический разъем, и отсоединил корпус разъема от панели. Панель на место, а разъем болтается, зато стал доступен. Воткнул 4 штырька в разъем, кабель RS232 в ноутбук(ноут д.б. старый, т.е. с RS-ом или адаптер RS-USB), включил зажигание, запустил SelectMonitor и … работает, и даже лог пишет. Однако скорость считывания параметров никак нельзя назвать достаточной для диагностики.

Дословно:
1)«The baud rate is quite slow, realistically you can only query about 5 memory locations per second»
и
2)«According to Kashima, the 4th byte of the read command is supposed to indicate how many bytes to read. This does not seem to work on the cars I have tested. The byte must be sent, but its value seems to be ignored.»

Проверка показала – 4-й байт в READ COMMAND работает по крайней мере у меня, а так как важные параметры расположены подряд в адресном пространстве контроллера, например в моем случае;
BatteryVoltageAddress=0007
VehicleSpeedAddress=0008
EngineSpeedAddress=0009
CoolantTempAddress=000A
IgnitionAdvanceAddress=000B
AirflowSensorAddress=000C
EngineLoadAddress=000D
ThrottlePositionAddress=000F
InjectorPulseWidthAddress=0010
ISUDutyValveAddress=0011
O2AverageAddress=0012
O2MinimumAddress=0013
O2MaximumAddress=0014
KnockCorrectionAddress=0015
AFCorrectionAddress=001C
AtmosphericPressureAddress=001F
ManifoldPressureAddress=0020
, то ОДНОГО запроса 0x78 0x00 0x07 0x19 достаточно для получения массы информации.
Далее написал небольшую утилиту под ДОС и диагностика готова.

П.С. Беглый анализ лога показал некоторую неточность таблицы параметров.

Алена Зеленкова вне форума   Ответить с цитированием
Старый 01.05.2012, 09:08   #2
Новичок
 
Аватар для Aлександр
 
Регистрация: 14.06.2009
Сообщений: 87
Отправить сообщение для Aлександр с помощью ICQ
По умолчанию

несколько кадров
Aлександр вне форума   Ответить с цитированием
Старый 19.05.2012, 15:53   #3
Новичок
 
Аватар для Ксю Ха
 
Регистрация: 27.09.2009
Сообщений: 86
Отправить сообщение для Ксю Ха с помощью ICQ
По умолчанию

Программа. собственно шлет в еку пакет с запросом данных. Все что принимает от еку сливает в файл и копия на stdout. Запускать bat файл.
Ксю Ха вне форума   Ответить с цитированием
Старый 28.05.2012, 10:43   #4
Новичок
 
Аватар для Junkman
 
Регистрация: 19.12.2009
Сообщений: 70
По умолчанию

Поздравления!

На счет возможности использования USB-COM вы вероятно погорячились, по описаниям там скорость 1953 бод (она действительно такова? ) - не компьютерная, из под виртуального порта COM ее не достать.

Разъем можно сочинить из разъемов питания флопов 5.25, ноги от разъема флопа 3.5

Шаг сетки контактов там 4 мм.
Junkman вне форума   Ответить с цитированием
Старый 31.07.2012, 08:57   #5
Новичок
 
Аватар для masyanchik
 
Регистрация: 03.10.2009
Адрес: Усинск
Сообщений: 90
Отправить сообщение для masyanchik с помощью ICQ
По умолчанию

Цитата:
Поздравления!

На счет возможности использования USB-COM вы вероятно погорячились, по описаниям там скорость 1953 бод (она действительно такова? ) - не компьютерная, из под виртуального порта COM ее не достать.

Разъем можно сочинить из разъемов питания флопов 5.25, ноги от разъема флопа 3.5

Шаг сетки контактов там 4 мм.
Да скорость 1953. Для ДОСа я записываю делитель 59 в компорт. Виртуальный компорт можно и нужно написать, если MSDN хорошо знаешь. Я лишь предположил по переходник. У меня ноутбук с компортом.

Разница в объеме информации очевидна.
masyanchik вне форума   Ответить с цитированием
Старый 01.10.2012, 06:28   #6
Новичок
 
Аватар для alexpashinsky
 
Регистрация: 21.09.2009
Сообщений: 83
Отправить сообщение для alexpashinsky с помощью ICQ
По умолчанию

Вырезал 7 столбцов

00000000 0 7 179 0 48 81 141
00000000 0 7 179 0 47 81 142
00000000 0 7 179 0 48 81 140

Последний - Ignition Advance - вычесть 128 и поделить на 2 - будут градусы до ВМТ
Предпоследний - Coolant Temp - вычесть 40 - будет в Цельсиях
Перед ним - вероятно Engine Speed - умножить на 32(? ) - обороты в минуту

Вдали EngineLoad(Throtlle без начального положения вкупе с оборотами? ), Throttle Position, следом InjectionPulse - умножить на 0.256 - в мс

Остальное дальше гадать,

Угаданное лучше бы в .csv файл вывалить, чтоб привычными средствами рассматривать - ecuExplorer, ecuEdit, Excel...

Про виртуальный порт на нестандартную скорость на неизвестное USB железо - сомнительно написать. Под чип FTDI для этого имеется .dll, но самостоятельно паять такой староват я уже, дюже ноги плотно стоят, под другие кристаллы библиотек не видел.
alexpashinsky вне форума   Ответить с цитированием
Старый 14.10.2012, 13:30   #7
Новичок
 
Аватар для len4ikku
 
Регистрация: 08.12.2009
Сообщений: 84
По умолчанию

Прошу прощения не пояснил сразу.
1-й столбец количество тиков таймера(18, 2раз сек) с начала старта программы.
2+3 - стартовый адрес сканирования(в данном случае) 0007
начиная с 4-го данные. Опять же в данном случае данные 4 -й столбец - данные по адресу 0007,
5-й - данные по адресу 0008,
6-й - данные по адресу 0009,
7-й - данные по адресу 000a,
8-й - данные по адресу 000b,
9-й - данные по адресу 000c,
итд
len4ikku вне форума   Ответить с цитированием
Старый 18.02.2013, 10:00   #8
Новичок
 
Аватар для Smartly
 
Регистрация: 12.06.2009
Адрес: Салават
Сообщений: 78
Отправить сообщение для Smartly с помощью ICQ
По умолчанию

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



экуэксплорер видимо частично так и работает - иногда при добавлении параметров время выборки не меняется, видимо как раз когда они последовательно расположены - это надо проверить

кстати EcuExplorer пробовали со своей схемой/машиной?
Smartly вне форума   Ответить с цитированием
Старый 15.04.2013, 19:33   #9
Новичок
 
Аватар для akast
 
Регистрация: 22.11.2009
Адрес: Кодинск
Сообщений: 81
По умолчанию

Цитата:
есть подробное описание и инициализация которая расскажет что ваш ecu поддерживает и адреса по которым параметры лежат и арифметика вся.
остается только последовать вашему алгоритму и разом вытаскивать все параметры.



экуэксплорер видимо частично так и работает - иногда при добавлении параметров время выборки не меняется, видимо как раз когда они последовательно расположены - это надо проверить

кстати EcuExplorer пробовали со своей схемой/машиной?
Спасибо за информацию.

Прочтите Несколько вопросов про OBDII-кабель и ECU пост №1, пункт 1, и ответный пост № 5

Сию несправедливость и стараюсь исправить.
akast вне форума   Ответить с цитированием
Старый 17.04.2013, 03:29   #10
Новичок
 
Регистрация: 09.07.2009
Сообщений: 76
Отправить сообщение для Nikopol с помощью ICQ
По умолчанию

Это справедливо для SSM2.

Первым делом ecuExplorer вытаскивает список поддерживаемых параметров, которые мозги могут возвращать. Вытаскивает из ответа на запрос инициализации.

Запрос отправляет только на скорости 4800 бод.

Мозги авто автора проигнорируют таком запрос.

Цитата:
есть подробное описание и инициализация которая расскажет что ваш ecu поддерживает и адреса по которым параметры лежат и арифметика вся.
остается только последовать вашему алгоритму и разом вытаскивать все параметры.



экуэксплорер видимо частично так и работает - иногда при добавлении параметров время выборки не меняется, видимо как раз когда они последовательно расположены - это надо проверить

кстати EcuExplorer пробовали со своей схемой/машиной?
Последовательное расположение байтов не обязательно, в SSM2 имеется запрос со списком требуемых байтов памяти. Притормаживают выдачу чаще всего мозги авто.
Nikopol вне форума   Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Вкл.



Текущее время: 22:55. Часовой пояс GMT.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc. Перевод: zCarot