根据库map_generator生成的grid_map,进行全局路径搜索,根据全局路径搜索的结果,生成凸包作为飞行走廊,根据飞行走廊的结果,作为MPC的约束,优化后面的MPC的轨迹
此设置已在 Ubuntu 20.04 和 ros1 noetic 上通过测试。
mkdir -p traj_optimization_ws/src && cd traj_optimization_ws
git clone git@github.com:Tipriest/trajectory_optimization.git ./src/trajectory_optimization
cd ./src/trajectory_optimization && git submodule update --init --recursive
cd .. && git clone git@github.com:Tipriest/map_generator.git
sudo apt install ros-noetic-grid-mapcatkin build# 打开仿真地图
roslaunch map_generator map_generator.launch
roslaunch trajectory_optimization optimize_visual.launch
支持两种模式,通过参数 start_mode 配置:
two_click:在 RViz 里连续点两次,第一次为起点,第二次为终点odom_plus_click:起点来自odom_topic(默认/gazebo_odom),RViz 只点一次作为终点
对应参数文件:
常用参数:
start_mode:two_click或odom_plus_clickgoal_topic:默认/move_base_simple/goalodom_topic:默认/gazebo_odommarker_frame_id:起点/终点 marker 的坐标系start_marker_*/goal_marker_*:marker 颜色 (RGBA) 与大小
示例:
start_mode: "odom_plus_click"
goal_topic: "/move_base_simple/goal"
odom_topic: "/gazebo_odom"
marker_frame_id: "world"
start_marker_r: 0.0
start_marker_g: 1.0
start_marker_b: 0.0
start_marker_a: 1.0
start_marker_scale: 0.5
goal_marker_r: 1.0
goal_marker_g: 0.0
goal_marker_b: 0.8
goal_marker_a: 1.0
goal_marker_scale: 0.5