(12)发明专利申请
(10)申请公布号 CN 112035951 A(43)申请公布日 2020.12.04
(21)申请号 202010847291.3(22)申请日 2020.08.21
(71)申请人 长春一汽富晟集团有限公司
地址 130011 吉林省长春市汽车经济开发
区振兴路593号(72)发明人 曹包华 田雨禾 吴迪 李红吉
石莹 (74)专利代理机构 长春吉大专利代理有限责任
公司 22201
代理人 崔斌(51)Int.Cl.
G06F 30/15(2020.01)G06F 30/20(2020.01)G06F 119/14(2020.01)
权利要求书2页 说明书5页 附图2页
CN 112035951 A(54)发明名称
一种用于自动驾驶算法验证的仿真平台及仿真方法(57)摘要
本发明属于汽车技术领域,具体的说是一种用于自动驾驶算法验证的仿真平台及仿真方法。该仿真平台包括三部分,自动驾驶环境搭建模块,自动驾驶仿真观测模块以及自动驾驶算法开发模块。自动驾驶环境搭建模块搭建自动驾驶算法所需验证的虚拟场景,在搭建完毕后自动关联自动驾驶仿真观测模块,并可自动生成自动驾驶算法开发模块;自动驾驶仿真观测模块用于自动驾驶算法测试过程中场景发生过程的观测与监控;自动驾驶算法开发模块主要用于自动驾驶算法输入输出接口信号与仿真场景环境信号的连接,并可将自动驾驶算法通过特定的输入输出部件运行在自动驾驶环境搭建模块搭建的虚拟场景中,控制虚拟的目标车辆的动作及响应,达到验证自动驾驶算法的目的。
CN 112035951 A
权 利 要 求 书
1/2页
1.一种用于自动驾驶算法验证的仿真平台,其特征在于,该仿真平台包括自动驾驶环境搭建模块(1)、自动驾驶仿真观测模块(2)和自动驾驶算法开发模块(3);所述自动驾驶环境搭建模块(1)用于搭建自动驾驶算法所需验证的虚拟场景,在搭建完毕后自动关联自动驾驶仿真观测模块,并可自动生成自动驾驶算法开发模块;所述自动驾驶仿真观测模块(2)用于自动驾驶算法测试过程中场景发生过程的观测与监控;所述自动驾驶算法开发模块(3)用于自动驾驶算法输入输出接口信号与仿真场景环境信号的连接,并将自动驾驶算法通过特定的输入输出部件运行在自动驾驶环境搭建模块搭建的虚拟场景中,控制虚拟的目标车辆的动作及响应,达到验证自动驾驶算法的目的。
2.根据权利要求1所述的一种用于自动驾驶算法验证的仿真平台,其特征在于,所述自动驾驶算法开发模块(3)由目标车辆的动力学参数输入部件(4)、传感器信号输入部件(5)、虚拟道路信号输入部件(6)、路径跟随输入部件(7),自动驾驶算法模块(8)及目标车辆的动力学参数输出部件(9)构成,其中目标车辆的动力学参数输入部件(4)、传感器信号输入部件(5)、虚拟道路信号输入部件(6)、路径跟随输入部件(7)作为自动驾驶算法模块(8)的输入部件,目标车辆的动力学参数输出部件(9)作为自动驾驶算法模块(8)的输出部分。
3.根据权利要求2所述的一种用于自动驾驶算法验证的仿真平台,其特征在于,所述目标车辆的动力学参数输入部件(4),其输入信号来自自动驾驶环境,输出的目标车辆的动力学参数包括目标车辆在自动驾驶环境中的坐标参数[x,y,z]、车辆纵向速度、车辆纵向加速度、车辆横向速度、车辆横向加速度、车辆航向角、车辆侧角速度、车辆俯仰角速度、车辆横摆角速度和车辆GPS信号经纬度;所述传感器输入部件(5),其输入信号来自自动驾驶环境,输出信息包括障碍物坐标、障碍物方向角、障碍物速度、障碍物种类、障碍物距离;所述虚拟道路信号输入部件(6),其输入信号来自自动驾驶环境,其输出信号包括车道线坐标、道路宽度、道路种类、道路表面摩擦系数和交通标识;所述路径跟随输入部件(7),其输入信号来自自动驾驶环境,其输出信号包括在自动驾驶环境中预设的车辆行驶轨迹,车辆行驶速度;目标车辆的动力学参数输出部件(9),其输入信号包括目标车辆目标挡位、目标车辆目标速度、目标车辆刹车请求和目标车辆目标转向角,其输出目标车辆的动力学参数至自动驾驶环境;在仿真运行过程中,自动驾驶算法开发模块(3)与自动驾驶仿真观测模块(2)之间进行的数据交互构成自动驾驶算法的闭环仿真。
4.根据权利要求1所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,包括以下步骤:
步骤一、搭建自动驾驶算法;步骤二、通过自动驾驶环境搭建模块(1)搭建仿真场景;步骤三、通过自动驾驶环境搭建模块(1)对仿真场景与自动驾驶仿真观测模块(2)进行关联;
步骤四、通过自动驾驶环境搭建模块(1)生成自动驾驶算法开发模块(3);步骤五、移植自动驾驶算法至自动驾驶算法开发模块(2);步骤六、运行仿真平台。
5.根据权利要求4所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,所述步骤一的具体方法如下:
使用MATLAB中定义好的基础模块、基础算法库中的模块,搭建自动驾驶算法模块,其输
2
CN 112035951 A
权 利 要 求 书
2/2页
入变量包括车辆的动力学参数、传感器信号、虚拟道路信号、路径跟随预设信号,其输出变量包括车辆的动力学参数、车辆横向参数、纵向控制参数等和车辆的目标转向控制参数。
6.根据权利要求4所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,所述步骤二的具体方法如下:
使用自动驾驶仿真软件搭建用于自动驾驶算法验证的虚拟场景环境,静态方面为道路的形态、车辆数目及起始状态、交通信号灯和其他道路标识、行人数目及身高、建筑物的设计及布局;动态方面为目标车辆的行驶轨迹预规划、环境车辆的行驶轨迹规划、行人行走轨迹预规划、天气变换情况的设计及布局。
7.根据权利要求4所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,所述步骤三的具体方法如下:
使用自动驾驶环境搭建模块(1)搭建完虚拟环境场景后,设置配置项或使用后台脚本,自动检查虚拟环境场景的完备性后,更新自动驾驶仿真观测模块(2)的立体虚拟场景环境。
8.根据权利要求4所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,所述步骤四的具体方法如下:
使用自动驾驶环境搭建模块(1)搭建完虚拟环境场景后,设置配置项或使用后台脚本,自动检查虚拟环境场景的完备性后,自动生成驾驶算法开发模块(3),并将此模块的输入输出模块与自动驾驶仿真观测模块(2)进行关联。
9.根据权利要求4所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,所述步骤五的具体方法如下:
将步骤一开发的自动驾驶算法打包成SubSystem或者ModelReference的形式加入到自动驾驶算法开发模块(3)中,并将其输入与自动驾驶算法开发模块(3)的输入连接,输出与自动驾驶算法开发模块(3)的输出连接,保证在自动驾驶算法开发模块(3)与自动驾驶仿真观测模块(2)的闭环仿真中保持完备性,在移植过程中根据需求任意添加信号观测器至目标信号线。
10.根据权利要求4所述的一种用于自动驾驶算法验证的仿真平台的仿真方法,其特征在于,所述步骤六的具体方法如下:
在自动驾驶算法开发模块(3)中点击开始按钮,进行自动驾驶算法开发模块(3)与自动驾驶仿真观测模块(2)的闭环仿真,此过程通过自动驾驶仿真观测模块(2)和信号观测器的结果进行自动驾驶算法验证的通过情况判定;若判定通过则结束此自动驾驶算法的验证,如果不通过则回到自动驾驶算法开发或者搭建仿真场景,重新向下进行流程。
3
CN 112035951 A
说 明 书
一种用于自动驾驶算法验证的仿真平台及仿真方法
1/5页
技术领域
[0001]本发明属于汽车技术领域,具体的说是一种用于自动驾驶算法验证的仿真平台及仿真方法。
背景技术
[0002]一般车辆软件/算法的开发遵循由仿真到实车验证的过程,自动驾驶算法也不例外。仿真验证具有低风险、低成本、高效率、快速迭代等优点。[0003]自动驾驶算法验证时具备复杂场景及多对象的搭建,传统算法开发的验证平台无法完成此项任务。
发明内容
[0004]本发明提供了一种用于自动驾驶算法验证的仿真平台及仿真方法,本发明可实现复杂场景及多对象的搭建,并可直接将自动驾驶算法接入仿真平台,并且实现复杂场景及多对象的自动驾驶算法的闭环验证,后续可直接将自动驾驶算法移植及代码生成,确保自动驾驶算法的一致性。
[0005]本发明技术方案结合附图说明如下:
[0006]一种用于自动驾驶算法验证的仿真平台,该仿真平台包括自动驾驶环境搭建模块1、自动驾驶仿真观测模块2和自动驾驶算法开发模块3;所述自动驾驶环境搭建模块1用于搭建自动驾驶算法所需验证的虚拟场景,在搭建完毕后自动关联自动驾驶仿真观测模块,并可自动生成自动驾驶算法开发模块;所述自动驾驶仿真观测模块2用于自动驾驶算法测试过程中场景发生过程的观测与监控;所述自动驾驶算法开发模块3用于自动驾驶算法输入输出接口信号与仿真场景环境信号的连接,并将自动驾驶算法通过特定的输入输出部件运行在自动驾驶环境搭建模块搭建的虚拟场景中,控制虚拟的目标车辆的动作及响应,达到验证自动驾驶算法的目的。
[0007]所述自动驾驶算法开发模块3由目标车辆的动力学参数输入部件4、传感器信号输入部件5、虚拟道路信号输入部件6、路径跟随输入部件7,自动驾驶算法模块8及目标车辆的动力学参数输出部件9构成,其中目标车辆的动力学参数输入部件4、传感器信号输入部件5、虚拟道路信号输入部件6、路径跟随输入部件7作为自动驾驶算法模块8的输入部件,目标车辆的动力学参数输出部件9作为自动驾驶算法模块8的输出部分。[0008]所述目标车辆的动力学参数输入部件4,其输入信号来自自动驾驶环境,输出的目标车辆的动力学参数包括目标车辆在自动驾驶环境中的坐标参数[x,y,z]、车辆纵向速度、车辆纵向加速度、车辆横向速度、车辆横向加速度、车辆航向角、车辆侧角速度、车辆俯仰角速度、车辆横摆角速度和车辆GPS信号经纬度;所述传感器输入部件5,其输入信号来自自动驾驶环境,输出信息包括障碍物坐标、障碍物方向角、障碍物速度、障碍物种类、障碍物距离;所述虚拟道路信号输入部件6,其输入信号来自自动驾驶环境,其输出信号包括车道线坐标、道路宽度、道路种类、道路表面摩擦系数和交通标识;所述路径跟随输入部件7,其输
4
CN 112035951 A
说 明 书
2/5页
入信号来自自动驾驶环境,其输出信号包括在自动驾驶环境中预设的车辆行驶轨迹,车辆行驶速度;目标车辆的动力学参数输出部件9,其输入信号包括目标车辆目标挡位、目标车辆目标速度、目标车辆刹车请求和目标车辆目标转向角,其输出目标车辆的动力学参数至自动驾驶环境;在仿真运行过程中,自动驾驶算法开发模块3与自动驾驶仿真观测模块2之间进行的数据交互构成自动驾驶算法的闭环仿真。
[0009]一种用于自动驾驶算法验证的仿真平台的仿真方法,包括以下步骤:[0010]步骤一、搭建自动驾驶算法;[0011]步骤二、通过自动驾驶环境搭建模块1搭建仿真场景;[0012]步骤三、通过自动驾驶环境搭建模块1对仿真场景与自动驾驶仿真观测模块2进行关联;
[0013]步骤四、通过自动驾驶环境搭建模块1生成自动驾驶算法开发模块3;[0014]步骤五、移植自动驾驶算法至自动驾驶算法开发模块2;[0015]步骤六、运行仿真平台。
[0016]所述步骤一的具体方法如下:
[0017]使用MATLAB中定义好的基础模块、基础算法库中的模块,搭建自动驾驶算法模块,其输入变量包括车辆的动力学参数、传感器信号、虚拟道路信号、路径跟随预设信号,其输出变量包括车辆的动力学参数、车辆横向参数、纵向控制参数等和车辆的目标转向控制参数。
[0018]所述步骤二的具体方法如下:
[0019]使用自动驾驶仿真软件搭建用于自动驾驶算法验证的虚拟场景环境,静态方面为道路的形态、车辆数目及起始状态、交通信号灯和其他道路标识、行人数目及身高、建筑物的设计及布局;动态方面为目标车辆的行驶轨迹预规划、环境车辆的行驶轨迹规划、行人行走轨迹预规划、天气变换情况的设计及布局。[0020]所述步骤三的具体方法如下:
[0021]使用自动驾驶环境搭建模块1搭建完虚拟环境场景后,设置配置项或使用后台脚本,自动检查虚拟环境场景的完备性后,更新自动驾驶仿真观测模块2的立体虚拟场景环境。
[0022]所述步骤四的具体方法如下:
[0023]使用自动驾驶环境搭建模块1搭建完虚拟环境场景后,设置配置项或使用后台脚本,自动检查虚拟环境场景的完备性后,自动生成驾驶算法开发模块3,并将此模块的输入输出模块与自动驾驶仿真观测模块2进行关联。[0024]所述步骤五的具体方法如下:
[0025]将步骤一开发的自动驾驶算法打包成SubSystem或者ModelReference的形式加入到自动驾驶算法开发模块3中,并将其输入与自动驾驶算法开发模块3的输入连接,输出与自动驾驶算法开发模块3的输出连接,保证在自动驾驶算法开发模块3与自动驾驶仿真观测模块2的闭环仿真中保持完备性,在移植过程中根据需求任意添加信号观测器至目标信号线。
[0026]所述步骤六的具体方法如下:
[0027]在自动驾驶算法开发模块3中点击开始按钮,进行自动驾驶算法开发模块3与自动
5
CN 112035951 A
说 明 书
3/5页
驾驶仿真观测模块2的闭环仿真,此过程通过自动驾驶仿真观测模块2和信号观测器的结果进行自动驾驶算法验证的通过情况判定;若判定通过则结束此自动驾驶算法的验证,如果不通过则回到自动驾驶算法开发或者搭建仿真场景,重新向下进行流程。[0028]本发明的有益效果为:
[0029]本发明可实现复杂场景及多对象的搭建,并可直接将自动驾驶算法接入仿真平台,并且实现复杂场景及多对象的自动驾驶算法的闭环验证,后续可直接将自动驾驶算法移植及代码生成,确保自动驾驶算法的一致性。附图说明
[0030]为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
[0031]图1为本发明中用于自动驾驶算法验证的仿真平台。
[0032]图2为本发明中用于自动驾驶算法验证的仿真方法的流程图。[0033]图中:1、自动驾驶环境搭建模块;2、自动驾驶仿真观测模块;3、自动驾驶算法开发模块;4、目标车辆的动力学参数输入部件;5、传感器信号输入部件;6、虚拟道路信号输入部件;7、路径跟随输入部件;8、自动驾驶算法模块;9、目标车辆的动力学参数输出部件。具体实施方式
[0034]下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。[0035]参阅图1,一种用于自动驾驶算法验证的仿真平台,该仿真平台包括自动驾驶环境搭建模块1、自动驾驶仿真观测模块2和自动驾驶算法开发模块3。
[0036]所述自动驾驶环境搭建模块1用于搭建自动驾驶算法所需验证的虚拟场景,在搭建完毕后自动关联自动驾驶仿真观测模块,并可自动生成自动驾驶算法开发模块。
[0037]所述自动驾驶仿真观测模块2用于自动驾驶算法测试过程中场景发生过程的观测与监控。
[0038]所述自动驾驶算法开发模块3用于自动驾驶算法输入输出接口信号与仿真场景环境信号的连接,并将自动驾驶算法通过特定的输入输出部件运行在自动驾驶环境搭建模块搭建的虚拟场景中,控制虚拟的目标车辆的动作及响应,达到验证自动驾驶算法的目的。自动驾驶算法开发模块3可按需求连接不同的虚拟信号观测器用于辅助验证自动驾驶算法是否通过此次场景的算法功能验证;当自动驾驶算法无法通过此次场景的算法功能验证时,基于自动驾驶环境搭建模块的虚拟场景环境变更的解决方法符合如下的要求,变更后的虚拟场景环境自动的更新原自动驾驶算法开发模块,并保留原自动驾驶算法开发模块中的自动驾驶算法模块,且原已连接的输入部件和输出部件不被打断,按需要得到保留。[0039]所述自动驾驶算法开发模块3由目标车辆的动力学参数输入部件4、传感器信号输入部件5、虚拟道路信号输入部件6、路径跟随输入部件7,自动驾驶算法模块8及目标车辆的
6
CN 112035951 A
说 明 书
4/5页
动力学参数输出部件9构成,其中目标车辆的动力学参数输入部件4、传感器信号输入部件5、虚拟道路信号输入部件6、路径跟随输入部件7作为自动驾驶算法模块8的输入部件,目标车辆的动力学参数输出部件9作为自动驾驶算法模块8的输出部分。[0040]所述目标车辆的动力学参数输入部件4,其输入信号来自自动驾驶环境,输出的目标车辆的动力学参数包括目标车辆在自动驾驶环境中的坐标参数[x,y,z]、车辆纵向速度、车辆纵向加速度、车辆横向速度、车辆横向加速度、车辆航向角、车辆侧角速度、车辆俯仰角速度、车辆横摆角速度和车辆GPS信号经纬度;所述传感器输入部件5,其输入信号来自自动驾驶环境,输出信息包括障碍物坐标、障碍物方向角、障碍物速度、障碍物种类、障碍物距离;所述虚拟道路信号输入部件6,其输入信号来自自动驾驶环境,其输出信号包括车道线坐标、道路宽度、道路种类、道路表面摩擦系数和交通标识;所述路径跟随输入部件7,其输入信号来自自动驾驶环境,其输出信号包括在自动驾驶环境中预设的车辆行驶轨迹,车辆行驶速度;目标车辆的动力学参数输出部件9,其输入信号包括目标车辆目标挡位、目标车辆目标速度、目标车辆刹车请求和目标车辆目标转向角,其输出目标车辆的动力学参数至自动驾驶环境;在仿真运行过程中,自动驾驶算法开发模块3与自动驾驶仿真观测模块2之间进行的数据交互构成自动驾驶算法的闭环仿真。
[0041]自动驾驶算法模块由基础的模块库及基础的算法库搭建而成,基础模块库及基础算法库具备复用性且在不同编译目标描述文件的限定下可进行自动代码生成,自动驾驶算法模块会集成至自动驾驶算法开发模块3中,作为自动驾驶开发模块的一部分。[0042]参阅图2,一种用于自动驾驶算法验证的仿真平台的仿真方法包括以下步骤:[0043]步骤一、搭建自动驾驶算法;[0044]如自动泊车算法,使用MATLAB中定义好的基础模块、基础算法库中的模块,搭建自动泊车算法模块,其输入变量包括车辆的动力学参数、传感器信号、虚拟道路信号、路径跟随预设信号等,其输出变量包括车辆的动力学参数、车辆横向参数、纵向控制参数等和车辆的目标转向控制参数等,例如车辆的目标转向控制参数。[0045]步骤二、通过自动驾驶环境搭建模块1搭建仿真场景;[0046]使用一般的的自动驾驶仿真软件,包括但不限于CarSim、AirSim、PreScan等,搭建用于自动驾驶算法验证的虚拟场景环境,静态方面为道路的形态、车辆数目及起始状态、交通信号灯等道路标识、行人数目及身高、建筑物的设计及布局;动态方面为目标车辆的行驶轨迹预规划、环境车辆的行驶轨迹规划、行人行走轨迹预规划、天气变换情况的设计及布局。
[0047]步骤三、通过自动驾驶环境搭建模块1对仿真场景与自动驾驶仿真观测模块2进行关联;
[0048]自动驾驶仿真观测模块2可基于一般的自动驾驶仿真软件,包括但不限于CarSim、AirSim、PreScan等。
[0049]使用自动驾驶环境搭建模块1搭建完虚拟环境场景后,设置配置项或使用后台脚本,自动检查虚拟环境场景的完备性后,更新自动驾驶仿真观测模块2的立体虚拟场景环境。
[0050]步骤四、通过自动驾驶环境搭建模块1生成自动驾驶算法开发模块3;[0051]所述的自动驾驶算法开发模块3基于MATLAB软件,格式限定为slx。
7
CN 112035951 A[0052]
说 明 书
5/5页
使用自动驾驶环境搭建模块1搭建完虚拟环境场景后,设置配置项或使用后台脚
本,自动检查虚拟环境场景的完备性后,自动生成驾驶算法开发模块3,并将此模块的输入输出模块与自动驾驶仿真观测模块2进行关联。[0053]步骤五、移植自动驾驶算法至自动驾驶算法开发模块2;
[0054]将步骤一开发的自动驾驶算法打包成SubSystem或者ModelReference的形式加入到自动驾驶算法开发模块3中,并将其输入与自动驾驶算法开发模块3的输入连接,输出与自动驾驶算法开发模块3的输出连接,保证在自动驾驶算法开发模块3与自动驾驶仿真观测模块2的闭环仿真中保持完备性,在移植过程中根据需求任意添加信号观测器至目标信号线。
[0055]步骤六、运行仿真平台。
[0056]所述仿真平台运行环境为Windows 10环境。[0057]在自动驾驶算法开发模块3中点击开始按钮,进行自动驾驶算法开发模块3与自动驾驶仿真观测模块2的闭环仿真,此过程通过自动驾驶仿真观测模块2和信号观测器的结果进行自动驾驶算法验证的通过情况判定;若判定通过则结束此自动驾驶算法的验证,如果不通过则回到自动驾驶算法开发或者搭建仿真场景,重新向下进行流程。[0058]综上,自动驾驶环境搭建模块1搭建自动驾驶算法所需验证的虚拟场景,在搭建完毕后自动关联自动驾驶仿真观测模块2,并可自动生成自动驾驶算法开发模块3;自动驾驶仿真观测模块2用于自动驾驶算法测试过程中场景发生过程的观测与监控;自动驾驶算法开发模块3主要用于自动驾驶算法输入输出接口信号与仿真场景环境信号的连接,并可将自动驾驶算法通过特定的输入输出部件运行在自动驾驶环境搭建模块搭建的虚拟场景中,控制虚拟目标车辆的动作及响应,达到验证自动驾驶算法的目的。[0059]尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
8
CN 112035951 A
说 明 书 附 图
1/2页
图1
9
CN 112035951 A
说 明 书 附 图
2/2页
图2
10
因篇幅问题不能全部显示,请点此查看更多更全内容