一种车辆横向控制方法、装置、电子设备和存储介质与流程

1.本发明涉及汽车控制技术领域,尤其涉及一种车辆横向控制方法、装置、电子设备和存储介质。
背景技术:
2.随着汽车行业的飞速发展,汽车日渐成为人们日常出行的必备交通工具。车辆上配置的智能驾驶二级功能(l2)可以实现车道居中保持驾驶以及车道线保持等辅助驾驶功能,在车辆行驶过程中出现车道线缺失或不清晰的情况下,可以控制本车辆根据目标车辆的位置和行驶状态进行跟车行驶。
3.现有的车辆横向控制方法通常是将目标车辆行驶过的历史轨迹拟点合成三次曲线,并将其作为基准线以控制本车辆按照基准线行驶。但是上述方法存在以下不足之处:一是目标车辆的历史轨迹曲线可能存在较大的曲率变化导致横向控制不稳定;二是历史轨迹容易出现过拟合,使得拟合到的控制曲线不平滑进而导致横向控制不稳定;三是历史轨迹记录需要消耗一定的内存资源,造成内存资源紧张。
技术实现要素:
4.本发明提供了一种车辆横向控制方法、装置、电子设备和存储介质,以根据目标车辆的行驶数据和跟踪控制曲线模型确定跟踪控制曲线,再根据跟踪控制曲线去确定预设横向控制器的横向控制结果,进而按照横向控制结果控制车辆的横向运动,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。
5.根据本发明的一方面,提供了一种车辆横向控制方法,该方法包括:
6.获取目标车辆的行驶数据;
7.在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线;
8.根据跟踪控制曲线控制预设横向控制器确定横向控制结果;
9.根据横向控制结果控制车辆运动。
10.根据本发明的另一方面,提供了一种车辆横向控制装置,该装置包括:
11.行驶数据获取模块,用于获取目标车辆的行驶数据;
12.控制曲线确定模块,用于在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线;
13.控制结果确定模块,用于根据跟踪控制曲线控制预设横向控制器确定横向控制结果;
14.车辆控制模块,用于根据横向控制结果控制车辆运动。
15.根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
16.至少一个处理器;以及
17.与所述至少一个处理器通信连接的存储器;其中,
18.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的车辆横向控制方法。
19.根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的车辆横向控制方法。
20.本发明实施例的技术方案,通过获取目标车辆的行驶数据,在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线,根据跟踪控制曲线控制预设横向控制器确定横向控制结果,根据横向控制结果控制车辆运动。本发明实施例通过根据目标车辆的行驶数据和跟踪控制曲线模型确定跟踪控制曲线,再根据跟踪控制曲线去确定预设横向控制器的横向控制结果,进而按照横向控制结果控制车辆的横向运动,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。
21.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
22.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1是根据本发明实施例一提供的一种车辆横向控制方法的流程图;
24.图2是根据本发明实施例二提供的一种车辆横向控制方法的流程图;
25.图3是根据本发明实施例三提供的一种车辆横向控制方法的流程图;
26.图4是根据本发明实施例三提供的一种跟踪控制曲线的示例图;
27.图5是根据本发明实施例四提供的一种车辆横向控制装置的结构示意图;
28.图6是实现本发明实施例的车辆横向控制方法的电子设备的结构示意图。
具体实施方式
29.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
30.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或
描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
31.实施例一
32.图1为本发明实施例一提供了一种车辆横向控制方法的流程图,本实施例可适用于对车辆进行横向控制的情况,该方法可以由车辆横向控制装置来执行,该车辆横向控制装置可以采用硬件和/或软件的形式实现,该车辆横向控制装置可配置于电子设备中,例如可以包括但不限于车载设备等。如图1所示,本实施例一提供的一种车辆横向控制方法,具体包括如下步骤:
33.s110、获取目标车辆的行驶数据。
34.其中,目标车辆可以是指位于本车辆前方的各种类型的车辆。行驶数据可以是指目标车辆相对于本车辆的行驶状态数据,行驶数据可以包括:目标车辆的当前位置坐标、目标车辆的横向速度、目标车辆的纵向速度、目标车辆的横向距离、目标车辆的纵向距离等。可以理解的是,行驶数据可以全包含上述各维度信息,也可以仅包括上述部分维度信息,也可以还包括更多维度的信息,本发明实施例对此不进行限制。
35.在本发明实施例中,在车辆检测到当前行驶车道的车道线缺失或者车道线质量差等情况需要进入跟车模式时,可以控制车辆配置的车载相机、激光雷达、毫米波雷达和超声波雷达等车载感知设备采集前方目标车辆的行驶数据,其中,行驶数据可以包括但不限于:目标车辆的当前位置坐标、目标车辆的横向速度、目标车辆的纵向速度、目标车辆的横向距离、目标车辆的纵向距离等。
36.s120、在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线。
37.其中,预设跟车条件可以理解为预先配置的用于根据目标车辆的行驶数据确定目标车辆是否可作为被跟随车辆的条件,预设跟车条件可以包括但不限于:目标车辆在预设时间段内无发生频繁变道、目标车辆在预设时间段内的横向距离变化量小于某个阈值、目标车辆在预设时间段内的横向速度小于某个阈值等。跟踪控制曲线模型可以是指预先配置的用于确定跟踪控制曲线的模型,跟踪控制曲线模型可以是预先训练好的深度学习网络模型,也可以通过截取标准正弦sin函数、标准余弦cos函数等曲线的某一段作为基础曲线,并对其进行平移和变相等操作得到,示例性的,可以选择正弦函数y=sin(x)的(π/2,3π/2)区间内的曲线作为跟踪控制曲线的基础曲线。跟踪控制曲线可以是指根据跟踪控制曲线模型确定的车辆的理想跟踪轨迹。
38.在本发明实施例中,可以在电子设备上预先配置一个或者多个预设跟车条件,并根据获取的目标车辆的行驶数据判断其是否满足,在确定满足预设跟车条件时,可以根据跟踪控制曲线模型和行驶数据去生成对应的跟踪控制曲线,其中,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线的方式可以包括但不限于以下几种:可以将获取的行驶数据输入至已经训练好的由深度学习网络模型表示的跟踪控制曲线模型中,并将模型的输出结果作为跟踪控制曲线;也可以将获取的行驶数据输入至由正弦函数的某个区间内的曲线表示的跟踪控制曲线模型中,并将模型的输出结果作为跟踪控制曲线。
39.s130、根据跟踪控制曲线控制预设横向控制器确定横向控制结果。
40.其中,预设横向控制器可以是指预先配置的横向控制器,预设横向控制器用于控制车辆与跟踪控制曲线的偏差,预设横向控制器的数量可以为一个或者多个,预设横向控制器可以包括比例-积分-微分(proportion integration differentiation,pid)控制器和前馈控制器等。
41.在本发明实施例中,为了确保车辆尽可以沿着确定的跟踪控制曲线行驶,可以在电子设备上预设配置一个或者多个预设横向控制器用于控制车辆与跟踪控制曲线的偏差,例如可以配置两套pid控制器去控制本车辆与跟踪控制曲线的横向位置误差和朝向误差,配置一套前馈控制器去控制本车辆的当前行驶道路的曲率等,其中,根据跟踪控制曲线控制预设横向控制器确定横向控制结果的方式可以为:将跟踪控制曲线对应某个预设预瞄距离的横向位置误差、朝向误差以及跟踪控制曲线的曲线曲率依次输入预设横向控制器的预设横向控制器公式中,进而确定出对应的横向控制结果;也可以为:将跟踪控制曲线对应某个预设预瞄距离的横向位置误差、朝向误差以及跟踪控制曲线的曲线曲率输入至已经训练好的深度学习网络模型中,并将模型输出的结果作为预设横向控制器的横向控制结果。
42.s140、根据横向控制结果控制车辆运动。
43.在本发明实施例中,根据横向控制结果控制车辆运动的方式可以包括但不限于以下几种:可以将横向控制结果直接作为车辆的执行器控制参数,进而控制车辆的执行器执行对应操作;若横向控制结果的数量为大于一个,则可以将各横向控制结果的加权求和结果作为车辆的执行器控制参数,进而控制车辆的执行器执行对应操作,本发明实施例对此不进行限制。
44.本发明实施例的技术方案,通过获取目标车辆的行驶数据,在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线,根据跟踪控制曲线控制预设横向控制器确定横向控制结果,根据横向控制结果控制车辆运动。本发明实施例通过根据目标车辆的行驶数据和跟踪控制曲线模型确定跟踪控制曲线,再根据跟踪控制曲线去确定预设横向控制器的横向控制结果,进而按照横向控制结果控制车辆的横向运动,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。
45.实施例二
46.图2为本发明实施例二提供的一种车辆横向控制方法的流程图,基于上述实施方式进一步进行优化与扩展,并可以与上述实施方式中各个可选技术方案结合。如图2所示,本实施例二提供的一种车辆横向控制方法,具体包括如下步骤:
47.s210、控制车辆的车载感知设备采集目标车辆的行驶数据,其中,行驶数据至少包括:目标车辆编号、目标车辆当前位置坐标、目标车辆横向速度、横向位置偏差、纵向位置偏差。
48.其中,车载感知设备可以是指在配置于车辆的各种环境感知设备,车载感知设备可以用于采集前方目标车辆的行驶数据,车辆可以为自动驾驶车辆等,车载感知设备可以包括车载相机、激光雷达、毫米波雷达和超声波雷达等。
49.在本发明实施例中,在车辆检测到当前行驶车道的车道线缺失或者车道线质量差
等情况需要进入跟车模式时,可以控制车辆配置的车载相机、激光雷达、毫米波雷达和超声波雷达等车载感知设备采集前方目标车辆的行驶数据,其中,行驶数据可以包括但不限于:目标车辆编号、目标车辆当前位置坐标、目标车辆横向速度、横向位置偏差、纵向位置偏差等。
50.s220、在确定满足预设跟车条件时,将行驶数据的目标车辆当前位置坐标输入至跟踪控制曲线模型以生成跟踪控制曲线。
51.在本发明实施例中,可以根据获取的目标车辆的行驶数据判断其是否满足预设跟车条件,在确定满足预设跟车条件时,可以将行驶数据中的目标车辆当前位置坐标输入至预先配置的跟踪控制曲线模型中,进而得到对应的跟踪控制曲线。本发明实施例在确定跟踪控制曲线时,只需要目标车辆的当前位置坐标即可确定,无需像现有技术中根据目标车辆的大量历史行驶轨迹点进行拟合的方式进行获取;同时,本发明实施例生成的跟踪控制曲线不会出现曲线拟合方法存在的曲线曲率较大以及过拟合的问题,也不需要占用大量内存。
52.进一步地,在上述发明实施例的基础上,预设跟车条件可以至少包括:
53.在预设时间段内,行驶数据的目标车辆编号未发生跳变;
54.在预设时间段内,行驶数据的目标车辆横向速度小于或者等于预设横向速度阈值;
55.在预设时间段内,行驶数据的横向位置偏差小于或者等于预设横向位置偏差阈值;
56.在预设时间段内,行驶数据的纵向位置偏差小于或者等于预设纵向位置偏差阈值。
57.在本发明实施例中,当预设时间段内目标车辆的行驶数据满足以上全部预设跟车条件,可以认为目标车辆能够作为被跟随车辆,此时可以根据目标车辆当前位置坐标以及跟踪控制曲线模型去确定跟踪控制曲线。
58.进一步地,在上述发明实施例的基础上,跟踪控制曲线模型可以至少包括:
[0059][0060]
其中,(x,y)表示车辆当前位置坐标,(x
mark
,y
mark
)表示目标车辆当前位置坐标。
[0061]
需要理解的是,上述跟踪控制曲线模型仅作为示例,在实际应用中也可以选择其他类型的曲线作为跟踪控制曲线模型的基础曲线,只需满足选取的基础曲线在各个阶段曲率变化平滑且在起始位置点处与本车辆前进方向相切以及在到达位置点处与目标车辆前进方向相切即可,本发明实施例对此不进行限制。
[0062]
s230、确定跟踪控制曲线对应的朝向曲线和曲线曲率。
[0063]
其中,朝向曲线可以是指由跟踪控制曲线确定的表征车辆朝向的曲线,朝向曲线可以由跟踪控制曲线的一阶导数进行确定。曲线曲率可以由跟踪控制曲线的一阶导数和二阶导数进行确定。
[0064]
在本发明实施例中,在生成跟踪控制曲线之后,可以根据跟踪控制曲线计算其对于自变量x的一阶导数和二阶导数,并将一阶导数作为朝向曲线,以及调用预设曲率确定公
式根据一阶导数和二阶导数去确定曲线曲率,其中,预设曲率确定公式可以表示为:cur=ddy
×
[1+(dy)2]-32
,式中,cur表示曲线曲率,dy表示一阶导数,ddy表示二阶导数。
[0065]
s240、在跟踪控制曲线以及朝向曲线的自变量满足预设预瞄距离时,将跟踪控制曲线以及朝向曲线对应的因变量结果作为横向位置误差和朝向误差。
[0066]
其中,预设预瞄距离可以是指预先配置的与某个预瞄点之间的距离,预瞄点可以是车辆在经过横向控制后到达期望路径上的某一个目标点,预设预瞄距离可以根据预设预瞄标定时间和车辆速度确定,预设预瞄距离可以设置为0.5米或0.6米等。横向位置误差可以是指车辆的当前位置与当前跟踪控制曲线的横向偏差。朝向误差可以是指车辆的当前朝向与当前跟踪控制曲线朝向的偏差。
[0067]
在本发明实施例中,可以将预设预瞄距离作为跟踪控制曲线以及朝向曲线的自变量,将跟踪控制曲线输出的对应因变量结果作为横向位置误差,以及将朝向曲线输出的对应因变量结果作为朝向误差,其中,预设预瞄距离x0可以表示为:x0=tm×vm
,式中,tm表示预设预瞄标定时间,vm表示车辆速度。
[0068]
s250、根据横向位置误差、朝向误差和曲线曲率依次调用第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式,以得到对应的第一横向控制结果、第二横向控制结果和第三横向控制结果。
[0069]
其中,第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式可以分别是指预先配置的用于确定第一横向控制结果、第二横向控制结果和第三横向控制结果的控制器公式,第一横向控制结果为横向位置误差对应于第一预设横向控制器公式的输出结果,第二横向控制结果为朝向误差对应于第二预设横向控制器公式的输出结果,第三横向控制结果为曲线曲率对应于第三预设横向控制器公式的输出结果。
[0070]
在本发明实施例中,可以将前面确定的横向位置误差、朝向误差和曲线曲率分别输入至第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式中,并将三者的输出结果分别作为第一横向控制结果、第二横向控制结果和第三横向控制结果,其中,第一横向控制结果、第二横向控制结果和第三横向控制结果可以表现为方向盘转角或转向机扭矩等。进一步地,第一预设横向控制器和第二预设横向控制器可以为pid控制器,第三预设横向控制器可以为前馈控制器。
[0071]
进一步地,在上述发明实施例的基础上,第一预设横向控制器公式可以表示为:
[0072][0073]
式中,c1表示第一横向控制结果,e1表示横向位置误差,k
p
、kd、ki和k
error
表示调节参数,表示微分操作,dt表示积分操作;
[0074]
第二预设横向控制器公式可以表示为:
[0075][0076]
式中,c2表示第二横向控制结果,e2表示朝向误差;
[0077]
第三预设横向控制器公式可以表示为:c3=kc×
cur,
[0078]
式中,c3表示第三横向控制结果,cur表示曲线曲率,kc表示第三预设横向控制器的调节参数。
[0079]
s260、将第一横向控制结果、第二横向控制结果和第三横向控制结果的加权求和结果作为执行控制参数,并根据执行控制参数控制车辆的执行器工作。
[0080]
其中,执行控制参数可以理解为用于控制车辆的执行器工作的参数,执行控制参数可以包括方向盘转角和转向机扭矩等。执行器可以是指用于控制车辆横向运动的设备,执行器可以包括方向盘和转向机等。
[0081]
在本发明实施例中,可以将确定的第一横向控制结果、第二横向控制结果和第三横向控制结果与预设加权系数的加权求和结果作为执行控制参数,其中,执行控制参数可以包括方向盘转角和转向机扭矩等,再按照执行控制参数去控制车辆的对应执行器工作,使得车辆尽可能沿着跟踪控制曲线行驶。
[0082]
本发明实施例的技术方案,通过控制车辆的车载感知设备采集目标车辆的行驶数据,其中,行驶数据至少包括:目标车辆编号、目标车辆当前位置坐标、目标车辆横向速度、横向位置偏差、纵向位置偏差,在确定满足预设跟车条件时,将行驶数据的目标车辆当前位置坐标输入至跟踪控制曲线模型以生成跟踪控制曲线,确定跟踪控制曲线对应的朝向曲线和曲线曲率,在跟踪控制曲线以及朝向曲线的自变量满足预设预瞄距离时,将跟踪控制曲线以及朝向曲线对应的因变量结果作为横向位置误差和朝向误差,根据横向位置误差、朝向误差和曲线曲率依次调用第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式,以得到对应的第一横向控制结果、第二横向控制结果和第三横向控制结果,将第一横向控制结果、第二横向控制结果和第三横向控制结果的加权求和结果作为执行控制参数,并根据执行控制参数控制车辆的执行器工作。本发明实施例通过在确定满足预设跟车条件时,根据目标车辆当前位置坐标和跟踪控制曲线模型确定跟踪控制曲线,再根据跟踪控制曲线去确定横向位置误差、朝向误差和曲线曲率,并调用第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式确定对应的横向控制结果,最后将各横向控制结果的加权求和结果作为执行控制参数以控制车辆的执行器工作,本发明实施例只需要目标车辆的当前位置坐标即可生成对应的跟踪控制曲线,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。
[0083]
实施例三
[0084]
图3为本发明实施例三提供的一种车辆横向控制方法的流程图,本实施例在上述实施例的基础上,提供了一种车辆横向控制方法的一个实施方式,能够根据本车位置与前方目标车辆位置生成跟踪控制曲线,并通过两个pid控制器和一个道路曲率前馈控制器来控制与跟踪控制曲线的误差,进而实现车辆的横向控制。如图3所示,本发明实施例三提供的一种车辆横向控制方法,具体包括如下步骤:
[0085]
s310、获取目标车辆的行驶数据,并判断目标车辆是否满足预设跟车条件。
[0086]
在本发明实施例中,在本车辆如自动驾驶汽车检测到当前行驶车道的车道线缺失或者车道线质量差等情况时,可以控制本车辆配置的车载相机、激光雷达、毫米波雷达和超声波雷达等车载感知设备采集前方目标车辆的行驶数据,并根据行驶数据判断目标车辆的行驶状态是否满足预设跟车条件,其中,预设跟车条件至少包括:
[0087]
1、在预设时间段内,目标车辆id稳定未发生跳变;
[0088]
2、在预设时间段内,目标车辆没有出现较大的横向运动,即vy≤a;
[0089]
3、在预设时间段内,目标车辆与本车辆的横向位置偏差在一定的阈值范围内,即δy≤b;
[0090]
4、在预设时间段内,目标车辆与本车辆的纵向位置偏差在一定的阈值范围内,即δx≤c。
[0091]
其中,vy表示目标车辆的横向速度,a表示横向速度阈值,δy表示目标车辆与本车辆的横向位置偏差,b表示横向位置偏差的阈值;δx表示目标车辆与本车辆的纵向位置偏差,c表示纵向位置偏差的阈值。
[0092]
当预设时间段内目标车辆的行驶状态均满足上述预设跟车条件,则认为目标车辆能够作为被跟随车辆,即可以利用当前目标车辆的状态来设计并生成跟踪控制曲线。
[0093]
s320、在确定满足预设跟车条件时,根据目标车辆当前位置坐标以及跟踪控制曲线模型生成跟踪控制曲线。
[0094]
如图4所示,本发明实施例选取正弦函数y=sin(x)的(π/2,3π/2)区间内的曲线作为跟踪控制曲线的基础曲线,对其进行平移和变相操作得到跟踪控制曲线如下:
[0095][0096]
其中,(x,y)表示本车辆的当前位置坐标,(x
mark
,y
mark
)表示目标车辆的当前位置坐标。本发明实施例在确定跟踪控制曲线时,只需要目标车辆的当前位置坐标即可确定,同时满足跟踪控制曲线在各个阶段曲率变化平滑且在起始位置点处与本车辆前进方向相切以及在到达位置点处与目标车辆前进方向相切,保证了本车辆在横向控制中的朝向角的初始状态和到达状态一致,确保横向控制更平滑。
[0097]
进一步地,跟踪控制曲线对应的一阶导数dy表示为:
[0098][0099]
跟踪控制曲线对应的二阶导数ddy表示为:
[0100][0101]
跟踪控制曲线对应的曲线曲率cur表示为:cur=ddy
×
[1+(dy)2]-32
。
[0102]
s330、根据跟踪控制曲线确定预设横向控制器的第一横向控制结果、第二横向控制结果和第三横向控制结果。
[0103]
在本发明实施例中,设计了两个pid控制器和一个道路曲率前馈控制器来控制与跟踪控制曲线的误差。其中一套pid控制器用于控制本车辆的当前位置与当前跟踪控制曲线的横向偏差,另外一套pid控制器用于控制本车辆的当前朝向与当前跟踪控制曲线朝向的偏差,道路曲率前馈控制器用于控制本车辆的当前行驶道路的曲率。
[0104]
其中,横向位置误差e1表示为:e1=y(x=x0),朝向误差e2表示为:e2=dy(x=x0),式中的x0表示预设预瞄距离。
[0105]
将横向位置误差e1、朝向误差e2和曲线曲率cur依次代入第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式中,并将三者的输出结果分别作为第一横向控制结果、第二横向控制结果和第三横向控制结果。
[0106]
其中,第一预设横向控制器公式可以表示为:
[0107][0108]
式中,c1表示第一横向控制结果,e1表示横向位置误差,k
p
、kd、ki和k
error
表示调节参数,表示微分操作,dt表示积分操作;
[0109]
第二预设横向控制器公式可以表示为:
[0110][0111]
式中,c2表示第二横向控制结果,e2表示朝向误差;
[0112]
第三预设横向控制器公式可以表示为:c3=kc×
cur,
[0113]
式中,c3表示第三横向控制结果,cur表示曲线曲率,kc表示第三预设横向控制器的调节参数。
[0114]
s340、将第一横向控制结果、第二横向控制结果和第三横向控制结果的加权求和结果作为方向盘转角,并根据方向盘转角控制本车辆的方向盘工作。
[0115]
在本发明实施例中,方向盘转角可以通过下式确定:
[0116]
angle=k1×
c1+k2×
c2+k3×
c3,
[0117]
式中,angle表示方向盘转角,k1、k2和k3表示加权系数。
[0118]
综上,即可根据确定出的方向盘转角去控制本车辆的方向盘转动相应的角度,进而实现车辆的横向控制。
[0119]
本发明实施例的技术方案,通过获取目标车辆的行驶数据,并判断目标车辆是否满足预设跟车条件,在确定满足预设跟车条件时,根据目标车辆当前位置坐标以及跟踪控制曲线模型生成跟踪控制曲线,根据跟踪控制曲线确定预设横向控制器的第一横向控制结果、第二横向控制结果和第三横向控制结果,将第一横向控制结果、第二横向控制结果和第三横向控制结果的加权求和结果作为方向盘转角,并根据方向盘转角控制本车辆的方向盘工作。本发明实施例通过在确定满足预设跟车条件时,根据目标车辆当前位置坐标和跟踪控制曲线模型去确定跟踪控制曲线,再根据跟踪控制曲线确定预设横向控制器的横向控制结果,并将各横向控制结果的加权求和结果作为方向盘转角以控制车辆的方向盘执行对应的操作,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。
[0120]
实施例四
[0121]
图5为本发明实施例四提供的一种车辆横向控制装置的结构示意图。如图5所示,该装置包括:
[0122]
行驶数据获取模块41,用于获取目标车辆的行驶数据。
[0123]
控制曲线确定模块42,用于在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线。
[0124]
控制结果确定模块43,用于根据跟踪控制曲线控制预设横向控制器确定横向控制结果。
[0125]
车辆控制模块44,用于根据横向控制结果控制车辆运动。
[0126]
本发明实施例的技术方案,通过行驶数据获取模块获取目标车辆的行驶数据,控制曲线确定模块在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线,控制结果确定模块根据跟踪控制曲线控制预设横向控制器确定横向控制结果,车辆控制模块根据横向控制结果控制车辆运动。本发明实施例通过根据目标车辆的行驶数据和跟踪控制曲线模型确定跟踪控制曲线,再根据跟踪控制曲线去确定预设横向控制器的横向控制结果,进而按照横向控制结果控制车辆的横向运动,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。
[0127]
进一步地,在上述发明实施例的基础上,行驶数据获取模块41包括:
[0128]
行驶数据获取单元,用于控制车辆的车载感知设备采集目标车辆的行驶数据,其中,行驶数据至少包括:目标车辆编号、目标车辆当前位置坐标、目标车辆横向速度、横向位置偏差、纵向位置偏差。
[0129]
进一步地,在上述发明实施例的基础上,控制曲线确定模块42包括:
[0130]
跟踪控制曲线生成单元,用于在确定满足预设跟车条件时,将行驶数据的目标车辆当前位置坐标输入至跟踪控制曲线模型以生成跟踪控制曲线。
[0131]
进一步地,在上述发明实施例的基础上,预设跟车条件至少包括:
[0132]
在预设时间段内,行驶数据的目标车辆编号未发生跳变;
[0133]
在预设时间段内,行驶数据的目标车辆横向速度小于或者等于预设横向速度阈值;
[0134]
在预设时间段内,行驶数据的横向位置偏差小于或者等于预设横向位置偏差阈值;
[0135]
在预设时间段内,行驶数据的纵向位置偏差小于或者等于预设纵向位置偏差阈值。
[0136]
进一步地,在上述发明实施例的基础上,跟踪控制曲线模型至少包括:
[0137][0138]
其中,(x,y)表示车辆当前位置坐标,(x
mark
,y
mark
)表示目标车辆当前位置坐标。
[0139]
进一步地,在上述发明实施例的基础上,控制结果确定模块43包括:
[0140]
朝向和曲率确定单元,用于确定跟踪控制曲线对应的朝向曲线和曲线曲率。
[0141]
误差确定单元,用于在跟踪控制曲线以及朝向曲线的自变量满足预设预瞄距离时,将跟踪控制曲线以及朝向曲线对应的因变量结果作为横向位置误差和朝向误差。
[0142]
横向控制结果确定单元,用于根据横向位置误差、朝向误差和曲线曲率依次调用第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式,以得到
对应的第一横向控制结果、第二横向控制结果和第三横向控制结果。
[0143]
进一步地,在上述发明实施例的基础上,第一预设横向控制器公式表示为:
[0144][0145]
式中,c1表示第一横向控制结果,e1表示横向位置误差,k
p
、kd、ki和k
error
表示调节参数,表示微分操作,dt表示积分操作;
[0146]
第二预设横向控制器公式表示为:
[0147][0148]
式中,c2表示第二横向控制结果,e2表示朝向误差;
[0149]
第三预设横向控制器公式表示为:
[0150]
c3=kc×
cur,
[0151]
式中,c3表示第三横向控制结果,cur表示曲线曲率,kc表示第三预设横向控制器的调节参数。
[0152]
进一步地,在上述发明实施例的基础上,车辆控制模块44包括:
[0153]
车辆横向控制单元,用于将第一横向控制结果、第二横向控制结果和第三横向控制结果的加权求和结果作为执行控制参数,并根据执行控制参数控制车辆的执行器工作。
[0154]
本发明实施例所提供的车辆横向控制装置可执行本发明任意实施例所提供的车辆横向控制方法,具备执行方法相应的功能模块和有益效果。
[0155]
实施例五
[0156]
图6示出了可以用来实施本发明的实施例的电子设备50的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
[0157]
如图6所示,电子设备50包括至少一个处理器51,以及与至少一个处理器51通信连接的存储器,如只读存储器(rom)52、随机访问存储器(ram)53等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器51可以根据存储在只读存储器(rom)52中的计算机程序或者从存储单元58加载到随机访问存储器(ram)53中的计算机程序,来执行各种适当的动作和处理。在ram 53中,还可存储电子设备50操作所需的各种程序和数据。处理器51、rom 52以及ram 53通过总线54彼此相连。输入/输出(i/o)接口55也连接至总线54。
[0158]
电子设备50中的多个部件连接至i/o接口55,包括:输入单元56,例如键盘、鼠标等;输出单元57,例如各种类型的显示器、扬声器等;存储单元58,例如磁盘、光盘等;以及通信单元59,例如网卡、调制解调器、无线通信收发机等。通信单元59允许电子设备50通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0159]
处理器51可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器51
的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器51执行上文所描述的各个方法和处理,例如车辆横向控制方法。
[0160]
在一些实施例中,车辆横向控制方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元58。在一些实施例中,计算机程序的部分或者全部可以经由rom 52和/或通信单元59而被载入和/或安装到电子设备50上。当计算机程序加载到ram 53并由处理器51执行时,可以执行上文描述的车辆横向控制方法的一个或多个步骤。备选地,在其他实施例中,处理器51可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行车辆横向控制方法。
[0161]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0162]
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0163]
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0164]
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0165]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算
系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
[0166]
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
[0167]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
[0168]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
技术特征:
1.一种车辆横向控制方法,其特征在于,所述方法包括:获取目标车辆的行驶数据;在所述目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和所述行驶数据确定跟踪控制曲线;根据所述跟踪控制曲线控制预设横向控制器确定横向控制结果;根据所述横向控制结果控制车辆运动。2.根据权利要求1所述的方法,其特征在于,所述获取目标车辆的行驶数据,包括:控制所述车辆的车载感知设备采集所述目标车辆的所述行驶数据,其中,所述行驶数据至少包括:目标车辆编号、目标车辆当前位置坐标、目标车辆横向速度、横向位置偏差、纵向位置偏差。3.根据权利要求1所述的方法,其特征在于,所述在所述目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和所述行驶数据确定跟踪控制曲线,包括:在确定满足所述预设跟车条件时,将所述行驶数据的目标车辆当前位置坐标输入至所述跟踪控制曲线模型以生成所述跟踪控制曲线;所述预设跟车条件至少包括:在预设时间段内,所述行驶数据的目标车辆编号未发生跳变;在所述预设时间段内,所述行驶数据的目标车辆横向速度小于或者等于预设横向速度阈值;在所述预设时间段内,所述行驶数据的横向位置偏差小于或者等于预设横向位置偏差阈值;在所述预设时间段内,所述行驶数据的纵向位置偏差小于或者等于预设纵向位置偏差阈值。4.根据权利要求3所述的方法,所述跟踪控制曲线模型至少包括:其中,(x,y)表示车辆当前位置坐标,(x
mark
,y
mark
)表示所述目标车辆当前位置坐标。5.根据权利要求1所述的方法,其特征在于,所述根据所述跟踪控制曲线控制预设横向控制器确定横向控制结果,包括:确定所述跟踪控制曲线对应的朝向曲线和曲线曲率;在所述跟踪控制曲线以及所述朝向曲线的自变量满足预设预瞄距离时,将所述跟踪控制曲线以及所述朝向曲线对应的因变量结果作为横向位置误差和朝向误差;根据所述横向位置误差、所述朝向误差和所述曲线曲率依次调用第一预设横向控制器公式、第二预设横向控制器公式和第三预设横向控制器公式,以得到对应的第一横向控制结果、第二横向控制结果和第三横向控制结果。6.根据权利要求5所述的方法,其特征在于,所述第一预设横向控制器公式表示为:式中,c1表示所述第一横向控制结果,e1表示所述横向位置误差,k
p
、k
d
、k
i
和k
error
表示调
节参数,表示微分操作,dt表示积分操作;所述第二预设横向控制器公式表示为:式中,c2表示所述第二横向控制结果,e2表示所述朝向误差;所述第三预设横向控制器公式表示为:c3=k
c
×
cur,式中,c3表示所述第三横向控制结果,cur表示所述曲线曲率,k
c
表示所述第三预设横向控制器的调节参数。7.根据权利要求5所述的方法,其特征在于,所述根据所述横向控制结果控制车辆运动,包括:将所述第一横向控制结果、所述第二横向控制结果和所述第三横向控制结果的加权求和结果作为执行控制参数,并根据所述执行控制参数控制所述车辆的执行器工作。8.一种车辆横向控制装置,其特征在于,所述装置包括:行驶数据获取模块,用于获取目标车辆的行驶数据;控制曲线确定模块,用于在所述目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和所述行驶数据确定跟踪控制曲线;控制结果确定模块,用于根据所述跟踪控制曲线控制预设横向控制器确定横向控制结果;车辆控制模块,用于根据所述横向控制结果控制车辆运动。9.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的车辆横向控制方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的车辆横向控制方法。
技术总结
本发明公开了一种车辆横向控制方法、装置、电子设备和存储介质。其中,该方法包括:获取目标车辆的行驶数据,在目标车辆的行驶数据满足预设跟车条件时,根据跟踪控制曲线模型和行驶数据确定跟踪控制曲线,根据跟踪控制曲线控制预设横向控制器确定横向控制结果,根据横向控制结果控制车辆运动。本发明实施例通过根据目标车辆的行驶数据和跟踪控制曲线模型确定跟踪控制曲线,再根据跟踪控制曲线去确定预设横向控制器的横向控制结果,进而按照横向控制结果控制车辆的横向运动,避免了现有技术中基于目标车辆的大量历史行驶轨迹点进行拟合方法存在的曲线曲率较大以及过拟合的问题,车辆的横向控制更加平滑和稳定,且不需要占用更多的内存资源。多的内存资源。多的内存资源。
技术研发人员:吕铮 孔德宝 杨斯琦 韩佳琪
受保护的技术使用者:一汽(南京)科技开发有限公司
技术研发日:2023.06.12
技术公布日:2023/8/30
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/