Итак имеем авто Audi 100 с системой впрыска KE-Motronic. Основная "болезнь" этих аппаратов - износ потенциометра напорного диска, сам потенциометр находится на корпусе расходомера, имеет 2 резистивные дорожки по которым перемещаются контактные ползунки закрепленные на оси напорного диска, выглядит все это так:
- График_ПНД_1.jpg (34.01 КБ) 830 просмотров
Хочу заменить потенциометр на связку Arduino Nano + датчик абсолютного давления во впускном коллекторе ГАЗ 45.3829
Есть уже готовые решения, построенные на данном принципе, например эмулятор Winner-sa.
Но хотелось бы сделать своими руками и освоить программирование МК с помощью FL-Prog.
Собственно, просто заменить ПНД на ДАД и конвертировать сигнал при помощи одного только блока "нелинейное масштабирование" + ШИМ на выходе не получится, поскольку механический напорный диск прямо измеряет массовый расход воздуха а ДАД дает нам только давление во впускном коллекторе, то есть показания ДАД и ПНД будет отличаться.
Таким образом для полноценной эмуляции ПНД, нам необходимо иметь в памяти контроллера карту, где по оси X у нас будет разряжение в кПа ( напряжение с ДАД, пересчитанное в давление, по оси Y - обороты двигателя ( здесь я так понимаю нужно использовать блок "скоростной счетчик") а в ячейках карты прописываем заданное напряжение (ШИМ на выходе контроллера) которое будем подавать на вход синала ПНД в ЭБУ KE-Motronic (АЦП там по входу 8-битный).
Базовая карта "УОЗ от сигнал ПНД/обороты", в ЭБУ KE-Motronic имеет следующий вид:
- Карта UOZ -PND KE-Motronic 1.png (47.72 КБ) 830 просмотров
Остается вопрос как реализовать карту эмулятора " давление/обороты - напряжение ПНД" в памяти МК, делать из неё выборку в соответствии с оборотами и давлением полученными на входах ацп и скоростном счетчике и выводить напряжение эмуляции ПНД из нашей таблицы в виде шима на цифровой вывод ардуины.
P.S: Пардон за много букв.