规划
为了让汽车自己驾驶,我们首先需要规划我们想要走的路。
GPS (全球定位系统)
为此,我们将使用 gps 来跟踪从当前位置到目标位置的路线。
Carla GlobalRoutePlanner
使我们能够从给定地图的两点获取路线。 我们已封装此函数在“operators/carla_gps_op.py”。
以下算子将计算从当前 position
到给定 opendrive
地图的 objective_waypoints
的路线。
- id: carla_gps_op
operator:
python: ../../carla/carla_gps_op.py
outputs:
- gps_waypoints
inputs:
opendrive: oasis_agent/opendrive
objective_waypoints: oasis_agent/objective_waypoints
position: oasis_agent/position
在全部坐标,航点作为一个 内有
x,y,速度
数据表示的,成员类型为float32
的数组定义。
规划器
GPS航点不考虑障碍物。 为了避免碰撞,我们可以实现一个可以避开障碍物的运动规划器。
我们将重用一个名为“fot”(Frenet 最优轨迹)的模型作为黑匣子,该模型将起始位置和目标航点以及障碍物列表作为输入,并输出要 跟随的最佳航点。
- id: fot_op
operator:
python: operators/fot_op.py
outputs:
- waypoints
inputs:
position: oasis_agent/position
obstacles: obstacle_location_op/obstacles
gps_waypoints: carla_gps_op/gps_waypoints
要测试两者:
dora up
dora start graphs/oasis/oasis_agent_planning.yaml --attach
更多信息在
fot
, 去至 我们的fot
细节页面