lgsvl场景运行方法
1.在模拟器目录下安装模拟器的Python API模块。
pip3 install --user .
2.运行模拟器。
3.设置环境变量 SIMULATOR_HOST和BRIDGE_HOST。
- SIMULATOR_HOST是模拟器运行的位置,其默认值为“localhosr”,如果python脚本和模拟器在同一机器上运行的话,保持默认即可。
- BRIDGE_HOST是AD栈运行的位置,这与模拟器的运行位置有关,其默认值与模拟器一样为“localhost”。
- 比如:如果计算机A运行模拟器,计算机B运行AD栈; SIMULATOR_HOST应该设置为计算机A的IP,BRIDGE_HOST应该设置为计算机B的IP。
- 设置当前终端窗口使用的变量
export SIMULATOR_HOST=192.168.1.100
4.运行你的AD栈。示例的脚本是为Apollo 5.0编写的,如何编辑在其它AD栈运行的脚本的方法如下:
- 选择MKZ作为地图中车辆的 SingleLaneRoad;
- 运行所有模块和bridge(如果相关的话)。
5.运行脚本
./VF_S_25.py
6.设置AD栈的终点。在示例场景中,终点是当前直线末端。
示例
7.通过以上步骤,自动驾驶车辆应该朝着NPC驶去,它应该要避免与NPC发生碰撞。
如何编辑EGO车辆
在每个示例场景和测试案例中,都有一部分是设置EGO车辆的:
EGO设置
如果使用不同的AD栈,车辆的类型应该进行更改。
- 将代号(橙色字串)改成想要的。e.g. 在Autoware中它可能是 "Lexus2016RXHybrid (Autoware)"。
python API 使用案例示范
本示范为LGSVL开发团队使用Python API编写的Python脚本,目的是为了测试特定的场景或执行特定的任务,具体脚本可在这里找到。
场景
我们使用Python API创建了一些简单的基本场景,可以在这里找到如何运行这些场景的步骤。
下图的场景假设模拟器可以连接到一个Apollo5.0实例中。可以在这里找到如何与Apollo5.0连接的教程。Apollo模块需要按下图所示进行启动(位置、感知、规划、预测、路线规划、交通灯、转换、控制)。
建议在运行场景前启动Apollo和响应的模块,Apollo中的终点可以在运行位置和路线规划后再设置。
跟车
- 脚本 跟车
-
该场景模拟了EGO车辆从后面接近一辆车速更慢的NPC车辆。EGO车辆应加速至限速速度,并赶上NPC车辆。
示例
再该场景中,终点是车道线的末端。
示例
与接近的车辆对抗
- 脚本 与接近车辆的检测与对抗
- 本场景模拟了EGO车辆与在其车道一半的驶来的NPC车辆即将发生碰撞,EGO车辆要避免碰撞的发生。
-
在这里NPC使用航点系统来定义其路径,在该系统中,NPC车辆无视其它车辆,并不会避免发生碰撞。
在该场景下,目的地是车道线的终点,可与跟车场景使用同样的目的地。
https://github.com/lgsvl/simulator/blob/master/Docs/docs/api-how-to-run-scenario.md
https://github.com/lgsvl/simulator/blob/master/Docs/docs/api-example-descriptions.md
网友评论