SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ROSとRaspberryPiで遠隔みまもりロボットを作ろう(「Tech-Sketch」出張所/番外編)

ラズパイで動くロボット「GoPiGo」をつかって遠隔見守りロボットを作ろう(1) 開発準備編

ROSとRaspberryPiで遠隔みまもりロボットを作ろう 第1回(「Tech-Sketch」出張所/番外編)

ROSのインストール

 公式サイトに従って、ROS本体をUbuntuにインストールしましょう。ROSのバージョンはIndigoです。

ROS Indigoのインストール
$ sudo update-locale LANG=C LANGUAGE=C LC_ALL=C LC_MESSAGES=POSIX
$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu trusty main" > /etc/apt/sources.list.d/ros-latest.list'
$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net --recv-key 0xB01FA116
$ sudo apt-get update
$ sudo apt-get install ros-indigo-ros-base -y

 次に、rosdepというシステム依存関連のインストールを簡易化できるツールを入れます。

rosdepのインストールと初期化
$ sudo apt-get install python-rosdep
$ sudo rosdep init
$ rosdep update

 ROSの環境変数を~/.bashrcに反映します。

ROSの環境変数をシステムに反映
$ echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

 最後に、rosinstallというROS中で頻繁に使用されるコマンドラインツールをインストールします。

rosinstallのインストール
$ sudo apt-get install python-rosinstall

GoPiGoのROS用ドライバーを入れよう

 ROSのインストールまで終わりました。インストールしたROS本体には、デフォルトではGoPiGoを制御するためのROS用のドライバーが入っていないため、追加でインストールします。

 ROSではパッケージの追加インストールの方法は2通りあります。apt-getを使ってバイナリでインストールする方法と、GitHubなどソースからビルド・インストールする方法です。

 今回はバイナリでの配布がないためソースからビルドしてみます。ついでに、後で使うtmuxやvimなどのツールもお好みでインストールしておきましょう。

GoPiGoのドライバーをソースからビルド・インストール
$ sudo apt-get install build-essential tmux vim -y
$ mkdir ~/gopigo_ws
$ cd ~/gopigo_ws
$ wget https://raw.githubusercontent.com/ros-gopigo/rosinstall-repo/kinetic/ros-gopigo.rosinstall
$ wstool init src ros-gopigo.rosinstall
$ rosdep install --from-paths src --ignore-src --rosdistro $ROS_DISTRO
$ catkin_make

 上記でROSのコマンドでcatkin_makeが通ればビルド完了です。

 その後、ビルド済みバイナリをROSで使えるように、そのパスを.bashrcに書き込んでいます。

gopigo_ws以下のパッケージをROSに読み込み
$ echo "source ~/gopigo_ws/devel/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

 ここでビルド・インストールした、「GoPiGoを制御するためのROS用のドライバー」の機能の詳細は次回紹介しますが、例えばバッテリー情報をROS経由で出力したり、ROSから速度指令を与えてタイヤを回転させるといった機能を担っています。

次のページ
いよいよGoPiGoのテスト走行!

この記事は参考になりましたか?

ROSとRaspberryPiで遠隔みまもりロボットを作ろう(「Tech-Sketch」出張所/番外編)連載記事一覧

もっと読む

この記事の著者

古賀 勇多(TIS株式会社)(コガ ユウタ)

TIS株式会社 AIサービス事業部AIサービス企画開発部所属。2015年入社後、自律移動ロボットの研究開発に従事。ロボット・クラウド・機械学習を活用した、人と共生できるロボットシステムの開発を目標にしている。最近興味がある技術は電子工作や3D CAD、DIY。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/9829 2016/12/09 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー