blog

ROS Robotics - 複数のノードを起動するための起動を記述する

1.add source to bashrc 2.write startup launch 3.add some Tips しかし、起動時にrvizのノード名が重複する問題が発生したので、レーダー起動...

Apr 30, 2020 · 2 min. read
シェア

bashrc にソースを追加します。

小さなUbuntuカーで毎回自分のワークスペースのソースを書かなくてもいいように、~/.bashrcファイルの最後に自分のワークスペースを追加しました:

シェルを再起動すると、自動的に私のワークスペースがソースされ、roscdを使って指定したパッケージに直接移動できます:

roscd pkg_name

起動

カートをデバッグする度に、Fusion、Mapping、Loam、Rvizなど多くのノードを個別に起動する必要があります:

  • roscd pkg_name :
  • octomap_serverrviz: octomap_debug.rviz
  • octomap_server viz: オクトマップ_debug.rviz
roscd pkg_name

その他のヒント

起動したいパッケージの起動ファイル名がわからない場合は、起動したいパッケージのパスを調べ、起動フォルダに移動して起動ファイルの名前を確認することができます:

<launch>
 <!-- Start ZED! -->
 <include file = "$(find zed_cpu_ros)/launch/zed_cpu_ros.launch" />
 <!-- Start Robosense LIDAR! -->
 <include file = "$(find rslidar_pointcloud)/launch/rs_lidar_16.launch" />
 <!-- Start fusion node! -->
 <include file = "$(find lidar_camera_fusion)/launch/lidar_camera_fusion.launch" />
 <!-- Start Octomap node! -->
 <include file = "$(find octomap_server)/launch/octomap_server_start.launch" />
 <!-- Start octomap_debug.rviz -->
 <node pkg = "rviz" type = "rviz" name = "$(anon rviz)" respawn = "false" output = "screen" args = "-d $(find octomap_server)/rviz/octomap_debug.rviz"/>
 <!-- Start Lego Loam! -->
 <include file = "$(find lego_loam)/launch/demo.launch" />
 <!-- Only using in map build test! -->
 <node pkg = "tf2_ros" type = "static_transform_publisher" name = "dlonng_static_test_broadcaster" args = "0 0 0 0 0 0 base_link rslidar" />
</launch>
rospack list | grep "zed_cpu_ros"

その後、octomap_serverからマップを構築するのに必要なすべてのノードをワンクリックで起動することができます:

rospack list | grep "rslidar_pointcloud"

しかし、起動の過程でrvizのノード名が重複するという問題が発生したので、RVIZを起動するレーダーをオフにするか、RVIZを起動するノードの名前を変更して重複を防ぎました。

Read next

フロントエンドを学び直す V - ブラウザの仕組み

背景、枠線、SVG 要素、影、その他のボックスの機能は、すべて描画が必要なグラフィッククラスです。TCP ライブラリに基づいていなければならない HTTP プロトコルの実装と同様に、この部分も基礎となるライブラリによってサポートされる必要があります。 一般的なオペレーティングシステムは、基礎となるライブラリを提供します。例えば、Androidには偉大なSkiaがあり、WindowsプラットフォームにはGDIがあり、一般的なブラウジング...

Apr 30, 2020 · 2 min read