一种基于PID的跟车方法与流程

文档序号:22585313发布日期:2020-10-20 17:47阅读:123来源:国知局
一种基于PID的跟车方法与流程

本发明涉及自动驾驶技术领域,尤其涉及一种基于pid的跟车方法。



背景技术:

在自动驾驶过程中,自动驾驶车辆遇到前方运动车辆时,需要安全快速地跟随前车行驶。如何能够稳定、舒适地进行跟车是目前自动驾驶车辆主要研究的课题之一。

传统的基于pid的跟车算法,为分别使用基于前方运动车辆距离的p、i、d三个分量。其中的分量p称为比例项,分量i称为积分项,分量d称为差别项。具体应用pid来实施跟车时,一般是依据前方运动车辆距离与安全距离的差,来计算期望速度和期望加速度。

现有技术的不足之处在于传统的pid跟车算法调参困难,从开始阶段到稳态阶段时间较长的问题。



技术实现要素:

为客服现有技术存在的不足,本发明实施例提供一种基于pid的跟车方法,从开始阶段到稳态阶段时间较长的问题,专门性地进行了优化改进,原理简单,易于实现。

一方面,本发明实施例提供一种基于pid的跟车方法,包括以下步骤:

s1,获取初始设定值;具体包括:最大速度、安全时间、最大加速度、最小加速度,对帧计数赋值1;

s2,获取前方运动车辆的距离、前方运动车辆速度和当前车的车速;

s3,使用pid计算所述当前车的期望速度和期望加速度,对积分量进行调整;具体包括根据所述当前车的速度与所述前方运动车辆速度的差值,调整所述积分量;

s4,输出所述当前车的期望速度和期望加速度,将所述帧计数的值加1;等待下一时刻,跳转至所述s2步骤。

另一方面,本发明实施例提供一种基于pid的跟车系统,包括:

数据获取模块,获取初始设定值;具体包括:最大速度、安全时间、最大加速度、最小加速度,对帧计数赋值1;获取前方运动车辆的距离、前方运动车辆速度和当前车的车速;

数据计算模块,使用pid计算所述当前车的期望速度和期望加速度,对积分量进行调整;具体包括根据所述当前车的速度与所述前方运动车辆速度的差值,调整所述积分量;

数据输出模块,输出所述当前车的期望速度和期望加速度,将所述帧计数的值加1;等待下一时刻,重复以上步骤。

本发明实施例通过一种基于pid的跟车方法及系统,通过在计算期望速度和期望加速度时,对积分量进行调整;若当前速度与前方运动车辆的速度差别较大,则降低积分量的影响,参数调整方法更为方便和容易,使得系统能够更容易达到稳态。

附图说明

为了更清楚地说明本发明的技术方案,下面将对本发明技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一种基于pid的跟车方法流程示意图;

图2为本发明实施例一种基于pid的跟车系统结构示意图;

附图标记:

数据获取模块-1数据计算模块-2数据输出模块-3。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

一种基于pid的跟车方法,包括以下步骤:

s1,获取初始设定值;具体包括:最大速度、安全时间、最大加速度、最小加速度,对帧计数赋值1;

s2,获取前方运动车辆的距离、前方运动车辆速度和当前车的车速;

s3,使用pid计算所述当前车的期望速度和期望加速度,对积分量进行调整;具体包括根据所述当前车的速度与所述前方运动车辆速度的差值,调整所述积分量;

s4,输出所述当前车的期望速度和期望加速度,将所述帧计数的值加1;等待下一时刻,跳转至所述s2步骤。

具体地,本发明提出了一种基于pid的跟车的方法,以前方运动车辆距离与安全距离的差作为判别的依据,使用pid得到当前车辆的期望速度;然后以期望速度与当前车速的差作为依据,仍然使用pid得到当前车辆的期望加速度;在计算期望速度和期望加速度时,对积分量进行调整。调整的方法例如,如果当前车速与前方运动车辆的速度的差距较大,那么对得到的积分量在其原有基础上乘以一个系数进行缩小,降低积分量的影响。

进一步地,期望速度vp,k计算公式如下式:

其中,k为帧计数,d0,k表示第k帧时所述前方运动车辆的距离,v0,k表示第k帧时的所述当前车的车速,δdk表示第k帧时所述前方运动车辆的距离与安全距离的差,pv,k表示第k帧时计算得到的比例项,δdt表示第t帧时所述前方运动车辆的距离与安全距离的差,δdk-1表示第k-1帧时所述前方运动车辆的距离与安全距离的差,iv,k表示第k帧时计算得到的积分项,dv,k表示第k帧时得到的差别项;kp,v、ki,v、kd,v分别表示计算所述期望速度时的比例项系数、积分项系数和差别项系数,tsafe为安全时间;

当|v0,k-vf,k|>=thresholdv*vf,k时,iv,k=iv,k*ratioi

当vp,k>=vlimit时,取vp,k=vlimit;

其中,vlimit表示最大速度,vf,k为前方运动车辆速度。

所述期望加速度ap,k计算公式如下式:

其中,δvk表示第k帧时所述期望速度与当前车的车速之差,pa,k表示第k帧时的比例项,δvt表示第t帧时的所述期望速度与当前车的车速之差,δvk-1表示第k-1帧时的所述期望速度与当前车的车速之差,ia,k表示第k帧时的积分项,da,k表示第k帧时的差别项;kp,a、ki,a、kd,a分别表示计算所述期望加速度时的比例项系数、积分项系数和差别项系数;

当|v0,k-vf,k|>=thresholdv*vf,k时,ia,k=ia,k*ratioi

当ap,k>amax时,取ap,k=amax;

当ap,k<amin时,取ap,k=amin;

其中,amax为最大加速度,amin为最小加速度。

具体地,获取设定的最大速度vlimit,设定的安全时间tsafe,最大加速度amax,最小加速度amin,对帧计数k赋值1,获取前方运动车辆的距离d0,k,前方运动车辆速度vf,k,当前车的车速v0,k;通过公式计算期望速度vp,k和期望加速度ap,k,同时根据当前车的速度与前方运动车辆速度的差值,调整所述积分量;如,当|v0,k-vf,k|>=thresholdv*vf,k时,iv,k=iv,k*ratioi;当vp,k>=vlimit时,取vp,k=vlimit;在实际项目实施时,thresholdv的值为0.08,ratioi的值为0.8,kp,v的值为0.22,ki,v的值为0.018,kd,v的值为0;当|v0,k-vf,k|>=thresholdv*vf,k时,ia,k=ia,k*ratioi;当ap,k>amax时,取ap,k=amax;在实际项目实施时,thresholdv的值为0.08,ratioi的值为0.8,kp,a的值为0.5,ki,a的值为0.01,kd,a的值为0.4;最后,输出当前车的期望速度和期望加速度;将帧计数的值加1,等待下一时刻,跳转至所述s2步骤重复以下过程。

本发明实施例通过一种基于pid的跟车方法及系统,通过在计算期望速度和期望加速度时,对积分量进行调整;若当前速度与前方运动车辆的速度差别较大,则降低积分量的影响,参数调整方法更为方便和容易,使得系统能够更容易达到稳态。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1