本发明提供一种无人驾驶汽车、无人驾驶汽车的控制方法及其控制装置,该控制方法包括:获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。本发明的无人驾驶汽车的控制方法能够通过在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
申请号: CN201710183176.9 专利名称: 无人驾驶汽车、无人驾驶汽车的控制方法及其控制装置 申请(专利权)人: [广州汽车集团股份有限公司] 发明人: [甘新华] 其他信息:无人驾驶汽车、无人驾驶汽车的控制方法及其控制装置
技术领域
本发明涉及无人驾驶汽车技术领域,特别是涉及一种无人驾驶汽车、无人驾驶汽车的控制方法及其控制装置。
背景技术
无人驾驶汽车是通过车载传感系统感知车辆周围环境,并根据感知所获得的道路、车辆位置和障碍物信息,自动规划行车路线、控制车辆的转向和速度并控制车辆到达预定目的地的智能汽车。
然而,现有技术中,无人驾驶汽车的避障减速控制系统还不是很完善,无人驾驶汽车在避障或停车等大幅度减速的情况下,无法安全停车。例如,当前方车道进入有较高车速的车辆,会导致智能车做出不恰当的较重刹车响应。
发明内容
本发明所要解决的技术问题是针对现有的无人驾驶汽车的控制方法在避障情况下,无法安全停车的缺陷,提供一种无人驾驶汽车、无人驾驶汽车的控制方法以及其控制装置。
本发明解决上述技术问题所采用的技术方案为,提供一种无人驾驶汽车的控制方法,所述控制方法包括:
获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;
获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;
根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;
根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;
根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
进一步地,所述根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值,包括:
根据所述第一行驶速度值确定所述第一距离值对应的预设距离区间;
根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
进一步地,所述根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值,包括:
当所述第一距离值对应第一预设距离区间时,将所述期望行驶速度值设置为当前行车环境允许的最大车速值;其中,所述第一预设距离区间为所述第一行驶速度值对应的安全行驶距离范围;
当所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,控制所述无人驾驶汽车减速,使得减速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于第一预设速度区间,将所述期望行驶速度值设置为所述第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值;所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围。
进一步地,所述根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值,还包括:
当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第二预设距离区间为所述第一行驶速度值对应的跟随行驶距离范围,所述第三行驶速度值小于或等于所述第二行驶速度值。
进一步地,所述当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值包括:
当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,判断所述第一行驶速度值与所述第二行驶速度值的之间差值是否属于第一预设速度区间,其中,所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围;
当所述第一行驶速度值与所述第二行驶速度值的之间差值属于所述第一预设速度区间时,保持所述第一行驶速度值行驶,将所述期望行驶速度值设置为所述第一行驶速度值;
当所述第一行驶速度值与所述第二行驶速度值的之间差值不属于所述第一预设速度区间时,控制所述无人驾驶汽车加速,使得加速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于所述第一预设速度区间,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值。
进一步地,所述根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值,还包括:
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,将所述期望行驶速度值设置为第四行驶速度值;其中,所述第三预设距离区间为所述第一行驶速度值对应的预警行驶距离范围,所述第四行驶速度值小于所述第二行驶速度值;或者
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第一行驶速度值。
进一步地,当所述无人驾驶汽车驱动电机的扭矩控制信号是负扭矩控制信号,且所述扭矩控制信号对应请求的负扭矩大于负扭矩阈值时,所述控制方法还包括:
计算所述扭矩控制信号对应请求的负扭矩与所述负扭矩阈值之间的负扭矩差值,并将所述负扭矩差值转换为第一车辆制动力;
根据所述第一制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
进一步地,当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,所述控制方法还包括:
根据所述第一行驶速度值、所述第二行驶速度值以及所述第一距离值,计算所述无人驾驶汽车的期望加速度;
根据加速度与车辆制动力的预设对应关系,确定所述期望加速度对应的第二车辆制动力;
根据所述第二车辆制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
本发明解决上述技术问题所采用的技术方案为,提供一种无人驾驶汽车的控制装置,所述控制装置包括:
第一获取模块,用于获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;
第二获取模块,用于获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;
第一确定模块,用于根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;
第二确定模块,用于根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;
控制模块,用于根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
进一步地,所述第一确定模块包括:
预设距离区间确定单元,用于根据所述第一行驶速度值确定所述第一距离值对应的预设距离区间;
期望行驶速度值确定单元,用于根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
进一步地,所述期望行驶速度值确定单元具体用于:当所述第一距离值对应第一预设距离区间时,将所述期望行驶速度值设置为当前行车环境允许的最大车速值;其中,所述第一预设距离区间为所述第一行驶速度值对应的安全行驶距离范围。
进一步地,所述期望行驶速度值确定单元具体用于:当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第二预设距离区间为所述第一行驶速度值对应的跟随行驶距离范围,所述第三行驶速度值小于或等于所述第二行驶速度值;
所述期望行驶速度值确定单元具体用于:当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,控制所述无人驾驶汽车减速,使得减速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于第一预设速度区间,将所述期望行驶速度值设置为所述第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值;所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围。
进一步地,所述期望行驶速度值确定单元具体用于:
当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,判断所述第一行驶速度值与所述第二行驶速度值的之间差值是否属于第一预设速度区间,其中,所述第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围;
当所述第一行驶速度值与所述第二行驶速度值的之间差值属于所述第一预设速度区间时,保持所述第一行驶速度值行驶,将所述期望行驶速度值设置为所述第一行驶速度值;
当所述第一行驶速度值与所述第二行驶速度值的之间差值不属于所述第一预设速度区间时,控制所述无人驾驶汽车加速,使得加速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于所述第一预设速度区间,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值。
进一步地,所述期望行驶速度值确定单元具体用于:当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,将所述期望行驶速度值设置为第四行驶速度值;其中,所述第三预设距离区间为所述第一行驶速度值对应的预警行驶距离范围,所述第四行驶速度值小于所述第二行驶速度值;或者
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第一行驶速度值。
进一步地,所述控制装置还包括:
转换模块,用于当所述无人驾驶汽车驱动电机的扭矩控制信号是负扭矩控制信号,且所述扭矩控制信号对应请求的负扭矩大于负扭矩阈值时,计算所述扭矩控制信号对应请求的负扭矩与所述负扭矩阈值之间的负扭矩差值,并将所述负扭矩差值转换为第一车辆制动力;
第一制动模块,用于根据所述第一制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
进一步地,当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,所述无人驾驶汽车还包括:
计算模块,用于根据所述第一行驶速度值、所述第二行驶速度值以及所述第一距离值,计算所述无人驾驶汽车的期望加速度;
第三确定模块,用于根据加速度与车辆制动力的预设对应关系,确定所述期望加速度对应的第二车辆制动力;
第二制动模块,用于根据所述第二车辆制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
本发明解决上述技术问题所采用的技术方案为,提供一种无人驾驶汽车,所述无人驾驶汽车包括上述任一种无人驾驶汽车的控制装置。
根据本发明的无人驾驶汽车的控制方法,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
附图说明
图1是本发明一实施例提供的无人驾驶汽车的控制方法的流程示意图;
图2是本发明另一实施例提供的无人驾驶汽车的控制方法的流程示意图;
图3是本发明一实施例提供的无人驾驶汽车与前方车辆或障碍物之间的第一距离值被划分的三个预设距离区间的示意图;
图4是本发明一实施例提供的无人驾驶汽车的控制装置的示意性框图;
图5是本发明另一实施例提供的无人驾驶汽车的控制装置的示意性框图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。
请参见图1,图1是本发明一实施例提供的无人驾驶汽车的控制方法的示意流程图。本实施例中无人驾驶汽车的控制方法的执行主体为无人驾驶汽车。无人驾驶汽车可以是电动无人驾驶汽车或新能源无人驾驶汽车。如图1所示的无人驾驶汽车的控制方法可包括以下步骤:
S101:获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。
无人驾驶汽车可通过车载测速装置检测当前的第一行驶速度值,车载测速装置可以为GPS惯导定位系统终端或者轮速传感器,但并不限于此,还可以为其他车载测试装置,此处不做限制。
无人驾驶汽车可通过本车上的雷达获取本车与前方车辆或障碍物之间的相对车速,并根据获取到的相对车速、本车当前的第一行驶速度值计算得到前方车辆或障碍物当前的第二行驶速度值。
S102:获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。
无人驾驶汽车可通过本车上的雷达获取本车与前方车辆之间的第一距离值。
可以理解的是,S101、S102不分先后顺序执行,可以先执行S101再执行S102,也可以先执行S102再执行S101,还可以同时执行S101以及S102。
S103:根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
无人驾驶汽车可以根据数据库中预先存储的交通法规中保证能够安全驾驶所规定的对车速、车距要求,结合获取到的第一距离值、第一行驶速度值以及第二行驶速度值,确定无人驾驶汽车的期望行驶速度值。
S104:根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。
无人驾驶汽车根据第一行驶速度值以及期望行驶速度值计算两者之间的速度差,确定无人驾驶汽车驱动电机的扭矩控制信号。
其中,当第一行驶速度值小于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的正扭矩控制信号,正扭矩控制信号用于控制驱动电机提供向前走的力。向前是指当前的行驶方向。
当第一行驶速度值大于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的负扭矩控制信号,负扭矩控制信号用于控制驱动电机提供向后的反拖力。向后是指与当前的行驶方向相反的方向。
当第一行驶速度值等于期望行驶速度值时,则不调节无人驾驶汽车驱动电机的扭矩控制信号,保持驱动电机的工作状态不变。
进一步地,无人驾驶汽车可以采用比例-积分-微分(proportionintegrationdifferentiation,PID)控制器,根据第一行驶速度值以及期望行驶速度值,确定无人驾驶汽车驱动电机的扭矩控制信号。
具体地,可以向PID控制器输入第一行驶速度值以及期望行驶速度值,PID控制器测量第一行驶速度值以及期望行驶速度值之间的速度差值,并根据速度差值以及预设的PID算法做PID控制,计算得到无人驾驶汽车驱动电机的扭矩控制信号,该扭矩控制信号也可称为驱动电机的扭矩请求信息。
其中,PID算法计算公式为:f(k)=fp(k)+fi(k)+fd(k);fp(k)=Kp*e(k);fi(k)=Ki*e(k)+fi(k-1);fd(k)=Kd*(e(k)-e(k-1));e(k)=Vaim-Vnow。
k仅表示是PID控制系统的当前时刻,k-1表示PID控制系统的上一时刻;f(k)表示当前时刻的PID控制器输出量即电机扭矩请求;fp(k)表示PID控制中的P增益分量;fi(k)表示PID控制中的I积分分量;fd(k)表示PID控制中的D微分分量;Kp、Ki、Kd都是预设PID常数;e(k)表示第一行驶速度值与期望行驶速度值的差值,Vaim表示期望行驶速度值,Vnow表示第一行驶速度值。
S105:根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为正扭矩控制信号时,控制驱动电机提供向前走的力,由驱动电机作为动力驱动,从而控制无人驾驶汽车加速行驶,增大第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为负扭矩控制信号时,控制驱动电机提供向后的反拖力。当无人驾驶汽车以第一行驶速度值向前运动时,驱动电机提供向后的反拖力相当于在制动,控制无人驾驶汽车减速行驶,减小第一行驶速度值,甚至可以控制无人驾驶汽车停止前进。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
请参见图2,如图2所示的无人驾驶汽车的控制方法可包括以下步骤:
S201:获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。
本实施例中S201与上一实施例中的S101相同,具体请参阅上一实施例中S101的相关描述,此处不做赘述。
S202:获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。
无人驾驶汽车可通过本车上的雷达获取本车与前方车辆之间的第一距离值。
可以理解的是,S201、S202不分先后顺序执行,可以先执行S201再执行S202,也可以先执行S202再执行S201,还可以同时执行S201以及S202。
S203:根据所述第一行驶速度值确定所述第一距离值对应的预设距离区间。
无人驾驶汽车的数据库中预先存储的交通法规中保证能够安全驾驶所规定的对车速、车距要求而划分的多个预设距离区间。预设距离区间的个数不做限定,具体可根据实际需要进行设置,此处不做限制。其中,在能够安全行驶的前提下,可以根据行车环境对应的允许行驶速度范围值,确定各行驶速度对应的多个预设距离区间。每个行驶速度对应的不同预设距离区间标识在该行驶速度下不同的安全行驶等级。
无人驾驶汽车可以根据预设的行驶速度对应的多个预设距离区间,确定第一行驶速度值下,第一距离值所对应的预设距离区间。
请一并参阅图3,图3是本发明一实施例提供的无人驾驶汽车与前方车辆或障碍物之间的第一距离值被划分的三个预设距离区间的示意图。
如图3所示,在本实施例中,无人驾驶汽车与前方车辆或障碍物之间的第一距离值被划分的三个预设距离区间,第一预设距离区间对应安全行驶距离范围,第二预设距离区间对应跟随行驶距离范围,第三预设距离区间对应预警行驶距离范围。
其中,当无人驾驶汽车与前方车辆或障碍物之间的第一距离值L为第二预设距离区间的最小值时,无人驾驶汽车与前方车辆或障碍物之间的距离为最大跟车间距Lmax。当无人驾驶汽车与前方车辆或障碍物之间的第一距离值L为第三预设距离区间的最小值时,无人驾驶汽车与前方车辆或障碍物之间的距离为最小跟车间距Lmin。
S204:根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
进一步地,S204可以包括:当所述第一距离值对应第一预设距离区间时,将所述期望行驶速度值设置为当前行车环境允许的最大车速值;其中,所述第一预设距离区间为所述第一行驶速度值对应的安全行驶距离范围。
无人驾驶汽车在确认第一距离值对应第一预设距离区间时,将期望行驶速度值设置为当前行车环境允许的最大车速值。当前行车环境包括但不限于道路环境和/或天气状况等。
进一步地,S204可以包括:
当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第二预设距离区间为所述第一行驶速度值对应的跟随行驶距离范围,所述第三行驶速度值小于或等于所述第二行驶速度值;
当所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,控制所述无人驾驶汽车减速,使得减速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于第一预设速度区间,将所述期望行驶速度值设置为所述第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值;所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围。
例如,无人驾驶汽车当检测到第一距离值对应第二预设距离区间,且第一行驶速度值大于第二行驶速度值时,无人驾驶汽车使用驱动电机负扭矩控制无人驾驶汽车减速至比第二行驶速度值略小的行驶速度,使得减速后的第一行驶速度值与第二行驶速度值之间的差值属于第一预设速度区间,此时,将期望行驶速度值设置为第三行驶速度值,第三行驶速度值略小于第二行驶速度值。例如,第三行驶速度值=第二行驶速度值-2,其单位是千米每小时(km/h)。
进一步地,在减速至第一行驶速度值与第二行驶速度值之间的差值属于第一预设速度区间前,无人驾驶汽车还可以将期望行驶速度值设置为略小于第一行驶速度值,且大于第三行驶速度值的速度值。例如,第三行驶速度值<期望行驶速度值<第一行驶速度值-2。
进一步地,当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值可以包括:
当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,判断所述第一行驶速度值与所述第二行驶速度值的之间差值是否属于第一预设速度区间,其中,所述第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围;
当所述第一行驶速度值与所述第二行驶速度值的之间差值属于所述第一预设速度区间时,保持所述第一行驶速度值行驶,将所述期望行驶速度值设置为所述第一行驶速度值;
当所述第一行驶速度值与所述第二行驶速度值的之间差值不属于所述第一预设速度区间时,控制所述无人驾驶汽车加速,使得加速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于所述第一预设速度区间,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值。
具体地,无人驾驶汽车当检测到第一距离值对应第二预设距离区间,且第一行驶速度值小于第二行驶速度值时,判断第一行驶速度值与第二行驶速度值的之间差值是否属于第一预设速度区间,第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围。
当第一行驶速度值与第二行驶速度值的之间差值属于第一预设速度区间时,无人驾驶汽车保持第一行驶速度值行驶,将第一行驶速度值作为期望行驶速度值。
当第一行驶速度值与第二行驶速度值的之间差值不属于第一预设速度区间时,表示第一行驶速度值与第二行驶速度值相差较大,无人驾驶汽车使用驱动电机正扭矩控制其在第一行驶速度的基础上加速,使得加速后的第一行驶速度值与第二行驶速度值之间的差值属于第一预设速度区间,将期望行驶速度值设置为第三行驶速度值。此时,第三行驶速度值略小于第二行驶速度值。例如,第三行驶速度值=第二行驶速度值-2,其单位是千米每小时(km/h)。
进一步地,S204可以包括:当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,将所述期望行驶速度值设置为第四行驶速度值;其中,所述第三预设距离区间为所述第一行驶速度值对应的预警行驶距离范围,所述第四行驶速度值小于所述第二行驶速度值;或者
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第一行驶速度值。
其中,第四行驶速度值可以略小于第二行驶速度值。
当第一距离值对应第一预设距离区间或第二预设距离区间时,或者当第一距离值对应第三预设距离区间,且第一行驶速度值小于所述第二行驶速度值时,在执行S204后执行S205~S206;当第一距离值对应第三预设距离区间,且第一行驶速度值大于第二行驶速度值时,在执行S204后执行S207~S209。
S205:根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。
无人驾驶汽车根据第一行驶速度值以及期望行驶速度值计算两者之间的速度差,确定无人驾驶汽车驱动电机的扭矩控制信号。
其中,当第一行驶速度值小于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的正扭矩控制信号,正扭矩控制信号用于控制驱动电机提供向前走的力。向前是指当前的行驶方向。
当第一行驶速度值大于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的负扭矩控制信号,负扭矩控制信号用于控制驱动电机提供向后的反拖力。向后是指与当前的行驶方向相反的方向。
当第一行驶速度值等于期望行驶速度值时,则不调节无人驾驶汽车驱动电机的扭矩控制信号,保持驱动电机的工作状态不变。
进一步地,无人驾驶汽车可以采用比例-积分-微分(proportionintegrationdifferentiation,PID)控制器,根据第一行驶速度值以及期望行驶速度值,确定无人驾驶汽车驱动电机的扭矩控制信号。
具体地,可以向PID控制器输入第一行驶速度值以及期望行驶速度值,PID控制器测量第一行驶速度值以及期望行驶速度值之间的速度差值,并根据速度差值以及预设的PID算法做PID控制,计算得到无人驾驶汽车驱动电机的扭矩控制信号,该扭矩控制信号也可称为驱动电机的扭矩请求信息。
其中,PID算法计算公式为:f(k)=fp(k)+fi(k)+fd(k);fp(k)=Kp*e(k);fi(k)=Ki*e(k)+fi(k-1);fd(k)=Kd*(e(k)-e(k-1));e(k)=Vaim-Vnow。
k仅表示是PID控制系统的当前时刻,k-1表示PID控制系统的上一时刻;f(k)表示当前时刻的PID控制器输出量即电机扭矩请求;fp(k)表示PID控制中的P增益分量;fi(k)表示PID控制中的I积分分量;fd(k)表示PID控制中的D微分分量;Kp、Ki、Kd都是预设PID常数;e(k)表示第一行驶速度值与期望行驶速度值的差值,Vaim表示期望行驶速度值,Vnow表示第一行驶速度值。
S206:根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为正扭矩控制信号时,控制驱动电机提供向前走的力,由驱动电机作为动力驱动,从而控制无人驾驶汽车加速行驶,增大第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为负扭矩控制信号时,控制驱动电机提供向后的反拖力。当无人驾驶汽车以第一行驶速度值向前运动时,驱动电机提供向后的反拖力相当于在制动,控制无人驾驶汽车减速行驶,减小第一行驶速度值,甚至可以控制无人驾驶汽车停止前进。
进一步地,当无人驾驶汽车驱动电机的扭矩控制信号是负扭矩控制信号,且扭矩控制信号对应请求的负扭矩大于负扭矩阈值时,所述控制方法还包括:计算所述扭矩控制信号对应请求的负扭矩与所述负扭矩阈值之间的负扭矩差值,并将所述负扭矩差值转换为第一车辆制动力;根据所述第一制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
其中,当无人驾驶汽车驱动电机的扭矩控制信号为负扭矩控制信号(起减速制动作用)超出了驱动电机的负扭矩限制(负扭矩阈值),即认为驱动电机无法满足纵向速度控制对地扭矩请求。
对地负扭矩请求在无人驾驶汽车上表现为制动力。负扭矩阈值为驱动电机能够提供的最大负扭矩值,扭矩控制信号对应请求的负扭矩与负扭矩阈值之间的负扭矩差值为驱动电机不能提供的负扭矩值。
进一步地,当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,无人驾驶汽车的控制方法还包括:
S207:根据所述第一行驶速度值、所述第二行驶速度值以及所述第一距离值,计算所述无人驾驶汽车的期望加速度。
假设,第一行驶速度值为V1,第二行驶速度值为V2,第一距离值为L,那么期望加速度a=-(V2–V1)*(V2–V1)/2L。
无人驾驶汽车将第一行驶速度值、第二行驶速度值以及第一距离值,代入期望加速度的计算公式即可得到期望加速度。
S208:根据加速度与车辆制动力的预设对应关系,确定所述期望加速度对应的第二车辆制动力。
S209:根据所述第二车辆制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
无人驾驶汽车根据第一行驶速度确定第一距离值对应的预设距离区间,能够根据实际情况设置合理的期望行驶速度值,以提高计算得到的无人驾驶汽车驱动电机的扭矩控制信号的准确度,从而提高避障减速时的平顺和舒适。
无人驾驶汽车通过计算期望加速度,并通过期望加速度确定制动力,以控制无人驾驶汽车的自动制动系统执行制动操作,能够在兼顾制动安全性的同时保证自动驾驶制动过程的平顺和舒适,尽可能地避免按期望车速行驶引起的剧烈抖动,以免造成车辆加速与制动顿挫引发不舒适感。
请参阅图4,图4是本发明一实施例提供的无人驾驶汽车的控制装置的示意性框图。本实施例的无人驾驶汽车的控制装置包括的各模块用于执行图1对应的实施例中的各步骤,具体请参阅图1以及图1对应的实施例中的相关描述,此处不赘述。本实施例的无人驾驶汽车的控制装置400包括:第一获取模块410、第二获取模块420、第一确定模块430、第二确定模块440以及控制模块450。
第一获取模块410用于获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。第一获取模块410将第一行驶速度值以及第二行驶速度值向第一确定模块430发送。
第二获取模块420用于获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。第二获取模块420将第一距离值向第一确定模块430发送。
第一确定模块430用于接收第一获取模块410发送的第一行驶速度值以及第二行驶速度值,以及接收第二获取模块420发送的第一距离值,根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。第一确定模块430将期望行驶速度值向第二确定模块440发送。
第二确定模块440用于接收第一确定模块430发送的期望行驶速度值,根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。第二确定模块440将扭矩控制信号向控制模块450发送。
控制模块450用于接收第二确定模块440发送的扭矩控制信号,根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
请参阅图5,图5是本发明另一实施例提供的无人驾驶汽车的控制装置的示意性框图。本实施例的无人驾驶汽车的控制装置包括的各模块用于执行图2对应的实施例中的各步骤,具体请参阅图2以及图2对应的实施例中的相关描述,此处不赘述。本实施例的无人驾驶汽车的控制装置500包括:第一获取模块501、第二获取模块502、第一确定模块503、第二确定模块504、控制模块505、。其中,第一确定模块503包括预设距离区间确定单元5031以及期望行驶速度值确定单元5032。
第一获取模块501用于获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。第一获取模块501将第一行驶速度值以及第二行驶速度值向第一确定模块503发送。
第二获取模块502用于获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。第二获取模块502将第一距离值向第一确定模块503发送。
第一确定模块503的预设距离区间确定单元5031用于接收第一获取模块501发送的第一行驶速度值以及第二行驶速度值,以及接收第二获取模块502发送的第一距离值,根据所述第一行驶速度值确定所述第一距离值对应的预设距离区间;
期望行驶速度值确定单元5032用于根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
进一步地,期望行驶速度值确定单元5032具体用于:当所述第一距离值对应第一预设距离区间时,将所述期望行驶速度值设置为当前行车环境允许的最大车速值;其中,所述第一预设距离区间为所述第一行驶速度值对应的安全行驶距离范围。
进一步地,期望行驶速度值确定单元5032具体用于:当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第二预设距离区间为所述第一行驶速度值对应的跟随行驶距离范围,所述第三行驶速度值小于或等于所述第二行驶速度值;
所述期望行驶速度值确定单元具体用于:当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,控制所述无人驾驶汽车减速,使得减速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于第一预设速度区间,将所述期望行驶速度值设置为所述第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值;所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围。
进一步地,期望行驶速度值确定单元5032具体用于:
当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,判断所述第一行驶速度值与所述第二行驶速度值的之间差值是否属于第一预设速度区间,其中,第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围;
当所述第一行驶速度值与所述第二行驶速度值的之间差值属于所述第一预设速度区间时,保持所述第一行驶速度值行驶,将所述期望行驶速度值设置为所述第一行驶速度值;
当所述第一行驶速度值与所述第二行驶速度值的之间差值不属于所述第一预设速度区间时,控制所述无人驾驶汽车加速,使得加速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于所述第一预设速度区间,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值。
进一步地,期望行驶速度值确定单元5032具体用于:当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,将所述期望行驶速度值设置为第四行驶速度值;其中,所述第三预设距离区间为所述第一行驶速度值对应的预警行驶距离范围,所述第四行驶速度值小于所述第二行驶速度值;或者
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第一行驶速度值。
第一确定模块503期望行驶速度值确定单元5032将期望行驶速度值向第二确定模块504发送。
第二确定模块504用于接收第一确定模块503发送的期望行驶速度值,根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。第二确定模块504将扭矩控制信号向控制模块505发送。
控制模块505用于接收第二确定模块504发送的扭矩控制信号,根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
进一步地,无人驾驶汽车500还可以包括转换模块506以及第一制动模块507,其中,
转换模块506用于当所述无人驾驶汽车驱动电机的扭矩控制信号是负扭矩控制信号,且所述扭矩控制信号对应请求的负扭矩大于负扭矩阈值时,计算所述扭矩控制信号对应请求的负扭矩与所述负扭矩阈值之间的负扭矩差值,并将所述负扭矩差值转换为第一车辆制动力;
第一制动模块507用于根据所述第一制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
进一步地,当期望行驶速度值确定单元5032确定所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,无人驾驶汽车500还可以包括计算模块508、第三确定模块509以及第二制动模块510,其中,
计算模块508用于根据所述第一行驶速度值、所述第二行驶速度值以及所述第一距离值,计算所述无人驾驶汽车的期望加速度;
第三确定模块509用于根据加速度与车辆制动力的预设对应关系,确定所述期望加速度对应的第二车辆制动力;
第二制动模块510用于根据所述第二车辆制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
无人驾驶汽车根据第一行驶速度确定第一距离值对应的预设距离区间,能够根据实际情况设置合理的期望行驶速度值,以提高计算得到的无人驾驶汽车驱动电机的扭矩控制信号的准确度,从而提高避障减速时的平顺和舒适。
无人驾驶汽车通过计算期望加速度,并通过期望加速度确定制动力,以控制无人驾驶汽车的自动制动系统执行制动操作,能够在兼顾制动安全性的同时保证自动驾驶制动过程的平顺和舒适,尽可能地避免按期望车速行驶引起的剧烈抖动,以免造成车辆加速与制动顿挫引发不舒适感。
本发明还提供一种无人驾驶汽车,无人驾驶汽车包括图4、图5中所述任一实施例所描述的无人驾驶汽车的控制装置,具体请参阅上述相关描述,此处不赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。
请参见图1,图1是本发明一实施例提供的无人驾驶汽车的控制方法的示意流程图。本实施例中无人驾驶汽车的控制方法的执行主体为无人驾驶汽车。无人驾驶汽车可以是电动无人驾驶汽车或新能源无人驾驶汽车。如图1所示的无人驾驶汽车的控制方法可包括以下步骤:
S101:获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。
无人驾驶汽车可通过车载测速装置检测当前的第一行驶速度值,车载测速装置可以为GPS惯导定位系统终端或者轮速传感器,但并不限于此,还可以为其他车载测试装置,此处不做限制。
无人驾驶汽车可通过本车上的雷达获取本车与前方车辆或障碍物之间的相对车速,并根据获取到的相对车速、本车当前的第一行驶速度值计算得到前方车辆或障碍物当前的第二行驶速度值。
S102:获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。
无人驾驶汽车可通过本车上的雷达获取本车与前方车辆之间的第一距离值。
可以理解的是,S101、S102不分先后顺序执行,可以先执行S101再执行S102,也可以先执行S102再执行S101,还可以同时执行S101以及S102。
S103:根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
无人驾驶汽车可以根据数据库中预先存储的交通法规中保证能够安全驾驶所规定的对车速、车距要求,结合获取到的第一距离值、第一行驶速度值以及第二行驶速度值,确定无人驾驶汽车的期望行驶速度值。
S104:根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。
无人驾驶汽车根据第一行驶速度值以及期望行驶速度值计算两者之间的速度差,确定无人驾驶汽车驱动电机的扭矩控制信号。
其中,当第一行驶速度值小于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的正扭矩控制信号,正扭矩控制信号用于控制驱动电机提供向前走的力。向前是指当前的行驶方向。
当第一行驶速度值大于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的负扭矩控制信号,负扭矩控制信号用于控制驱动电机提供向后的反拖力。向后是指与当前的行驶方向相反的方向。
当第一行驶速度值等于期望行驶速度值时,则不调节无人驾驶汽车驱动电机的扭矩控制信号,保持驱动电机的工作状态不变。
进一步地,无人驾驶汽车可以采用比例-积分-微分(proportionintegrationdifferentiation,PID)控制器,根据第一行驶速度值以及期望行驶速度值,确定无人驾驶汽车驱动电机的扭矩控制信号。
具体地,可以向PID控制器输入第一行驶速度值以及期望行驶速度值,PID控制器测量第一行驶速度值以及期望行驶速度值之间的速度差值,并根据速度差值以及预设的PID算法做PID控制,计算得到无人驾驶汽车驱动电机的扭矩控制信号,该扭矩控制信号也可称为驱动电机的扭矩请求信息。
其中,PID算法计算公式为:f(k)=fp(k)+fi(k)+fd(k);fp(k)=Kp*e(k);fi(k)=Ki*e(k)+fi(k-1);fd(k)=Kd*(e(k)-e(k-1));e(k)=Vaim-Vnow。
k仅表示是PID控制系统的当前时刻,k-1表示PID控制系统的上一时刻;f(k)表示当前时刻的PID控制器输出量即电机扭矩请求;fp(k)表示PID控制中的P增益分量;fi(k)表示PID控制中的I积分分量;fd(k)表示PID控制中的D微分分量;Kp、Ki、Kd都是预设PID常数;e(k)表示第一行驶速度值与期望行驶速度值的差值,Vaim表示期望行驶速度值,Vnow表示第一行驶速度值。
S105:根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为正扭矩控制信号时,控制驱动电机提供向前走的力,由驱动电机作为动力驱动,从而控制无人驾驶汽车加速行驶,增大第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为负扭矩控制信号时,控制驱动电机提供向后的反拖力。当无人驾驶汽车以第一行驶速度值向前运动时,驱动电机提供向后的反拖力相当于在制动,控制无人驾驶汽车减速行驶,减小第一行驶速度值,甚至可以控制无人驾驶汽车停止前进。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
请参见图2,如图2所示的无人驾驶汽车的控制方法可包括以下步骤:
S201:获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。
本实施例中S201与上一实施例中的S101相同,具体请参阅上一实施例中S101的相关描述,此处不做赘述。
S202:获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。
无人驾驶汽车可通过本车上的雷达获取本车与前方车辆之间的第一距离值。
可以理解的是,S201、S202不分先后顺序执行,可以先执行S201再执行S202,也可以先执行S202再执行S201,还可以同时执行S201以及S202。
S203:根据所述第一行驶速度值确定所述第一距离值对应的预设距离区间。
无人驾驶汽车的数据库中预先存储的交通法规中保证能够安全驾驶所规定的对车速、车距要求而划分的多个预设距离区间。预设距离区间的个数不做限定,具体可根据实际需要进行设置,此处不做限制。其中,在能够安全行驶的前提下,可以根据行车环境对应的允许行驶速度范围值,确定各行驶速度对应的多个预设距离区间。每个行驶速度对应的不同预设距离区间标识在该行驶速度下不同的安全行驶等级。
无人驾驶汽车可以根据预设的行驶速度对应的多个预设距离区间,确定第一行驶速度值下,第一距离值所对应的预设距离区间。
请一并参阅图3,图3是本发明一实施例提供的无人驾驶汽车与前方车辆或障碍物之间的第一距离值被划分的三个预设距离区间的示意图。
如图3所示,在本实施例中,无人驾驶汽车与前方车辆或障碍物之间的第一距离值被划分的三个预设距离区间,第一预设距离区间对应安全行驶距离范围,第二预设距离区间对应跟随行驶距离范围,第三预设距离区间对应预警行驶距离范围。
其中,当无人驾驶汽车与前方车辆或障碍物之间的第一距离值L为第二预设距离区间的最小值时,无人驾驶汽车与前方车辆或障碍物之间的距离为最大跟车间距Lmax。当无人驾驶汽车与前方车辆或障碍物之间的第一距离值L为第三预设距离区间的最小值时,无人驾驶汽车与前方车辆或障碍物之间的距离为最小跟车间距Lmin。
S204:根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
进一步地,S204可以包括:当所述第一距离值对应第一预设距离区间时,将所述期望行驶速度值设置为当前行车环境允许的最大车速值;其中,所述第一预设距离区间为所述第一行驶速度值对应的安全行驶距离范围。
无人驾驶汽车在确认第一距离值对应第一预设距离区间时,将期望行驶速度值设置为当前行车环境允许的最大车速值。当前行车环境包括但不限于道路环境和/或天气状况等。
进一步地,S204可以包括:
当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第二预设距离区间为所述第一行驶速度值对应的跟随行驶距离范围,所述第三行驶速度值小于或等于所述第二行驶速度值;
当所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,控制所述无人驾驶汽车减速,使得减速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于第一预设速度区间,将所述期望行驶速度值设置为所述第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值;所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围。
例如,无人驾驶汽车当检测到第一距离值对应第二预设距离区间,且第一行驶速度值大于第二行驶速度值时,无人驾驶汽车使用驱动电机负扭矩控制无人驾驶汽车减速至比第二行驶速度值略小的行驶速度,使得减速后的第一行驶速度值与第二行驶速度值之间的差值属于第一预设速度区间,此时,将期望行驶速度值设置为第三行驶速度值,第三行驶速度值略小于第二行驶速度值。例如,第三行驶速度值=第二行驶速度值-2,其单位是千米每小时(km/h)。
进一步地,在减速至第一行驶速度值与第二行驶速度值之间的差值属于第一预设速度区间前,无人驾驶汽车还可以将期望行驶速度值设置为略小于第一行驶速度值,且大于第三行驶速度值的速度值。例如,第三行驶速度值<期望行驶速度值<第一行驶速度值-2。
进一步地,当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值可以包括:
当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,判断所述第一行驶速度值与所述第二行驶速度值的之间差值是否属于第一预设速度区间,其中,所述第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围;
当所述第一行驶速度值与所述第二行驶速度值的之间差值属于所述第一预设速度区间时,保持所述第一行驶速度值行驶,将所述期望行驶速度值设置为所述第一行驶速度值;
当所述第一行驶速度值与所述第二行驶速度值的之间差值不属于所述第一预设速度区间时,控制所述无人驾驶汽车加速,使得加速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于所述第一预设速度区间,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值。
具体地,无人驾驶汽车当检测到第一距离值对应第二预设距离区间,且第一行驶速度值小于第二行驶速度值时,判断第一行驶速度值与第二行驶速度值的之间差值是否属于第一预设速度区间,第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围。
当第一行驶速度值与第二行驶速度值的之间差值属于第一预设速度区间时,无人驾驶汽车保持第一行驶速度值行驶,将第一行驶速度值作为期望行驶速度值。
当第一行驶速度值与第二行驶速度值的之间差值不属于第一预设速度区间时,表示第一行驶速度值与第二行驶速度值相差较大,无人驾驶汽车使用驱动电机正扭矩控制其在第一行驶速度的基础上加速,使得加速后的第一行驶速度值与第二行驶速度值之间的差值属于第一预设速度区间,将期望行驶速度值设置为第三行驶速度值。此时,第三行驶速度值略小于第二行驶速度值。例如,第三行驶速度值=第二行驶速度值-2,其单位是千米每小时(km/h)。
进一步地,S204可以包括:当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,将所述期望行驶速度值设置为第四行驶速度值;其中,所述第三预设距离区间为所述第一行驶速度值对应的预警行驶距离范围,所述第四行驶速度值小于所述第二行驶速度值;或者
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第一行驶速度值。
其中,第四行驶速度值可以略小于第二行驶速度值。
当第一距离值对应第一预设距离区间或第二预设距离区间时,或者当第一距离值对应第三预设距离区间,且第一行驶速度值小于所述第二行驶速度值时,在执行S204后执行S205~S206;当第一距离值对应第三预设距离区间,且第一行驶速度值大于第二行驶速度值时,在执行S204后执行S207~S209。
S205:根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。
无人驾驶汽车根据第一行驶速度值以及期望行驶速度值计算两者之间的速度差,确定无人驾驶汽车驱动电机的扭矩控制信号。
其中,当第一行驶速度值小于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的正扭矩控制信号,正扭矩控制信号用于控制驱动电机提供向前走的力。向前是指当前的行驶方向。
当第一行驶速度值大于期望行驶速度值时,无人驾驶汽车根据第一行驶速度值与期望行驶速度值之间的差值,确定无人驾驶汽车驱动电机的负扭矩控制信号,负扭矩控制信号用于控制驱动电机提供向后的反拖力。向后是指与当前的行驶方向相反的方向。
当第一行驶速度值等于期望行驶速度值时,则不调节无人驾驶汽车驱动电机的扭矩控制信号,保持驱动电机的工作状态不变。
进一步地,无人驾驶汽车可以采用比例-积分-微分(proportionintegrationdifferentiation,PID)控制器,根据第一行驶速度值以及期望行驶速度值,确定无人驾驶汽车驱动电机的扭矩控制信号。
具体地,可以向PID控制器输入第一行驶速度值以及期望行驶速度值,PID控制器测量第一行驶速度值以及期望行驶速度值之间的速度差值,并根据速度差值以及预设的PID算法做PID控制,计算得到无人驾驶汽车驱动电机的扭矩控制信号,该扭矩控制信号也可称为驱动电机的扭矩请求信息。
其中,PID算法计算公式为:f(k)=fp(k)+fi(k)+fd(k);fp(k)=Kp*e(k);fi(k)=Ki*e(k)+fi(k-1);fd(k)=Kd*(e(k)-e(k-1));e(k)=Vaim-Vnow。
k仅表示是PID控制系统的当前时刻,k-1表示PID控制系统的上一时刻;f(k)表示当前时刻的PID控制器输出量即电机扭矩请求;fp(k)表示PID控制中的P增益分量;fi(k)表示PID控制中的I积分分量;fd(k)表示PID控制中的D微分分量;Kp、Ki、Kd都是预设PID常数;e(k)表示第一行驶速度值与期望行驶速度值的差值,Vaim表示期望行驶速度值,Vnow表示第一行驶速度值。
S206:根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为正扭矩控制信号时,控制驱动电机提供向前走的力,由驱动电机作为动力驱动,从而控制无人驾驶汽车加速行驶,增大第一行驶速度值。
当无人驾驶汽车驱动电机的扭矩控制信号为负扭矩控制信号时,控制驱动电机提供向后的反拖力。当无人驾驶汽车以第一行驶速度值向前运动时,驱动电机提供向后的反拖力相当于在制动,控制无人驾驶汽车减速行驶,减小第一行驶速度值,甚至可以控制无人驾驶汽车停止前进。
进一步地,当无人驾驶汽车驱动电机的扭矩控制信号是负扭矩控制信号,且扭矩控制信号对应请求的负扭矩大于负扭矩阈值时,所述控制方法还包括:计算所述扭矩控制信号对应请求的负扭矩与所述负扭矩阈值之间的负扭矩差值,并将所述负扭矩差值转换为第一车辆制动力;根据所述第一制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
其中,当无人驾驶汽车驱动电机的扭矩控制信号为负扭矩控制信号(起减速制动作用)超出了驱动电机的负扭矩限制(负扭矩阈值),即认为驱动电机无法满足纵向速度控制对地扭矩请求。
对地负扭矩请求在无人驾驶汽车上表现为制动力。负扭矩阈值为驱动电机能够提供的最大负扭矩值,扭矩控制信号对应请求的负扭矩与负扭矩阈值之间的负扭矩差值为驱动电机不能提供的负扭矩值。
进一步地,当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,无人驾驶汽车的控制方法还包括:
S207:根据所述第一行驶速度值、所述第二行驶速度值以及所述第一距离值,计算所述无人驾驶汽车的期望加速度。
假设,第一行驶速度值为V1,第二行驶速度值为V2,第一距离值为L,那么期望加速度a=-(V2–V1)*(V2–V1)/2L。
无人驾驶汽车将第一行驶速度值、第二行驶速度值以及第一距离值,代入期望加速度的计算公式即可得到期望加速度。
S208:根据加速度与车辆制动力的预设对应关系,确定所述期望加速度对应的第二车辆制动力。
S209:根据所述第二车辆制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
无人驾驶汽车根据第一行驶速度确定第一距离值对应的预设距离区间,能够根据实际情况设置合理的期望行驶速度值,以提高计算得到的无人驾驶汽车驱动电机的扭矩控制信号的准确度,从而提高避障减速时的平顺和舒适。
无人驾驶汽车通过计算期望加速度,并通过期望加速度确定制动力,以控制无人驾驶汽车的自动制动系统执行制动操作,能够在兼顾制动安全性的同时保证自动驾驶制动过程的平顺和舒适,尽可能地避免按期望车速行驶引起的剧烈抖动,以免造成车辆加速与制动顿挫引发不舒适感。
请参阅图4,图4是本发明一实施例提供的无人驾驶汽车的控制装置的示意性框图。本实施例的无人驾驶汽车的控制装置包括的各模块用于执行图1对应的实施例中的各步骤,具体请参阅图1以及图1对应的实施例中的相关描述,此处不赘述。本实施例的无人驾驶汽车的控制装置400包括:第一获取模块410、第二获取模块420、第一确定模块430、第二确定模块440以及控制模块450。
第一获取模块410用于获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。第一获取模块410将第一行驶速度值以及第二行驶速度值向第一确定模块430发送。
第二获取模块420用于获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。第二获取模块420将第一距离值向第一确定模块430发送。
第一确定模块430用于接收第一获取模块410发送的第一行驶速度值以及第二行驶速度值,以及接收第二获取模块420发送的第一距离值,根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。第一确定模块430将期望行驶速度值向第二确定模块440发送。
第二确定模块440用于接收第一确定模块430发送的期望行驶速度值,根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。第二确定模块440将扭矩控制信号向控制模块450发送。
控制模块450用于接收第二确定模块440发送的扭矩控制信号,根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
请参阅图5,图5是本发明另一实施例提供的无人驾驶汽车的控制装置的示意性框图。本实施例的无人驾驶汽车的控制装置包括的各模块用于执行图2对应的实施例中的各步骤,具体请参阅图2以及图2对应的实施例中的相关描述,此处不赘述。本实施例的无人驾驶汽车的控制装置500包括:第一获取模块501、第二获取模块502、第一确定模块503、第二确定模块504、控制模块505、。其中,第一确定模块503包括预设距离区间确定单元5031以及期望行驶速度值确定单元5032。
第一获取模块501用于获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值。第一获取模块501将第一行驶速度值以及第二行驶速度值向第一确定模块503发送。
第二获取模块502用于获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值。第二获取模块502将第一距离值向第一确定模块503发送。
第一确定模块503的预设距离区间确定单元5031用于接收第一获取模块501发送的第一行驶速度值以及第二行驶速度值,以及接收第二获取模块502发送的第一距离值,根据所述第一行驶速度值确定所述第一距离值对应的预设距离区间;
期望行驶速度值确定单元5032用于根据所述第一距离值对应的预设距离区间、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值。
进一步地,期望行驶速度值确定单元5032具体用于:当所述第一距离值对应第一预设距离区间时,将所述期望行驶速度值设置为当前行车环境允许的最大车速值;其中,所述第一预设距离区间为所述第一行驶速度值对应的安全行驶距离范围。
进一步地,期望行驶速度值确定单元5032具体用于:当所述第一距离值对应第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第二预设距离区间为所述第一行驶速度值对应的跟随行驶距离范围,所述第三行驶速度值小于或等于所述第二行驶速度值;
所述期望行驶速度值确定单元具体用于:当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,控制所述无人驾驶汽车减速,使得减速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于第一预设速度区间,将所述期望行驶速度值设置为所述第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值;所述第一预设速度区间标识所述第一行驶速度值与所述第二行驶速度值之间的差值在允许误差范围。
进一步地,期望行驶速度值确定单元5032具体用于:
当检测到所述第一距离值对应所述第二预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,判断所述第一行驶速度值与所述第二行驶速度值的之间差值是否属于第一预设速度区间,其中,第一预设速度区间标识第一行驶速度值与第二行驶速度值之间的差值在允许误差范围;
当所述第一行驶速度值与所述第二行驶速度值的之间差值属于所述第一预设速度区间时,保持所述第一行驶速度值行驶,将所述期望行驶速度值设置为所述第一行驶速度值;
当所述第一行驶速度值与所述第二行驶速度值的之间差值不属于所述第一预设速度区间时,控制所述无人驾驶汽车加速,使得加速后的所述第一行驶速度值与所述第二行驶速度值之间的差值属于所述第一预设速度区间,将所述期望行驶速度值设置为第三行驶速度值;其中,所述第三行驶速度值小于所述第二行驶速度值。
进一步地,期望行驶速度值确定单元5032具体用于:当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,将所述期望行驶速度值设置为第四行驶速度值;其中,所述第三预设距离区间为所述第一行驶速度值对应的预警行驶距离范围,所述第四行驶速度值小于所述第二行驶速度值;或者
当所述第一距离值对应第三预设距离区间,且所述第一行驶速度值小于所述第二行驶速度值时,将所述期望行驶速度值设置为第一行驶速度值。
第一确定模块503期望行驶速度值确定单元5032将期望行驶速度值向第二确定模块504发送。
第二确定模块504用于接收第一确定模块503发送的期望行驶速度值,根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号。第二确定模块504将扭矩控制信号向控制模块505发送。
控制模块505用于接收第二确定模块504发送的扭矩控制信号,根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。
进一步地,无人驾驶汽车500还可以包括转换模块506以及第一制动模块507,其中,
转换模块506用于当所述无人驾驶汽车驱动电机的扭矩控制信号是负扭矩控制信号,且所述扭矩控制信号对应请求的负扭矩大于负扭矩阈值时,计算所述扭矩控制信号对应请求的负扭矩与所述负扭矩阈值之间的负扭矩差值,并将所述负扭矩差值转换为第一车辆制动力;
第一制动模块507用于根据所述第一制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
进一步地,当期望行驶速度值确定单元5032确定所述第一距离值对应第三预设距离区间,且所述第一行驶速度值大于所述第二行驶速度值时,无人驾驶汽车500还可以包括计算模块508、第三确定模块509以及第二制动模块510,其中,
计算模块508用于根据所述第一行驶速度值、所述第二行驶速度值以及所述第一距离值,计算所述无人驾驶汽车的期望加速度;
第三确定模块509用于根据加速度与车辆制动力的预设对应关系,确定所述期望加速度对应的第二车辆制动力;
第二制动模块510用于根据所述第二车辆制动力控制所述无人驾驶汽车的自动制动系统执行制动操作。
上述方案,无人驾驶汽车通过获取所述无人驾驶汽车当前的第一行驶速度值,以及获取前方车辆或障碍物当前的第二行驶速度值;获取所述无人驾驶汽车与所述前方车辆或所述障碍物的第一距离值;根据所述第一距离值、所述第一行驶速度值以及所述第二行驶速度值,确定所述无人驾驶汽车的期望行驶速度值;根据所述第一行驶速度值以及所述期望行驶速度值,确定所述无人驾驶汽车驱动电机的扭矩控制信号;根据所述扭矩控制信号控制所述驱动电机,调节所述第一行驶速度值。无人驾驶汽车能够根据第一行驶速度值以及期望行驶速度值,计算无人驾驶汽车驱动电机的扭矩控制信号,以通过该扭矩控制信号控制无人驾驶汽车加速或减速甚至停车,以在与前方急刹车的车辆或障碍物相撞前安全停住车,防止与前方车辆或障碍物追尾相撞。
无人驾驶汽车根据第一行驶速度确定第一距离值对应的预设距离区间,能够根据实际情况设置合理的期望行驶速度值,以提高计算得到的无人驾驶汽车驱动电机的扭矩控制信号的准确度,从而提高避障减速时的平顺和舒适。
无人驾驶汽车通过计算期望加速度,并通过期望加速度确定制动力,以控制无人驾驶汽车的自动制动系统执行制动操作,能够在兼顾制动安全性的同时保证自动驾驶制动过程的平顺和舒适,尽可能地避免按期望车速行驶引起的剧烈抖动,以免造成车辆加速与制动顿挫引发不舒适感。
本发明还提供一种无人驾驶汽车,无人驾驶汽车包括图4、图5中所述任一实施例所描述的无人驾驶汽车的控制装置,具体请参阅上述相关描述,此处不赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。