Формирование импульсов зажигания
Угол опережения зажигания представляет собой знаковое число с разрядностью 8 бит и шагом 0.5 угловых градуса, что позволяет реализовать УОЗ в диапазоне от +72 до -56 угловых градуса. Для точного формирования импульса зажигания в главном цикле вычислений микропрограмма для каждого цилиндра производит индивидуальный расчет 4-х параметров:
1) Момент зажигания по номеру зуба ДПКВ (привязка по углу с точностью 6 градусов)
2) Задержка момента зажигания по углу, выраженная как коэффициент имеющий значение 1.00 при 6 градусах (привязка по углу с точностью 0.5 град)
3) Момент начала накопления энергии по номеру зуба ДПКВ.
4) Задержка момента накопления энергии по углу, выраженная как коэффициент имеющий значение 1.00 при 6 градусах.
При расчетах, из общего "базового УОЗ" после всех необходимых преобразований для каждого цилиндра вычитается смещение по детонации, и индивидуальная цилиндровая коррекция заданная в калибровках, результат делится на 6 (интервал зубьев по углу) и трансформируется с учетом нахождения 20 зуба диска в ВМТ 1 цилиндра. Остаток от операции деления умножается на 6 (выделяется) и трансформируется в раскладку задержки момента зажигания от выбранного зуба.
Время накопления полученное из калибровки "Время накопления зажигания" трансформируется в угловые градусы, путем перемножения на обороты двигателя и связывающий коэффициент и ограничивается сверху значением 174 град а снизу 12 град, чтобы не допустить перекрытие импульса и пропуск формирования УОЗ. Момент начала накопления определяется путем вычитания из расчетного углового момента зажигания полученного углового времени накопления.
Алгоритм установки зажигания находится в обработчике ДПКВ.
Подготовка данных для очередного цилиндра зажигания производится одновременно с запуском обработчика детонации предыдущего связанного с ним общим каналом зажигания, в точке 66 градусов до ВМТ. При этом микропрограмма используя переменную номера цилиндра двигателя в котором только что, прошел рабочий ход, определяет, какой цилиндр из пары с ним будет следующим, например: если рабочий ход был в 4-м - следующим будет первый, если первый то 4-й. Определив номер следующего парного цилиндра, микропрограмма перебрасывает 4 рассчитанных связанных с ним переменных УОЗ в рабочие ячейки управления соответствующего канала зажигания. Управление каналами зажигания на выходах P5.1 P5.2 после этого производится полностью раздельно и автономно.
Для формирования сигнала начала накопления энергии в катушке зажигания диспетчер прерывания ДПКВ проверяет совпадение текущего номера зуба шестерни 60-2 с "Моментом начала накопления по зубу", если обнаружено соответствие - программа производит вычисление времени задержки:
Коэффициент задержки момента накопления энергии по углу перемножается на переменную "время 6-ти градусного поворота коленчатого вала" и добавляется к состоянию Т2 захваченному на входе в обработчик ДПКВ (прочитанного из регистров CCL3 CCH3) полученный результат используется для программирования модуля сравнения и сброса (compare and clear), и записываются в регистры COMCLRH COMCLRL. В зависимости от выбранного канала зажигания в регистр CLRMSK помещается значение 02h (P5.1) или 04h (P5.2). На этом функции диспетчера прекращаются и дальнейшее управление зажиганием производится аппаратно с использованием COMCLR модуля.
При совпадении значений в таймере T2 и регистрах COMCLR, которое произойдет через заданное время задержки, микроконтроллер переводит выбранную линию порта P5 в состояние логического нуля. Драйвер зажигания TPS2814 производит инверсию этого сигнала и усиление по току, таким образом на соответствующем выходе ЭБУ появляется управляющее напряжение +5v. Если в системе имеется модуль зажигания General Motors - сигнал непосредственно подается на его выходные ключи, что приводит к подключению соответствующей катушки зажигания в режим накопления энергии.
Установка момента зажигания начинается при совпадении текущего зуба шестерни с "Моментом зажигания по номеру зуба", также как описано ранее производится вычисление времени задержки: Коэффициент задержки момента зажигания по углу перемножается на время 6-ти градусного поворота коленчатого вала и добавляется к состоянию Т2 захваченному на входе в обработчик ДПКВ (прочитанного из регистров CCL3 CCH3) полученный результат используется для программирования модуля сравнения и установки (compare and set), и записываются в регистры COMSETH COMSETL. В зависимости от выбранного канала зажигания в регистр SETMSK помещается значение 02h (P5.1) или 04h (P5.2). На этом функции диспетчера прекращаются и дальнейшее управление производится аппаратно с использованием COMSET модуля.
При совпадении значений в таймере T2 и регистрах COMSET микроконтроллер переводит выбранную линию порта P5 в состояние логической 1. Драйвер зажигания TPS2814 производит инверсию этого сигнала и усиление по току, таким образом на выходе ЭБУ оказывается низкий потенциал, который информирует модуль зажигания о необходимости разорвать цепь подачи тока на катушку. Магнитное поле, пересекая витки катушки индуцирует во вторичной обмотке высокое напряжение, пробивающее зазор в свече, возникает искра.
В 6-ти цилиндровых прошивках ЭБУ используется так же третий канал (P5.3) зажигания. Принцип управления от этого не меняется.
Подобная методика формирования импульса зажигания позволяет достичь абсолютную вычислительную точность по углу и 6мкс по времени задержки, что в сумме на 10000 оборотах двигателя дает максимальную погрешность установки УОЗ +-0.3 угловых градуса если диск 60-2 установлен в нулях. Однако возможно увеличение этой цифры за счет постоянной времени работы интегрирующих звеньев как самого канала формирования сигнала ДПКВ так и исполнительных устройств зажигания. Поэтому в ЭБУ предусмотрена компенсация динамической ошибки связанной с увеличением оборотов. Для компенсации в программе имеется поправочный коэффициент определяемый опытным путем на реальном наборе датчиков и исполнительных механизмов и устраняющий рассогласование прохождения сигнала, коэффициент представляет собой поправку по углу, заданную для оборотов 10240 и уменьшающуюся пропорционально уменьшению оборотов (реальное значение 2.5 град). Таким образом достигается финальная точность УОЗ не хуже 0.5 угловых градуса во всех режимах работы ЭСУД для любых поддерживаемых оборотов двигателя. Подобная точность на высоких оборотах в настоящее время не доступна на многих aftermarket системах, в которых используются программные методики менеджмента в ос реального времени, где динамические ошибки на высоких оборотах могут быть достаточно велики.