ROS / ROS 2開発生産性向上ツール

Cc568a0b1284645f9fb927b2343eb87e?s=47 Yutaka Kondo
February 17, 2020

ROS / ROS 2開発生産性向上ツール

ROS Japan UG #34 LT大会で発表した資料です。 https://rosjp.connpass.com/event/161041/

Cc568a0b1284645f9fb927b2343eb87e?s=128

Yutaka Kondo

February 17, 2020
Tweet

Transcript

  1. ROS / ROS 2開発 生産性向上ツール 近藤 豊 @youtalk https://www.youtalk.jp ROS

    Japan UG #34 LT大会
  2. 自己紹介 yutaka.kondo@youtalk.jp 3 本名 国籍 ホームページ • ~2013/03: 奈良先端大学院大学 博士(工学)

    • ~2018/04: カワダロボティクス 開発部主任 • 2018/05~: Preferred Networks エンジニア • 2019/08/13: ROS2ではじめよう 次世代ロボットプログラミング 出版
  3. ROS環境変数設定あるある • ROS / ROS 2のディストリビューションを頻繁に変更していませんか? ◦ 私用ではROS 2 Eloquentを使っているが、会社では

    ROS 2 Dashingを使っている ◦ ROS / ROS 2ブリッジするために、ターミナルごとに ROS / ROS 2が入り混じっている ◦ … • setup.bash / setup.zsh以外にも実行するコマンドがたくさんあって、時間を浪費し ていませんか? ◦ ワークスペースにも sourceしておきたい ◦ ROSならcatkin locate --shell-verbsもsourceしておきたい ◦ ROS 2ならROS_LOCALHOST_ONLY = 1しておかないと開発時は怖い ◦ ... 4
  4. chdistro: ROS環境変数設定コマンド “CH”ange ROS “DISTRi”bution https://github.com/youtalk/chdistro • インストール ◦ https://github.com/youtalk/chdistro#install

    ◦ bashでもzshでも使える(はず) • 使い方 ◦ https://github.com/youtalk/chdistro#usage ▪ $ chdistro ROS_DISTRO [WORKSPACE_DIR] ▪ $ chdistro melodic ~/ros/melodic ▪ $ chdistro dashing ~/ros/dashing 5
  5. ROSパッケージ開発あるある • Language Server Protocolを使ってROSパッケージ開発にもauto completionを 導入したくありませんか? ◦ 強いIDEならCMakeキャッシュからビルド設定を読み込めるが、 Emacs

    / Vimでは難しい ◦ 複数パッケージ間でも auto completionして欲しい • 前日譚 https://ros.youtalk.jp/2019/12/20/compile-commands.html 6
  6. colcon_lncc: colconビルド設定のシンボリックリンク “colcon”と”ln” “c”ompile_”c”ommands.jsonの組み合わせ https://github.com/youtalk/colcon_lncc • インストール ◦ https://github.com/youtalk/colcon_lncc#install ◦

    bashでもzshでも使える(はず) • 使い方 ◦ https://github.com/youtalk/colcon_lncc#usage ▪ $ cd $COLCON_HOME ▪ $ colcon build --cmake-args -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ▪ $ colcon_lncc 7
  7. テストを追加してもう少し整理して お洒落にしたらリリースします! 8 ROS Japan UG #34 LT大会