Основные моменты расчёта УОЗ.
Угол опережения зажигания определяется ECU следующим образом:
1. Общий УОЗ = базовый УОЗ + коррекция по детонации + дополнительные коррекции.
В понятие дополнительные коррекции входят:
- коррекция по датчику температуры входящего воздуха IAT;
- коррекция по датчику температуры охлаждающей жидкости ECT;
- коррекция по оборотам двигателя, и много других...
В понятие коррекция по детонации входят:
- (Максимальный УОЗ * (IAM/16)) + обратная связь по датчику детонации + зафиксированное ECU значение корректировки по датчику детонации.
Примечание: IAM (ignition advance multiplier — множитель опережения зажигания), используемый в формуле выше, это исходное значение (от 0-16) для 16-разрядных ECU. Для 32-разрядных ECU, IAM будет колебаться от 0 до 1 (заменить "IAM/16" на "IAM" ).
Из формулы выше можно увидеть, что коррекция по детонации Knock Correction Advance (KC) состоит из трех элементов. Определения значений этих элементов и как они взаимодействуют друг с другом, будет рассмотрено ниже. Хотя, как именно ECU определяет детонацию (на основе сигналов датчика детонации Knock sensor), не совсем ясно и результаты естественно будут весьма упрощёнными. Сигнал детонации бывает либо ложный, либо достоверный. И как это отслеживается в ECU - неизвестно. Ясно одно, что там нет жёстких критериев, которые хранятся или используются для контроля сигналов с датчика детонации.
Обратная связь по датчику детонации (Feedback Knock Correction, FBKC)
Feedback knock correction (FBKC) всегда имеет либо нулевую, либо отрицательную величину. Этот параметр берётся в расчёт ECU только при определённый оборотах двигателя (RPM) и определённых показателях нагрузки на двигатель (load), которые занесены в соответствующие таблицы обозначенные в прошивке как «Feedback Correction Range tables» (иногда корректировка УОЗ по этим таблицам временно отключается, об этом будет сказано ниже). Если в ECU поступает информация с датчика детонации о том что детонация возникла, то ECU даёт команду передвинуть УОЗ на два градуса позднее относительно существующего на данный момент значения. Два градуса это минимальный шаг корректировки УОЗ по данному параметру «Feedback Correction Retard Value». Каждый раз после того как УОЗ отодвинут на два градуса в минус, а детонация фиксируется снова ECU опять проводит корректировку. Максимальный порог корректировки УОЗ по сигналу датчика детонации — 11 градусов после ВМТ «Feedback Correction Retard Limit». В случае если корректировка УОЗ в отрицательную сторону произведена и детонация прекратилась, значения «Feedback Correction Retard Value» не сразу сбрасываются на нулевую отметку. Существует определённый период задержки сброса этого параметра «Feedback Correction Negative Advance Delay» во время которого ECU пытается определить детонация продолжается или нет. Если детонация во время этого периода задержки не фиксируется то ECU корректирует УОЗ на один градус в плюс «Feedback Correction Negative Advance Value» и отсчёт времени задержки корректировки УОЗ «Feedback Correction Negative Advance Delay» сбрасывается. А если фиксируется снова то ECU опять проводит корректировку УОЗ на два градуса в минус и начинает отсчёт нового контрольного периода задержки «Feedback Correction Negative Advance Delay». Процесс контроля величины УОЗ по датчику детонации идёт в ECU постоянно. Во время корректировки ECU пытается вернуть УОЗ на заданные в прошивке параметры, задержка «Feedback Correction Negative Advance Delay» на самом деле во временном выражении очень и очень короткая.
Как отмечалось выше, коррекция УОЗ по датчику детонации FBKC может быть отключена даже при условии что нагрузка на двигатель (load) и обороты двигателя (RPM) находятся в пределах диапазонов, указанных в специальных таблицах «Feedback Correction Range». Это необходимо, потому как два других элемента контроля детонации изменения в IAM (множитель опережения зажигания) и изменения в точной коррекции по детонации (FLKC), которые описаны далее по тексту, не могут быть активными, если FBKC не отключена. Для того чтобы ECU отключил FBKC должны быть выполнены все перечисленные ниже условия:
1. Температура охлаждающей жидкости больше, чем 140F (60°C);
2. А/С должен быть выключен (причём не только что, а достаточно продолжительный промежуток времени);
3. Если в режиме грубой коррекции (см. ниже), нагрузка на двигатель и обороты двигателя RPM находятся в диапазоне грубой коррекции IAM;
4. Если в режиме точной коррекции (см. ниже), нагрузка на двигатель и обороты двигателя RPM находятся в диапазоне точной коррекции (FLKC);
5. Немедленное изменение нагрузки на двигатель меньше, чем +/- 0,05 g/rev;
6. ECU не в тестовом режиме;
7. ECU не находится в аварийном режиме в связи с наличием активных определенных DTCs;
8. Не происходит внезапных коррекций УОЗ на основании показаний датчика положения дроссельной заслонки.
Если любое из перечисленных выше условий не будет выполнено, режим FBKC будет включен в пределах данных своих корректировочных таблиц «Feedback Correction Range».
Грубая коррекция (IAM)
Грубая коррекция включает в себя манипулирование IAM (множителем опережения зажигания) в связи с имеющейся детонацией. Это приводит к коррекции угла опережения зажигания по всем направлениям (максимум угла опережения * IAM/16). IAM может варьироваться от 0-16 для 16-битных ECU.
ECU имеет два режима работы - грубая коррекции и точная коррекция. То есть, ECU либо вносит изменения в IAM (грубая коррекция), либо вносит изменения в точную коррекцию (FLKC) по таблице (см. ниже), оба параметра одновременно не корректируются.
Но только потому, что ECU переключилось в любой из этих режимов, это совсем не означает что корректируются значения в IAM или FLKC таблицах. Потому что существуют два комплекта пограничных значений для каждого режима. Один комплект значений определяет, когда произвести переключения между режимами (различаются в зависимости от текущего активного режима) и другой комплект для определения параметров изменений в IAM или FLKC таблицах, которые могут быть сделаны в соответствующих режимах.
Примечание: После сброса ECU (reset), ECU по умолчанию находится в режиме грубой коррекции IAM.
Для перехода из режима точной коррекции FLKC в режим грубой коррекции IAM должны быть выполнены следующие условия:
Обороты RPM и данные нагрузки на двигатель должны быть в пределах, указанных в таблицах грубой коррекции IAM.
Значение УОЗ в соответствии с таблицей (максимальных значений) больше, чем 4,9 градуса.
Изменения значений точной коррекции FLKC (положительные или отрицательные) были закончены.
Последнее применённое значение FLKC (| х |) больше, чем 3,9 градуса (то есть, абсолютная коррекция > диапазона от -4 до 4).
Величина последнего изменения в строке таблицы точной коррекции FLKC (| у | * 2,84) больше, чем максимальное значение УОЗ в таблице (максимальных значений УОЗ).
(IAM > 1) или (IAM <= 1 и последнее изменение FLKC было положительным).
И ещё о режиме грубой коррекции, следующие требования должны быть выполнены каждый раз для того, чтобы были внесены изменения в режиме IAM. То есть, даже несмотря на то ECU находится в режиме грубой коррекции, он не всегда будет регулировать IAM:
УОЗ в таблице (максимальных значений) > 3,9 градуса (таблица - Rough Correction Minimum Timing Advance Map Value).
Режим Limp-home mode не активен (IAM уже будет 0 в этом случае)
FBKC отключен.
IAM значение шага > 1 (см. ниже)
Если все вышеприведённые условия выполнены, то произойдет следующее, но только после переключения из режима точной коррекции FLKC в режим грубой коррекции IAM. То есть, это будет выполняться только один раз при каждом переходе, перед тем как режим IAM начнёт работать:
IAM установлен в «Advance Multiplier» (исходное значение по умолчанию).
IAM шаг изменения (коррекции) имеет значение 4 (Advance Multiplier Step Value, см. ниже).
IAM счетчик задержки коррекции установлена на 0 (см. ниже)
Все данные из таблицы точной коррекции FLKC стираются из оперативной памяти.
ECU проверяет наличие детонации. Если детонация отсутствует, включается счетчик задержки внесения изменений в режиме IAM. Если текущее значение времени отсутствия детонации меньше, чем время задержки, указанное в таблице «Rough Correction Learning Delay (Increasing)», то время счетчика задержки увеличивается (корректировка идёт по аналогии с счётчиком задержки FBKC). Когда текущее значение времени отсутствия детонации больше, чем время задержки счётчика, то значение IAM увеличивается. При первом изменении в режиме IAM, значение всегда увеличивается на 4 пункта («Advance Multiplier Step Value») и остаётся на этом уровне, пока коррекция продолжает расти (максимум до 16 пунктов). Однако, если в течение последних изменений коррекция IAM была отрицательная, т.е. снижена, величина шаг коррекции IAM уменьшается на 1/2.
Это происходит каждый раз, когда осуществляется коррекция (вверх/вниз) в режиме IAM. Если значение шага коррекции в режиме IAM меньше или равно 1, режим грубой коррекции останавливается (после внесения последнего изменения в режиме IAM) и ECU переключается в режим тонкой коррекции FLKC. Именно по этому алгоритму ECU определяет, что из режима IAM необходимо переключится на режим FLKC.
Если детонация присутствует:
Не предусмотрено никаких задержек для плавного пошагового уменьшения коррекции в режиме IAM. Но значение счетчика задержки сразу сбрасывается на ноль, потому что детонация была обнаружена.
Других изменений, за исключением обнуления счётчика задержки, в логике действий ECU в режиме IAM как при увеличении так и при уменьшении значений коррекции, нет.
Дополнительно, в режиме IAM при значениях равных 0 или 16, после небольшой задержки нахождения в этих крайних значениях, ECU переключается в режим точной коррекции FLKC независимо от того, какое текущее значение шага коррекции в IAM. Это необходимо для того что, если не выполнено достаточно условий при достижении крайних значений, чтобы выйти из режима грубой коррекции, переход всё равно состоится.
Обратите внимание, что когда коррекция в режиме IAM наконец завершена, ECU перейдет из режима грубой коррекции в режим точной коррекции. Режим точной коррекции будет продолжаться, до тех пор пока снова не возникнут условия, для перехода в другие режимы, перечисленные в начале этого раздела.
Режим точной коррекции FLKC (Fine Learning Knock Correction)
Точная коррекция FLKC позволяет производить окончательную подстройку УОЗ в плюс или минус на различных режимах работы двигателя. Эти корректировки записываются и сохраняются в RAM и применяются в соответствии с оборотами двигателя RPM и расчётной нагрузкой на двигатель заданных в соответствующих таблицах. Эти трехмерные таблицы записаны в прошивке ECU, по где горизонтали заданы диапазоны оборотов «Fine Correction Rows (RPM)», а по вертикали расчётная нагрузка на двигатель «Fine Correction Columns (Load)». Эти таблицы содержат в себе по семь значений каждого параметра что в сумме даёт 3D таблицу размером 8х8.
Например:
Если значения в строках «Fine Correction Rows (RPM)» таблицы будут 1400, 1800, 2600, 3400, 4200, 5000, 6000 — то диапазоны будет выглядеть следующим образом:
Range 1: меньше чем 1400
Range 2: от 1400 до 1800
Range 3: от 1800 до 2600
Range 4: от 2600 до 3400
Range 5: от 3400 до 4200
Range 6: от 4200 до 5000
Range 7: от 5000 до 6000
Range 8: 6000 +
FLKC коррекции разработаны, чтобы внести более точные поправки в УОЗ после завершения корректировки IAM, при условии отсутствия детонации. Значения точных корректировок хранятся в оперативной памяти (RAM) и применяются для KC все время (за исключением определенных условий, к примеру таких как — холостой ход). Несмотря на то, что табличные значения FLKC из оперативной памяти постоянно применяются для корректировки УОЗ, коррективы в саму таблицу могут быть внесены только при соблюдении определенных условий:
Значение шага грубых коррекций IAM <= 1 или корректировка в режиме IAM достигла предела своих значений и значения равны 0 или 16. И ECU, после небольшой задержки, переключилось из режима IAM в режим FLKC.
Режим FBKC отключен.
Обороты двигателя RPM и расчётная нагрузка на двигатель находятся в пределах диапазонов, указанных в таблице «Fine Correction Range».
Режим Limp-home mode не активен.
При выполнении вышеописанных условий и при отсутствии детонации, для осуществления точной коррекции в плюс и увеличения текущего значения УОЗ, записанного в соответствующую ячейку RAM, необходимо чтобы:
FBKC коррекции и/или коррекции FLKC в минус не были осуществлены во время последней выполненной корректировки.
Если первое условие выполнено, то предыдущий уровень FLKC нагрузка на двигатель/RPM также должен совпадать с последним уровнем зафиксированным перед выполнением этой корректировки.
Текущий уровень соответствующих параметров в таблице FLKC нагрузка на двигатель/RPM такой же, как предыдущий.
Как и в других режимах корректировки, в режиме FLKC есть задержка, после которой значения таблицы могут быть увеличены (Fine Correction Advance Delay). За основу взят счетчик (по аналогии с FBKC счетчиком), который отсчитывает необходимый период задержки для внесения изменений при отсутствии детонации и обнуляется когда FLKC корректировки внесены в таблицы или фиксируется согнал о возникновении детонации.
Если все вышеперечисленные условия выполняются, то точная коррекция значения для текущей нагрузки на двигатель/RPM соответствующей ячейки увеличивается. Но есть ситуации когда она не может быть увеличена. Если сумма текущего значение параметра УОЗ подлежащего точной коррекции и величина точной коррекции FLKC получается больше чем максимальный УОЗ заданный в таблице «Timing Advance (Maximum)». Это также означает, что если показатель грубой коррекции IAM равен 16, то допускается точная коррекция FLKC только в минус. Шаг приращения/уменьшения FLKC равен 0,35 градуса (Fine Correction Advance Value). Максимально допустимая величина точной коррекции 8 градусов (Fine Correction Advance Limit).
Если фиксируется сигнал о появлении детонации, то точная коррекции в текущей ячейке таблицы FLKC уменьшается примерно на 1 градус (Fine Correction Retard Value) с лимитом коррекции в минус около 12 градусов (Fine Correction Retard Limit).
ПРИМЕЧАНИЕ: После переключения из режима FLKC в режим IAM и прямо перед первым изменением в режиме IAM после такого переключения, ECM стирает из RAM все данные из таблицы FLKC и никакие исправления в эту таблицу не вносятся, пока ECM снова не переключится в режим FLKC (который не доступен в режиме холостого хода или при наличии неисправностей определённых датчиков, к примеру датчика детонации или температуры ОЖ.)