Комментарии 70
У меня автомобиль без круиз контроля (но с электронной педалью газа), и я, для того чтобы не сбавить скорость при приближении к горке, увеличиваю газ чуть раньше чем сама эта горка начинается.
Изменение скорости же можно ловить довольно точно, и по сути показания скорости это аналог того же акселерометра.
Мне кажется, время реакции автомобиля на изменение положения педали газа на порядок больше, чем выйгрыш от установки акселерометра.
Могу ошибаться.
По всему по этому увеличение точности срабатывания круиза не даст никакого результата. Тем более, что при механической коробке это никак не убережёт от раскатывания выше заданной скорости, а при автоматической всяких задержек и влияний будет ещё больше.
туда же отдавать управляющие воздействия
Эх, я так надеялся, что в статье будет именно про это.
Я вот тоже хочу круиз усовершенствовать, но чуть иначе. То, как он скорость держит, меня в принципе устраивает, но мне нужны пресеты. Скажем, в городе 50, на трассе 100 и т.д. Для меня наиболее употребительны были бы 30, 50, 60, 80, 100, 120 и 130. Я б маленькую коробочку с кнопками на место пепельницы поставил. Кроме того, каждое значение хочу по GPS откалибровать, ибо спидометр завышает скорость процентов этак на десять. Соответственно вместо «подбора» скорости с последующей активацией круиза — жамкнул по кнопке, скажем 80, в круиз записалось «88» и поехали. Мне даже ПИД регулятор тут не нужен, но вот я совершенно не знаю, куда в CAN шину записать требуемое значение.
У меня тоже давно уже такие мысли. Нужен задатчик скорости от 20 до 160 км/ч с шагом 10 км/ч.
Это на какой Шкоде? У меня Октавия 2016 года с обычным круиз-контролем (не адаптивным) — там меняется через 1 км/ч.
Включение регулирования/уменьшение заданного ограниче-ния скорости — нажатие (с шагом 1 км/ч), удержание (с шагом10 км/ч)
Но это всё не решение проблемы, пресеты, поддерживаю — были бы полезны.
знаки распознаётИ какие его действия после распознания?
Вот такую табличку:
![](https://habrastorage.org/webt/zy/vf/ij/zyvfijkuem16-inn7yyzku5rkrq.jpeg)
распознает?
Въезд в населённый пункт тоже распознаётЯ именно за табличку, которую привел выше. Обычно знак начала/окончания населенного пункта значительно больше размером, чем эта табличка. Из-за этого ее легко пропустить.
Иногда ошибается, конечно,Вот поэтому и
связи с круиз контролем нетПредставьте, что распознавалка ошибется на трассе и даст по тормозам на ровном месте.
Но от заранее заданных пресетов тоже бы не отказался.
Если круиз на руле или отдельным рычажком, то SET/RES меняет +-1км/ч, а рычажком или кнопками "+" и "-" меняется по 10км/ч.
Круиз — это когда скорость нужно поддерживать часами. Тут можно и потратить минутку, чтобы накрутить как хочется. Тем более включая около установившейся скорости.
На самом деле ограничитель — это другая система, которая не занимается ни разгоном, ни поддержанием скоростиУ меня на руле две кнопки: круиз и ограничитель. Ограничитель ведет себя точно также, как круиз, если педаль газа нажата достаточно, но не в пол.
Ограничителем пользуюсь в городе, круизом на трассе.
У меня не так. На круизе любое нажатие на газ отрабатывается без снятия задания круиза и позволяет обгонять. При этом если газ сбросить, машина накатом будет возвращаться к заданной скорости, после чего контроль снова возьмет на себя круиз. А вот при спуске с горки/моста/эстакады после скорости +5 к установленной круиз начинает применять торможение колодками.
Ну а тормоз, как наверное и у всех снимает задание, но сохраняет настройку круиза.
Достаточно будет считывать текущую цифру на круизе и делать корректировку.
Если текущая цифра увеличилась на +1 км/ч, то программно досылать в шину нужное количество нажатий кнопки + до требуемой цифры. Аналогично в сторону уменьшения.
Получится что однократное нажатие кнопки на руле будет менять скорость по десятке.
Ну а калибровка спидометра обычно есть в ЭБУ приборной панели. Стоит погуглить на форумах по своей марке авто. Можно ввести коэффициент или подобрать размерность резины. Само собой при переобувке придётся корректировать.
Кроме того, каждое значение хочу по GPS откалибровать, ибо спидометр завышает скорость процентов этак на десять.
Это обычно правится в мозгах через диагностический кабель. Вот только у себя всё никак не поправлю…
спидометр завышает скорость процентов этак на десять
не для того чтобы на*бать лошка за рулём. Немного перекачали шины, за руль села девочка 45 кг,
жамкнул по кнопке, скажем 80, в круиз записалось «88» и поехали
выльется в нехилые штрафы.
Что касается штрафов, то они до +10 км/ч относительно невелики и безболезненны, кроме того 3 км/ч вычитается в пользу водителя. Так что для получения существенного штрафа надо где-то больше 95 вместо 80 ехать, при этом на моём спидометре будет уверенно больше ста. Но есть страны, где штрафы реально драконовские. Ну а если за Германию говорить, то тут точно по спидометру мало кто ездит — народ процентов десять смело накидывает, тормозя перед радарами. Правда, сейчас штрафы подняли и народ поумерил прыть. До 10 км/ч сейчас 20 евро стоит, а раньше так и вовсе десятка была. У меня за двадцать лет стажа ровно пять небольших штрафов по невнимательности, и все без пунктов, что вполне приемлемо. Вообще я скорость довольно педантично соблюдаю, но не по спидометру, а по GPS.
Производители авто завышают показываемую скорость чтобы защититься от возможных исков владельцев, ехавших точно по спидометру но словивших штрафы.
всё проще.
https://ru.wikipedia.org/wiki/Спидометр
Во многих странах требования к погрешности показаний спидометров регулируются Правилами ЕЭК ООН № 39[3]; в России эти правила имплементированы ГОСТ Р 41.39-99[4]. В частности, устанавливается, что скорость по прибору никогда не должна быть меньше истинной скорости
Многие системы управления уже даже содержат датчик неровной дороги (нужен для игнорирования анализа неравномерности вращения коленвала вследствие движения по кочкам) — это по сути тот же акселерометр, только интерпретируемый по-другому.
А какие машины содержат этот датчик? Я как то думал что это анахронизм встречающейся только на первых инжекторных ВАЗах, и на современных машинах его нет.
У меня автомобиль с обычной, механической педалью газа и обычным круизом. При езде на круизе стрелка спидометра стоит, как приклеенная независимо от горок/спусков. Точно так же ведут себя показатели скорости в навигаторах.
Не принимаю, зачем городить огород с доп вычислителями, если простая механика и так выдает отличный результат.
Только придётся и все остальные параметры читать, т.к. например компрессор кондея или фары вызывают изменение мощности, придётся смотреть на все системы в комплексе.
В любом случае, модель регулирования с обратной связью не обязана учитывать все прямые факторы 100% точно — для этого и есть обратная связь (коэффициенты которой тоже можно статистически подстраивать). Но само наличие значимых факторов в модель желательно ввести. Гравитация — один из значимых факторов, поэтому хорошо бы ее иметь в модели. Об этом и статья
Есть исходный параметр текущей мощности двигателя, есть конечный параметр скорости движения. Отклонение от идеального соотношения мощности /скорости — это совокупность всех тормозящих факторов…
Если при постоянной мощности падает скорость — то нам фиолетово из за чего это происходит, тип тормозящего воздействия не влияет на цифру корректировки которую придётся задать.
Если при постоянной мощности падает скоростьЭто то, как работает сейчас круиз-контроль, и от чего хочется уйти, заставив его работать на упреждение, учитывая значимые причины падения скорости. Статические факторы (такие как давление в колесах, багаж итд) нас не очень интересуют, так как для системы управления это — константа, которая будет скомпенсирована цепью обратной связи. Стохастические факторы, такие как ветер, или смена типа дорожного покрытия, будут влиять на качество регулирования, но с ними мы ничего поделать не можем (разве что поставить видеокамеру и анализировать покрытие средствами технического зрения). Гравитационный фактор стохастичен (мы не знаем, где и когда машина пойдем на подъем или спуск), если у нас нет акселерометра, или детерминирован, если есть. Значит, его можно ввести в модель
Эти данные ЭБУ мы полюбому будем использовать для расчёта цифры корректировки, т.к. пустой и полный авто в горку дают разное падение скорости, даже пустой/полный бак уже по разному ощущается.
Какой смысл видя информацию о потери скорости и уже зная конкретную цифру для корректировки, запрашивать данные с акселерометра?
Какую дополнительную информацию даст акселерометр?
Если всётаки падает скорость, то нам не важна причина падения и угол наклона, у нас цель держать скорость, исходя из падения скорости сразу же вводим вычисленную коррекцию для поддержания скорости.
Для расчёта коррекции опираемся именно на реальное замедление которое собираемся компенсировать.
Акселерометр не даст нам форы.
И да, мощность мы не можем корректировать, мы можем задрать заданную цифру круиза ожидая что авто начнёт разгоняться в рамках алгоритма круизконтроля.
Если началась горка, скорость не может не упасть (кроме случая действия случайного фактора, вероятность которого априори низка). Регулятор же должен действовать в режиме наиболее вероятных условий, чтобы в большинстве случаев отрабатывать правильно.
Чтобы восстановить значение скорости, когда она уже упала, нужно действие ускорения с противоположным знаком в течение определенного времени плюс время реакции силовой установки на увеличение подачи топлива. Без модели при это приводит к провалу регулируемого параметра при изменении внешних условий.
Детекция изменения действующих на автомобиль сил позволяет начать вырабатывать корректирующее воздействие еще до того, как оно привело к изменению скорости. Ваш пост привел меня еще к более простому решению — я отредактирую статью
вырабатывать корректирующее воздействие еще до того, как оно привело к изменению скоростиА акселерометр то зачем?
Если авто едет без падения скорости и выросла мощность мотора, мы и без акселерометра видим что едем в горку.
Пока скорость не изменилась, то и вырабатывать нечего, дельта скорости ноль и коррекция тоже ноль.
Детекция изменения действующих на автомобиль сил позволяет начать вырабатывать корректирующее воздействие еще до того, как оно привело к изменению скорости.Если воздействие есть, а скорость неизменна, значит выросла мощность мотора и мы можем делать необходимые расчёты.
Зачем нам ещё и угол наклона, если мы уже видим что нагрузка выросла и знаем насколько сильно?
Акселерометр не даёт никаких преимуществ, мы не получим данные о горке с акселерометра быстрее чем данные с ЭБУ.
изменение скорости и ускорение — просто разные названия для одного и того же.
и да, я не вижу, чем акселерометр может помочь.
Я не понял как вы считали. Вертикальная проекция уменьшится (при этом независимо от того подъём это, спуск или боковой уклон). Модуль суммарной же величины при отсутствии ускорения останется равным g.
Почему уменьшится? Вертикальная проекция g при движении по горизонтальной поверхности равна нулю. А при движении с/под горку как раз и появляется ненулевая горизонтальная компонента g, которая и будет влиять на скорость.
понял про что вы. да, при постоянной (или непрерывно точно измерямой) скорости мы можем использовать акселерометр для определения уклона.
и да, чисто теоретически можно реагировать на него чуть раньше, чем изменится скорость.
Значимое изменение скорости произойдёт только на 2-3-4… секунде.
для человека — да. для ЭБУ, считывающего сигналы с датчиков ABS, не вижу препятствий в определении изменений скорости на десятые доли процента.
при постоянной (или непрерывно точно измерямой) скорости мы можем использовать акселерометр для определения уклона
Одна из фишек моей идеи была в том, что момент на колесах задает сам ЭБУ — и это значит, что если в акселерометре появилась составляющая, параллельная оси тяги автомобиля, то зная текущую тягу на колесах и массу, можно вычесть вектор ускорения тяги из суммарного, и получить таким образом истинное значение уклона без гироскопа
то зная текущую тягу на колесах и массу
а порывы ветра учитывать не надо?
Если порыв ветра приведёт к изменению ускорения в горизонтальной плоскости, направление вектора повернётся, и он будет учтён
Так я про это и говорю: он будет засчитан как начало подъёма. Вы уверены, что так надо?
Поворот вектора означает изменение баланса сил тяги и сопротивления движению, и является «предвестником» замедления или ускорения автомобиля.
если в случае подъёма я ещё могу с вами согласиться, акселерометр измеряет ускорение И изменение положения автомобиля, то в случае порыва ветра — нет, акселерометр измеряет то же самое ускорение, что мы и так можем посчитать.
Реакция системы на это поворот даст возможность скорректировать тягу еще до того, как мы сможем более-менее достоверно детектировать изменение скорости.
я уже писал, даже если считать только целые обороты колеса, мы имеем информацию c датчика ABS с частотой (грубо) 10Гц. вы считаете, что этого недостаточно и система на акселерометре будет реагировать быстрее/точнее?
значит, что полная модель противодействующих сил не нужна. Достаточно знать (вычислить) массу, текущий выдаваемый на колеса момент, направление вектора, целевую и текущую скорость, и динамические характеристики силовой установки
можно подробнее?
изменение скорости и ускорение — просто разные названия для одного и того же.
Чисто математически — да. Но нужно понимать, каким образом в ЭБУ появляется значение скорости — оно приходит интегрированием количества импульсов либо с датчиков АБС, установленных на каждом колесе, либо с датчика выходного вала трансмиссии. Соответственно, первичная величина, которую ЭБУ получает — это частота импульсов, пропорциональная скорости. Если вы хотите опираться на ее производную — то сначала эту частоту надо проинтегрировать по времени, а затем обратно продифференцировать. Чтобы точность производной была достаточно высокой, время интегрирования тоже должно быть достаточно большим. Улавливаете противоречие?
В случае же акселерометра, его показание можно пропустить через ФНЧ с частотой пропускания, скажем в 1-2Гц, и практически сразу получить значение, на основании которого уже можно корректировать мощность
Если вы хотите опираться на ее производную — то сначала эту частоту надо проинтегрировать по времени, а затем обратно продифференцировать.
Улавливаете противоречие?
Да, улавливаю, вы склонны всё переусложнять. Что мешает брать интервал между импульсами с датчика abs и приводить его к целевому?
Прикинул, там сотни герц, с акселерометра, думаю, столько не снимешь.
Копеечный акселерометр прямо на плате ЭБУ, имхо, дешевле и проще, чем все эти воркэраунды
Отклонение по ширине прорезей, биение диска, или смещение нуля в датчике Холла приведет к огромной погрешности. А значит, все равно нужно усреднять.
да не к такой уж бешенной. но даже если брать только целые обороты колеса, то это получается порядка 10Гц, более, чем достаточно.
Копеечный акселерометр прямо на плате ЭБУ, имхо, дешевле и проще, чем все эти воркэраунды
будто его показания обрабатывать не надо. надо, и побольше, чем показания с датчиков abs
прошу прощения за критику но по мне так полёт фантазии, без какой либо модели физической реализации, усложненной дополнительными костылями от которых мало толку… вроде борьбы с ветряными мельницами, по скорости достаточно вводить коррекцию, в любом случае будет время регулирования, и как следствие провал, единственное что можно сделать только его малозаметным, зависит от точности измерений но с динамикой бензиновых моторов это только приведёт к повышенному расходу на ровном месте ради достижения этого комфорта. так как для некоторых коррекций смесь будет весьма обогощена.но что то мне подсказывает что это того не стоит. и техническая реализация подобного возможна только если эбу будет заранее знать, какую нагрузку вызовет тот или иной подъем и точным расстоянием до него, а это либо лидаром с акселометрами вычислять угол подъема и рассчитывать коррекцию, либо использование карт с высотами и подробным профилем местности, и то с большой погрешностью.
— в ручном режиме я позволяю машине разогнаться с холма (иногда, каюсь, с легким превышением скорости, до 120 км/час), а в горку тяну, удерживая коробку на максимальной передаче, допуская снижение скорости до 80 км/час (повторюсь, это на пустой трассе, где я никому не мешаю).
— на круизе при спуске машина начинает подтормаживать, держа заданную скорость, а на горку, как только скорость начинает проседать — радостно дает газу, спрыгивая на 5 и 4 передачи. Потом с горки опять тормозим, переводя энергию в тепло зазря.
В итоге расход топлива при езде на круизе ощутимо выше, хотел бы некий режим «постоянной мощности», когда машина едет в заданном диапазоне скоростей, стараясь удерживаться на максимальной передаче.
Я думаю, что при проектировании круиза так же учитывается физиология восприятия происходящего человеком. С круизом ездил на предпоследнем Мерседесе Спринтере и Субару Форестере 2006 года. Так вот, на первом не испытывал никакаго дискомфорта, а на втором через пару километров по трассе начинало тошнить от каких-то постоянных микро ускорений замедлений (мне кажеться, что он как раз пытался отрабатывать все неровности рельефа с высокой точностью).
Акселерометр в системе ПИД-регулирования круиз-контроля автомобиля