![]() |
Starick
|
28.11.09 - 15:12
Сообщение
#141
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 125 Имя: Игорь Город: Украина, Николаев. Машина: Civic, MA9, D15Z3. Репутация: 10 |
||
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
sheff1422
|
28.11.09 - 16:19
Сообщение
#142
|
|
|
Новенький Группа: .Хондаводы. Сообщений: 23 Имя: Yura Город: Kharkov Машина: Accord 6th Репутация: нет |
Хм уже неплохо. ИМХО можно наложить тахометр на спдометр или сделать тахометр другой шкалой чтобы места меньше занимал. Например как у приборки в s2000 ![]() + ID ECU ИМХО не нужно ) Сообщение отредактировал sheff1422 - 28.11.09 - 16:20 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mayhem
|
28.11.09 - 22:22
Сообщение
#143
|
||
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 625 Имя: Андрей Город: Сороковка Машина: EG8 VTEC JDM Репутация: 21 |
а зачем вообще выводить на БК приборы которые итак есть на комбинации? фон я бы сделал тёмным(или переключатель день/ночь), иначе в глаза бить будет, при втеке менял его цвет например на зелёный, а при приближении к отсечке на красный - так эту информацию можно будет видеть боковым зрением, ведь при тапке в пол не до разглядывания малюсеньких лампочек. накидал тут пробный интерфейс своей проги, пока заполнен рандомом: правда комп завис и ничего не сохранилось, только скрин успел сделать((( Сообщение отредактировал calipso - 28.11.09 - 22:30 |
||
|
|
![]() |
||
|
│ │
Цитировать
│
Мультицитата
|
![]() |
|
leonidu
|
28.11.09 - 22:34
Сообщение
#144
|
|
![]() Новенький Группа: .Хондаводы. Сообщений: 39 Имя: Леонид Город: Ростов-Дон Машина: HONDA CRV-1 Репутация: 2 |
Цитата х единсвенная пока проблема: мой старый шнурок благополучно умер ещё год назад, а в нашей деревне не то чтобы микросхемы, даже транзисторов не найти, может кто подскажет в подручной электронике откуда транзисторы для шнурка выпаять можно? иначе придётся ждать пока по почте придут. Может эта подойдёт? http://chiptuner.ru/content/kline/ И по сложней. http://www.blafusel.de/obd/obd2_obdii_obd-2_list_me_en.html |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mayhem
|
29.11.09 - 10:07
Сообщение
#145
|
||
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 625 Имя: Андрей Город: Сороковка Машина: EG8 VTEC JDM Репутация: 21 |
написал полностью функциональное тело программы за 6 часов)): осталось только настроить обмен с мозгом. теперь всем можно управлять из ини файла: Содержание:
в иньке ещё будут офсеты и размеры. обратите внимание на рачсёт датчика под номером 3. update Содержание:
вот так будут логиться флаги (формула выделяет 4-тый бит) как быть с двумя байтами? первый умножаем на 256 и плюсуем второй? Сообщение отредактировал calipso - 12.12.09 - 20:49 |
||
|
|
![]() |
||
|
│ │
Цитировать
│
Мультицитата
|
![]() |
|
rvs
|
30.11.09 - 16:19
Сообщение
#146
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 65 Имя: Валентин Город: Питер Машина: honda - logo Репутация: 5 |
||
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mayhem
|
30.11.09 - 21:33
Сообщение
#147
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 625 Имя: Андрей Город: Сороковка Машина: EG8 VTEC JDM Репутация: 21 |
d1/256+((d1)mod(256))*256 -впринципи, так можно поменять байты местами, чтоб не плодить перменные. в парсере которой я использую их количество ограничено 30-ю, но для универсальности каждому датчику сообщаю весь набор переменных. следуя коцепции моей программы можно создать невидимый датчик и читать перый байт, а во втором датчике отображать обе переменные: Содержание:
просто не хочу делать много процедур инициализации под разные виды датчиков, хочу чтобы все они были унивестальными. возможно в потоке ответа биты в байте записываться не справа на лево(от младшего к старшему), а наоборот, или нет? формулу перевёртывания бит парсер точно не потянет))) update всё, догнал что нужно делать, нужно отвязать визуальную часть от переменных, тоесть инициализировать их отдельно, тогда их количество можно будет варьировать независимо от логов. update2 переписал пол тела проги, теперь конфиг для 2-х датчиков выглядит так: Содержание:
к тем кто кодит: общий подход у меня правильный? или может чтение порта запускать отдельной нитю и анализировать преабулу чтобы запиать пришедший байт в нужную переменную? чтоб проверить правильность обмена нету шнурка, когда настрою выложу альфа версию, у кого есть желание попробывать в таком виде как она есть сейчас - пишем в ПМ. update3 совсем забыл про флаги: Содержание:
Сообщение отредактировал calipso - 12.12.09 - 20:51 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
rvs
|
01.12.09 - 10:33
Сообщение
#148
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 65 Имя: Валентин Город: Питер Машина: honda - logo Репутация: 5 |
возможно в потоке ответа биты в байте записываться не справа на лево(от младшего к старшему), а наоборот, или нет? формулу перевёртывания бит парсер точно не потянет))) к тем кто кодит: общий подход у меня правильный? или может чтение порта запускать отдельной нитю и анализировать преабулу чтобы запиать пришедший байт в нужную переменную? Биты идут в обычном порядке. Работу с портом желательно реализовать в отдельном потоке. Читать по одному датчику очень накладно. Теряешь кучу времени и данных, соответственно увеличивается интервал опроса датчиков и график будет очень ломанным. Например лямбду или форсунку не получится точно логгировать. Читать желательно группы байт, так быстрее. Если анализировать с преамбулой, то записанный лог можно всегда парсить заново, формулы поменять. А если в лог писать значения или вычисленные величины, то теряется универсальность проверка бита на включенность в delphi выглядит примерно так: var b:boolean; ........ if( (value and (1 shl (номер бита))) != 0 ) then b = true else b = false; Сообщение отредактировал rvs - 01.12.09 - 10:39 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mayhem
|
01.12.09 - 13:19
Сообщение
#149
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 625 Имя: Андрей Город: Сороковка Машина: EG8 VTEC JDM Репутация: 21 |
Цитата проверка бита на включенность в delphi выглядит примерно так: как это записать на языке я знаю))) но интерпритатор которой я использую для формул не знает команду shl, он умеет производить только математические вычисления. |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
slider26
|
02.12.09 - 06:52
Сообщение
#150
|
|
|
Хондавод ![]() Группа: .Хондаводы. Сообщений: 89 Имя: Денис Город: Красноярск Машина: Honda CAPA, D15B, CVT, 1998 Репутация: 7 |
Цитата проверка бита на включенность в delphi выглядит примерно так: как это записать на языке я знаю))) но интерпритатор которой я использую для формул не знает команду shl, он умеет производить только математические вычисления. Вот еще способы - вдруг пригодятся Для того, чтобы определить включенность n-го бита, необходимо число разделить на 2 в степени (n+1). Если дробная часть числа меньше 0.5, то бит выключен, иначе включен. По другому: Если ЦелаяЧасть(число/(2 в степени (n+1)) <> ЦелаяЧасть(0.5 + (число/(2 в степени (n+1))), то бит включен, иначе выключен. Т.е. для первого бита делим на 4, для 2-го на 8 и так далее. В случае отсутствия функций округления, можно попробовать использовать присвоение дробного числа переменной целого типа (если, конечно, интерпретатор это разрешит). Как то так, если я еще не забыл математику Сообщение отредактировал slider26 - 02.12.09 - 06:58 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mazai
|
03.12.09 - 12:45
Сообщение
#151
|
|
|
Новенький Группа: .Хондаводы. Сообщений: 30 Имя: Mazai Город: Maloyaro Машина: civic Репутация: нет |
народ если не сложно дайте ссылку или напишите распиновку диагностического разъёма, где там К линия где + где земля....ищу в инете, помню находил, сейчас не могу найти, скачал данную прогу, собрал уже 2 адаптера один мастер кит com-ский, второй по схеме предложеной Staric, вчера пробовал в гараже подключится ничего не получается, от компа сигнал идёт мозги ничего не выдают, пробовал по разному пихать в 3-х контактный диагностический разъём, у меня 2 колодки там 2-х контактная для самодиагностики и 3-х контактная для диагностики, только где там К линия не понятно, пробовал мультиметром найти, ничего что то не получилось, надо точно знать где К линия у меня D15B7 дрыг, мозги по ходу OBD1 всё норм...HELP
|
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mazai
|
03.12.09 - 12:56
Сообщение
#152
|
|
|
Новенький Группа: .Хондаводы. Сообщений: 30 Имя: Mazai Город: Maloyaro Машина: civic Репутация: нет |
всё нашёл ![]() 1 K-линия диагностики 2 Питание +12В (АКБ) 3 Масса 4 Используется для считывания медленных кодов самодиагностики 5 Используется для считывания медленных кодов самодиагностики буду экспериментировать дальше)))) вопрос такой, с моими мозгами будет работать ли?)))) у меня P06 мозг |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Mayhem
|
03.12.09 - 21:22
Сообщение
#153
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 625 Имя: Андрей Город: Сороковка Машина: EG8 VTEC JDM Репутация: 21 |
пообщался с rvs, снова, наxpен, переделал всю прогу)) теперь в конфиге добавились новые строки Содержание:
теперь можно формировать количество и размер запросов в ручную, правда теперь смещение переменной указывается не от абсолютного начала данных, а от начала области которой она принадлежит. Сообщение отредактировал calipso - 12.12.09 - 20:52 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Starick
|
04.12.09 - 10:27
Сообщение
#154
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 125 Имя: Игорь Город: Украина, Николаев. Машина: Civic, MA9, D15Z3. Репутация: 10 |
Цитата пообщался с rvs, снова, наxpен, переделал всю прогу)) Переделки-это мелочи, главное чтоб желание не пропало.))) |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
rvs
|
04.12.09 - 18:50
Сообщение
#155
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 65 Имя: Валентин Город: Питер Машина: honda - logo Репутация: 5 |
Переделки-это мелочи, главное чтоб желание не пропало.))) Starick, проведи ликбез по теории плиз. Мне известно: 1 время открытия форсунки и обороты пихона. Как его перевести в литро часы ? 2 общее время открытия форсунок. как его перевести в потраченные литры? 3 зная ответы на первые 2 остальное я посчитаю (мгновенные литры на 100, средне литры на 100, ...) Сообщение отредактировал rvs - 04.12.09 - 18:51 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
AIRKrug
|
05.12.09 - 13:05
Сообщение
#156
|
|||
![]() Ветеран форума III-й степени ![]() ![]() Группа: .Хондаводы. Сообщений: 2.977 Имя: Игорь Город: Саянск`38, Ирк. обл. Машина: Odyssey`97 model E-RA1M F22B Репутация: 66 |
Можно посчитать, просто ты забыл о еще одном параметре - производительности форсунки.
|
|||
...а пингвин - это разжиревшая USовская ласточка. (Ю. Никитин)
...В данный момент стена этого дома, с моей стороны, белая...! [Свидетель] Robert A. Heinlein (И среди пингвинов попадаются человеки!) |
![]() |
|||
|
│ │
Цитировать
│
Мультицитата
|
![]() |
||
Starick
|
05.12.09 - 19:00
Сообщение
#157
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 125 Имя: Игорь Город: Украина, Николаев. Машина: Civic, MA9, D15Z3. Репутация: 10 |
AIRKrug, верно говоришь, что нужно знать производительность форсунки. to rvs Ну, в принципе там ничего сложного. Если просто окончательную формулу, без вывода, то она выглядит так: Мгнов. расход (л/час) = qf*n*time*0.00000002; где qf - производительность форсунки см3/мин. (у меняпроизводительность форсунки 235 см3 в минуту) n - частота вращения движки в об/ мин (тут все ясно) time - время открытия форсунки, которое вычисляется по формуле time=(time_h*100)+(time_l*100/255); Вроде преобразование верное, сидел с осциллом сравнивал. time_h,time_l - соответственно значения старшего и младшего байта. Соответсвенно мгновенный расход по километражу (л/км) = (qf*n*time*0.000002)/v все тоже самое, v - скорость авто, км/час., только помни, что на нуль делить нельзя., я вычисляю расход по километражу, когда скорость больше 10 км/.час Эти формулы более менее точны, в той версии, что висит на сайте косяк в расходах, так как я посчитал, что форсунка открывается 1 раз на 4 оборота движки, а не на 2, че то подклинило меня))))). Ну соответственно, чтоб узнать количество израсходованного топлива, нуно знать время между двумя считываниями данных с ECU, и умножаешь его на мгновенный расход. Ну это так, в кратце, если нужно полный вывод формул, то выложу чуть позже, так как описывать это долго. Сообщение отредактировал Starick - 05.12.09 - 19:09 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
rvs
|
07.12.09 - 11:36
Сообщение
#158
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 65 Имя: Валентин Город: Питер Машина: honda - logo Репутация: 5 |
Спасибо. Почти все ясно. Одно не понятно. qf*n* time* 0.000 000 02; time - в милисекундах; qf - в см3 Итого: (qf/1000)литры в мин * n * (((time/1000)секунды)/60 минуты) * 2(впрысков за оборот) = (литры в минуту). А (литры в минуту) * 60 = литры в час. Вроде так должно быть Не совсем понятен последний множитель. Объясните И еще. Информация по поводу интерпретации у меня есть 3 методики. Какая из них более точная я не знаю // Время форсунки // word value = ((int)hi<<8) + lo //InjTime = 3.2 *(Word)value / 1000 У доктроника //Injtime=(time_h*100)+(time_l*100/255); //Injtime= (value / 400d) + 0.6d; Сообщение отредактировал rvs - 07.12.09 - 11:56 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
Starick
|
07.12.09 - 12:34
Сообщение
#159
|
|
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 125 Имя: Игорь Город: Украина, Николаев. Машина: Civic, MA9, D15Z3. Репутация: 10 |
Нет, ничего не переводишь, никакие дополнительные преобразования не делаешь, уже все учтено, просто подставляешь значения и считаешь, т.е. у меня чтоб узнать мгновенный расход литров в час = 235*n*time*0.00000002, соответственно у expo на машинке расход будет вычисляться так = 325*n*time*0.00000002, так, как у него форсы "жирнее", последний коєфф. как раз и учитывает все преобразования. Сообщение отредактировал Starick - 07.12.09 - 12:46 |
|
|
|
![]() |
|
|
│ │
Цитировать
│
Мультицитата
|
![]() |
rvs
|
09.12.09 - 17:22
Сообщение
#160
|
|||
![]() Хондавод ![]() Группа: .Хондаводы. Сообщений: 65 Имя: Валентин Город: Питер Машина: honda - logo Репутация: 5 |
Привет всем. Выкладываю на общее пользование первую альфа версию логгера OBD1, OBD2a пароль на скачку - мой ник http://www.filehoster.ru/files/ea5570 Весит 27Мб !!!!. Дальнейшие версии будут без DotNet Framework 2.0 SP2, соответственно весить будут порядка 2-3 Мб. Проверял только на своем ЕКУ, который не подключен к автомобилю. Для работы требуется DotNet Framework 2.0 SP2, который включен в setup. Если у Вас Vista или Win7, то нужен тот же пакет но версии 3.5 SP1 (качается отдельно, т.к. весит порядка 250 мб. Не стал выкладывать). Как работать: подключить k-line к авто (в этой теме уже обсуждалось). Выбрать порт соединения и нажать кнопень подключения. Должно работать сразу. Есть кучка настроек на соответствующей странице, . Что мне требуется для дальнейшей разработки: Очень хочу получить Ваши логи от машин в режиме реальной езды. Причем для дальнейшего анализа логов оченно прошу Вас Ставить режим работы "Читать все (медленно)". В ручную настройку режима работы лучше не лезть, но если очень хочется то можно Откуда берутся логи? При работе программы все ответы и запросы к ЕКУ запоминаются и могут быть записаны в файл. Для ручной записи лога в файл нужно пользоваться кнопкой с дискетой. Если стоит галочка "Сохранять данные при выходе", то при выходе лог работы будет сохранен в файл AutoSavedHistory.log. для файлов логов есть спец. каталог, называется LogStorage, находится рядом с запускаемым файлом программы. Логи можно проигрывать с разной скоростью, от почти мгновенной, до реальной. Есть графики, которые можно тоже анализировать. Есть консоль событий, причем события можно сохранять в виде HTML. Важно: сохранение из консоли событий ни коим образом не сохраняет лог запросов-ответов, который нужен мне для анализа. ПС: почему не проверял на своей машине ? Все хозяйство для разработки лежит на столе в куче проводов. На разработку проги есть очень мало времени. Поэтому не могу каждый раз таскать железки из машины на стол и обратно и подключать их. Жду логов, Пожеланий и рекомендаций. Если есть Вопросы, Спрашивайте. Спасибо. |
|||
|
|
![]() |
|||
|
│ │
Цитировать
│
Мультицитата
|
![]() |
||
![]() |
| Текстовая версия · Удалить установленные форумом cookies · Отметить все сообщения прочитанными · | Сейчас: 08.07.26 - 07:41 |