Mitsubishi контрол почукване сензор (широколентови)
Long искаше нещо от пътуванията си през комина m32r пиша, за да не се забравя.
Тази публикация разглежда чукам система за контрол, базирани на широколентов чукам сензор (DD) и вериги за управление Bosch 30424 (CC195) в контролера Mitsubishi Colt Z27AG.
Част от платката на контролера 1860B104
При по-старите системи, използвани резонансен сензор почука, честотата на сензора резонанс е съчетана с двигателя, но аз не съм учил старата система, най-вероятно голяма част от по-горе се отнася за тях (с изключение, че няма специализирано лечение мс ДД).
Новите системи използват широколентова DD (му характеристика е относително постоянно в широки граници), сигнал в режим на диференциал се поставя в чип Bosch, изпълняващо функции настройваем лентов филтър (честота, печалба) и интегратор SH.
Формата на входно / изходни сигнали от лист Bosch CC195
Тук MF - измерване на сигнала прозорец детонация програма Colt'a начало и край са указани в градуси след 5BTDC точка, в зависимост от скоростта, но измерването не започва преди момента на запалване.
Точки на отваряне / затваряне на прозорците за измерване в градуси ATDC
KE - сигнал от сензора, в тел сензор Colt'e zavedon сигнал в диференциален режим (девето Lancere unifilar сензор сигнал защитен проводник).
KI - измерва напрежението на контролера. Тук може да се види, че след MF KI превключвател пада до нула - нула компенсира. Той плава в зависимост от температурата, напрежението и от инстанция на инстанция, обаче, за да се изчисли в определени точки на двадесетия измервания са направени с къса фиксиран прозорец.
Устройството за съединение на datashita CC195 Bosch
И така: DD затворен прозорец обработка, контролерът пое в резултат на ADC (adc_byte_knock, MUT 0x30), но това е всичко тепърва започва.
1. От резултата изважда компенсира интегратора (knock_integrator_offset), ние получаваме полезния сигнал (knock_signal, MUT 0x6a).
2. След това малко алгоритъм за определяне на ДД недостатъчност:
mut_knock_change = | knock_signal - knock_signal_previous | (MUT 0x6d)
Ако knock_signal_time_averaged 3. Увеличаване knock_sum (краткосрочна корекция на CPP 90/256 градуса в дискретни, MUT 0x26): knock_sum_addition (MUT 0x6c) = knock_positive. knock_positive * K / knock_base + 1. 0, където К - постоянен коефициент 4. Изчисляване на сърцевинния слой: ако knock_base отвъд - превключва печалбата от 30424 мс и преизчисляване случва knock_base, knock_signal_spark_averaged и knock_signal_time_averaged. В тази обработка се прекратява текущото измерване. Изчисляване knock_base (MUT 0x6b). Действието се развива в главния клон с честота 100Hz 800Hz прекъсват, всеки, който чете кода на MMC можеше да види това чудовище на 15008 байта (в фърмуер блок Colt Ralliart на по кожа) машинен код, добре, че не е написана на ръка. knock_signal_time_averaged = (knock_signal_time_averaged_previous * (К - 1) + knock_signal_spark_averaged) / K knock_base = knock_signal_time_averaged * кор (оборота в минута) + EngineNoise (оборота в минута) knock_sum Umenshshenie 200Hz се случва в клон на същата прекъсването. Под действието decays_40hz.knock_rpm_accel намаляване на всеки 35 цикъла, или всеки 160 Отвъд лявата превключване на режимите натоварване. Тя трябва да се вълнуват само тези с мащабиране на товара не отговаря на реалните (т.е. CS3 Лансърите с турбината). Както и изчисляване octane_level. 3 години Тагове: MMC екю
Изчисленията участва knock_positive = knock_signal - knock_base (MUT 0x6b)
ако knock_sum_addition доста малки (1-2 точки) и последователно се проявява в 1-2 цилиндрите, ефектът му се потиска.
knock_signal_spark_averaged = knock_signal_spark_averaged_previous * (R - 1) / R + knock_signal * 256 / R условно
R зависи от условията, по подразбиране = 32 допълнително се прилага първата съвпадение условие:
- когато рязко увеличение или остри завои газта движение (decays_40hz.knock_rpm_accel таймер MUT 0x6f) пада до 16
- с положителен knock_positive нараства до 255
- при knock_signal> = knock_signal_time_averaged повече от шест измервания - пада до 16
- ако 8 * knock_signal> = 16 * knock_signal_time_averaged - нараства до 255
По-голямата R, толкова по-малко въздействие върху текущата стойност на получената стойност knock_signal knock_signal_spark_averaged
където Corr и EngineNoise изчислена предварително.