A. 自动驾驶控制算法(5)——PID算法
研究自动驾驶相关资料、文献时,需以谨慎、批判、怀疑的态度进行。
PID控制模型,全称为比例、积分、微分控制器,已应用逾百年,许多经典控制理论皆基于此推演。PID由比例单元(Proportional)、积分单元(Integral)和微分单元(Derivative)组成,通过调整增益系数调节输出特性。
PID算法公式如下:
比例单元P,处理当前误差;积分单元I,消除稳态误差;微分单元D,预见未来趋势。
以自动驾驶的ACC巡航功能为例,若目标速度为60 km/h,PID控制器需根据车速调整加减速,以保持目标速度。
比例单元P反应当前误差,积分单元I消除稳态误差,微分单元D预见未来趋势,避免频繁加减速,提升乘坐舒适度。
具体应用PID控制器,需确定P、I、D的系数,通常需通过经验与实际调试来选取最佳参数,实现理想控制效果。
位置式PID属于数字PID控制算法,通过当前系统位置与预期位置的偏差进行控制。
位置式PID的优点是静态误差小,缺点是计算量大,可能产生积分饱和问题,影响系统稳定性。
位置PID解决积分饱和问题,仅在误差反向变化时才进行积分,避免系统长时间处于饱和状态。
增量式PID适用于执行器需要控制量为增量的情况,不累积误差,计算量相对较小,但存在静态误差。
积分分离式PID结合了P、I、D的特性,依据误差大小动态调整积分项权重,减少超调,提高控制性能。
变速积分PID进一步优化积分项权重,动态响应误差大小,提高控制系统的适应性。
低通滤波器用于抑制微分控制的高频干扰,保持系统稳定性,适用于波动频率较高的场合。
微分先行PID适用于目标位置发生阶跃变化的情况,降低高频抖动,提高控制性能。
微分部分引入一阶惯性滤波器,进一步降低微分控制的不稳定影响。
死区控制PID抑制控制器输出量的量化导致的连续振荡,提高系统稳定性,但也可能导致滞后。
积分梯形积分方法用于减小余差,提高运算精度,但可能会延长控制曲线到达预期值的时间。
在实际应用中,PID控制算法用于轨迹跟踪,规划模块输出参考轨迹,控制器则依据横向跟踪误差进行控制,通过增加差分控制器D降低航向角变化速度,增加积分控制器I修正系统性偏差,实现车辆轨迹的稳定跟踪。
通过整合PID控制算法与车辆模型,可以有效提升自动驾驶系统的性能,实现精准的轨迹跟踪与控制。
B. PID算法的输出是什么,0到1之间
这个不一定,pid算法是控制器用于控制的一种算法。控制器的输出范围一般后面执行机构的输入范围一致。
比如你的控制对象为spwm的幅值,你的执行机构为igbt。那么控制器经过pid算法的输出为0到1的调制度。而执行机构在该调制度的输入下对应的有一个spwm的幅值。而该幅值经过检查机构的检测和给定的spwm幅值做比较,二者之差再作为控制器的输入。从而形成一个闭环控制结构。结构图如下: