一种智能汽车仿真方法及装置的制造方法_3

文档序号:9326735阅读:来源:国知局
到所在虚拟车道路段的边界的距离。在存在激活的虚拟障碍物时,虚拟智能汽车 所处环境的状态量包括虚拟智能汽车到所在虚拟车道路段的边界的距离、以及虚拟智能汽 车与虚拟障碍物的距离。
[0097] 需要说明的是,虚拟智能汽车所处环境的状态量、和虚拟智能汽车的状态量取决 于具体的控制算法。当控制算法不同时,虚拟智能汽车所处环境的状态量、和虚拟智能汽车 的状态量可以不同。
[0098] 具体地,(t-Ι)时刻的状态参数可以在(t-Ι)时刻的上一个时刻,(t_2)时刻,估算 出来(估算方式请参见步骤205)。需要说明的是,当(t-Ι)时刻为0时刻时,可以获得预先 设定的〇时刻的状态参数。
[0099] 步骤204、根据(t-Ι)时刻的状态参数,确定虚拟智能汽车在(t-Ι)时刻需执行的 行驶决策动作。
[0100] 其中,行驶决策动作包括油门踩踏幅度、刹车踩踏幅度、以及方向盘转角。
[0101] 图3示出了状态参数与行驶决策动作的关系。针对每一个时刻的状态参数X,可以 有多种行驶决策动作U(图中黑色箭头示出)。在当前时刻选择不同行驶决策动作U时,将导 致虚拟智能汽车在下一个时刻到达不同的位置,从而影响下一个时刻的状态参数X。例如, (t-i)时刻的状态参数x(t-l)对应的行驶决策动作u(t-l)决定t时刻的状态参数x(t) ;t 时刻的状态参数X (t)对应的行驶决策动作U (t)决定(t+1)时刻的状态参数X (t+1),以此 类推。
[0102] 具体地,可以根据预置的控制算法从多种行驶决策动作中选择最合理的行驶决策 动作。预置的控制算法可以采用现有的智能汽车的控制算法,例如神经网络控制、模糊控 制、以及逻辑控制方法等。
[0103] 在实现时,可以用Matlab语言编写控制算法,并生成.m文件,然后将.m文件导入 到VrmlPad中。需要说明的是,根据不同的研究要求,如需更换算法,只需更换内部.m文 件。根据不同的实验目的,若只需更换实验无需跟换算法,只需对内部的算法参数进行重新 编辑。
[0104] 步骤205、根据需执行的行驶决策动作,估算t时刻的状态参数。
[0105] 其中,(t-Ι)时刻与t时刻之间的间隔可以为预设间隔,预设间隔可以是0. 01秒。
[0106] 本步骤205包括如下步骤2051-2054。
[0107] 步骤2051、根据需执行的行驶决策动作,计算虚拟智能汽车在t时刻的状态量。
[0108] 具体地,可以采用预置的智能汽车系统状态方程计算虚拟智能汽车在t时刻的状 态量。在实现时,可以用Matlab语言编写智能汽车系统状态方程,并生成.m文件,然后将.m 文件导入到VrmlPad中。需要说明的是,根据不同的研究要求,如需更换方程内容,只需更 换内部.m文件。
[0109] 在本实施例中,可以采用如下智能汽车系统状态方程,包括式子(1)-(4),估算虚 拟智能汽车在t时刻的状态量,包括t时刻虚拟智能汽车的行驶方向、位置坐标、速度、以及 虚拟智能汽车的物理结构相对于质点中心的偏移量。
[0114] 如图4所示,Θ表示t时刻虚拟智能汽车的前进方向与水平方向的夹角;V表 示t时刻虚拟智能汽车的速度;L表示虚拟智能汽车的前轮到后轮的距离;Φ (t)表示t时 刻虚拟智能汽车的轮子转动的角度;D表示左右轮子间距;j、#分别表示t时刻虚拟智 能汽车在水平方向和竖直方向移动距离;Dk(t)表示t时刻虚拟智能汽车的物理结构相对 于质点中心的偏移量;0(t)= 02(t)表示t时刻虚拟智能汽车所在路段 的边界与水平方向的夹角。图3中,xt、7,分别表示t时刻智能汽车在虚拟环境中的横、纵 坐标(智能汽车质点的中线坐标)
。xt i、yt i分别表示(t-1) 时刻智能汽车在虚拟环境中的横、纵坐标。
[0115] 在式子(1)-(4)中,V和Φ (t)是根据需执行的行驶决策动作,包括油门踩踏幅度、 刹车踩踏幅度、以及方向盘转角等,计算出的。L和D均为预设值。θ 2α)是根据t时刻虚 拟智能汽车所在路段的边界坐标计算出的。t时刻虚拟智能汽车所在路段的边界坐标的计 算方式参见步骤2052。
[0116] 步骤2052、根据虚拟智能汽车在t时刻的状态量中的位置坐标,在预置的虚拟智 能汽车的位置坐标与虚拟车道的边界坐标的对应关系中,获得虚拟车道中虚拟智能汽车在 t时刻所处路段的边界坐标。
[0117] 步骤2053、根据虚拟车道中虚拟智能汽车在t时刻所处路段的边界坐标和虚拟智 能汽车的位置坐标,确定t时刻虚拟智能汽车到所在虚拟车道路段的边界的距离,得到t时 刻的状态参数。
[0118] 步骤206、根据(t-Ι)时刻和t时刻的状态参数,获得虚拟智能汽车在(t-Ι)时刻 和t时刻之间的运行轨迹。
[0119] 具体地,状态参数中包含了虚拟智能汽车的位置坐标。那么,可以将虚拟智能汽车 在(t-Ι)时刻的位置坐标作为起点,将虚拟智能汽车在t时刻的位置坐标作为终点,起点与 终点之间的连线即是虚拟智能汽车在(t-Ι)时刻和t时刻之间的运行轨迹。
[0120] 步骤207、从(t-Ι)时刻开始到t时刻,播放虚拟智能汽车按照(t-Ι)时刻和t时 刻之间的运行轨迹在三维虚拟场景中运动的过程。
[0121] 具体地,播放虚拟智能汽车按照(t-Ι)时刻和t时刻之间的运行轨迹在三维虚拟 场景中运动的过程,即是以动画的形式实时渲染动态仿真过程。
[0122] 通过步骤203-步骤207模拟了智能汽车在无障碍的路况下的行驶过程。下面将详 细描述如何模拟智能汽车在有障碍的路况下的行驶过程。在本实施例中,虚拟障碍物可以 根据用户需求激活。假若虚拟障碍物未被激活,则表示三维虚拟场景没有虚拟障碍物。反 之,假若虚拟障碍物被激活,则表示三维虚拟场景存在虚拟障碍物。在其他实施例中,虚拟 障碍物可以自动激活。比如,可以在搭建三维虚拟场景时设定,经过预定时间后虚拟障碍物 被激活。
[0123] 步骤208、显示当前时刻虚拟智能汽车与未激活的虚拟障碍物的距离,并提示用户 激活虚拟障碍物。
[0124] 具体地,可以获得未激活的虚拟障碍物的位置坐标、以及当前时刻虚拟智能汽车 的位置坐标。根据未激活的虚拟障碍物的位置坐标、以及当前时刻虚拟智能汽车的位置坐 标,可以确定当前时刻虚拟智能汽车与未激活的虚拟障碍物的距离。
[0125] 具体地,用户可以根据需要的距离,决定是否激活虚拟障碍物。比如,假设用户需 要模拟虚拟智能汽车在与虚拟障碍物的距离为5m时的行驶状况,那么,用户可以在显示虚 拟智能汽车与未激活的虚拟障碍物的距离为5m时,激活该虚拟障碍物。
[0126] 在实现时,可以利用VRML模块对用户激活虚拟障碍物的交互事件进行描述,并 以· wrl的文件格式封装在Simulink的VR Source模块里。
[0127] 步骤209、接收用户的激活请求。
[0128] 其中,该激活请求用于指示虚拟障碍物以指定速度开始运行。
[0129] 步骤210、在预设的虚拟障碍物与运行轨迹的对应关系中,获得虚拟障碍物对应的 运行轨迹。
[0130] 步骤211、播放虚拟障碍物按照对应的运行轨迹运动的过程。
[0131] 在用户激活虚拟障碍物后,状态参数将得到更新。假设用户是在t时刻与(t+1) 时刻之间激活了虚拟障碍物,那么,(t+1)时刻的状态参数将得到更新,具体描述如下。
[0132] 步骤212、获得t时刻的状态参数。
[0133] 具体地,获得步骤205得到的t时刻的状态参数。
[0134] 步骤213、根据t时刻的状态参数,确定虚拟智能汽车在t时刻需执行的行驶决策 动作。
[0135] 具体地,本步骤213同步骤204,在此不再赘述。
[0136] 步骤214、根据需执行的行驶决策动作,估算(t+Ι)时刻的状态参数。
[0137] 本步骤214包括如下步骤214a-步骤214f。
[0138] 步骤214a、根据需执行的行驶决策动作,计算虚拟智能汽车在(t+1)时刻的状态 量。
[0139] 具体地,本步骤214a同步骤2051,在此不再赘述。
[0140] 步骤214b、根据虚拟智能汽车在(t+Ι)时刻的状态量中的位置坐标,在预置的虚 拟智能汽车的位置坐标与虚拟车道的边界坐标的对应关系中,获得虚拟车道中虚拟智能汽 车在(t+Ι)时刻所处路段的边界坐标。
[0141] 步骤214c、根据虚拟车道
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1