LoginSignup
0
2

More than 1 year has passed since last update.

ROS環境(Ubuntu20.04 noetic)をUSBメモリにインストールする

Posted at

はじめに

ROSの講座を開催するにあたって,ROSを少しだけ触りたい場合に
Ubuntuの環境をどうやって用意すれば良いか質問がありました.
Dockerなどの仮想環境もアリですが,重たかったり,情報が少なかったり,微妙に使い勝手が違ったりと初めてROSを触る初心者には少々ハードルが高いです.

今回は手元のWindows環境になるべく影響を与えないために,
USBメモリにUbuntuとROSをインストールし,Windows環境しか手元になくてもROSを試せるという環境を構築してみます.

※操作を間違えるとWindowsが消えたり使えなくなったりする可能性もあります.必ず必要なファイルはバックアップを取り自己責任で行ってください.

作る環境

Ubuntuバージョン ROSバージョン
20.04 Noetic Ninjemys

用意するもの

・Windows PC 
 BIOSモード:UEFI
 BitLocker:解除済み
・Ubuntu20.04のインストーラーを書き込むためのUSBメモリ
 Ubuntuは2.7GB程度なので4GBもあれば十分です.
・Ubuntu20.04をインストールするUSBメモリ
 USB3.0 容量64GB以上推奨
 なるべく早いやつが良いです.
 私はAmazonで買えるよくわからんUSBを使いました.
(本当にこんな値段で読み取り350MBも出るのか…?)
IMG_7587.jpg

1. インストーラ用USBメモリの作成

これは通常のUbuntu PCを作る際にも必要となる作業です.

1.1. Ubuntu20.04のインストールイメージを下記サイトよりDL

image.png

1.2. ダウンロードしたISOファイルをUSBメモリに書き込み,USBメモリからUbuntuをインストールできるように準備する

RufusというソフトでISOイメージをUSBメモリに書き込みます
サイトにアクセスし,ダウンロード
image.png

デバイス欄にインストール用のUSBメモリを選択し,
ブートの種類の欄でダウンロードしたイメージファイルを選択します.

image.png

2.USBメモリにUbuntuをインストール

2.1 USBメモリからインストーラーを起動

buntu USBとイメージを書き込んだインストールUSBをPCに差し込み、PCを起動します.
BIOS設定からUSBメモリからブートできるように設定してください.

[言語選択の画面になりますので、日本語を選択してUbuntuをインストールをクリックします.
IMG_7588.jpg

[キーボードレイアウト]の画面になるので、日本語キーボードが選択されていることを確認して、[続ける]をクリックします.
IMG_7589.jpg

接続するネットワークを選択します.
IMG_7590.jpg

アップデートと他のソフトウェアの画面になるので、好みの設定で[続ける]をクリックします.
IMG_7592.jpg

これからの作業を間違えるとWindowsが消えてしまうので、これから細心の注意を払ってください.
インストールの種類はそれ以外を選択して続けるをクリックします.
IMG_7593.jpg

Ubuntu USBに割り当てられている領域を選択します.下の図の私のようにUSBメモリの領域が不明となっている場合は,選択してその下のーボタンをクリックして空き領域にします.
IMG_7594.jpg
空き容量に変更出来たら選択して,+ボタンをクリックします.
IMG_7598.jpg

USBメモリにはUbuntuのブートローダがインストールされるEFIシステムパーティションとUbuntuがインストールされるルートパーティションを作ります.
まずはEFIシステムです.画像のように設定します.
サイズ:200MB
新しいパーティションのタイプ:基本パーティション
新しいパーティションの場所:この領域の始点
利用方法:EFIシステムパーティション
IMG_7599.jpg
次にルートパーティションです.同様にUSBの空き容量を選択して,+ボタンをクリックし下記の通り設定します.
サイズ:そのまま
新しいパーティションのタイプ:基本パーティション
新しいパーティションの場所:この領域の始点
利用方法:ext4 ジャーナリングファイルシステム
マウントポイント:/            ←設定忘れないように!!!
IMG_7600.jpg

Ubuntuを起動するブートローダをインストールするデバイスを選択します.
USBに割り当てられているデバイスを選びます.
USB以外のデバイスを選ぶとWindowsが起動しなくなるから注意です.
選べたらインストールをクリック.
IMG_761.jpg

確認画面が出てくるので間違いないか確認し,続けるをクリック
IMG_7602.jpg

あとはPCの情報や時間の設定を行い,待っていれば完了です!
Screenshot from 2022-12-30 16-17-57.png

3.ROSのセットアップ

他に記事がたくさんあるので,必要なさそうですが一応.

3.1 sources.listを設定

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

3.2 鍵の設定

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

3.3 Ubuntu をアップデート

sudo apt update

3.4 インストール

sudo apt install ros-noetic-desktop-full

3.5 環境設定

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

3.6 rosinstallの準備

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

3.7 rosdepの初期化

sudo rosdep init
rosdep update

3.8 ROSのワークスペースを作成、ビルド

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make

3.9 ワークスペースのオーバーレイ

echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

下記コマンドで
/home//catkin_ws/src:/opt/ros/noetic/share
と表示されればOK

echo $ROS_PACKAGE_PATH

3.10 インストールの確認

roscore

下記のようにエラーが出ず表示できればOK

<username>@ubuntu:~$ roscore
... logging to /home/<username>/.ros/log/3da110c6-4d4c-11eb-b763-f9ecf65ee99d/roslaunch-ubuntu-20827.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

invalid ROS_IP (must be a valid IPv4 or IPv6 address)
invalid ROS_IP (must be a valid IPv4 or IPv6 address)
invalid ROS_IP (must be a valid IPv4 or IPv6 address)
started roslaunch server http://master:33043/
ros_comm version 1.15.9


SUMMARY
========

PARAMETERS
 * /rosdistro: noetic
 * /rosversion: 1.15.9

NODES

auto-starting new master
process[master]: started with pid [20835]
invalid ROS_IP (must be a valid IPv4 or IPv6 address)
invalid ROS_IP (must be a valid IPv4 or IPv6 address)
ROS_MASTER_URI=http://master:11311/

setting /run_id to 3da110c6-4d4c-11eb-b763-f9ecf65ee99d
process[rosout-1]: started with pid [20845]
started core service [/rosout]

参考 ROS公式 Noeticインストール手順

4. 設定と必要なソフトのインストール

4.1 ディレクトリ名の変更

ホームディレクトリのフォルダ名が日本語のままだと使いにくいので英語に戻します.
ターミナルで下記コマンドを実行するとウインドウが開くので、”Don’t ask me this again”にチェックを入れて、
[Update Names]をクリックします.

LANG=C xdg-user-dirs-gtk-update

4.2 VSCodeのインストール

VSCodeのダウンロードページに移動し,debファイルを入手します.
Visual Studio Code
この際,Raspberri Piの場合はARM,またはARM64をダウンロードします.
ノートPCをお使いの場合はDebian,Ubuntuという所でOKです.

image.png

下記コマンドを実行し,ソフトウェアのインストールします.
installコマンド以降はダウンロードしたバージョンによってファイル名が変わるため,ダウンロードしたファイル名に変更してください.

cd Downloads/
sudo apt install ./code_1.67.2-1652812855_arm64.deb

ソフトが起動したら一番左のアイコンのExtensionsを選択し,以下のパックをインストールします.
(インストールが終わったらVSCodeの再起動が必要です)
・Japanese Langage pack
・Visual Studio Code Extension for ROS
・C++ Extension Pack
・Python Extension Pack

image.png
image.png
image.png
image.png

環境のバックアップ

USBLinuxのメリットとして,USBまるごとバックアップを取れることがあげられます.
ROS環境を作った後はUSBメモリのクローンを作っておくと破損や紛失に備えられます.
以下参考にさせていただいた素晴らしいサイトです.

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2