自动驾驶车辆转向控制(通过扭矩控制实现方向盘转角控制)

本文介绍通过增量式PID控制器实现通过对自动驾驶车辆的EPS进行扭矩响应控制从而实现对期望方向盘转角的控制。

控制器采用增量式PID

对连续PID控制以一定离散化方法离散后就可以得到数字PID控制,离散的本质是采样,假设采样为周期采样,采样周期为T,离散自变量为n,则离散PID控制可以表示为:
在这里插入图片描述
上式也表示出了位置式PID控制算法。
根据位置式PID控制公式,写出n-1时刻的控制量:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此处,我们仅使用PI控制即可。
可以看到,增量式PID与位置PID是相似的,参数的表达方式略有不同,在正定过程中要注意相关公式的计算,Ki 和 Kd 的参数中有两个参数,其中T为采样周期,确定后就是常数,另外还有参数积分常数Ti 和 微分常数Td, 这两个数值的取值可以通过调节进行整定,当然也可以根据下文的推荐在一定范围内进行尝试。

我们总结一下增量式PID的特点:
增量式PID控制主要是通过求出增量,将原先的积分环节的累积作用进行了替换,避免积分环节占用大量计算性能和存储空间。
增量式PID控制的主要优点为:
①算式中不需要累加。控制增量Δu(k)的确定仅与最近3次的采样值有关,容易通过加权处理获得比较好的控制效果;
②计算机每次只输出控制增量,即对应执行机构位置的变化量,故机器发生故障时影响范围小、不会严重影响生产过程;
③手动—自动切换时冲击小。当控制从手动向自动切换时,可以作到无扰动切换 。
由于增量式需要对控制量进行记忆,所以对于不带记忆装置的系统,只能使用位置式PID控制方式进行控制。

下面介绍几个基本PID参数调节的常识:

PID控制器参数的工程整定,各种调节系统中P.I.D参数经验数据以下可参照:

温度T: P=20-60%,T=180-600s,D=3-180s
压力P: P=30-70%,T=24-180s,
液位L: P=20-80%,T=60-300s,
流量L: P=40-100%,T=6-60s。

方法二: 1.PID调试一般原则 a.在输出不振荡时,增大比例增益P。

b.在输出不振荡时,减小积分时间常数Ti

c.在输出不振荡时,增大微分时间常数Td。

2.一般步骤
a.确定比例增益P 确定比例增益P 时,首先去掉PID的积分项和微分项,一般是令Ti=0、Td=0(具体见PID的参数设定说明),使PID为纯比例调节。输入设定为系统允许的最大值的60%-70%,由0逐渐加大比例增益P,直至系统出现振荡;再反过来,从此时的比例增益P逐渐减小,直至系统振荡消失,记录此时的比例增益P,设定PID的比例增益P为当前值的60%~70%。比例增益P调试完成。

b.确定积分时间常数Ti 比例增益P确定后,设定一个较大的积分时间常数Ti的初值,然后逐渐减小Ti,直至系统出现振荡,之后在反过来,逐渐加大Ti,直至系统振荡消失。记录此时的Ti,设定PID的积分时间常数Ti为当前值的150%~180%。积分时间常数Ti调试完成。

c.确定积分时间常数Td 积分时间常数Td一般不用设定,为0即可。若要设定,与确定 P和Ti的方法相同,取不振荡时的30%。 d.系统空载、带载联调,再对PID参数进行微调,直至满足要求

值得注意的是即使是增量式PID,同样遵循工程PID参数整定方法:如著名的Z-N整定法,C_C整定法等

本方法通过simulink进行模型搭建并代码生成,并在实车上进行测试:
simulink模块如下:
在这里插入图片描述
限速模块,用于控制方向偏转角速度,当然模型中还包括很多保护模块,限速模块只是其中之一。

在这里插入图片描述
PID模块,用于实现通过扭矩对角度进行控制

细节部分如下:

在这里插入图片描述
开头部分如图:
在这里插入图片描述
由于是车辆发动机控制,本质上是流量控制,因此仅使用PI控制即可。
接下来还有累加模块和多个限速保护模块:
在这里插入图片描述
在这里插入图片描述
使用多个限速模块的原因是:
由于车辆是使用EPS扭矩控制方向盘转速,因此扭矩的变化一定要限制上下限保证EPS不会发生大的扭矩响应导致车辆不安全,另外限速模块也限制了扭矩变化,表现上就是车辆的方向盘转角的变化率也被限制,保证了方向盘转角不会突变,这也是安全的考虑。

相关模型的其他细节,不在此赘述,可以直接通过连接下载:
https://download.csdn.net/download/gophae/11729471
如有疑问可评论

相关推荐
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页