読者です 読者をやめる 読者になる 読者になる

Yura YuLife

ITエンジニアの覚え書き

Mac で ROS の環境構築

ROS Mac

Mac OSX で ROS を動かすまでの環境構築手順です。

環境

  • Mac OSX El Capitan
  • ROS Kinetic

ROS の環境構築

GUI 系のツールを動かそうとすると Qt5 周りの依存関係でハマったので、とりあえず ROS の基本パッケージのみ(ROS-Comm)の環境構築を行いました。

基本的には公式ページの手順 に則るだけです。

Homebrew の設定

Homebrew を最新版にし cmake をインストールしておきます。

$ brew update
$ brew install cmake

ROS のインストールに必要な依存パッケージをインストールできるようにします。

$ brew tap ros/deps
$ brew tap osrf/simulation
$ brew tap homebrew/versions
$ brew tap homebrew/science

Python, Pip の設定

Homebrew でインストールしたパッケージを Python から使えるようにします。

$ mkdir -p ~/Library/Python/2.7/lib/python/site-packages
$ echo "$(brew --prefix)/lib/python2.7/site-packages" >> ~/Library/Python/2.7/lib/python/site-packages/homebrew.pth

pip が入っていない場合は pip をインストールします。

$ brew install python  # brew Python comes with pip
$ sudo -H python -m pip install -U pip  # Update pip

pip でパッケージをインストールします。

$ sudo -H python -m pip install -U wstool rosdep rosinstall rosinstall_generator rospkg catkin-pkg Distribute sphinx

rosdep の初期化

rosdep をインストールできたら、初期化を行っておきます。

$ sudo -H rosdep init
$ rosdep update

catkin workspace の作成

catkin_ws というディレクトリを作成します。

$ mkdir ~/catkin_ws
$ cd ~/catkin_ws

ROS のインストール

今回は GUI 系のツールなしの、最小限の ROS パッケージのセットをインストールします。

$ rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only --tar > kinetic-ros_comm-wet.rosinstall
$ wstool init -j8 src kinetic-ros_comm-wet.rosinstall

workspace の初期化が済んだら、依存するパッケージをインストールします。

$ rosdep install --from-paths src --ignore-src --rosdistro kinetic -y

そして workspace 内の各パッケージをビルド、インストールします。

$ ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release

ROSの動作を確認

ターミナルに ROS の環境変数を設定しておきます。

$ source ~/catkin_ws/install_isolated/setup.bash

ROS の動作を確認します。

$ roscore &

$ rosnode list
/rosout

$ rosnode info /rosout
--------------------------------------------------------------------------------
Node [/rosout]
Publications: 
 * /rosout_agg [rosgraph_msgs/Log]

Subscriptions: 
 * /rosout [unknown type]

Services: 
 * /rosout/set_logger_level
 * /rosout/get_loggers


contacting node http://YumaM-iMac-3.local:53388/ ...
Pid: 26340

$ rosparam list
/rosdistro
/rosversion
/run_id

動いた!

参考URL