目次

ROS Installation

作業環境

1. Edison用ドライバのインストール

Intelの公式配布ページから、 ドライバをダウンロードします。(最新版のドライバを入れておく必要があります。)

2. Debianイメージの取得

ubilinuxの公式配布ページから、 Edison用のDebianイメージをダウンロードします。

これを解凍し、任意のフォルダに展開しておきます。

3. dfu-utilの取得

コミュニティサイトから、 イメージの転送ソフトをダウンロードします。

4. Debianイメージの書き込み

  1. toFlashディレクトリ内に、3.でダウンロードしたdfu-util.exeを設置します。
  2. flashall.bat内のコメントアウト行を、cmd.exeに合わせて"rem"に書き換えます。
    (この作業を行わないと、バッチファイルの実行時にエラーがでます。)
  3. flashall.batを実行したのち、EdisonをPCに接続します。
  4. 転送処理の開始に成功すると、プロンプト上にログが表示されます。(そのまま10分ほど待機してください。)

5. Edisonとのシリアル接続

FTDI制御マイコンの実装されている側のUSBポートへ、USBケーブルを接続します。 その後、TeraTermなどのターミナルエミュレータを用いて、認識されたCOMポートにbaudrate 115200で接続します。

root [Enter]
edison [Enter]

以上のように入力し、rootユーザへログインします。

6. ネットワークの設定

初期状態では、usb0がデフォルトゲートウェイを握っているため、インターネット接続ができません。 まずはこれをwlan0へと変更するために、以下のように入力し、ネットワークの設定ファイルを開きます。

vi /etc/network/interfaces [Enter]

そして、wifiの設定を以下のように書き換えます。

iface wlan0 inet dhcp
wpa-ssid <your wifi SSID>
wpa-psk <your wifi password>

最後に、以下のように入力し、ネットワークを再構成します。

ifup wlan0 [Enter]
service networking restart [Enter]

念のため、pingコマンドを用いて接続確認を行ってみてください。

ping plen.jp

7. sudoのインストール

パッケージのアップデートを行うために以下のコマンドを入力します。

apt-get update [Enter]

次にsudoをインストールします。

apt-get install sudo [Enter]

8. ユーザの作成

ユーザを作成するために以下のコマンドを入力します。< USERNAME >が作成したいユーザ名になります。

useradd -m -g users -s /bin/bash <USERNAME>
passwd <USERNAME>

root権限を与えるためにvisudoに追記します。

visudo

nanoが起動しますので、以下の部分の内容を変更します。

Defaults secure_path="/home/<USERNAME>/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Defaults env_keep += "PYTHONPATH"

# User privilege specification
root ALL=(ALL:ALL) ALL
<USERNAME> ALL=(ALL:ALL) ALL

sudoコマンドを利用した時にエラーが出ますので/etc/hostsへの追記を行います。

vi /etc/hosts [Enter]

追記は内容は以下のようになります。

127.0.0.1       localhost ubilinux

ここで一度再起動します。

reboot [Enter]

9.容量の問題を解決するためにをhome以下になるべく逃がす設定

先程作成したユーザでログインします。 まず、.bashrcを編集します。

vi .bashrc [Enter]

次の内容を追加します。

export PATH=~/.local/bin:$PATH
export PYTHONPATH=~/.local/lib/python2.7/:~/.local/lib/python2.7/site-packages/

追加した設定を反映させます。

source ~/.bashrc [Enter]

次に~/.pydistutils.cfg を作成し、内容は以下のようにします。

[install]
user=1

10.pipのインストール

pipのインストールを行います。apt-getでインストールした場合はバージョンが古くなるため次のようにします。

sudo wget https://bootstrap.pypa.io/ez_setup.py --no-check-certificate -O - | python [Enter]
easy_install pip [Enter]

共有ライブラリをhome以下のものも見に来るように設定します。

sudo sh -c "echo $HOME/.local/lib > /etc/ld.so.conf.d/locallib.conf" [Enter]
sudo ldconfig [Enter]

ここで再起動を行います。

sudo reboot [Enter]

11. ROS

解説サイト1解説サイト2を参考に、 ROSのインストールを行います。

11.1. 準備

まず、新しいパッケージを入手するために/etc/apt/sources.list に追記を行います。

sudo vi /etc/apt/sources.list [Enter]
deb http://ftp.jp.debian.org/debian wheezy-backports main

次に、パッケージを更新します。

sudo apt-get update [Enter]

次に、必要だと考えられるライブラリを入手します。

sudo apt-get install libjpeg8-dev libgtest-dev sbcl python-imaging liblog4cxx10-dev libboost-all-dev liblz4-dev libtinyxml-dev libbz2-dev [Enter]
pip install rosdep rosinstall_generator wstool rosinstall nose argparse PyYaml empy netifaces paramiko coverage mock crypto Pillow numpy pyserial [Enter]
sudo rosdep init [Enter]
rosdep update [Enter]

次に~/.pydistutils.cfg の内容を変更します。

[install]
user=0

11.2. console_bridgeのインストール

catkinで利用するため,個別にインストールしておく必要があります. 解説サイトを参考に行います。

mkdir ~/cb_ws [Enter]
cd ~/cb_ws [Enter]
git clone https://github.com/ros/console_bridge [Enter]
mkdir build [Enter]
cd build [Enter]
cmake -DCMAKE_INSTALL_PREFIX=~/.local ../console_bridge [Enter]
make install [Enter]

11.3. ROS-Comm: (Bare Bones)のインストール

catkinワークスペースの作成をします。

mkdir ~/ros_catkin_ws [Enter]
cd ~/ros_catkin_ws [Enter]

次に、GUIなしのバージョンをインストールします。

rosinstall_generator ros_comm --rosdistro indigo --deps --wet-only --tar > indigo-ros_comm-wet.rosinstall [Enter]
wstool init -j2 src indigo-ros_comm-wet.rosinstall [Enter]
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release [Enter]

環境変数を設定します。(.bashrcに追記します)

source ~/ros_catkin_ws/install_isolated/setup.bash
export LD_LIBRARY_PATH=~/.local/lib/i386-linux-gnu:$LD_LIBRARY_PATH
source ~/.bashrc [Enter]

roscoreでマスターが起動することを確認します。

roscore [Enter]

rootの.bashrcも追記します。

PYTHONPATH=/usr/local/lib/i386-linux-gnu/python2.7/site-packages/:/home/<USERNAME>/.local/lib/python2.7/:/home/<USERNAME>/.local/lib/python2.7/site-packages/
export LD_LIBRARY_PATH=/home/<USERNAME>/.local/lib/i386-linux-gnu/:$LD_LIBRARY_PATH
export PATH=/home/<USERNAME>/.local/bin/:/home/<USERNAME>/ros_catkin_ws/install_isolated/bin/:$PATH
source /home/<USERNAME>/ros_catkin_ws/install_isolated/setup.bash
export LC_ALL=C

12. BlueZのインストール

まず、blueZを取得し、解凍を行います。

wget https://www.kernel.org/pub/linux/bluetooth/bluez-5.35.tar.xz [Enter]
tar xvf bluez-5.35.tar.xz [Enter]

次に、ビルドを行い、その後インストールします。

cd bluez-5.35 [Enter]
./configure --disable-systemd --enable-library [Enter]
make [Enter]
sudo make install [Enter]

最後に、必要なpythonのライブラリを入手します。

sudo apt-get install python-dbus python-gobject [Enter]

13. PLEN用ノードの作成

//fix me.

14. Intel Edisonのアクセスポイント化

この作業は必要な作業ではありませんので興味のある方は解説サイトを参考にアクセスポイント化を行ってください。