Как по мне слишком много переменных в данном алгоритме, для своего впускного коллектора будет своя таблица Tcharge_coff(rpm, map), не имея настроенной наблицы VE, использовать такой алгоритм и пытатся настроить одновременно 2 таблицы - гиблое дело... Пока просто ввел одномерную поправочую таблицу от температуры двигателя, которую скомуиздил с инжеткорной заводской прошивки.... Настрйока продложатеся...
Были проблемы с зажиганием, датчик холла + трамблер всему виною.
Замнил трамблер на ДПКВ+ мегу88(была под рукой) сейчас думаю поставить secu-3, уж больно нравится мне менеджер редактрования прошивок УОЗ...
Да я бы не сказал, вручную конечно муторно но вполне возможно, там надо то для начала только несколко точек по темпиратуре. Простейший алгоритм настройки очень прост (от каламбур то)), делаем ClosedLoop через ДК и отключаем все обогащения/обедения для переходных режимов, потом плавно на всех нагрузках и оборотах прокатываем движок собирая логи. Получив таблицу наполнения не сложно проконтролировать адекватность таблицы коэфициента темпиратуры заряда (замеры при других темпиратурах), как показывает практика требуется менять только VE и УОЗ, остальное практически без изменений ну кроме может сооовсем экзотических движков (нампример мой мотоциклетный оппозит воздушного охлаждения).
Меня на данный момент больше интересует алгоритм ускорительноо насоса, тут проскакивают куски программ, но ни одной формулы, вот к примеру:
Как просматривать состояние педали, к примеру берем показания АЦП каждые 0,1 секунды, далее смотрим смещение и в зависимости от смещения выбыираем коэффициент?
Если педаль резко нажали, а потом немного отпустили, то выходит что был положительный коэффициент, а потом стал отрицательный и получился провал... Как быть со временем воздействия обогащения, оно постоянно или меняется от скорости и смещение педали газа?
Может постепенно уменьшать обогащение по истекании времени ускорительного насоса.
Что делать если резко нажали тапку в пол, ждать следующего такта двигателя чтоб открыть форсунку или открывать немедленно, умножать на коэффициент время впрыска или добавлять? Время воздействия насоса каким образом делать? Можно попробовать несколько тактов двигателя, а может может доли секунды? Зависисмость добавочного топлива от температуры двигателя?
В общем я попытался осуществить сначала просто мультипликативный коэффициент к времени впрыска, вышло плохо (умножалось максимум на 2), когда начал использовать аддитивный, то уже машинка стала работать почти без провалов, но все же присутствовали хлопки во впускной коллектор.
Что делать при опускании педали, обеднять ли смесь?
Алгоритм наподобии ПИД регулятора в зависимости от дельты наполнения. Если разжевывать то получается следующее:
1. Пропорциональная состовляющая - в зависимости от дельты наполнения между текущим и предыдущими значениями наполнения
2. Интегральная состовляющая - хранятся данные по наполнению за последние несколько циклов (возможно с весовыми коэфициентами в зависимости от "давности" значений)
3. Диферинциальная состовляющая - пытаемся предугадать скорость дальнейшего изменения наполнения (к примеру если в течении последних циклов дельта росла предпологаем что она и дальше будет расти).
Работает в обе стороны и в обогащение и в обеднение.
Все остальное это по сути сильно упрощеные варианты подгона кода под результат.
Экономайзер нахрен не нужен, посмотри внимательно на описание алгоритма, там есть таблица которая задает желаемую смесь в зависимости от наполнения, к примеру на низких и средних нагрузках делаем экономичную(16-16,8), а на больших нагрузках мощностную (12,5-13).
Алгоритм запуска уже гдето разжевывал, правда не помню где именно.
Впрыск одновременный во все цилиндры через каждые 180гр.
Таблицы:
1. таблица времени впрыска обороты/темпиратура двигателя
2. таблица поправки по темпиратуре воздуха
3. таблица поправки в зависимости от количества оборотов от начала вращения коленвала
В зависимости от темпиратур и обротов определяется базовое время впрыска, после начала вращения КВ умножая время впрыска на коэфициент из третий таблицы как бы "качаем" время врпыска из богатой смеси в бедную и обратно (хорошо помогает при запуске).
P.S. в пусковых режимах основной алгоритм практически не работоспособен из за гиганских пульсаций давления и мизерных расходов воздуха, поэтому применяют такую вот примитивную табличную поделку которой в принципе достаточно
Мда, наверное надо бы мне составить нормальный документ по алгоритмам, со структурированным описанием, примерами таблиц и кода...
Если есть желающие увидить такой документец то отпишитесь т.к. если это никому не надо я проделаю лишнюю работу.
nikll wrote:Мда, наверное надо бы мне составить нормальный документ по алгоритмам, со структурированным описанием, примерами таблиц и кода...
Если есть желающие увидить такой документец то отпишитесь т.к. если это никому не надо я проделаю лишнюю работу.
почему не надо, надо! оно когда не разбросано - проще рассмотреть всё в едином плане и увязать в единое целое а не клочками мозаики.
я например нормального описания алгоритма того же января так и не нашел, самое многое - здесь у тебя.
Last edited by zelya on Wed Jul 25, 2012 11:00 am, edited 1 time in total.