Про Hyundai Санта-Фе

Этой истории уже скоро 20 лет, патенты истекли — можно рассказывать

В кратце, для тех, кто не знает, что это за машина:

Да, паркетник, с претензией на limited off-road capabilities В общем, типичный представитель класса ute-cute, популярного в конце 90-х — начале 2000-х. От последующих модифицаций этот самый первый вариант внешне можно было легко отличить по форме задних фонарей.

Не берусь судить о железе, климат-контроле и аудио-системе. А напишу, о чем знаю (и в разработке чего сам принимал некоторое участие): о системе управления двигателем и трансмиссией.

Реализация алгоритмов управления в этой системе на Хундае Санта-Фе была традиционно-простая: look up table. Контроллер постоянно проверял, соответствует ли фурье-образ функции изменения угловой скорости каждого колеса степени давления на педаль тормоза и положению дроссельной заслонки. Если нет, то либо передававал управление на подпрограмму ABS (если какое-то из колес замедляется слишком быстро — т.е., вот-вот начнет скользить) — АБС тогда сбрасывала давление в тормозной магистрали соответсвующего колеса.

А если, наоборот, какое-то колесо замедлялось слабее других, то передавалось управление на каскад Engine Brake Assist. Этот модуль мог (в зависимости от комплектации автомобиля) делать по нарастающей: (1) отсечку подачи топлива (экономайзер принудительного холостого хода — ЭПХХ), (2) блокировку центральной всискомуфты (если был установлен соленоид-actuator, которого на ранних версиях не было) и (3) сброс передачи на ступень вниз, если расчетные обороты двигателя не на низшей передаче не выскакивали бы вверх слишком сильно. Правда критерий “слишком сильно” был заложен довольно-таки от балды.

Почему от балды — потому что моделирование показало, что на льду машину при сбросе передачи вниз может сорвать в занос. Этого надо было избежать, и  критерии переключения были взяты с заведомо большим запасом. Настолько большим, что (к своему стыду) боюсь, что реально они никогда не выполнялись (может и к лучшему: переключение вниз ручкой Типтроника мой Хундай уже в Канаде разворачивало поперек дороги, если лед)

Кроме того, контроллер сходил с ума если одновременно нажать на газ и на тормоз. Рудиментарный exception handling, правда, был сделан, но он только и умел, что уводить контроллер в safe mode (“limp home.”)

Но этому всему уже скоро 20 лет — инженерная мысль не стоит на месте. Современные машины (даже новые модели от Hyundai) имеют очень умные системы, которые делают все это без глюков. И делают даже намного больше — они умеют распределять тормозные и крутящие моменты по колесам так, чтобы в любом случае избежать заноса (называется Electronic Stability Control).

А со стороны двигателя тоже вошло в практику VVT (Variable Valve Timing), которые в те годы было еще редкостью. Теперь умные контроллеры умеют при торможении так изменить фазы открытия клапанов, что двигатель создает вполне ощутимый тормозной момент. Даже на малых оборотах. Т.е., не нужно переключаться вниз — тем самым избегается рывок и опасность срыва в занос. Впрочем, внедрение бесступенчатых коробок-вариаторов позволило управлять моментом еще гибче — подбирая и фазы газорапределения, и передаточное число плавно и оптимально.

Во времена о которых я веду речь, у бортового компьютера не было независимой информации о скорости-ускорении (да и сейчас, с GPS, тоже не все так однозначно), кроме как поступающей от колес. Бортовой компьютер мог лишь приближенно оценить соответствие замедления силе нажатия на педаль тормоза.

Как я уже написал, была look-up table, в которой содержались ожидаемые функции замедления (в дешевом варианте — просто зашиты величины отрицательного ускорения в предположении, что движение равнозамедленное, что есть упрощение). Несоответствие измеренного замедления ожидаемому по всем четырем каналам побуждает бортовой компьютер принять те или иные меры. Какие именно, зависит в основном от цены машины и года разработки.

Если у нас нет независимого датчика скорости (GPS, например), то изюминка системы состоит в следующем: функции замедления всех четырех колес (угловая скорость от времени) неидентичны! Напомню, я сравнивал фурье-образы (спектры, если упрощенно) функций замедления колес, а не банальное угловое ускорение/замедление. При торможении, вследствие неравномерностей износа колодок, дисков, шин и неровностей дороги, эти функции различаются, даже если в первом приближении автомобиль движется равномерно (равноускоренно, равнозамедленно). Более того, водитель не в состоянии удерживать педаль тормоза строго равномерно. Неизбежные колебания давления в главном тормозном цилиндре модулируют тормозные усилия на колесах. В фурье-спектре появляются составляющие “отклика” на эту модуляцию. Эти отклики существенно различны на новых, хороших колодках и на бюджетных перегретых. Т.е., бортовой компьютер может предположить наличие износа и/или перегрева тормозной системы.

Интерпретация результатов и возможные действия бортового компьютера в слуичае обнаружения деградации тормозов — вопрос конкретной имплементации. В моем случае, максимум, что мог сделать компьютер — зажечь красную лампочку “Brakes”. На более продвинутых машинах, где есть соответствующие клапана и соленоиды, компьтер может активировать те или иные действия — например, замкнуть дифференциал, задействовать резервную тормозную систему (на грузовиках и автобусах), изменить фазы газораспределения так, чтобы двигатель помог торможению…

А вот на чисто ручной коробке контроллер бессилен переключить передачу. Это общая проблема. К сожалению, именно механические устройства в большей степени отражаются на цене автомобиля, чем его электронная начинка, которая теперь стоит дешево. Поэтому, что касается диагностики, как таковой, то мощные современные процессоры справляются с этой задачей с большим избытком. Проблема не в том, чтобы диагностировать, скажем, снижение эффективности тормозов. Проблема в том, что предпринять в этом случае. Нельзя же в самом деле, отключать тормоза при их перегреве. Все-таки перегретые колодки лучше никаких. Кроме того, водитель по-любому должен иметь возможность override решения компьютера — например, убрав ногу с педали тормоза или, как уже упоминалось, сбросив передачу в нейтраль. Стопроценгтной защиты от дурака пока не найдено, поэтому в неумелых руках разбиваются и Вольво и Лексусы…

Да, так “в чем же суть”?

А суть в том, что за неимением 16-разрядного контроллера, мне пришось ограничиться 8-разрядным. Данные о частоте вращения коленчатого вала двигателя я получал, подсчитывая импульсы которые генерировакись зубьями маховика, проходяшими мимо датчика Холла. В данном двигателе число этих зубьев было 114. Это неудобно, поскольку делиться только на 2. 3 и 19.

А, как я уже написал, у меня был только 8-разрядный контроллер, который мог посчитать максимум до 255. Разумеется, можно было считать не каждый зуб. Например, если нанести магнитные метки на каждый 38-й зуб, тогда за один оборот я получал 3 импульса.

При этом, весь диапазом оборотов почти хорошо укладывался в мою сетку 255.

А именно,

При 860 оборотах в минуту (номинальный холостой ход), я получал 43 импульса в секунду;
При 2100 об/мин (городская езда) — 105 имп/с;
При 3600 об/мин (обгон) — 180 имп/с.
При 4500 об/мин (обгон по встречке) — 225 имп/с.

Казалось бы, все отлично!

Но, ВНЕЗАПНО, оказалось, что при 5100 оборотах в минуту счетчик получает ровно 255 импульсов. И все!!! Дальше скорость двигателя я адекватно измерить не могу.

А, к слову сказать, двигатель был не выдающийся, но и такой уж плохой , как для шестицилиндрового — на стенде разгонялся вообще до 5400 об/мин (хотя там, понятно, без насоса охлаждения, генератора, кондиционера, а также с другими впуском и выпуском)

Думали, крутили, вертели, и решили поставить ограничитель оборотов. Мол, автомобиль уже и про 5000 разгонается до 175 км в час — типа, достаточно. Заодно и ресурс мотора увеличим

Так и пошло в первую серийную партию. Именно ее образец на картинке. От последующих можно отличить по измененной фоме задних фонарей.

Цена была адекватная, народ покупал машину хорошо, но нашлись энтузиасты, которые решили проверить, почему тахометр не доходит до красной линии (а она осталась на 5500, как расчитывали по результатам стендовых испытаний).

Довольно скоро выяснилось, что, если подшаманить контроллер двигателя, то мотор идет не только на 5400, но и даже на 5600-5800.

Был class-action lawsuit, settled out of court. Хундаю не нужен был черный пиар. Впрочем, это было уже без меня. Новая команда наконец-то поставила нормальный, не нищебродский контроллер (собственно полноценный бортовой компьютер, как к тому времени стало принято), а вскоре и вовсе перелицевали машину. В том числе применили новый маховик со 110-ю зубами. Я не знаю точно, сколько экземпляров Санта-Фе с багом “5100 rpm” но, по-видимому, не слишком много, так как на репутации фирмы это не отразилось.

Для меня же в сухом остатке оказался вот такой  Лист публикаций.