本文主要是介绍基于carsim的线控转向仿真(1)--carsim车辆模型目标角度跟踪,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、Rwa转向执行总成建模
Rwa包括齿轮齿条机构、转向组件以及转向执行电机;如下图,电机输出轴通过齿轮减速增扭后,再经过一个半径为rp的小齿轮,直接带动齿条左右移动。齿条的移动通过转向摇臂,带动车轮转动,整套系统从电机的转动,转换为齿条的左右移动,再转换成车轮的左右摆动。
1、转向电机建模
在线控转向中,转向电机是一个执行器,上层给多少需求力矩,电机控制器便响应多少力矩。这里,我们用一个一阶惯性环节来简单模拟电机响应。
仿真响应如下:
2、齿轮齿条机构建模
齿轮齿条动力来源是电机,阻力有左右车轮的阻力,齿条自身的加速度和阻尼,依据牛顿力学第二定律,可以列出微分方程
式中,--齿条上等效阻力;,--左右前轮主销回正力矩。
参数名称 | 物理意义 | 单位 | 数值 |
转向电机减速比 | -- | 18 | |
左前轮转向摇臂长度 | m | 0.132 | |
右前轮转向摇臂长度 | m | 0.132 | |
小齿轮半径 | m | 0.007 | |
齿轮齿条阻尼系数 | N.m/rad | 651 | |
齿轮齿条质量 | kg | 2.25 |
二、搭建Rwa总成simuink模型
依据以上几个公式,搭建Rwa执行总成模型。
三、simulink与carsim的联合仿真
1、仿真接口
低调一点选了个b级车
Carsim与Simulink模型的交互接口如下:
名称 | 含义 | 方向 |
IMP_STEER_L1 | 左前轮转角 | simulink给到carsim |
IMP_STEER_R1 | 右前轮转角 | simulink给到carsim |
M_TRdL1 | 左前轮转向阻力 | carsim到simulink |
M_TrdR1 | 右前轮转向阻力 | carsim到simulink |
Steer_L1 | 左前轮转角 | carsim到simulink |
Steer_R1 | 右前轮转角 | carsim到simulink |
此外还需要注意到,carsim前轮转角是带阿克曼转向的,因此再给需求角度时,也需要考虑到,在这里,从carsim的转向系统里,提取出齿条位移--转向角度。
2、仿真思路
首先,需要关闭carsim原有自带的转向系统;用OPT_STEER_EXT=0这个指令就可以;其次,关闭carsim里路径跟随的功能。这两个设置后,carsim的转向系统便会听simulink的。
整个仿真信号传递思路如下:
1)根据车辆模型实时转角与参考转角的差距,用pid算出需求电机需求力矩;
2)一阶电机模型响应电机需求理解;
3)有了电机力矩,以及车辆模型的转向阻力,便可以套公式算齿条位移;
4)有了齿条位移,便可以查表得到左右前轮需要的转角,响应前轮需求转角就是carsim的事了。
三、仿真结果
如下图,第一步我们已经实现,通过给需求转角,转向执行机构能实现需求转角,并与carsim实现了联调。
返回专栏目录
这篇关于基于carsim的线控转向仿真(1)--carsim车辆模型目标角度跟踪的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!