Engee 文档
Notebook

汽车悬架建模

本例演示了汽车在撞击障碍物时的悬挂建模。

使用信号发生器块将障碍物定义为矩形信号。使用速度源,将信号(速度)的导数输入到横向弹簧块的C端口,该端口用于描述车轮的弹性特性。

反过来,横向弹簧又与质量块相连,质量块描述了车轮的惯性特性。

车轮与悬挂元件、减震器和减震器弹簧相连,这些元件由减震器块和弹簧块表示。

车辆本身的 "四分之一 "连接到减震器块和弹簧块的其他端口。

车轮的质量为 50 千克,车辆 "四分之一 "的质量为 350 千克。

障碍物的高度为 5 厘米。

模型示意图:

suspension_physmod_1727789568075.png

定义加载和运行模型的函数:

In [ ]:
function start_model_engee()
    try
        engee.close("suspension_physmod", force=true) # закрытие модели 
        catch err # в случае, если нет модели, которую нужно закрыть и engee.close() не выполняется, то будет выполнена её загрузка после catch
            m = engee.load("$(@__DIR__)/suspension_physmod.engee") # загрузка модели
        end;

    try
        engee.run(m) # запуск модели
        catch err # в случае, если модель не загружена и engee.run() не выполняется, то будут выполнены две нижние строки после catch
            m = engee.load("$(@__DIR__)/suspension_physmod.engee") # загрузка модели
            engee.run(m) # запуск модели
        end
end
Out[0]:
start_model_engee (generic function with 1 method)

运行模拟

In [ ]:
try
    start_model_engee() # запуск симуляции с помощью специальной функции, реализованной выше
    catch err
    end;

将 simout 中的数据分配到变量中:

In [ ]:
sleep(5)
result = simout;
res = collect(result)
Out[0]:
4-element Vector{WorkspaceArray}:
 WorkspaceArray("suspension_physmod/Положение колеса")
 WorkspaceArray("suspension_physmod/Перегрузка")
 WorkspaceArray("suspension_physmod/Препятствие")
 WorkspaceArray("suspension_physmod/Положение машины")

将车轮和车辆运动及超载数据写入变量

In [ ]:
wheel_pos = collect(res[1])
car_pos = collect(res[4])
overload = collect(res[2]);

模拟结果可视化

In [ ]:
using Plots
plot(wheel_pos[:,1], wheel_pos[:,2], linewidth=3, label="Положение колеса, м")
plot!(car_pos[:,1], car_pos[:,2], linewidth=3, label="Положение автомобиля, м")
Out[0]:
In [ ]:
plot(overload[:,1], overload[:,2], linewidth=3, label="Перегрузка, м/(с^2)")
Out[0]:

通过分析图表,我们可以看到,撞击障碍物时产生的过载(车身加速度与自由落体加速度之比)值略高于 2$м/с^2$ ,在不到 50 毫秒的时间内影响到四分之一的汽车。

这个过载不大,不会对人造成危险,也不会影响乘客的舒适度。

结论

本例演示了汽车悬架在与障碍物突然碰撞时的性能建模。分析了汽车四分之一部分的运动参数,以及可能影响乘客安全和舒适度的超载值。