アプリとサービスのすすめ

アプリやIT系のサービスを中心に書いていきます。たまに副業やビジネス関係の情報なども気ままにつづります

ROSのインストールと基礎動作確認まで

ロボットを動かすミドルウェアrosを使うために、rosのinstallと簡単な初期動作の備忘録。
rosのバージョンはNoetic。






ROSのバージョン表
ディストリビューション Ubuntuのバージョン サポート期限
Indigo
14.04
2019年5月
Kinetic
14.04
2021年5月
Melodic
18.04
2023年5月
Noetic
20.04
2025年5月

Windows 11をOSごとubuntu20.04に入れ替えた。
(ubuntu 18.04だとwifiを認識しなかったり、マウスパッドが反応しないとかのエラーが出たので20.04がおすすめ)
(20.04だとcmakeとpython3はすでに入ってる。)


環境
OS Ubuntu : 20.04.3 LTS
CMake :3.16.3
Python :3.8.10
opencv : 4.2.0(rosのinstall時に入る)

目次
1. ROSのインストール
2. ROSのインストール確認
3. Opencvシンボリックリンクの作成
4. ROSパッケージの作成
5. 簡単なROSの基本動作

1. ROSのインストール

# update と再起動
sudo apt-get update
sudo apt-get upgrade
sudo reboot

# 必須パッケージのinstall
sudo apt install curl git wget vim tree
sudo apt install -y python3-pip

****注意 conda(anaconda3)はinstallしたらrosのinstall時にエラーが起きた

# パスの登録
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
# public keyの登録
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

# rosと関連パッケージのinstall
sudo apt update 
sudo apt install ros-noetic-desktop-full
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

# rosdepの初期化(エラーが出たら$ sudo rm /etc/ros/rosdep/sources.list.d/20-default.list)
sudo rosdep init
rosdep update

# ワークスペースの作成と登録
mkdir -p catkin_ws/src && cd catkin_ws
catkin_make # (If It's ok : pwd ==/mnt/c/Users/Downloads/place/catkin_ws)

# "source /opt/ros/noetic/setup.bash" と書き換え
echo "source /mnt/c/Users/Downloads/place/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc


2. ROSのインストール確認

インストールできてるかチェック

# 1つ目
$ echo $ROS_PACKAGE_PATH
>>>>
/mnt/c/Users/Downloads/place/catkin_ws/src:/opt/ros/noetic/share
と表示されればOK
# 2つ目
$ roscore
#色々表示されればOK

Noeticのインストール用script(install.sh)

# !/bin/sh
# resister path to install ros & get public key to download
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
# install ros(melodic)
sudo apt update
sudo apt install ros-melodic-desktop-full
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

# sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
sudo rosdep init
rosdep update

# ROSのワーキングスペースの作成
mkdir -p catkin_ws/src && cd catkin_ws
catkin_make
# register worksopace
echo "source /mnt/c/Users/Downloads/place/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
# To check
echo $ROS_PACKAGE_PATH 


ROSのuninstall(全部削除)

# uninstall ros completely 
$ sudo apt-get purge ros-*
$ sudo apt-get autoremove


3. Opencvシンボリックリンクの作成

opencvのパスが/usr/include/opencv4/opencv2になってるのでシンボリックリンクを作る。

sudo ln -s /usr/include/opencv4/ /usr/include/opencv

4. ROSパッケージの作成

# 基本パッケージの作成(catkin make でbuild)
cd ~/catkin_ws/src
catkin_create_pkg ros_start rospy roscpp std_msgs
>>>>
#### Created file ros_start/package.xml
#### Created file ros_start/CMakeLists.txt
#### Created folder ros_start/include/ros_start
#### Created folder ros_start/src
#### Successfully created files in /mnt/c/Users/Downloads/place/catkin_ws/src/ros_start. Please adjust the values in package.xml.



# catkin make
cd ~/catkin_ws
catkin_make
>>>
####
#### Running command: "make -j8 -l8" in "/mnt/c/Users/Downloads/place/catkin_ws/build"
####

# 作成できてるかcheck
roscd ros_start
#### => ~/catkin_ws/src/ros_start に移動できればOK


5. 簡単なROSの基本動作

2. ROSでHello World



1. ターミナルを2つ開く

2. 一つ目のターミナルで
roscore

3. 2つ目のターミナルでpythonスクリプト実行

# hello.py
import rospy
rospy.init_node('hello') # ノード初期化
rospy.loginfo('Hello World')
rospy.spin()
$ python3 hello.py
>>>
[INFO][WallTime: 1456677777.322475] Hello World

ROSでHello Worldできた。
GUIも使えるし、VPNにもつなぎやすいので、Windowsでwslより、ubuntuでOSを入れ替える方がいい。


参考サイト

『ROS Noetic』のインストール