PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Разработка программ (http://pccar.ru/forumdisplay.php?f=27)
-   -   DiagnozNK 1.21 (http://pccar.ru/showthread.php?t=15115)

Bоnus 26.05.2011 14:59

DiagnozNK 1.21
 
Вложений: 2
Новая версия диагностической программы Андрея Некрасова DiagnozNK 1.21 .Отличительная особенность этой программы от остальных заключается в том, что теперь пользователю доступны любые настройки. От изменения вида меню и в полть до редакции протокола обмена данными с ЭБУ. Все настройки хранятся в отдельном файле, который и отвечает за перестройку основной программы. Описание редактирования прилагаются. Особенный интерес программа представляет для владельцев автомобилей, у которых еще нет своей диагностической программы. Данную программу можно использовать как базовую и наложить на неё любой протокол. В программе имеется удобный монитор данных обмена с ЭБУ в реальном времени. Также имеется возможность посылать в ЭБУ отдельные команды и наблюдать ответы.
Вложение 22210
Вложение 22211

nechaev.fire.18 10.06.2011 23:45

Цитата:

Сообщение от Bоnus (Сообщение 185216)
Новая версия диагностической программы Андрея Некрасова DiagnozNK 1.21 .Отличительная особенность этой программы от остальных заключается в том, что теперь пользователю доступны любые настройки. От изменения вида меню и в полть до редакции протокола обмена данными с ЭБУ. Все настройки хранятся в отдельном файле, который и отвечает за перестройку основной программы. Описание редактирования прилагаются. Особенный интерес программа представляет для владельцев автомобилей, у которых еще нет своей диагностической программы. Данную программу можно использовать как базовую и наложить на неё любой протокол. В программе имеется удобный монитор данных обмена с ЭБУ в реальном времени. Также имеется возможность посылать в ЭБУ отдельные команды и наблюдать ответы.
Вложение 22210
Вложение 22211

День добрый.
боюсь спросить...в программе есть графические элементы... ну в виде приборов?
а то пробовал дигимото, так почти ничего не показывает. попробую как в этой.
если все получится-отпишусь .

Leha080 11.06.2011 00:29

а какой адаптер поддерживает, и какие в базе протоколы???

Bоnus 13.06.2011 21:58

Вложений: 1
Цитата:

Сообщение от nechaev.fire.18 (Сообщение 186582)
День добрый.
боюсь спросить...в программе есть графические элементы... ну в виде приборов?
а то пробовал дигимото, так почти ничего не показывает. попробую как в этой.
если все получится-отпишусь .

Программа гибкая. Можно вставить и приборы. Например чтото в види этого.
Вложение 22506
Цитата:

Сообщение от Leha080 (Сообщение 186584)
а какой адаптер поддерживает, и какие в базе протоколы???

Любой К-лине адаптер.
В архиве лежат профили под ЭБУ Delphi MT20U, Boch 797, Январь.

dedov 05.07.2011 10:59

Bоnus

у тебя на скрине версия 1.22
как бы ее заполучить?

и может подскажешь, есть ли официальный сайт автора программы?

Bоnus 05.07.2011 15:15

Сайта у программы нет. Только страничка на форуме. Здесь можно обсуждать, вносить предложения, делится результатами тестирования.
Перезалил версию v1.22 .


Изменения в версии 1.22

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

Если при расчете формулы происходит деление на «0», теперь выполнение программы не останавливается, об этом просто сообщается в окне лога справа, а значение рассчитываемого параметра принимается за «0»

Доработан интерпретатор формул.

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

Также добавлена возможность при расчете формулы параметра использовать значение другого параметра. Для этого нужно использовать слово PARAM(«Название параметра»).
Примечание : Желательно чтобы используемый при расчете параметр был описан ранее текущего, в файле профиля.

Пример :

[PARAM] Напряжение датчика mV T1 1 2101 N BYTE(ECU,11)*19,53 1
[PARAM] Напряжение датчика (В) V T1 1 2101 N PARAM(Напряжение датчика)/1000 1

Также расширена возможность использования числовых параметров (тип «N»).
Теперь они могут не просто принимать значение полученное в результате расчета формулы, а агрегировать (накапливать сумму), принимать значение дифференциала (изменения), среднего арифметического и накапливать сумму дифференциалов значения параметра.

Мутно получилось, теперь подробнее ))

Для того чтобы указать что описываемый параметр должен не просто принять значение полученное в результате расчета его формулы, а определенным образом рассчитать его учитывая предыдущие значения, нужно в описание его типа после буквы N дополнительно указать один из следующих литеров :

A – параметр будет накапливать сумму всех значений
B – параметр будет принимать значение дифференциала (изменения относительно предыдущего значения)
C – параметр будет принимать значение среднего арифметического всех значений
D – параметр будет накапливать сумму дифференциалов (см. «B»)

Пример :
Допустим, мы путем расчета по формуле из ответа ЭБУ уже получили 5 значений (в примере это 5,1,3,4,9) какого либо параметра. В таблице ниже приведены примеры как он будет подсчитываться для простого параметра (тип «N») и для параметра накапливающего значения (тип «Nx»).

N 5 1 3 4 9
NA 5 6 9 13 22
NB 0 -4 2 1 5
NC 5 3 3 3.25 4.4
ND 0 -4 -2 -1 4

Накапливающий значения параметр типа «B» (дифференциал) можно использовать например для наглядного отображения изменения угла опережения зажигания.

Накапливающий значения параметр типа «C» (среднее арифметическое) можно использовать для подсчета среднего расхода за период диагностики.

Накапливающий значения параметр типа «D» (сумма дифференциалов) можно использовать например для подсчета количества километров, пройденных авто за период диагностики.

zanuda 05.07.2011 16:39

А прикрутить ее к ИКАРу ктонить сможет ?

vva2002 29.08.2011 13:04

Цитата:

Сообщение от Bоnus (Сообщение 188998)
Перезалил версию v1.22 .

К сожалению,что-то не так с файлом загрузки. Хотелось бы посмотреть последнию версию программы.

Bоnus 29.08.2011 22:48

Может при редактировании в нем пропущен или наоборот поставлен лишний знак табуляции разделяющий параметры? Перезалил более свежую версию.

Actyon 29.08.2011 23:43

а ОБД-I проток поддерживает? у меня GM 1992года, там ALDL думаю сделать на транзисторах адаптер

Bоnus 19.11.2011 19:29

Добавлен протокол двигателя Acteco.

Recard 19.11.2011 22:35

Довольно таки интересная программа, проблема в том что не поддерживает елм адаптер и к сожалению не могу скачать с сайта(((Поэтому не смог пощупать, перезалейте на обменник.

solonja 06.12.2011 21:45

Протестил программу с январем
В целом работает(после некоторых поправок) но есть куча вопросов и неточностей

Bоnus 07.12.2011 16:31

На кучу вопросов готов ответить :yes4: И что за неточности обнаружились?

solonja 07.12.2011 20:24

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

Bоnus 07.12.2011 21:33

В файле профиля Января Январь-Евро2.dnk в строке
[PARAM] Напряжение бортсети Вольт T2 1 2101 N BYTE(ECU,20)*0,05+5,2 1
после N поставьте 1 (N1) будет показывать с одним знаком после запятой. Коректируйте аккуратно. Не сотрите невидимые знаки табуляции. А то прийдется коректировать заново. Можно коректировать открывши файл профиля экселем. Весь интерфейс можно переписать под себя в файле Январь-Евро2.dnk . Есть описание как это делать, или по аналогии с другими профилями .dnk

solonja 07.12.2011 22:43

а с температурой двигла что делать ????? показывает точно не правильно
и еще вопросы если с друго профиля взять средний расход и т.д. будет работать ??? в архиве есть файл config.ini в нем иия так понял можно цвет менять и положение окна на экране но на изменение нет реакц

Bоnus 09.12.2011 00:23

Вложений: 2
Цитата:

Сообщение от solonja (Сообщение 204315)
а с температурой двигла что делать ????? показывает точно не правильно

Профиль под Январь писал Андрей Некрасов. У него была возможность проверить, у меня нет под рукой Января, и я проконтролировать немогу. Попробуйте вот этот профиль Вложение 24737 Я подкоректировал его формулы согласно заводской документации по протоколу Января Вложение 24736
Чтобы проверить показания температуры двигателя запустите программу на полностью холодной машине, не запуская двигателя. Показания температуры охлаждающей жидкости должны совпадать с уличной температурой по за оконному домашниму градуснику. Потом можете запустить двигатель, войти в закладку графики, нажать запись GO!!!! и прогреть двигатель. Потом остановить запись снова нажавши GO!!!! и выгрузить в эксель. Открывши сохраненный файл эксель посмотрите столбик температуры ОЖ. Он должен начинатся с уличной температуры и постепенно поднятся до температуры прогретого двигателя.
Цитата:

Сообщение от solonja (Сообщение 204315)
и еще вопросы если с друго профиля взять средний расход и т.д. будет работать ???

Да будет работать только нужно сначала создать закладку, описать её размеры, описать какие будут индикаторы и по каким формулам будет выводится информация. И все заработает. ДиагнозНК создан как конструктор, позволяя пользователь конструировать программу под себя.
Цитата:

Сообщение от solonja (Сообщение 204315)
в архиве есть файл config.ini в нем иия так понял можно цвет менять и положение окна на экране но на изменение нет реакц

config.ini Лучше не трогать.

solonja 10.12.2011 20:27

Вопрос к Bоnus
По температуре : диагостировал двумя подряд программами mytester1.22 ICD ну и конечно же вашей получились расхождения при 0гр. у вас -8гр если нужно у меня есть прога фирменная от производителя бортовых компов ШТАТ как раз для теста бк по к-линии с компа (по случаю от друга досталась) могу скинуть там январь 5,7 и боши 797 и 70 работает четко все параметры на ура кроме температуры
я ее себе поставил и через виртуальный нульмодемный кабель тестировал
Кстати в ней в середине есть спецполя проверки правильности подсчета среднего расхода
В вашей проге средний расход считается по формуле из параметров ЭБУ а в протоколе Января я таких параметров не нашел
Ну и типа просьбы можно ли сделать все таки программу отдельную типа БортКомпа??

Andreww 20.12.2011 10:03

Доброго времени суток.
Вопрос к разработчику. Можно-ли средствами программы вычленить из какого-либо байта в ответе ЕКУ последовательность в 4 или 2 бита и представить в виде десятичного числа?
Моя цель: Получить значения кодов неисправности на LED по запросу
ReadCodesbyStatus.
Заранее благодарен за ответ.

GASCHE 20.12.2011 13:34

Цитата:

Сообщение от Recard (Сообщение 202317)
Довольно таки интересная программа, проблема в том что не поддерживает елм

Присоединяюсь. Планируется ли поддержка ELM?

Bоnus 23.12.2011 04:21

Цитата:

Сообщение от Andreww (Сообщение 205461)
Доброго времени суток.
Вопрос к разработчику. Можно-ли средствами программы вычленить из какого-либо байта в ответе ЕКУ последовательность в 4 или 2 бита и представить в виде десятичного числа?
Моя цель: Получить значения кодов неисправности на LED по запросу
ReadCodesbyStatus.
Заранее благодарен за ответ.

К сожалению пока такой возможности нет. Есть функция доступа к конкретным битам. Работа с группами бит не предусмотренна.
Цитата:

Сообщение от GASCHE (Сообщение 205479)
Присоединяюсь. Планируется ли поддержка ELM?

Технически это возможно, но смысла в этом нет. Скорость обмена через K-Line адаптор выше. Опрашивать ЭБУ можно чаще, и данные получать с более высокой "разрешающей способностью". K-Line адаптор дешевле и доступнее. Он более гибкий в плане возможностей. Например, в DiagnozNK есть возможность отправлять в ручном режиме любые команды напрямую в ЭБУ, и по встроенному монитору исследовать ответы. ELM пропустит через себя далеко не все команды. А прямые ответы ЭБУ наблюдать станет невозможно.

GASCHE 23.12.2011 09:16

Цитата:

Сообщение от Bоnus (Сообщение 205782)
ELM пропустит через себя далеко не все команды.

Интересное заявление, а пример можно? Да у ELM есть недостатки, не поддерживается ISO 9141-2 (fast init), нет или не известна возможность имения длительности импульса инициализации, но есть и огромное достоинство это CAN. И ни кто не призывает отказаться от K-Line, ELM можно прикрутить параллельно.

Andreww 18.01.2012 11:41

Уважаемый Bonus, можете ли вы изменить в программе Fmt byte заголовка запроса на $81, или на возможность его (или всего Header в целом) изменения в процессе формирования профиля?

Bоnus 18.01.2012 17:06

Цитата:

Сообщение от Andreww (Сообщение 207840)
можете ли вы изменить в программе Fmt byte заголовка запроса на $81

Так он и так там $81 (Запрос 81 11 F1 81 04)
Цитата:

Сообщение от Andreww (Сообщение 207840)
или на возможность его (или всего Header в целом) изменения в процессе формирования профиля?

Такой возможности небыло предусмотрено, так как заголовок программа ставит автоматически, в зависимости от длинны команды, согласно протоколу ISO-14230.(82 11 F1 21 01 A6 заголовок 82 так как команда двухбитная, и т.д.) Адрес ЭБУ можно сменить с 11 к примеру на 10 или 13. А в каких случаях появляется необходимость менять заголовок?

Andreww 18.01.2012 17:13

81 11 F1 81 04 это Start communication, а дальше начинается с $82.
Моя проблема в том, что ecu откликается только при заголовке 81 11 F1,
проверял по моду 21 00

P.S. Нет строгого соответствия ISO14230.

wizzen 20.01.2012 19:28

Автор!
А с ELM327 будет работать по K-line?

Bоnus 22.01.2012 00:59

Цитата:

Сообщение от Andreww (Сообщение 207896)
Нет строгого соответствия ISO14230.

Проверьте еще раз. Так не должно быть. Скорее всего вы ошиблись

Цитата:

Сообщение от wizzen (Сообщение 208190)
Автор!
А с ELM327 будет работать по K-line?

Изначально не предусматривалось. Ну может быть в одной из следующих версий.

Andreww 22.01.2012 09:07

To Bonus.
- - - - -

Электроник 30.01.2012 00:11

Программка мне понравилась спасибо Разрабодчику. !!!!!
Но есть проблема. У меня на ноутбуке c windows 7 при запуске проги открывается только кнопка «связь» и правое меню. А на гаражном компе где XP работает на Ура. Может программа заточена только под XP? Зарание спасибо.

http://s44.radikal.ru/i106/1201/2e/bb4da0c1732f.jpg

Andreww 03.02.2012 17:28

Вложений: 1
Сегодня пытался законнектиться при помощи адаптера COM-k line. [Com физический] За четыре часа кручения таймаутов, изменения скорости и перезагрузок законнектилась всего два раза (с перерывом примерно 4 час) при коннекте связь уверенная, не рвется ("на ходу переключался в окнах")
Одновременно сниферил COM порт при помощи SerialPortMonitor. Поизучав логи заметил, что StartCommunication запрос идет с задержкой 50-60 мс после окончания Twup, хотя по ISO 14230 должно быть TwupStartCommunication единым фреймом.

Вопрос: Это издержки работы порта или ошибка в программе? И как можно избавиться от промежутка?

Лог прилагаю.

Bоnus 03.02.2012 20:43

Вложений: 1
Электроник
Ну вобщем то да. Программа писалась на XP и под XP. Почему плохо отображается на Семерке нужно разбираться. Скорее всего что что-то с шрифтами.
Andreww
Все правильно. С момента начала импульса Wake up Pattern который длится как раз 50 миллисекунд (25 TiniL + 25 TiniH), через 50 миллисекунд начинается StartCommunication (81 11 F1 81 04)
Вложение 25328

Andreww 04.02.2012 06:47

Начало-3,409 это 0В (неопределенность)
3,409-3,415 это -Vcc (~6ms, log"1")
3,415-3.432 это 0В (~17 ms, неопределенность)
3,432-3,439 это +Vcc (~7ms, log"0")
3,439-3,457 это 0В (~18ms, неопределенность)

На требования Tinit Iso14230 не очень похоже, тем более, что MAX232 входное напряжение в зонах неопределенности на своем выходе трактует тоже неопределенно. Хочет-включит выходное напряжение, а хочет-нет.

P.S. 1) Исходя из графика процесс инициализации очень нестабилен, от этого возникают требования к использованию "проверенных" адаптеров.
2)Судя по графику, В течение первых ~5ms напряжение еще находится в зоне однозначности. Если ты прописал по одному биту, то что тебе мешает прописать допустим по 12 бит через 2мс? Тогда среднее значение действующего напряжения будет четко определяться в течение 25мс.

Bоnus 07.02.2012 19:43

Да не обращай ты внимание на график. Он снят через делитель, при помощи звуковой карты. А она не может постоянку держать. Так что на напряжение не обращай внимание, смотри только на временные интервалы. Внизу я нарисовал красным как все на самом деле обстоит.

Andreww 10.02.2012 10:21

Вложений: 1
Играл настройками длительности СТАРТ\СТОП импульса в файле dnk, при этом смотрел осциллограмму напряжения на k-line. Заметил следующее;

При изменении длительности в пределах:
а) 11-20мс;
б) 21-30мс;
в) 31-40мс
никаких изменений не происходит.

При выходе из предела - изменение скачкообразное:

в пределах а) TiniL=10ms TiniH=20ms
в пределах б) TiniL=20ms TiniH=30ms
в пределах в) TiniL=40ms TiniH=40ms

Пробовал с кратностью 1мс

Лог прилагаю

Andreww 13.02.2012 09:12

Сегодня повторил экперимент, но снимал напряжения с ноги Тх Com порта.
Скрины прилагаю. (Первое число в названии файла - время, которое выставлено в dnk, второе - номер попытки)

Andreww 13.02.2012 09:15

Вложений: 1
Вот архив.

Bоnus 13.02.2012 16:24

Непонятно. Какие-то нереальные интервалы времени у импульсов. Да еще и посторонний импульс предшествует. А каким осциллографом снимали?

Andreww 13.02.2012 17:27

Ну так о том и речь.

А осциллограф PV6501

sergbb 26.02.2012 04:04

Цитата:

Сообщение от Actyon (Сообщение 193995)
а ОБД-I проток поддерживает? у меня GM 1992года, там ALDL ...

Аналогичный вопрос, машинка ДЭО Ланос ( ЭБУ GM DELCO IEFI-6 )

Добавлю что скорость не стандартная 8192
и запрос на который отзывается ЭБУ F4 56 00 B6

Шансы есть ?:blush:


Часовой пояс GMT +4, время: 19:11.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot