Turtlebot3: 2. Raspberry Pi 3の設定

Turtlebot3 Burgerに搭載されているRaspberry Pi 3の設定メモ。以下のリンクを元に作業したメモ。この作業も1.2GB以上のファイルをダウンロードする必要があるので、環境によっては数時間かかる。

Ubuntu Mateのインストール(リモートPCでの作業)

  • Turtlebot3 Burger付属(2017年8月購入)のSDカードが8GBしか容量がないので、Raspberry Pi3のSDカードにUbuntu Mateをインストールする。これからの作業はリモートPCで行い、SDカードにUbuntu Mateのイメージを書き込む。
  • 次のリンクからダウンロードする。
  • Raspberry Piをクリック

  • 16.04.2をクリック

 

  • ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xzをクリック

  • 端末を開き、次のコマンドを実行しダウンロードしたイメージの圧縮ファイルを解凍する。
    • sudo apt-get install gddrescue xz-utils
    • unxz ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz
  • SDカードに書き込む。ここではSDカードのデバイスファイルが/dev/sdxとしているので適切に変更する。なお、使い方がよくわからない方はWin32 Disk Imagerなどのウインドウズのソフトを使うとよい。
    • sudo ddrescue -D --force ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img /dev/sdx

ROSのインストール(Raspberry Pi 3での作業)

  • リモートPCの作業で作ったSDカードをRaspberry Pi 3に挿入する。
  • Raspberry Pi 3にHDMIディスプレイ、キーボード、マウスを接続する。次に、電源用のマイクロUSB端子を刺してRaspberry Pi 3を起動する。Raspberry Piには電源スイッチがないので電源を供給するとすぐ起動するので、電源用のマイクロUSB端子は最後に刺す。
  • Ubuntu mateが起動したら端末を起動して以下のコマンドを実行してROSをインストールする。
    • sudo apt-get update
    • sudo apt-get upgrade
    • wget https://raw.githubusercontent.com/ROBOTIS-GIT/robotis_tools/master/install_ros_kinetic_rp3.sh
    • chmod 755 ./install_ros_kinetic_rp3.sh
    • ./install_ros_kinetic_rp3.sh
  • ワークスペースの作成
    • source /opt/ros/kinetic/setup.bash
    • mkdir -p ~/catkin_ws/src
    • cd ~/catkin_ws/src
    • catkin_init_workspace
    • cd ~/catkin_ws
    • catkin_make
  •  Turtlebot3関連のパッケージをインストール
    • cd ~/catkin_ws/src
    • git clone https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git
    • git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
    • git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
  • リモートPC用のファイルを消す。Raspberry Pi3はメモリが1GBしかないので、ファイルを消さないとビルドで失敗する。
    • cd ~/catkin_ws/src/turtlebot3
    • sudo rm -r turtlebot3_description/ turtlebot3_teleop/ turtlebot3_navigation/ turtlebot3_slam/ turtlebot3_example/
    • sudo apt-get install ros-kinetic-rosserial-python ros-kinetic-tf
  • パッケージのビルド
    • cd ~/catkin_ws
    • catkin_make

USBの設定

  • Turtlebot3のコントローラOpenCR1.0のデバイス名とルート権限がなくても使えるように次のコマンドを実行する。
    • rosrun turtlebot3_bringup create_udev_rules

無線LANの設定

  • 端末を開き、以下のコマンドでIPアドレスを調べる。リモートPCとTurtlebot3とは無線LANで通信するのでwlan0の欄を見る。ここでは192.168.1.14とする。

  • ifconfig
  • 下図の赤で囲んだ部分を.bashrcに追加する。このIPアドレスはifconfigで調べたIPアドレス。この例では192.168.1.14。
    ROS_MASTER_URIはroscoreを起動するリモートPCのIPアドレス。ROS_HOSTNAMEはRaspberry Pi3のIPアドレス。IPアドレスを間違えるとロボットは動かない。
    また、DHCP設定の場合はコンピュータを起動するたびにIPアドレスが変わるので注意が必要。

  • 設定を有効にするために次のコマンドを実行する。
    • source ~/.bashrc

これで終了。お疲れ様。

コメント

タイトルとURLをコピーしました