MATLAB&SIMULINK自动驾驶工具箱提供了一个协同仿真框架,可以用它在Simulink中对驾驶算法进行建模,并在虚拟仿真环境中可视化其性能。该环境使用Epic Games的虚幻引擎。 了解这个仿真环境的工作原理可以帮助排除故障和定制的模型。 26.1 与3D仿真环境的通信当使用自动驾驶工具箱运行算法时,Simulink会在可视化引擎中共同仿真算法。 在Simulink环境中,自动驾驶工具箱: - 配置可视化环境,特别是射线跟踪、从摄像机捕捉场景和初始对象位置。 - 通过使用仿真环境反馈确定对象的下一个位置该图总结了Simulink和可视化引擎之间的通信。 26.2 模块执行指令在仿真过程中,虚幻引擎仿真块遵循特定的执行顺序。 1 仿真3D车辆与地面跟随块初始化车辆,并将它们的X、Y和Yaw信号数据发送到仿真3D场景配置块。 2 仿真三维场景配置块接收车辆数据并发送给传感器块。 3 传感器块接收到车辆数据后,利用这些数据对车辆进行准确定位和可视化。 块的优先级属性控制该执行顺序。要访问任何块的该属性,请右键单击该块,选择属性,然后单击常规选项卡。默认情况下,仿真三维车辆与地面跟随块的优先级为-1,仿真三维场景配置块的优图中显示了这种执行顺序。 如果传感器没有探测到场景中的车辆,则可能是虚幻引擎仿真块执行顺序错误。请尝试更新执行顺序,然后重新进行仿真。 还要确保所有的3D仿真块都位于同一个子系统中。即使块有正确的优先级设置,如果它们位于不同的子系统中,仍然可能会执行顺序错误。 自动驾驶工具箱使能够在一个使用Epic Games的虚幻引擎的虚拟环境中仿真的驾驶算法。一般来说,该环境中使用的坐标系遵循《基于MATLAB&SIMULINK开发自动驾驶系统第一讲之传感器配置和坐标系转换 》"自动驾驶工具箱中的坐标系 "中描述的约定。然而,在此环境中进行仿真时,必须注意坐标系的具体差异和实现细节。 27.3 世界坐标系与其他自动驾驶工具箱功能一样,仿真环境使用ISO 8855中定义的右手笛卡尔世界坐标系。以下为二维俯视图图像虚拟麦城场景显示了该场景的X-坐标和Y-坐标。 在这个坐标系中,当从X轴的正方向看,Y轴的正方向指向左边。Z轴的正方向从地面向上指向。当分别从Z轴、Y轴和X轴的正方向看时,偏航角、俯仰角和滚转角都是顺时针正向的。如果从二维自上而下的角度查看场景,那么偏航角是逆时针方向的正值,因为是在Z轴的负方向上查看场景。 26.4.1在场景中放置车辆车辆被放置在场景的世界坐标系中。图中显示了如何在 "仿真三维车辆与地面跟随 "块中指定X、Y和Yaw端口,以决定它们在场景中的位置。 地面的仰角和岸角决定了车辆的Z轴、滚动角和俯仰角。 26.4.2 与虚幻编辑器世界坐标的区别Unreal® Editor使用左手世界笛卡尔坐标系,其中正Y轴指向右。如果要从虚幻编辑器坐标系转换到3D环境的坐标系, 必须将Y轴和俯仰角的符号翻转。X轴、Z轴、滚动角和偏航角在两个坐标系中是相同的。 26.5 车辆坐标系统车辆坐标系以世界坐标系为基础。在这个坐标系中. - X轴指向车辆的前方。 - Y轴指向车辆的左侧。 - Z轴从地面向上。 - 滚动、俯仰和偏航分别在X轴、Y轴和Z轴的前进方向上为顺时针正向。与世界坐标系一样,当从上往下看车辆时,那么偏航角是逆时针正向的。 车辆原点在地面上,位于车辆的几何中心。在本图中,蓝点代表车辆原点。 26.5.1 在车辆上安装传感器当将传感器块(如仿真三维相机块)添加到模型中时, 可以将传感器安装到预定义的车辆位置,如根中心的前保险杠。这些安装位置在车辆坐标系中。当指定这些位置的偏移时, 从安装位置的原点偏移,而不是从车辆原点偏移。 这些公式定义了具有位置(X、Y、Z)和方向(滚动、俯仰、偏航)的传感器的车辆坐标。 - (X, Y, Z) = (Xmount + Xoffset, Ymount +Yoffset, Zmount + Zoffset) - (Roll, Pitch, Yaw) = (Rollmount +Rolloffset, Pitchmount + Pitchoffset, Yawmount + Yawoffset) 安装 "变量指的是相对于车辆原点的预定义安装位置,可以在传感器块的安装位置参数中定义这些安装位置。可以在传感器块的安装位置参数中定义这些安装位置。 偏移 "变量指的是与这些安装位置的偏移量。在传感器块的相对平移 [X, Y, Z](m) 和相对旋转 [Roll, Pitch, Yaw] (deg) 参数中定义这些偏移量。 例如,考虑安装在后保险杠位置的传感器。相对于车辆原点,传感器的方向为(0,0,180)。换句话说,当从上向下观察车辆时,传感器的偏航角逆时针旋转180度。 要将传感器再向右指向90度,需要将相对旋转[滚动、俯仰、偏航](度)参数设置为[0,0,90]。换句话说,传感器相对于车辆原点逆时针旋转270度,但相对于预定义后保险杠位置的原点仅逆时针旋转90度。 26.5.2 与场景仿真汽车坐标原点的区别在立方体仿真环境中,如 "立体场景仿真 "中所述,原点在地面上,车辆后轴中心下方。 如果要在坐标系之间转换传感器位置,那么需要使用立方体到 3D 仿真块来解释这种原点的差异。 26.5.3 与虚幻编辑器车辆坐标的差异虚幻编辑器使用左手的笛卡尔车辆坐标系,其中正Y轴指向右。如果要从虚幻编辑器坐标系转换到虚幻引擎环境的坐标系,必须翻转Y轴和俯仰角的符号。X轴、Z轴、滚动角和偏航角在两个坐标系中是相同的。 |
|