Программа почти готова. Заступорился на расчете расхода топлива. Кто подскажет как имея те данные, которые отображаются в программе посчитать расход топлива в л/час? Версия прошивки у меня определяется по содержимому EEPROM. Для каждой версии прошивки оно немного отличается. Ну а дальше занимаемся тупым сравнением и смотрим где больше всего совпадений. Это, к сожалению единственный способ узнать хотя бы примерно, что за прошивка залита в ЭБУ. Если хочется прям совсем точно - то достаем микроконтроллер из платы, считываем содержимое FLASH'а программатором, ну а дальше опять методом сравнения... За 30). По образованию - электромеханик, работаю по специальности . А программирование - не более чем хобби. Basic и Pascal у меня были еще в школе, с тех пор ими и пользуюсь.
помнится, комрад, который разбирал пакеты, разочаровался в точности и плюнул на эту идею. если речь о моментальном расходе - имхо самое действенное: знать расход форсунки и dead time, принять давление в ней за постоянное и считать по длительности впрыска (помнить, что работают все пять форсунок - как будто включаются одновременно?)
С форсунками есть нюанс. Запустил схему в симуляторе, прошивка 5.0.3. На вход датчика Холла подан сигнал с генератора. На выходах управления форсунками появляются импульсы, причем одновременно на всех. Но так будет до тех пор, пока частоту входных импульсов не увеличить до 20Гц. После этого сигнал на форсунки начинает поступать по очереди на каждую из них. И все бы ничего, но не понятно как осуществляется синхронизация, датчика положения то у нас нету... Неужели методом тыка повезет/не повезет?
ахаха))) серьезно? ) ну хоть длительностью включения оно это компенсирует? может, оно считает, что наступает торможение двигателем (и кстати, а как оно понимает такие моменты?) может, чтобы оставался впрыск - надо и ДАДом поиграть чуть-чуть (не только оборотами)? симулятор - в смысле полностью софтовый, без чипа? мб в симуляторе кривая реализация? еще б посмотреть, насколько безопасно опрашивать прошивку по K-Line при высоких оборотах. вообще, конечно, неплохо бы видеть тайминги на живом авто - так сказать base map. ну и в частности, то время впрыска на скриншоте (2.225мс) - как оно соотносится с реальной длительностью пульса на пине
Торможением должен считаться момент, когда сработал концевик холостого хода, а обороты больше скольки-то (обычно >1600 об/мин). В этот момент форсунки должны отключаться до тех пор, пока обороты не снизятся. Не знаю реализовано ли это в лискаре. Симулятор чисто софтовый. Сколько раз им пользовался, всегда результат адекватный был, вряд ли и сейчас он врет). Будет время, подцеплю осцилл к форсункам и сравню с тем, что прога показывает и с тем, что в симуляторе получается.
а, ну вот, когда на генераторе обороты поднимал - изменение концевика-то тоже надо просимулировать? а можешь, плз, скринкаст запилить, как работает симулятор? (конечно, если не сложно - дюже интересно!) к форсункам цеплять - очень неудобно. имхо разве что в к самому блоку. а еще у нас же есть клапан адсорбера, который,кажется, управляется как раз ЭБУ двигателя - и вот любопытно, каков алгоритм его работы - при каких условиях он включается?
Блин, либо прога вообще хрень показывает, либо я чего-то не понимаю. Первый скрин - частота импульсов 17Гц, по диагностике - это 400 об/мин. Желтый цвет - импульсы с генератора, голубой - форсунка 1 цилиндра, розовый - 2 цилиндр, зеленый - 5 цилиндр. Импульсы подаются одновременно на все форсунки. Осциллограф там 4-х канальный, поэтому 4 и 3 цилиндр на осциллограмму не влезли, но там то же самое, что и на других цилиндрах. Прога показывает время впрыска 2.575мс, а на осциллограмме время открытия одной форсунки 4.58мс. Второй скрин - частота на входе 32Гц, обороты по программе - 750об/мин, время впрыска 2.45мс, на осциллограмме - 4.38мс и форсунки открываются уже не одновременно, а по очереди 1-2-4-5-3. Причем одна форсунка открывается по фронту входного сигнала, а следующая - по спаду и т.д. Концевик я моделировал кнопкой. Бесполезно, его работа в прошивке так и не реализована. У меня на плате под него даже транзистор не запаян.
мдее. может, вывести управляющий провод на кнопку на панель приборов... (и все же, когда правильно включать этот клапан?) про импульсы: разница получается около 2 мс - может это и есть dead time. ну или еще варианты: 1. лискаровские мс - условые попугаи (тогда вопрос - они совсем от балды, или все же с каким-то коэффициентом привязаны к реальной длительности). 2. симулятор показывает фигню. а! ну так 400 - это же стартовые обороты, там идет кратное обогащение смеси. надо смотреть в разных режимах. обороты от холостых (те же 750) до каких-нибудь дву-трех тысяч. но, получается, нифига он не параллельный, а бьет вразнобой разными форсунками? вот это новость, конечно! странно, как они считают - по фронту, или по спаду. и, видимо, геометрия коллектора позволяет такое чудить... может, с нагрузкой/оборотами оно переходит в парллельный режим?
плюс еще генератор импульсов вряд ли похож на настоящий датчик холла (сомневаюсь, что duty cycle там 50%) хотя погуглил фотку шторки - похоже на 50%?
А, все, разобрался. Время открытия форсунок же зависит от напряжения, подаваемого на них. ЭБУ это учитывает, оказывается и при снижении напряжения в бортсети увеличивает время открытия форсунок. При моделировании я этот момент упустил. Теперь по программе - 2.225мс, по симулятору 2.80мс, как раз ~0.6мс на открытие форсунки.
Добрый день. Перелопатил тему два раза,досталась AUDI100 44 двжок RT, стоит ЛИСКАР, KKL 409.1 подключаю никаких данных не показывает,жму на окно записать мотор глохнет, в Ox ставлю параметер 124, записываю заводится.Всю башку изломал.Посоветуйте чёнить.Спасибо
но реально что-ли по каждому изменению уровня просто первой попавшей форсункой фигачат? с тем же успехом можно было моновпрыск сделать? ))
Не то, чтобы совсем уж как попало, последовательность работы цилиндров совпадает, а вот как идет синхронизация без ДПКВ - я не знаю. До недавнего времени я и думал, что это - моновпрыск, а как выяснилось - не совсем так. Это коэффициент смещения карты наполнения цилиндров. Он подбирается так, чтобы на ХХ топливная коррекция была близка к 100%. Это косяк лискаровской программы. Когда вы нажимаете кнопку WR тот параметр, который последним редактировался записывается в ЭБУ. А теперь представим ситуацию, когда вы просто жмете WR после запуска программы. В группе параметров по умолчанию выбрано везде 00, и редактировать вы ничего не редактировали, т.е. результат соответствует значению 00. Что будет если параметр 0x00 = 0? Напомню, что этот параметр отвечает за сдвиг топливной карты. Правильно - загонит подачу топлива в 0 и двигатель просто заглохнет. З.Ы. свою версию диагностической программы доделал, можете попробовать)
Такое может быть при нестабильной связи. В конце каждого пакета данных, полученного от блока, есть контрольная сумма. Если данные получены верно, контрольная сумма совпадает, то в программе происходит обновление значений, если не совпадает - ничего не меняется. Для того, чтобы записать какой либо параметр в блок, достаточно отправить ему соответствующую команду. Контрольная сумма в этом случае не считается, а блок сразу же эту команду исполняет
Алексей,скачал,запустил но еще не подключал,хочу скромно сказать,ГЕНИЙ,спасибо!!! Супер. Вообщем эмоции.