# 導航調整

舉此節點`“/motors_ctrl”`為例，發佈到擁有`“nav_msgs/Odometry”`訊息類型的`“/odom”`主題，以及列表中的其他主題，也需訂閱擁有`“geometry_msgs/Twist”`訊息類型的`“/cmd_vel”`主題。

1. 請至該資料夾‘/home//catkin\_ws/movel\_ai/config/movel/config/’<br>
2. 在參數文件**costmap\_common\_params.yaml**中，請確保清楚且正確地，定義出機器人的輪廓(footprint)。&#x20;
   1. 如果機器人的輪廓(footprint)是多邊形，可自行配置機器人輪廓的參數，並取消註解圓形的機器人輪廓(robot\_radius)，以下為範例：

      ```
      footprint: [[0.2, 0.2], [-0.2, 0.2], [-0.2, -0.2], [0.2, -0.2]]
      #robot_radius: 0.18
      ```
3. 當圓形的機器人輪廓(robot\_radius)被取消註解時，機器人有正方形的輪廓，如圖所示，四個角的XY座標：<br>
   1. 如果機器人的輪廓是圓形的，可配置圓形的機器人輪廓(robot\_radius)的參數，並且取消註解機器人的輪廓(footprint)，例如：

      ```
      #footprint: [[0.2, 0.2], [-0.2, 0.2], [-0.2, -0.2], [0.2, -0.2]]
      robot_radius: 0.18
      ```
4. 在此文件base\_local\_planner\_params.yaml中：
   1. 請前往 “`#Robot`” 區域，如要調整機器人的速度， 可配置`max_vel_x` 為線速度，以及配置 `max_vel_theta` 為角速度。若機器人無法達到最快的速度，可增加`acc_lim_x` 和`acc_lim_theta`。在footprint\_model中，請選擇適合的模型並配置相對應的參數。
   2. 在“`#Obstacles`”區域，可調整`min_obstacle_dist`的數值，去設定機器人與障礙物的最小距離，若機器人需要進入狹窄的地方，需減少參數數值。 <br>
5. 若自主導航運動不順暢，請前往“catkin\_ws/movel\_ai/config/cmd\_vel\_mux/config”，尋找cmd\_vel\_mux.yaml，並且提高`timeout_autonomous`的數值。<br>
6. 如需base\_local\_planner\_params.yaml深度調整，請參閱<http://wiki.ros.org/teb_local_planner>
