LoginSignup
0
0

ラズパイマウスの Raspberry Pi 3 B に ROS2 Humble をインストールして、サンプルプログラムでラズパイマウスを操作

Last updated at Posted at 2024-02-23

更新:2024年2月23日
React frontend + Go言語 backend(aws) + ラズパイマウス(edge) でラズパイマウス操作アプリを作っていきたいと思います。前回は、Ubuntu Server 22.04 をインストールしました。今回は、ROS2 Humble をインストールしてみたいと思います。

ROS2 Humble のインストール

次のリンクを参考にしました。
参考: ROS / ROS 2のインストール
10分くらいかかりますが、とても簡単になっていました。素晴らしいです。

curl と git をインストールして、クローンしてスクリプトを実行します。

Raspberry Pi Terminal
$ sudo apt install -y curl git
$ git clone https://github.com/Tiryoh/ros2_setup_scripts_ubuntu.git
$ cd ros2_setup_scripts_ubuntu
$ ./ros2-humble-ros-base-main.sh
...
success installing ROS2 humble
Run 'source /opt/ros/humble/setup.bash'

次のコマンドでインストールした設定が読み込まれます。

Raspberry Pi Terminal
$ source /opt/ros/humble/setup.bash

一度、再起動します。

ラズパイマウスの ROS2 パッケージをインストール

次のコマンドを実行すると、Raspberry Pi Mouseの全てのROS 2パッケージをインストールできます。

Raspberry Pi Terminal
$ sudo apt install ros-humble-raspimouse-slam-navigation

参考:ROS 2パッケージのインストール
参考:Raspberry Pi Mouse ROS 2パッケージHumble版をリリースしました

デバイスドライバをインストール

参考:デバイスドライバのインストール

パルスカウンタの動作を安定させるためI2Cのボーレートを変更します

/boot/firmware/config.txt を編集し、dtparam=i2c_baudrate=62500 を追記します。
Raspberry Pi を再起動します。
次のコマンドを実行し、 62500 と表示されたら設定完了です。

Raspberry Pi Terminal
$ printf "%d\n" 0x$(xxd -ps /sys/class/i2c-adapter/i2c-1/of_node/clock-frequency) 

次のコマンドを実行し、デバイスドライバをインストールします。コマンド実行後にブザーが鳴ればインストール完了です。

Raspberry Pi Terminal
$ git clone https://github.com/rt-net/RaspberryPiMouse.git
$ cd RaspberryPiMouse/utils
$ sudo apt install linux-headers-$(uname -r) build-essential
$ ./build_install.bash

デバイスドライバはOSを起動するたびに次のコマンドでインストールが必要です。

Raspberry Pi Terminal
$ ~/RaspberryPiMouse/utils/build_install.bash

ROSパッケージ情報の読み込み

ROS 2サンプル集(rt-net/raspimouse_ros2_examples) のサンプルを実行する場合は下記コマンドを実行します。

Raspberry Pi Terminal
$ source /opt/ros/humble/setup.bash

ラズパイマウスにros2_ws(ROS 2ワークスペース)のフォルダを作成する方法を説明します。このプロセスは、ROS 2を使用している場合に適用されます。ROS 2は、ロボティクスのためのオープンソースのソフトウェアフレームワークです。以下のステップに従ってください。ワークスペースを作成するには、以下の手順を実行します。
ros2_wsという名前のワークスペース用のディレクトリを作成します。以下のコマンドを使用してこれを行います。

mkdir -p ~/ros2_ws/src

これにより、ros2_wsという名前のディレクトリとその中のsrcディレクトリがホームディレクトリに作成されます。

新しく作成したワークスペースディレクトリに移動します。

cd ~/ros2_ws

ワークスペースを作成した後、colconビルドシステムを使用してビルドを実行できます。ビルドを実行するには、ワークスペースのルートディレクトリ(この場合は~/ros2_ws)で以下のコマンドを実行します。

colcon build

ビルドプロセスが完了したら、新しいシェルセッションでROS 2ワークスペースを使用するために環境をセットアップする必要があります。これを行うには、以下のコマンドを実行します。

source ~/ros2_ws/install/setup.bash

これで、ラズパイマウスでros2_wsワークスペースのフォルダを作成し、使用する準備が整いました。自分のプロジェクトに合わせてパッケージを追加し、開発を始めることができます。

ジョイスティックコントローラで操縦する

Dualshock4 を使ってみます。秋葉原で数百円で買いました。

ラズパイを起動した後、次の2つのコマンドを入力するとラズパイマウスが動きます。

Raspberry Pi Terminal
$ ~/RaspberryPiMouse/utils/build_install.bash
$ ros2 launch raspimouse_ros2_examples teleop_joy.launch.py joydev:="/dev/input/js0" joyconfig:=dualshock4 mouse:=true

mouse.gif

操作方法は下の図で、LBを押しながらLを操作すると前後に動きます。LBを押しながらRを操作すると旋回します。

joy.png

今回は以上です。
次回以降は、コードを読んでいきたいと思います。

参考:ジョイスティックコントローラで操縦する
参考:https://github.com/rt-net/raspimouse_ros2_examples#joystick_control
参考:ROS / ROS 2サンプル集の実行
参考:Qiitaに動画を埋め込む方法。Macデスクトップで動画作成後GIF化するまでの手順詳細

0
0
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
0