Сообщество Engee

Модель движения автомобиля с вариатором

Автор
avatar-ussmoussmo
Соавторы
avatar-alexursolovalexursolov
avatar-alexeybelovalexeybelov
Notebook

Модель движения автомобиля с вариатором

Представлена детализированная физико-математическая модель динамики автомобиля. Её ключевая задача — исследование комплексного взаимодействия силового агрегата, трансмиссии, ходовой части и дорожного полотна в переходных и установившихся режимах, начиная со старта двигателя.

Модель ориентирована на решение следующих инженерных задач: анализ влияния параметров трансмиссии на разгонную динамику и топливную экономичность, влияние неидеальности сцепления с дорожным полотном в продольном направлении, оптимизацию алгоритмов управления (имитация работы вариатора).

Особенность: Модель акцентирует внимание на этапе старта и начального разгона, где критически важна роль гидротрансформатора и дифференциалов, а также позволяет наблюдать установившееся движение.

In [ ]:
demoroot = @__DIR__
mdl = engee.open(joinpath(demoroot,"vehicle_simple_4wheel.engee"))

Описание модели

Вид модели vehicle_simple_4wheel.engee:

screen.png

Ключевые физические блоки:

  • Дорожное полотно (RoadProfile): Задает вертикальный профиль для расчета нормальных реакций и влияния на подвеску. Используется для генерации базовых сценариев движения.

  • Кузов и подвеска (Vehicle Body): Учитывает вертикальную динамику через модели подвесок передней и задней оси. Рассчитывает нормальные реакции, передающиеся на модель шин.

  • Запуск и начальный разгон (MotorAndDrive + GenericEngine):

    • Процесс старта инициируется базовой моделью стартера/электропривода (MotorAndDrive), который прикладывает начальный крутящий момент к валу двигателя.

    • После запуска, двигатель (GenericEngine) работает по статической характеристике (torque map), без сложных алгоритмов регулирования. Его основная функция — генерировать крутящий момент в зависимости от положения «дросселя» и рассчитывать условный расход топлива.

    • Важно: Управляющие сигналы (дроссель, ограничение передачи) реализованы  направленными сигналами (например, Step, Signal Builder) для простоты и наглядности

  • Трансмиссия — сердце модели (ГДТ, Вариатор, Дифференциалы):

    • Гидротрансформатор (ГДТ): обеспечивает плавный старт и демонстрирует режим проскальзывания на низких оборотах.

    • Вариатор: редуктор, который динамически передает движение и крутящий момент между двумя соединенными осями приводных валов: ведущей и ведомой.

    • Дифференциалы: зубчатый механизм, который позволяет ведомым шестерням вращаться с разной скоростью, моделируют кинематику осей. В них может задаваться вязкое трение.

  • Шины и колеса: преобразуют крутящий момент в силу тяги с учетом проскальзывания. На этапе старта при равных условиях проскальзывание колес одной оси идентично.

    image.pngimage.png

Симуляция модели

При запуске модели в окне "Визуализация сигналов" можно видеть все логируемые сигналы в зависимости от времени симуляции, а именно:

  • Скорость авто, км/ч
  • Проскальзывание всех шин
  • Мощность ДВС, кВт
  • Частота вращения ДВС, тыс.об/мин
  • Передаточное число вариатора
  • Расход топлива, л/100 км

Сохранение результатов симуляции в рабочую область:

In [ ]:
result = engee.run(mdl);

Распакуем некоторые из записываемых сигналов функцией collect:

In [ ]:
vehicle_speed = collect(result["Скорость авто, км/ч"]);
engine_power = collect(result["Мощность ДВС, кВт"]);
slip_front_1 = collect(result["Проскальзывание передней шины 1"]);
slip_front_2 = collect(result["Проскальзывание передней шины 2"]);
slip_rear_1 = collect(result["Проскальзывание задней шины 1"]);
slip_rear_2 = collect(result["Проскальзывание задней шины 2"]);

Отобразим на графике зависимость мощности ДВС от времени:

In [ ]:
plot(engine_power.time,engine_power.value,lw=3,label="engine_power",
            title = "Мощность ДВС от времени",
            xguide = "Время (с)",
            yguide = "Мощность, кВт")
Out[0]:

Также отобразим на графике проскальзывание четырёх шин в начальный момент симуляции (до 2.5 сек):

In [ ]:
plot(slip_front_1.time,slip_front_1.value,l=:steppost, label="slip_front_1")
plot!(slip_front_2.time,slip_front_2.value,l=:steppost, label="slip_front_2")
plot!(slip_rear_2.time,slip_rear_2.value,l=:steppost, label="slip_rear_2")
plot!(slip_rear_1.time,slip_rear_1.value,l=:steppost, label="slip_rear_1",
        xlim = (0,2.5),
        title = "Проскальзывание шин",
        xguide = "Время (с)")
Out[0]:

Подобная разница наблюдается в связи с тем, что у блока Передней шины 1 установлена неидеальность - учитываются продольная жёсткость и демпфирование.

Также стоит отметить возможность учёта продвинутых физических явлений во всех блоках, моделирующих составные части транспортного средства.

Заключение

Мы рассмотрели модель, которая может использоваться в качестве отправной точки для построения виртуального стенда, который, в свою очередь, позволит инженерам анализировать сложные перекрестные влияния в системе «водитель-автомобиль-дорога», концентрируясь на динамике старта и установившегося движения.