探索汽车二、三自由度模型:Simulink 建模之旅
汽车二、三自由度模型 汽车二、三自由度模型 本人用了三种不同方法搭的汽车线性二自由度simulink模型,文档里包含有具体的车辆数值,还关于汽车simulink仿真实例。 适合初学者学习simulink使用(ps.模型输入为前轮转角,输出为横摆角速度和速度)/后面两张是三自由度模型,也有说明文
嘿,各位学习 Simulink 的小伙伴们!今天来跟大家分享一下我搭建汽车线性二自由度和三自由度模型的有趣经历。
汽车线性二自由度 Simulink 模型
我尝试用三种不同的方法搭建了汽车线性二自由度 Simulink 模型,这对于初学者来说,简直是绝佳的 Simulink 学习实例。
先说说模型的输入和输出吧,这个模型的输入是前轮转角,输出则是横摆角速度和速度。这就好像我们开车时转动方向盘(前轮转角输入),车辆会以一定的横摆角速度转弯,同时保持一定速度前行(输出)。
下面咱简单看一段关键代码示例(假设用 MATLAB 脚本来辅助理解模型原理,非 Simulink 模块内代码哦):
% 定义车辆参数 m = 1500; % 车辆质量,单位:kg Iz = 2500; % 车辆绕 z 轴的转动惯量,单位:kg·m² lf = 1.2; % 质心到前轴的距离,单位:m lr = 1.5; % 质心到后轴的距离,单位:m Cf = 40000; % 前轮侧偏刚度,单位:N/rad Cr = 45000; % 后轮侧偏刚度,单位:N/rad % 假设前轮转角输入 delta = 0.1; % 前轮转角,单位:rad % 计算横摆角速度和速度(简化公式示例) beta = atan((lr * Cf - lf * Cr) / (m * (lf + lr) * Cf * Cr) * Iz * delta); % 车辆质心侧偏角 r = (Cf * lf * delta - (Cf + Cr) * beta) / (Iz * (1 + (lf^2 * Cf + lr^2 * Cr) / (Iz * m * (lf + lr)))); % 横摆角速度 v = 30; % 假设的车辆速度,单位:m/s(实际可通过更复杂模型计算)在这段代码里,我们先定义了车辆的一些关键参数,这些参数在文档里都有具体数值哦,大家可以实际去替换使用。然后给定一个前轮转角delta,通过一些动力学公式计算出车辆的质心侧偏角beta和横摆角速度r,还假设了一个速度v。实际在 Simulink 模型里,就是把这些计算过程模块化、图形化实现啦。
汽车二、三自由度模型 汽车二、三自由度模型 本人用了三种不同方法搭的汽车线性二自由度simulink模型,文档里包含有具体的车辆数值,还关于汽车simulink仿真实例。 适合初学者学习simulink使用(ps.模型输入为前轮转角,输出为横摆角速度和速度)/后面两张是三自由度模型,也有说明文
在 Simulink 里搭建这个模型时,要注意各个模块之间的连接关系,就像搭积木一样,每个模块都有其特定功能。比如传递函数模块可以用来模拟车辆动力学方程中的一些环节,加法器模块可以进行信号的加减运算等等。
汽车三自由度模型
后面两张展示的是三自由度模型,同样也有详细的说明文。相比于二自由度模型,三自由度模型考虑了更多的车辆运动维度,能更精准地模拟车辆实际运动情况。
三自由度模型可能会多考虑垂直方向的运动等因素。不过搭建它的思路和二自由度模型类似,也是基于车辆动力学原理,把各个物理量之间的关系通过 Simulink 模块搭建起来。
希望大家通过这些模型的学习,能对 Simulink 的使用有更深入的了解,也对汽车动力学模型有更清晰的认识。欢迎大家一起交流讨论呀!
以上就是我这次搭建汽车二、三自由度模型的分享啦,大家赶紧动手试试吧!
