本发明属于车辆自动驾驶技术领域,尤其是涉及一种用于无人车的运动控制器及其控制方法。
背景技术:
近年来,随着科技发展与社会进步,我国汽车保有量逐年增加,这导致了交通的拥堵以及事故发生率的提升。为解决上述问题,无人车的研发已成为世界各大高校、研究机构中的热点问题。
无人驾驶汽车,也称为智能汽车,是一种能够实现自主驾驶的轮式移动机器人,是一个集环境感知、规划决策、运动控制等功能于一体的高度智能化、信息化系统。无人驾驶汽车的研究目的是使计算机代替人来完成车辆驾驶任务,弥补人工驾驶的不足,实现车辆的安全、可靠、高效的驾驶。无人驾驶汽车将有效减轻驾驶员的负担,减少驾驶员疲劳驾驶的现象,有利于提高交通安全;同时,配合城市交通控制系统,可以合理分配交通流,实现交通系统的顺畅运行。
运动控制是实现无人驾驶汽车安全行驶的关键问题之一,它是连接上层决策单元与车辆底层装置的桥梁。运动控制器的准确率与效率,直接影响了无人车驾驶的安全性以及平稳性,其中运动控制内容为方向控制以及速度控制,主要涉及到节气门、制动踏板以及转向电机等底层装置。
目前,市面上出现的运动控制器,多为对节气门、制动踏板和转向电机三者中的某一种进行控制。专利公开号为107092256a,名称为“一种无人车转向控制方法”中公开的内容,仅实现了无人紧急制动或转向控制的单一控制目标,但是多个控制器的协作会产生大量的误差,从而影响无人车控制的准确性,并且,多个控制器与上层决策单元相结合,导致控制反应速度慢,影响无人车的控制效率。
技术实现要素:
本发明的目的是提供一种结构简单、操作简单、控制器同步性好、具有协同作用、控制准确率高的用于无人车的运动控制器。
本发明的技术方案如下:
一种用于无人车的运动控制器,包括:
输入单元,用于输入上层决策层和路径规划层的无人车运动控制的需求;
控制单元,用于接收所述需求,将该需求转化为运动控制指令,并将该运动控制指令的数据分配;
输出单元,用于接收所述运动控制指令的数据,根据该数据转化生成无人车的输出命令;
底层驱动单元,用于接收所述输出命令,驱动无人车的底层驱动装置运行,并将该底层驱动装置的运行状态反馈回所述输出单元,以用于根据该运行状态对输出命令的数据修正。
在上述技术方案中,所述控制单元包括:
运动控制单元,用于分配运动控制指令至各控制模块;
辅助控制单元,用于与驾驶员模型数据库的数据匹配,得到优化的驾驶员模型。
在上述技术方案中,所述运动控制单元包括:
运动分配模块,用于接收所述运动控制的需求并分配运动控制指令;
路径跟踪模块,用于将运动控制指令与匹配的优化的驾驶员模型结合,计算生成目标路径,并将该目标路径转化为方向转角指令;
转向控制模块,用于接收所述方向转角指令以输出方向转角数据;
匀速/加速控制模块,用于接收所述运动控制指令以输出节气门开度数据;
减速控制模块,用于接收所述运动控制指令以输出制动压力数据。
在上述技术方案中,所述辅助控制单元中存储驾驶员模型数据,用于存储驾驶员模型并与所述运动控制指令匹配。
在上述技术方案中,所述运动控制单元采用转向控制算法、路径跟踪算法、减速控制算法以及匀速/加速控制算法获得最优控制。
在上述技术方案中,所述运动控制指令输出的数据包括节气门的开度数据、制动踏板的制动压力数据以及转向电机的方向转角数据。
在上述技术方案中,所述底层驱动装置包括无人车的节气门、制动踏板以及转向电机。
在上述技术方案中,所述无人车运动控制的需求包括期望轨迹、期望速度和自车状态信息。
在上述技术方案中,所述自车状态信息包括无人车的自车速度、位置信息和自车转角。
本发明的另一个目的是提供一种用于无人车的运动控制器的控制方法,包括以下步骤:
(1)在所述无人车的输入单元输入上层决策层和路径规划层的无人车运动控制的期望轨迹、期望速度和自车状态信息;
(2)控制单元接收到期望轨迹、期望速度和自车状态信息后,将上述期望轨迹、期望速度和自车状态信息转化为运动控制指令,并通过运动分配模块将该运动控制指令的数据分配;
(2-1)辅助控制单元在接收到无人车运动控制需求的自车状态信息后,与其内部存储的驾驶员模型数据库的数据匹配,找到与自车相对应类型的驾驶员模型,从而得到优化的驾驶员模型;
(2-2)运动控制单元在接收到无人车运动控制的期望轨迹、期望速度和自车状态信息后,通过运动分配模块分别分配运动控制指令至运动控制单元中的各控制模块中;
(2-3)路径跟踪模块接收到分配的运动控制指令后,根据辅助单元中匹配得到的优化的驾驶员模型计算生成目标路径,并通过该目标路径结合前馈算法转化生成为方向转角指令;
(2-4)转向控制模块接收到所述方向转角指令后,生成了输出方向转角数据;
(2-5)匀速/加速控制模块接收到分配的运动控制指令后,生成了输出节气门开度数据;
(2-6)减速控制模块接收到分配的运动控制指令后,生成了输出制动压力数据;
(3)输出单元在接收到所述方向转角数据、节气门开度数据和制动压力数据后,根据上述转化生成无人车的输出命令;
(4)底层驱动单元接收所述输出命令后,控制无人车的节气门开度、制动踏板的制动压力以及转向电机的方向转角,并将节气门、制动踏板及转向电机的运行状态反馈回所述输出单元,以用于根据该运行状态对所述输出命令的数据实现修正,从而完成无人车的转向、加速、减速、速度保持的控制。
本发明具有的优点和积极效果是:
(1)在一个电路板上集成了控制器与上层决策单元相结合,且能够直接控制底层装置,将车辆的转向控制与速度控制集成一起,实现车辆控制中的加速控制、加速控制以及转向控制的功能,集成性强,功能完善。
(2)同步控制车辆的加减速与转向控制,使得两种平行关系的控制性能同步性能好,且协调性好,两者平行关系间具有协同作用,同步性好,以达到更加舒适的驾驶体验。
(3)运动控制器与底层驱动装置相结合,在运行控制时直接通过控制单元向底层驱动装置发送命令,无需单独向底层驱动装置发送命令,运用电信号代替机械信号,简化了控制过程。
附图说明
图1是本发明的用于无人车的运动控制器的结构示意图;
图2是本发明中路径跟踪模块的结构示意图;
图3是本发明中转向控制模块的结构示意图;
图4是本发明中匀速/加速控制模块的结构示意图。
图5是本发明中减速控制模块的结构示意图;
图6是本发明的用于无人车的运动控制硬件模块示意图。
具体实施方式
以下结合具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明,决不限制本发明的保护范围。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的属于“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的属于应该解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,具有“a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。在使用类似于“a、b或c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,具有“a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“a或b”应当被理解为包括“a”或“b”、或“a和b”的可能性。
实施例1
如图1、图2所示,本发明的用于无人车的运动控制器,包括:
输入单元,用于输入上层决策层和路径规划层的无人车运动控制的需求,其中无人车运动控制的需求包括期望轨迹、期望速度和自车状态信息(包括无人车的自车位置、自车速度和自车转角);
控制单元,用于接收需求,将该需求转化为运动控制指令,并将该运动控制指令的分配后分别生成方向转角数据、节气门开度数据及制动压力数据;其中,控制单元包括:运动控制单元和辅助控制单元,运动控制单元,用于分配运动控制指令至各控制模块;辅助控制单元,用于将自车状态信息(即当前车速、转角、车辆轨迹的数据)与驾驶员模型数据库的数据匹配,找到与自车相对应类型的驾驶员模型,得到最优化的驾驶员模型;
输出单元,用于接收上述方向转角数据、节气门开度数据及制动压力数据的运动控制指令的数据后,将上述数据转化生成无人车的输出命令,输出单元的作用为调节无人车的方向及速度,以使输出命令能够最终实现无人车达到期望路径和期望速度;
底层驱动单元,用于接收输出命令,驱动无人车的底层驱动装置运行,并将该底层驱动装置的运行状态反馈回输出单元,以用于根据该运行状态对输出命令的数据修正。
上述辅助控制单元中存储驾驶员模型数据,用于存储驾驶员模型并与运动控制指令匹配。
进一步地说,运动控制单元包括:
运动分配模块,用于接收运动控制的需求并分配运动控制指令;
路径跟踪模块,用于接收运动控制的需求及最优化的驾驶员模型计算生成目标路径,路径跟踪模块中采用路径跟踪算法,先接收上层决策层的路径信息,之后根据当前无人车的位置以及转角,将上述路径信息、无人车的位置及转角信息与驾驶员模型数据库内的数据匹配,得到最优化的驾驶员模型,通过驾驶员模型的约束条件从而生成目标路径,最后将目标路径转化为一序列的方向转角指令;
转向控制模块,用于接收方向转角指令后以输出方向转角数据,采用转向控制算法,在接收到一序列方向转角指令后,对每一条方向转角指令使用控制算法(例如pid控制算法)对底层驱动单元中的转向电机进行控制,之后通过转向电机自身与其角度传感器的双重反馈对转角进行修正,最终实现转向控制,并通过转向电机输出一序列的方向转角数据,以完成车辆的转向指令;
匀速/加速控制模块,用于接收运动控制指令以输出节气门开度数据,采用匀速/加速控制算法,先接收到速度保持或加速指令,根据车辆当前驾驶状态,采用控制算法(例如pi控制)控制节气门的开度,并通过节气门自身与速度传感器进行双重反馈,从而达到控制节气门的开度,以调节车辆完成加速或保持匀速的指令;
减速控制模块,用于接收运动控制指令以输出制动压力数据,采用减速控制算法,在接收到减速指令后,将当前无人车速度与目标速度进行对比,得到减速度,之后将减速度与预设阈值比较并分为一级减速和二级减速,当减速度与预设阈值比较为一级减速时,结合当前无人车驾驶状态,通过控制算法(例如pi控制)控制底层驱动单元中的节气门的开度,并通过节气门自身与速度传感器进行双重反馈,从而控制节气门的开度;当减速度与预设阈值比较为二级减速时,通过控制算法(例如模糊控制)同时控制节气门的开度以及制动踏板的压力,并通过节气门、制动踏板与速度传感器进行三重反馈,从而达到控制节气门开度、控制制动踏板压力的目的,通过上述两种方式以完成车辆的减速指令。
在无人车使用运动控制器的控制方法,包括以下步骤:
(1)在无人车的输入单元输入上层决策层和路径规划层的无人车运动控制的期望轨迹、期望速度和自车状态信息;
(2)控制单元接收到期望轨迹、期望速度和自车状态信息后,将上述期望轨迹、期望速度和自车状态信息转化为运动控制指令,并通过运动分配模块将该运动控制指令的数据分配;
(2-1)辅助控制单元在接收到无人车运动控制需求的自车状态信息后,与其内部存储的驾驶员模型数据库的数据匹配,找到与自车相对应类型的驾驶员模型,从而得到优化的驾驶员模型;
(2-2)运动控制单元在接收到无人车运动控制的期望轨迹、期望速度和自车状态信息后,通过运动分配模块分别分配运动控制指令至运动控制单元中的各控制模块中;
(2-3)路径跟踪模块接收到分配的运动控制指令后,根据辅助单元中匹配得到的优化的驾驶员模型计算生成目标路径,并通过该目标路径结合前馈算法转化生成为方向转角指令,(其中前馈算法属于开环控制,前馈算法是按照干扰作用来进行调节的,前馈算法是将干扰测量出来并直接引入调节装置,对于干扰的克服及时。在辅助控制单元匹配得到驾驶员模型后得出了优化的驾驶员模型,生成了目标路径之后,再通过前馈算法以输出的方向转角指令);
(2-4)转向控制模块接收到方向转角指令后,生成了输出方向转角数据;
(2-5)匀速/加速控制模块接收到分配的运动控制指令后,生成了输出节气门开度数据;
(2-6)减速控制模块接收到分配的运动控制指令后,生成了输出制动压力数据;
(3)输出单元在接收到方向转角数据、节气门开度数据和制动压力数据后,根据上述转化生成无人车的输出命令(输出命令调节控制无人车的方向及速度,最终控制无人车生成期望路径);
(4)底层驱动单元接收输出命令后,控制无人车的节气门开度、制动踏板的制动压力以及转向电机的方向转角,并将节气门、制动踏板及转向电机的运行状态反馈回输出单元,以用于根据该运行状态对输出命令的数据实现修正,从而完成无人车的转向、加速、减速、速度保持的控制。
进一步地说,如图6所示,将运动控制单元的转向控制模块、匀速/加速控制模块、减速控制模块均集成在一个硬件中,运动控制单元由tms570双核处理器进行控制,通过通用can网络,分别输入期望的方向盘转角、横摆角速度用于控制方向,输入期望的轮速、制动踏板行程以及车速用于控制车辆的加速和减速,经过计算单元进行计算后(其中包括了转向控制算法、加速控制算法和减速控制算法),分别输出至前桥比例继动阀、后桥比例继动阀和转向电机,对应用于控制车辆的加速、减速及方向控制,在经过计算单元的计算后计算输出至制动灯中,用于在减速时的灯光控制;在硬件中还设置有电源管理模块,以用于转换转能等功能以保证供电的平稳性,硬件中余下的模块及部件等属于现有技术,在本发明中不再过多赘述
计算单元中的转向控制算法、加速控制算法和减速控制算法集成在一个集成板上,双核处理器就能够实现在计算完成后驱动底层驱动装置的控制,从而实现了在同一电路上集成,直接控制底层驱动装置,同时实现车辆控制中的加速及转向功能,并且在加减速与转向控制中,使得两者平行关系的控制同步性能好,且具有良好的协同性,达到了更加舒适的驾驶体验。
实施例2
如图3、图4所示,在实施例1的基础上,以无人车变道超车为例,具体控制步骤如下:
(1)无人车的输入单元输入无人车的变道超车需求;
(2)运动控制器的控制单元在接收到变道超车需求后,将该需求转化为运动控制指令并完成对运动控制指令进行运动分配,将运动分解为目标转角与期望速度,
(3)转向控制模块接收上述目标转角,采用pid算法控制转向电机,在通过转向电机自身与其角度传感器的双重反馈对转角进行修正,并通过转向电机输出一序列的方向转角数据,以完成车辆的转向指令;
(4)在进行转向控制的同时,对车辆进行匀速/加速控制,将上述期望速度分配至匀速/加速控制模块,采用pi控制算法控制节气门的开度,并通过节气门自身与速度传感器进行双重反馈,从而达到控制节气门的开度,以调节车辆完成期望速度的指令。
(5)在完成车辆的转向指令及车辆的期望速度指令,从而完成变道超车,同时保证车辆的平稳。
在控制车辆的转向时,保证车辆具有合适的速度,从而保证在车辆超车时的乘车舒适度。同步控制车辆的转向及加减速,转向控制模块与匀速/加速控制模块集成在一个电路板上,能够起到协同作用,并且其控制车辆的同步性好。
实施例3
如图5所示,在实施例1的基础上,以无人车紧急制动为例,具体控制步骤如下:
(1)无人车的输入单元输入无人车的紧急制动需求;
(2)运动控制器的控制单元在接收到紧急制动需求后,将该需求转化为运动控制指令并完成对该运动控制指令进行运动分配,将运动控制指令分解为多个期望速度,并传送至减速控制模块中;
(3)将当前无人车速度与目标速度进行对比,得到减速度,之后将减速度与预设阈值比较判断,判断减速度为一级减速或二级减速,当减速度与预设阈值比较后判断减速度为一级减速时,结合当前无人车驾驶状态,采用pi控制算法控制底层驱动单元中的节气门的开度,并通过节气门自身与速度传感器进行双重反馈,从而控制节气门的开度;当减速度与预设阈值比较后判断减速度为二级减速时,采用模糊控制算法或pi控制算法同时控制节气门的开度以及制动踏板的压力,并通过节气门、制动踏板与速度传感器进行三重反馈,从而达到控制节气门开度、控制制动踏板压力的目的,从而完成车辆的减速指令。
(4)在车辆完成紧急制动指令后,从而完成无人车的紧急制动。
以上对本发明的一个实施例进行了详细说明,但内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的等同变化与改进等,均应仍归属于本发明的专利涵盖范围之内。