本发明涉及智能交通技术领域,特别涉及一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法。
背景技术:
自动驾驶提供了全新的交通出行综合解决方案,在移动互联网、大数据、云计算的浪潮下,自动驾驶汽车已成为当前自动驾驶汽车产业的发展趋势。目前自动驾驶汽车的横向控制主要采用电动助力转向系统(eps)作为执行机构,但是自动驾驶汽车的eps生产厂商众多,eps协议及eps特性是自动驾驶汽车零部件企业核心技术,短期内很难全面对外开放;不同eps厂商开放的线控输入输出接口不同,而且不同车企的canbus(can总线)协议中开放的接口也不同,例如,有的自动驾驶汽车线控平台将方向盘转向角作为输入接口,有的自动驾驶汽车线控平台将转向力矩作为输入接口。当汽车线控平台以转向力矩作为线控输入接口时,未知的eps特性(短期内很难全面对外开放)、道路坑洼、风阻等干扰都会影响自动驾驶汽车方向盘转向角跟踪控制的精度。
目前针对以转向力矩作为线控输入接口的自动驾驶汽车转向控制算法,有的采用反馈控制算法,有的采用前馈控制算法和反馈控制算法相结合的控制算法。上述算法有的只考虑斜坡重力横向分量干扰、有的只考虑道路坑洼和风阻;但是针对同时考虑eps特性未知、道路坑洼、风阻、自动驾驶汽车前轮转动模型参数不确定性、斜坡重力横向分量干扰的情况,目前未见扩张干扰观测器(韩京清,一类不确定对象的扩张状态观测器[j].控制与决策,1995.01(20):85-88)算法在以转向力矩作为线控输入接口的自动驾驶汽车方向盘转向角跟踪控制中的应用。
本发明涉及的技术术语说明如下:
eso(extendedstateobser)是扩张干扰观测器算法,具有设计简单,应用方便的特点。
pd(proportionaldifferential)控制器是比例微分控制器算法,pd控制器结构简单、稳定性好、工作可靠、调整方便等优点。
smc(slidingmodelcontrol)是滑模控制,可以在动态过程中根据控制对象当前的状态不断变化,迫使该控制对象按照预定"滑动模态"的状态轨迹运动,具有快速响应、对应参数变化及扰动不灵敏、无需控制对象在线辨识、物理实现简单等优点。
鲁棒h∞控制方法,是使得噪声到期望输出之间的传递函数尽可能小的控制方法,从而达到抗扰的目的,鲁棒h∞控制具有较强的保守性。
eps(electronicpowersteering)是电动助力转向系统,利用电动机产生的动力协助驾车者进行动力转向。
canbus(controllerareanet-workbus)是can总线,是连接传感器、执行器、控制器等现场设备,面向广播的串行总线系统,最初由美国通用自动驾驶汽车公司开发用于自动驾驶汽车工业。
can解码盒,也称canbus总线数据解码盒,主要用于自动驾驶汽车数据采集与故障诊断。
技术实现要素:
本发明提出一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法,可以在eps特性未知、道路坑洼、风阻、自动驾驶汽车模型参数不确定、斜坡重力横向分量干扰同时存在的情况下,提高以转向力矩作为线控输入接口的自动驾驶汽车方向盘转向角跟踪精度。
为实现上述目的,本发明采用如下技术方案:
本发明提出的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法,其特征在于,包括以下步骤:
1)设定循环周期前后两帧之间的时间差δτ;
2)在第k帧的开始时刻,获得自动驾驶汽车的方向盘转向角测量值θk和方向盘转向角外部指令θd_k;k=1,2,…,n,n是结束时刻的计算帧数,为正整数;
3)根据步骤2)获得的θk和θd_k计算eps转向力矩指令mc_k,计算公式如下:
mc_k=mfeedback_k-mfeedforward_k
式中,
mfeedforward_k为基于扩张干扰观测(eso)的前馈补偿器算法力矩,用于补偿包含eps未知特性在内的自动驾驶汽车横向控制系统的总干扰对控制精度的影响,表达式如下:
其中,jm是自动驾驶汽车的转向系统等效转动惯量;ε是方向盘转向角和自动驾驶汽车前轮转向角之间的比值;
式中,β是自动驾驶汽车的质心侧偏角;lr是自动驾驶汽车的轮胎拖距;
根据步骤1)设定的δτ将eso算法离散化,以此求解x3_k的估计值
式中,l1,l2,l3分别表示eso的增益值,具体选取根据eso增益整定方法确定;
其中,σ为经验参数,取值范围为0.001~0.1;
mfeedback_k为根据步骤1)设定的δτ进行离散化的常规反馈控制器算法力矩,该力矩通过将自动驾驶汽车方向盘转向角指令θd_k与自动驾驶汽车方向盘转向角测量值θk之差θd_k-θk作为反馈量,然后由反馈控制器算法计算得到,用于抑制未被补偿的干扰并实现对自动驾驶汽车方向盘转向角外部指令θd_k的跟踪;
4)将步骤3)计算得到的转向力矩指令mc_k输出至eps,eps响应该转向力矩指令mc_k,实现自动驾驶汽车前轮转向;
5)令k=k+1,返回步骤2)进行下一个循环周期,直至汽车关闭自动驾驶功能。
本发明的特点及有益效果:
本发明给出的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法包括前馈补偿控制器算法和反馈控制器算法。其中,前馈补偿控制器算法基于现有的扩张干扰观测器算法,用于补偿包含eps未知特性在内的自动驾驶汽车横向控制系统的总干扰对控制精度的影响;反馈补偿控制器算法用于抑制未被补偿的干扰并实现对自动驾驶汽车方向盘转向角外部指令的跟踪。
(1)本发明是eso算法工程应用的拓展,可以在eps特性未知、道路坑洼、风阻、自动驾驶汽车模型参数不确定、斜坡重力横向分量干扰同时存在的情况下,提高以转向力矩作为线控输入接口的自动驾驶汽车方向盘转向角跟踪精度。
(2)本发明将整个eps系统视为执行机构,使得自动驾驶汽车的线控输入接口不论是采用力矩信号还是方向盘转向角信号,都可以很方便地使用已有的以方向盘转向角作为线控输入接口的自动驾驶汽车横向控制算法。
附图说明
图1是本发明的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法所涉及的硬件结构示意图。
图2是本发明实施例的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法的结构原理框图。
图3(a)是本发明实施例的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法对1弧度自动驾驶汽车方向盘转向角外部指令的跟踪误差仿真结果,图3(b)是图3(a)的局部放大图。
图4(a)是采用现有反馈控制方法中的pd控制算法对1弧度自动驾驶汽车方向盘转向角外部指令的跟踪误差仿真结果,图4(b)是图4(a)的局部放大图。
具体实施方式
以下实施例结合附图对本发明的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法作具体阐述。
将本发明方法应用在如图1所示的硬件系统中,该硬件系统包括计算平台、can解码盒、自动驾驶汽车总线、eps、自动驾驶汽车前轮。
本发明实施例的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法,本方法在自动驾驶汽车行驶过程中不断进行,其结构原理图参见图2,包括以下步骤:
1)设定循环周期前后两帧之间的时间差δτ,δτ根据实际需要选取,通常小于0.1ms;
2)在第k帧(即当前帧)的开始时刻,获得自动驾驶汽车的方向盘转向角测量值θk和方向盘转向角外部指令θd_k(即第k帧方向盘转角的期望值);k=1,2,…,n,n是结束时刻的计算帧数,为正整数。
本步骤中,θk的传输过程如下:eps根据自动驾驶汽车前轮的转向动作获得方向盘转向角测量值θk,eps与自动驾驶汽车总线通信,自动驾驶汽车总线获得θk;can解码盒与自动驾驶汽车总线通信,can解码盒获得方向盘转向角测量值θk;计算平台与can解码盒通信,计算平台获得方向盘转向角测量值θk。方向盘转向角外部指令θd_k通过计算机平台获得。
3)根据步骤2)获得的θk和θd_k计算eps转向力矩指令mc_k,表达式如下:
mc_k=mfeedback_k-mfeedforward_k
式中,mfeedforward_k为基于eso的前馈补偿器算法力矩,用于补偿包含eps未知特性在内的自动驾驶汽车横向控制系统的总干扰对控制精度的影响,表达式如下:
其中,jm是自动驾驶汽车的转向系统等效转动惯量;ε是方向盘转向角和自动驾驶汽车前轮转向角之间的比值;
式中,β是自动驾驶汽车的质心侧偏角;lr是自动驾驶汽车的轮胎拖距;
根据步骤1)设定的δτ将eso算法离散化,以此求解x3_k的估计值
式中,l1,l2,l3表示eso的增益值,具体取值根据eso增益整定方法确定(整定方法可参见文献gaoz.q.scalingandbandwidth-parameterizationbasedcontrollertuning.proceedingsofthe2003americancontrolconference,2003:4989-4996中的公式(4.16)和(4.17));
其中,σ为经验参数,取值范围为0.001~0.1;
mfeedback_k为根据步骤1)设定的δτ进行离散化的常规反馈控制器算法力矩,该力矩通过将自动驾驶汽车方向盘转向角指令θd_k与自动驾驶汽车方向盘转向角测量值θk之差θd_k-θk作为反馈量,然后由反馈控制器算法计算得到,用于抑制未被补偿的干扰并实现对自动驾驶汽车方向盘转向角外部指令θd_k的跟踪;所述反馈控制器算法主要包括pd控制算法、smc控制算法、鲁棒h∞控制算法。
4)将步骤3)计算得到的转向力矩指令mc_k输出至eps,eps响应该转向力矩指令mc_k,实现自动驾驶汽车前轮转向;
本步骤中,计算平台与can解码盒通信,can解码盒获得由步骤2)计算的转向力矩指令mc_k;can解码盒与自动驾驶汽车总线通信,总线获得转向力矩指令mc_k;eps与自动驾驶汽车总线通信,eps获得转向力矩指令mc_k;eps响应该转向力矩指令mc_k,实现自动驾驶汽车前轮转向。
5)令k=k+1,返回步骤2)进行下一个循环周期,直至汽车关闭自动驾驶功能。
本发明的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法的核心是计算自动驾驶汽车转向力矩指令mc_k,用于计算mc_k的自动驾驶汽车方向盘转向角跟踪控制方法包括基于eso前馈补偿器算法和常规的反馈控制器算法。其中,基于eso的前馈补偿器算法用于补偿自动驾驶汽车横向控制系统的总干扰对控制精度的影响,常规的反馈控制器算法用于抑制未被补偿的干扰并实现对自动驾驶汽车方向盘转向角外部指令的跟踪,从而使实现高精度方向盘转向跟踪。
本发明实施例的有效性验证:
为了验证本发明的有效性,采用simulink工具(是一种用来对动态系统进行建模、仿真和分析的软件包)对本发明的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法和常规反馈控制方法中的pd控制算法分别进行仿真。
本实施例中离散化的常规反馈控制方法中的pd控制算法的表达式为:
mfeedback_k=kp(θd_k-θk)+kd(θd_k-θk)/δτ
其中,kp和kd是pd反馈控制算法的比例和微分系数(具体取值方法参考:胡寿松.自动控制原理[m].科学出版社,2001);θd_k是方向盘转向角外部指令在第k帧的值,k的取值为从2到n,n是结束时刻的计算帧数。
设自动驾驶汽车方向盘转向角外部指令θd为1弧度。控制器算法参数值选取为l1=l2=l3=20,kp=5,kd=0.8,σ=0.01。如图3(a)、图3(b)所示(图3(b)为将图3(a)的纵坐标放大103后的局部图),为采用本发明的一种eps特性未知的自动驾驶汽车方向盘转向角跟踪方法对1弧度自动驾驶汽车方向盘转向角外部指令的跟踪误差仿真结果,在第5s到30s之间,跟踪误差可以收敛10-3度。如图4(a)、图4(b)所示(图4(b)为将图4(a)的纵坐标放大103后的局部图),为采用常规反馈控制方法中的pd控制算法对1弧度自动驾驶汽车方向盘转向角外部指令的跟踪误差仿真结果,在第5s到30s之间,跟踪误差收敛到-1.3度。因此,本发明方法与常规反馈控制方法中的pd控制算法相比可提高自动驾驶汽车方向盘转向角的控制精度。
以上所述方案例只是对本发明的优先实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的变形和改进,均应落入本发明的权利要求书确定的保护范围内。