TX2+rplidar+cartographer

7536 ワード

ステップ1:TX 2 ROS kineticのインストール
http://www.ncnynl.com/archives/201706/1750.html
ステップ2:レーザーレーダー駆動(rplidar、F 4テスト済み)を取り付ける
まずTX 2にカーネルをコンパイルしなければならなくて、やっとレーダーを読み取ることができて、コンパイル方法は参考にしますhttp://m.blog.csdn.net/gzj2013/article/details/77069803 
なお、例のCH 341ではなくCP 210 x駆動を選択する
TX 2に十分なスペース(5 Gより大きい)があることを保証しなければ正常にインストールできません(N回試してみたとは言いません)
次にレーダー駆動を取り付け、参考にします.http://www.ncnynl.com/archives/201704/1516.html 
ステップ3:TX 2 cartographerのインストール(公式インストール方法)
ソース:http://www.ncnynl.com/archives/201702/1369.html
# Install wstool and rosdep.
sudo apt-get update
sudo apt-get install -y python-wstool python-rosdep ninja-build

# Create a new workspace in 'catkin_ws'.
mkdir catkin_ws
cd catkin_ws
wstool init src

# Merge the cartographer_turtlebot.rosinstall file and fetch code for dependencies.

wstool merge -t src https://raw.githubusercontent.com/googlecartographer/cartographer_turtlebot/master/cartographer_turtlebot.rosinstall

#vim src/.rosinstall           ,   src    ctrl+h       
#  ceres-solver          :
#>>uri: https://github.com/ceres-solver/ceres-solver.git

wstool update -t src

# Install deb dependencies.
rosdep update
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y

# Build and install.
catkin_make_isolated --install --use-ninja
source install_isolated/setup.bash
  • のインストールが完了すると、Cartographer、Cartographer ROS、and Cartographer ROS’s TurtleBotがインストールされます.公式の例をダウンロードしてインストールが正しいかどうかを確認できます.
    # Download the example bag.(    )
    wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/turtlebot/cartographer_turtlebot_demo.bag
    
    # Launch the 2D LIDAR demo.(2D  DEMO)
    roslaunch cartographer_turtlebot demo_lidar_2d.launch bag_filename:=${HOME}/Downloads/cartographer_turtlebot_demo.bag
  • ROSを使い始めたばかりの学生は、次の2つの文を実行することができません.次のようなエラーが発生する可能性があります.
  • [demo_backpack_2d.launch] is neither a launch file in package [cartographer_ros] nor is [cartographer_ros] a launch file name
    The traceback for the exception was written to the log file
    
  • このエラーの主な原因はrosのcatkin_です.ws構成の問題、
  • 解決方法:~bashrcファイルの最後の行にsource~/catkin_を追加ws/install_isolated/setup.bash,
  • はその後、端末でrospack profileを実行し、新しいパケットのパスが含まれているかどうかを観察する.

  • TX2+rplidar+cartographer_第1张图片
    ステップ4:cartographerとレーザレーダーをマッチングし、地図を構築する
     
    F 4レーザーレーダーの配置方法は創客教程を参考する.http://www.ncnynl.com/archives/201702/1371.html
  • turtlebot_を追加lidar.launch
  • cd ~/carto_ws/install_isolated/share/cartographer_turtlebot/launch
    touch turtlebot_lidar.launch 
    vim turtlebot_lidar.launch 
    
  • コードは次のとおりです:
  • 
      
    
      
    
      
        
      
    
      
        
        
      
    
      
    
    
    
  • turtlebot_navigationパッケージ(laser-driver)にrplidarレーダー起動ファイルを追加し、コードは以下の通り(元の起動ファイルに比べてTF変換が追加されているので、少なくない):
  • 
      
        
        
        
        
        
        
      
    
      
    
             
  • 新規起動ファイルturtlebot_lidar_2d.launch:
  • cd ~/carto_ws/install_isolated/share/cartographer_turtlebot/launch
    touch turtlebot_lidar_2d.launch
    vim turtlebot_lidar_2d.launch
  • コードは次のとおりです:
  • 
    
      
        
      
    
    
  • 新端末、起動レーダー:
  • $ roslaunch turtlebot_navigation rplidar_laser.launch
  • 新端末、起動建図:
  • $ roslaunch cartographer_turtlebot turtlebot_lidar_2d.launch
  • は、RVizを自動的に開いてリアルタイムの状況を表示します.
  • 移動建図、移動turtlebot走輪完成建図、遠隔制御
  • 新端末、図面作成完了後に地図を保存し、実際の経路は:/home/user/map/
  • $ mkdir -p ~/map
    $ rosrun map_server map_saver -f ~/map/lidar_2d_carto
    $ ls ~/map   #    ,  lidar_2d_carto.pgm  lidar_2d_carto.yaml

    ステップ5:cartographerとレーザレーダーのマッチング、ナビゲーション
  • (1)rplidar_amcl_demo.launch
  • を追加
    cd ~/catkin_ws/src/turtlebot_apps/turtlebot_navigation/launch
    mkdir laser_amcl
    cd laser_amcl
    touch rplidar_amcl_demo.launch
    gedit rplidar_amcl_demo.launch
    
  • コードは次のとおりです:
  • 
      
      
    
      
      
    
      
      
      
    
      
      
       
       
      
      
        
        
        
      
    
      
      
      
        
      
    
    

    (2)rplidar_amcl.launch.xmlファイルを追加
    turtlebot_にあるnavigation/launch/includes/amclで、r 200_を直接コピーamcl.launch.xmlファイルと名前を変更すればいいです
    (3)rplidar_costmap_params.yamlファイルを追加
    turtlebot_にあるnavigation/paramで、r 200_を直接コピーcostmap_params.yamlファイルを名前を変更すればいいです