Help us understand the problem. What is going on with this article?

ROS講座02 インストール

概要

ROSはUbuntu上で動くソフトです。ROSは内部でいろいろなものをインストールするのでクリーンなUbuntuの状態で始めることをお勧めします。
Ubuntuのインストールからroscoreが動く状態までを説明します。

対応関係

ROSのバージョンはUbuntuのバージョンとリンクして上がっていきます。大事なのはROSは対応するバージョンのUbuntu上でしか動くことが保証されていません(むしろほかのバージョンでは動かないと思ったほうが良い)。つまりROS kineticをUbuntu 18にインストールするというのはほぼ不可能です。
またUbuntuにもLTSがあるようにROSにもLTSとそうでないものがあります。基本的にLTSであるものを使えばよいです。

Ubuntuバージョン ROSバージョン サポート期限
14.04 Indigo Igloo 2019年5月
16.04 Kinetic Kame 2021年5月
18.04 Melodic Morenia 2023年5月

基本的には今はUbuntu16.04とkineticを使えば良いでしょう(2017年5月現在)。

Ubuntuのインストール

普通のIntel PCであることが前提です。
UbuntuのページISOイメージを使います。
これをDVDに焼いて、Ubuntuのインストールをしてください。特別な設定は必要ありません。

ROSのインストール

結果から言うと以下のスクリプトを走らせればすべて自動でインストールします。途中で何回かパスワードを求められます。かかる時間は20分~1時間程度です。

ros_kinetic_install.sh
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

sudo apt-get -y update
sudo apt-get -y upgrade

sudo apt-get -y install ros-kinetic-desktop-full
apt-cache search ros-kinetic

sudo rosdep init
rosdep update

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
source /opt/ros/kinetic/setup.bash

sudo apt-get -y install python-rosinstall

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ~/catkin_ws
catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

これ以下上記のスクリプトを詳しく説明します。

リポジトリの登録

ros_kinetic_install.shの一部
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sudo apt-get -y update
sudo apt-get -y upgrade

ROSはUbuntuの標準のaptリポジトリにはないのでROSのリポジトリを登録します。1行目がリポジトリの登録、2行目が鍵の登録です。

インストール

ros_kinetic_install.shの一部
sudo apt-get -y install ros-kinetic-desktop-full
apt-cache search ros-kinetic

ここがインストールの本体です。rosのインストールには3種類のオプションがあります。今回はdesktop-fullを使用します。

パッケージ名 入っているもの
ros-indigo-ros-base 通信、ビルド等
ros-indigo-desktop Base+rqt,rviz,一般的なライブラリ等
ros-indigo-desktop-full desktop+シミュレーター等

rosdepのインストール

ros_kinetic_install.shの一部
sudo rosdep init
rosdep update

bashrcの設定

ros_kinetic_install.shの一部
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
source /opt/ros/kinetic/setup.bash

これよりも上の設定でROSはPCにインストールされますが、標準ではROSのコマンドにパスは通っていません。そこで毎回ターミナルの起動時にROSコマンドへのパスを通す必要があります。~/.bashrcはターミナルの起動時に毎回実行されるスクリプトです。

rosinstallの設定

ros_kinetic_install.shの一部
sudo apt-get -y install python-rosinstall

catkinワークスペースの設定

ros_kinetic_install.shの一部
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ~/catkin_ws
catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

ROSのプログラムはcatkinワークスペースというフォルダの中で記述してコンパイルします。名前は何でもよいのですがcatkin_wsがよく使われるのでこの名前にします。また自動ではこのcatkin_wsにはROSのパスが通っていません。source ~/catkin_ws/devel/setup.bashを実行することでcatkin_wsの中のROSパッケージにパスが通ります。毎回打つのは大変なのでbashrcに書いておきましょう。

ここまで来たら一度PCを再起動しましょう。

インストールの確認

roscore

このコマンドを実行して以下のように表示されれば成功です。エラー表示(赤字)が出るなど失敗する場合はターミナルの再起動、Ubuntuの再起動を試してみてください。

basic_roscore.png

パッケージの作成

make_ros_package.sh
cd ~/catkin_ws/src
catkin_create_pkg rospackage_test roscpp rospy std_msgs tf 

ROSのプログラムはROSパッケージという単位で管理されます。パッケージの作成はインストールとは関係ありませんがここで説明します。パッケージは必ずcatkinワークスペースの中のsrcディレクトリの内部に置きます。
パッケージを製作するコマンドがcatkin_create_pkgです。1つ目の引数はパッケージ名(名前は自由、上のスクリプトではbeginner_tutorials)2つ目以降は依存するパッケージです。とりあえず上の4つを入れておけば簡単なプログラムを作れます。この依存は後から追加できます。

よく使うROSパッケージのインストール

ros_kinetic_add_packages.sh
sudo apt-get install -y ros-kinetic-joystick-drivers
sudo apt-get install -y ros-kinetic-jsk-visualization
sudo apt-get install -y ros-kinetic-image-proc

よく使うものをここであらかじめインストールしておきます。
ros-[ROSのディストリビューション]-[パッケージ名(_(アンダーバー)を-(ハイフン)に変えたもの)]がaptのパッケージ名になっています。
例えばjoystick_driversをインストールしたければros-kinetic-joystick-driversという名前のaptパッケージをインストールします。

ROS以外のツールのインストール

個人的に使うツールをインストールします。

sudo apt-get install -y git
sudo apt-get install -y vim

参考

ROSのバージョン:http://wiki.ros.org/Distributions
ROSのインストール:http://wiki.ros.org/ja/indigo/Installation/Ubuntu

目次ページへのリンク

ROS講座の目次へのリンク

srs
ロボットを日々こつこつと製作しています。ロボットやROSやC++、pythonに関心があります。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした