rclcpp (ROS Client Library for C++) を読み解く (2)
昨日のrclcpp (ROS Client Library for C++) を読み解く (1)のフォーマットを変更しました。 Gistを使った方が正しくシンタックスハイライトが効いて、やはり読みやすいですね。 rclcppのソースコードを本日も見ていきます。 昨日も出てきていましたが、読み飛ばしていたCallbackGroup, CallbackGroupTypeというクラスを見ていき...
昨日のrclcpp (ROS Client Library for C++) を読み解く (1)のフォーマットを変更しました。 Gistを使った方が正しくシンタックスハイライトが効いて、やはり読みやすいですね。 rclcppのソースコードを本日も見ていきます。 昨日も出てきていましたが、読み飛ばしていたCallbackGroup, CallbackGroupTypeというクラスを見ていき...
ROS 2のクライアントライブラリ構造 本日からROS 2のソースコードを読み解く記事を書いていきます。 まずはクライアントライブラリのソースコードを読んでいきましょう。 ROS 2のクライアントライブラリは、階層構造に分かれています。 http://roscon.ros.org/2016/presentations/ROSCon%202016%20-%20ROS%202%20Up...
ROS Japan UG #12 Raspberry Pi Mouseハッカソン ROS Japan Users Groupの第12回のイベントがRaspberry Pi Mouseハッカソンに正式に決定しました。 https://rosjp.connpass.com/event/59669/ 今回は参加人数が限られているため、参加申し込みは抽選としました。 すでに応募人数を超えていま...
ROS 2では、C++はC++11とC++14の一部、PythonはPython 3.5以上が採用されることになりました。 C++に関しては、C++17の正式リリースが済んで開発環境も整い次第、こちらも採用するという意欲的な態度を取っています。 そのため、ROS 2ユーザはC++03のこれまでのプログラミングスタイルから脱却する必要があります。 本日は、ROS 2のソースコードを読んでいて...
ROS Japan UG #11 LT大会 話が遅くなりましたが、ROS Japan Users Groupの第11回のイベントはLT大会に決定しました。 https://rosjp.connpass.com/event/58755/ 第11回では、私は「ROS 2 + Dockerによるフォールトレランス実践」というタイトルで発表するつもりです。そのネタはまだこのブログでは取り上げず...
本日は、以下のデモに従って、実際にROS 1とROS 2のブリッジ通信を試していきます。 https://github.com/ros2/ros1_bridge/blob/master/README.md ROSインストール OSはUbuntu 16.04を用います。まずはROS 1と2をインストールしてください。 ROS 1インストール ROS kineticをインストールしてく...
本日は、以下の記事を日本語に要約して、ROS 1とROS 2のブリッジ通信に関して理解していきます。 https://github.com/ros2/ros1_bridge/blob/master/README.md https://github.com/ros2/ros1_bridge/blob/master/doc/index.rst ros1_bridge ブリッジはROS 1と...
先日のROS 2のプロセス内(intra-process)通信を理解する (1)の続きです。 本日は以下に従って、実際にROS 2のプロセス内通信の実装方法を見ていきます。 https://github.com/ros2/ros2/wiki/Intra-Process-Communication#running-and-understanding-the-demos このデモのソースコ...
本日は、以下のROS 2のプロセス内(訳注:intra-processの意)通信のデモを見ていきます。 https://github.com/ros2/ros2/wiki/Intra-Process-Communication プロセス内通信の技術紹介に関しては、ROSCon 2015の発表資料が一番詳しいです。記事の図はここから転載しています。 http://roscon.ros.o...
先日のROS 2ノードのライフサイクルを理解する (1)の続きです。 本日は、以下に従って、実際にROS 2のライフサイクルの実装方法を見てきます。 https://github.com/ros2/ros2/wiki/Managed-Nodes https://github.com/ros2/demos/blob/master/lifecycle Publisher実装 簡単なPub...