diff --git a/docs/img/raspicat/driver/raspi_os_settings3.png b/docs/img/raspicat/driver/raspi_os_settings3.png new file mode 100644 index 0000000..bb41170 Binary files /dev/null and b/docs/img/raspicat/driver/raspi_os_settings3.png differ diff --git a/docs/img/raspicat/driver/windows-vcp-1.png b/docs/img/raspicat/driver/windows-vcp-1.png new file mode 100644 index 0000000..5d16ba3 Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-1.png differ diff --git a/docs/img/raspicat/driver/windows-vcp-2.png b/docs/img/raspicat/driver/windows-vcp-2.png new file mode 100644 index 0000000..1461d3b Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-2.png differ diff --git a/docs/img/raspicat/driver/windows-vcp-3.png b/docs/img/raspicat/driver/windows-vcp-3.png new file mode 100644 index 0000000..1dc5f16 Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-3.png differ diff --git a/docs/img/raspicat/driver/windows-vcp-4.png b/docs/img/raspicat/driver/windows-vcp-4.png new file mode 100644 index 0000000..1c25bc3 Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-4.png differ diff --git a/docs/img/raspicat/driver/windows-vcp-5.jpg b/docs/img/raspicat/driver/windows-vcp-5.jpg new file mode 100644 index 0000000..b1963e4 Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-5.jpg differ diff --git a/docs/img/raspicat/driver/windows-vcp-6.png b/docs/img/raspicat/driver/windows-vcp-6.png new file mode 100644 index 0000000..b731ec2 Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-6.png differ diff --git a/docs/img/raspicat/driver/windows-vcp-7.png b/docs/img/raspicat/driver/windows-vcp-7.png new file mode 100644 index 0000000..8b8d72c Binary files /dev/null and b/docs/img/raspicat/driver/windows-vcp-7.png differ diff --git a/docs/index.md b/docs/index.md index c980571..804d173 100644 --- a/docs/index.md +++ b/docs/index.md @@ -7,9 +7,14 @@ [コーポレートサイトの各製品ページ](https://rt-net.jp/works_category/allproducts/){target=_blank rel=noopener} に公開しているマニュアルや、製品に付属しているマニュアルを参照してください。 -現時点ではRaspberry Pi Mouse、Jetson Nano Mouse、CRANE+ V2のチュートリアルを掲載しています。 +現時点では下記3製品のチュートリアルを掲載しています。 **その他の製品については準備中です**。 +* [CRANE+ V2][CRV2DOC] +* [Raspberry Pi Mouse][RPMSDOC] +* [Jetson Nano Mouse][JNMSDOC] +* [Raspberry Pi Cat][RPCATDOC] + | [CRANE+ V2][CRV2DOC] | [CRANE-X7][CRX7DOC] | [Sciurus17][SC17DOC] | | :---: | :---: | :---: | | [![img][CRV2IMG]][CRV2DOC] | [![img][CRX7IMG]][CRX7DOC] | [![img][SC17IMG]][SC17DOC] | diff --git a/docs/raspicat/driver/install.md b/docs/raspicat/driver/install.md new file mode 100644 index 0000000..c961ae5 --- /dev/null +++ b/docs/raspicat/driver/install.md @@ -0,0 +1,206 @@ +--- +title: デバイスドライバのインストール +robot: Raspberry Pi Cat +--- + +# デバイスドライバのインストール + +このページでは +[Raspberry Pi Catのデバイスドライバ](https://github.com/rt-net/RaspberryPiMouse) +のインストール方法を説明します。 + +Raspberry Pi CatのLEDやモータを駆動するためには、 +デバイスドライバが必要です。 + +!!! info + 出荷時に付属しているRaspberry Pi OSインストール済みのmicroSDカードを利用する場合は、本ページのインストール手順を飛ばしてそのまま[サンプルプログラムの実行](./samples.md)に進むことができます。 + +## 使用機材 {: #requirements} + +* 組み立て済みRaspberry Pi Cat本体 + * [製品マニュアル](https://rt-net.jp/products/raspberry-pi-cat/#downloads)を読んで組み立て済みの状態を前提としています + * OSの再インストールを行う場合はRaspberry PiからmicroSDカードを取り外す必要があります +* USB Type-Bケーブル(Raspberry Pi Catに同梱されています) +* ノートパソコン等のPC + +## OSのインストール {: #os-installation} + +Raspberry Pi Catのデバイスドライバは**Ubuntu**と**Raspberry Pi OS (旧称Raspbian)**に対応しています。 + +後ほどRaspberry Pi Catで**ROSを扱う場合はUbuntu Serverのインストールを推奨します**。 + +=== "Ubuntu Server 18.04" + [Ubuntu 18.04 LTSのリリースページ](http://cdimage.ubuntu.com/ubuntu/releases/18.04/release/)から**Ubuntu 18.04 server**のイメージファイル(`ubuntu-18.04.5-preinstalled-server-arm64+raspi4.img.xz`)をダウンロードします。 + + ダウンロードしたイメージは[rpi-imager](https://www.raspberrypi.com/software/)等でSDカードに書き込みます。 + +=== "Raspberry Pi OS" + Raspberry Pi OSの場合は、サイトからイメージをダウンロードせずに[rpi-imager](https://www.raspberrypi.com/software/)を使用することで、イメージを書き込むことができます。 + +## Raspberry Piへのログイン {: #raspberry-pi-login} + +Raspberry Pi Cat制御基板にはUSBシリアル変換機能が搭載されており、USB Type-BケーブルでPCと接続すると、PCにはVCP(Virtual Com Port)デバイスとして認識されます。 + +必要に応じてPC用のドライバを[FTDI社のサイト](https://ftdichip.com/drivers/vcp-drivers/)より入手し、インストールしてください。 + +Windowsでは[Tera Term](https://ja.osdn.net/projects/ttssh2/)、Linuxでは[screen](https://wiki.archlinux.jp/index.php/GNU_Screen)などのソフトウェアを使うことでRaspberry Pi Cat制御基板経由でRaspberry Piにログインすることができます。 + +=== "Ubuntu" + 1. まず、USB Type-BケーブルをRaspberry Pi Cat制御基板に接続します。まだRaspberry Pi Cat本体の電源は入れません。 + `$ ls /dev/ttyUSB*`と実行し、Raspberry Pi Cat制御基板が認識されていることを確認します。このときのデバイスファイル名を控えておきます。 + 1. screenでデバイスファイルにアクセスします。上記の手順で確認したデバイスファイル名が`/dev/ttyUSB0`だった場合は、`$ screen /dev/ttyUSB0 115200`などのように実行します。 + 1. ここで、Raspberry Pi Cat操作基板にある電源スイッチを操作し、Raspberry Pi Cat本体の電源をオンにします。電源をオンにすると電源LEDが点灯します。 + ![](../../img/raspicat/driver/windows-vcp-5.jpg){: style="width:50%"} + 1. 電源をオンにしてしばらく待つとログイン画面が表示されます。何も表示されない場合はEnterキーを押すと表示されます。 + 1. ユーザ名: `pi` パスワード: `raspberry` でログインします。パスワード入力中は画面に文字が出てきませんのでタイプミスのないように入力します。無事にログインできていると以下のような表示になります。 + ``` + Linux raspberrypi 5.15.32-v8+ #1538 SMP PREEMPT Thu Mar 31 19:40:39 BST 2022 aarch64 + + The programs included with the Debian GNU/Linux system are free software; + + 中略 + + pi@raspberrypi: ~$ + ``` +=== "Windows" + 1. まず、USB Type-BケーブルをRaspberry Pi Cat制御基板に接続します。まだRaspberry Pi Cat本体の電源は入れません。 + Windowsのデバイスマネージャを起動してRaspberry Pi Cat制御基板が認識されていることを確認します。以下のようにUSB Serial Portとして認識されます。このときのCOMポートの番号を控えておきます。今回の例ではCOM3です。 + ![](../../img/raspicat/driver/windows-vcp-1.png) + 1. Tera Termを起動し、デバイスマネージャで確認したCOMポートを指定して接続します。 + ![](../../img/raspicat/driver/windows-vcp-2.png) + 1. 「設定」 - 「シリアルポート」を開きシリアルポートの設定を行います。 + ![](../../img/raspicat/driver/windows-vcp-3.png) + 1. 以下のようにCOMポートを先ほど確認した番号に、ボーレートを115200に設定します。 + ![](../../img/raspicat/driver/windows-vcp-4.png) + 1. ここで、Raspberry Pi Cat操作基板にある電源スイッチを操作し、Raspberry Pi Cat本体の電源をオンにします。電源をオンにすると電源LEDが点灯します。 + ![](../../img/raspicat/driver/windows-vcp-5.jpg){: style="width:50%"} + 1. 電源をオンにしてしばらく待つと以下のようにログイン画面が表示されます。何も表示されない場合はEnterキーを押すと表示されます。 + ![](../../img/raspicat/driver/windows-vcp-6.png) + 1. ユーザ名: `pi` パスワード: `raspberry` でログインします。パスワード入力中は画面に文字が出てきませんのでタイプミスのないように入力します。無事にログインできていると以下のような表示になります。 + ![](../../img/raspicat/driver/windows-vcp-7.png) + +## ネットワークへの接続 {: #network-setup} + +Wi-Fiへの接続方法を説明します。 + + +=== "Ubuntu Server" + + [https://ubuntu.com/server/docs/network-configuration](https://ubuntu.com/server/docs/network-configuration) + に詳細な説明が書かれています。 + IPアドレスの固定については[Ubuntu ServerでWi-Fiに接続し、IPアドレスを固定する](#wifi-static-ip)を参照してください。 + + 1. `$ sudo vim /etc/netplan/99_config.yaml`で設定ファイルを新規作成し、下記のように記述します。 + この例では、SSID:`raspimouse` パスワード:`rt-net`のネットワークに接続する場合について紹介します。 + ```yaml + network: + ethernets: + eth0: + dhcp4: true + optional: true + wifis: + wlan0: + access-points: + raspimouse: #ここにSSIDを書く + password: rt-net #ここにパスワードを書く + dhcp4: true + version: 2 + ``` + 1. `$ sudo netplan apply`を実行します + 1. `$ ip addr`を実行し、Wi-Fiに接続してIPアドレスを取得できているか確認します + +=== "Raspberry Pi OS" + 1. raspi-configで設定します + ```sh + $ WIFI_SSID="" # ここでSSIDを設定 + $ WIFI_PASS="" # ここでパスワードを設定 + $ sudo raspi-config nonint do_wifi_ssid_passphrase $WIFI_SSID $WIFI_PASS && echo "Wi-FI ON" + ``` + `Wi-Fi ON`とメッセージが返ってきたらWi-Fiへの接続設定完了です + 1. `$ ip addr`を実行し、Wi-Fiに接続してIPアドレスを取得できているか確認します + +## ソースファイルのダウンロードとインストール {: #driver-installation} + +Raspberry Pi Catのデバイスドライバのソースファイルは +[GitHub](https://github.com/rt-net/RaspberryPiMouse) +に公開されています。 + +=== "Ubuntu Server" + 1. パルスカウンタの動作を安定させるためI2Cのボーレートを変更します + 1. `/boot/firmware/config.txt`を編集し、`dtparam=i2c_baudrate=62500`を追記します + 1. Raspberry Pi を再起動します + 1. `$ printf "%d\n" 0x$(xxd -ps /sys/class/i2c-adapter/i2c-1/of_node/clock-frequency)`を実行し、`62500`と表示されたら設定完了です。 + 1. 次のコマンドを実行し、デバイスドライバをインストールします + ```sh + $ git clone https://github.com/rt-net/RaspberryPiMouse.git $HOME/RaspberryPiMouse + $ cd $HOME/RaspberryPiMouse/utils + $ sudo apt install linux-headers-$(uname -r) build-essential + $ ./build_install.bash + ``` + 1. コマンド実行後にブザーが鳴ればインストール完了です + +=== "Raspberry Pi OS" + 1. パルスカウンタの動作を安定させるためI2Cのボーレートを変更します + 1. `/boot/config.txt`を編集し、`dtparam=i2c_baudrate=62500`を追記します + 1. Raspberry Pi を再起動します + 1. `$ printf "%d\n" 0x$(xxd -ps /sys/class/i2c-adapter/i2c-1/of_node/clock-frequency)`を実行し、`62500`と表示されたら設定完了です。 + 1. 次のコマンドを実行し、raspi-configからSSH, SPI, I2C, Serial Portの機能を有効化します + ```sh + $ sudo raspi-config nonint do_ssh 0 + $ sudo raspi-config nonint do_spi 0 + $ sudo raspi-config nonint do_i2c 0 + $ sudo raspi-config nonint do_serial 0 + ``` + 1. 次のコマンドを実行し、デバイスドライバをインストールします + ```sh + $ git clone https://github.com/rt-net/RaspberryPiMouse.git + $ cd RaspberryPiMouse/utils + $ sudo apt install raspberrypi-kernel-headers build-essential + $ ./build_install.bash + ``` + 1. コマンド実行後にブザーが鳴ればインストール完了です。 + +## デバイスドライバの自動インストール +デバイスドライバは起動たびにインストールする必要があります。 + +そのため、[rt-net/raspicat_setup_scripts](https://github.com/rt-net/raspicat_setup_scripts)を使用して、起動たびにデバイスドライバをインストールするためのサービスを登録します。 + +```sh +$ git clone https://github.com/rt-net/raspicat_setup_scripts.git $HOME/raspicat_setup_scripts +$ cd $HOME/raspicat_setup_scripts +$ make install +``` + +## その他 {: #misc} + +### Ubuntu ServerでWi-Fiに接続し、IPアドレスを固定する {: #wifi-static-ip} + +[https://ubuntu.com/server/docs/network-configuration](https://ubuntu.com/server/docs/network-configuration) +に詳細な説明が書かれています。 + +!!! info + IPアドレスを固定するとネットワークに影響が出る場合があります。会社等で利用する場合はネットワーク管理者にお問い合わせください。 + + +1. `$ sudo vim /etc/netplan/99_config.yaml`で設定ファイルを新規作成し、下記のように`dhcp4: false`としてIPアドレスを記述します。 +この例では、IPアドレスを`192.168.11.89`に固定します。__この設定値は環境によって変わりますのでご注意ください__。 +```txt +network: + ethernets: + eth0: + dhcp4: true + optional: true + wifis: + wlan0: + access-points: + ここにSSIDを書く: + password: ここにパスワードを書く + dhcp4: false + addresses: [192.168.11.89/24] + gateway4: 192.168.11.1 + nameservers: + addresses: [8.8.8.8, 192.168.11.1] + version: 2 +``` +2. `$ sudo netplan apply`を実行します +3. `$ ip addr`でWi-Fiに接続できているか確認します diff --git a/docs/raspicat/driver/samples.md b/docs/raspicat/driver/samples.md new file mode 100644 index 0000000..c74c5dd --- /dev/null +++ b/docs/raspicat/driver/samples.md @@ -0,0 +1,193 @@ +--- +title: デバイスドライバのサンプルを動かす +robot: Raspberry Pi Cat +--- + +# サンプルプログラムの実行 + +デバイスドライバをインストールしたら、 +サンプルプログラムを実行しましょう。 + +このサンプルプログラムは[Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0)でオープンソースソフトウェアとして公開しています。 +[https://github.com/rt-net/RaspberryPiMouse/tree/master/SampleProgram](https://github.com/rt-net/RaspberryPiMouse/tree/master/SampleProgram){target=_blank rel=noopener} + + +## 使用機材 {: #requirements} + +* セットアップ済みRaspberry Pi Cat本体 + * [製品マニュアル](https://rt-net.jp/products/raspberry-pi-cat/#downloads)を読んで組み立て済みの状態を前提としています + * Raspberry PiにOS(**Ubuntu Server 18.04**)がインストール済みであること + * Raspberry Pi OSでのROSの動作は確認していません。 + * **デバイスドライバ**がインストール済みであること + * [デバイスドライバのインストール手順](../driver/install.md)を参照してください +* USB Type-Bケーブル(Raspberry Pi Catに同梱されています) +* ノートパソコン等のPC + +## 事前準備 {: #preparation} + +[デバイスドライバのインストール](./install.md)の[Raspberry Piへのログイン](./install.md#raspberry-pi-login)に沿ってRaspberry Piへログインします。 + +サンプルプログラムのディレクトリに移動します。 + +```sh +$ cd ~/RaspberryPiMouse/SampleProgram +``` + +ディレクトリにあるプログラムを実行すると、LEDやブザーを動かせます。 + +## LED {: #step1} + +LED0〜LED3が点滅します。 + +=== "Shell Script" + ```sh + $ bash step1.sh + ``` + +=== "C" + ```sh + $ gcc step1.c -o step1 + $ ./step1 + ``` + +=== "Python" + ```sh + $ python3 step1.py + ``` + +## ブザー {: #step2} + +キーボード入力でブザーを鳴らします。 入力キーと音階のペアは[SCALE](https://github.com/rt-net/RaspberryPiMouse/blob/master/SampleProgram/SCALE)を参照してください。 + +++0++を入力するとブザーが止まります。 ++c++を入力するとプログラムが終了します。(Shell Scriptでは++ctrl+c++で終了します。) + +=== "Shell Script" + ```sh + $ bash step2.sh + ``` + +=== "C" + ```sh + $ gcc step2.c -o step2 + $ ./step2 + ``` + +=== "Python" + ```sh + $ python3 step2.py + ``` + +## スイッチ {: #step3} + +スイッチを押してLEDを点消灯します。 組み合わせは次のとおりです。 + +* SW0 : LED3 +* SW1 : LED1 & LED2 +* SW2 : LED0 + +=== "Shell Script" + ```sh + $ bash step3.sh + ``` + +=== "C" + ```sh + $ gcc step3.c -o step3 + $ ./step3 + ``` + +=== "Python" + ```sh + $ python3 step3.py + ``` + +## モータ {: #step4} + +モータを回して右旋回、左旋回します。 + +=== "Shell Script" + ```sh + $ bash step4.sh + ``` + +=== "C" + ```sh + $ gcc step4.c -o step4 + $ ./step4 + ``` + +=== "Python" + ```sh + $ python3 step4.py + ``` + +## 超音波センサ {: #step5} + +超音波センサの値を読み込みます。 + +=== "Shell Script" + ```sh + $ bash step5.sh + ``` + +=== "C" + ```sh + $ gcc step5.c -o step5 + $ ./step5 + ``` + +=== "Python" + ```sh + $ python3 step5.py + ``` + +## パルスカウンタ {: #step6} + +モータを回して、パルスカウンタの値を読み込みます。 + +=== "Shell Script" + ```sh + $ bash step6.sh + ``` + + 次のようにstep6.shを編集することで、符号付きのカウント値を読み取ることができます。 + + ```sh + # step6.sh + MOTOR_R=/dev/rtmotor_raw_r0 + MOTOR_L=/dev/rtmotor_raw_l0 + COUNTER_R=/dev/rtcounter_r1 # r0からr1に書き換え + COUNTER_L=/dev/rtcounter_l1 # l0からl1に書き換え + ``` + +=== "C" + ```sh + $ gcc step6.c -o step6 + $ ./step6 + ``` + + 次のようにstep6.cを編集することで、符号付きのカウント値を読み取ることができます。 + C言語の場合は、書き換えたあとに`gcc`コマンドでコンパイルを行う必要があります。 + + ```sh + // step6.c + #define FILE_MOTOR_L "/dev/rtmotor_raw_l0" + #define FILE_MOTOR_R "/dev/rtmotor_raw_r0" + #define FILE_COUNT_L "/dev/rtcounter_l1" # r0からr1に書き換え + #define FILE_COUNT_R "/dev/rtcounter_r1" # l0からl1に書き換え + ``` + +=== "Python" + ```sh + $ python3 step6.py + ``` + + 次のようにstep6.pyを編集することで、符号付きのカウント値を読み取ることができます。 + + ```sh + # step6.py + filename_motor_r = "/dev/rtmotor_raw_r0" + filename_motor_l = "/dev/rtmotor_raw_l0" + filename_count_r = "/dev/rtcounter_r1" # r0からr1に書き換え + filename_count_l = "/dev/rtcounter_l1" # l0からl1に書き換え + ``` \ No newline at end of file diff --git a/docs/raspicat/others.md b/docs/raspicat/others.md new file mode 100644 index 0000000..1672999 --- /dev/null +++ b/docs/raspicat/others.md @@ -0,0 +1,46 @@ +--- +title: 関連リンク集 (Raspberry Pi Cat) +robot: Raspberry Pi Cat +--- + +# 関連リンク集 + +## ハードウェア + +- :octicons-mark-github-16: +ハードウェア資料集 +[rt-net/RaspberryPiCat_Hardware](https://github.com/rt-net/RaspberryPiCat_Hardware) + +![](https://rt-net.github.io/images/raspberry-pi-cat/raspicat_step_cad.png) + +## ソフトウェア + +### デバイスドライバ + +- :octicons-mark-github-16: +デバイスドライバ(Raspberry Pi Mouse共通) +[rt-net/RaspberryPiMouse](https://github.com/rt-net/RaspberryPiMouse) + +### ROS + +- :octicons-mark-github-16: +Raspberry Pi Cat制御用ROSパッケージ +[rt-net/raspicat_ros](https://github.com/rt-net/raspicat_ros) + +- :octicons-mark-github-16: +書籍「Raspberry Piで学ぶ ROSロボット入門」をベースにした +Raspberry Pi Cat用のROSパッケージ +[rt-net/raspicat_basic](https://github.com/rt-net/raspicat_basic) + +- :octicons-mark-github-16: +SLAM/Navigationサンプル集 +[rt-net/raspicat_slam_navigation](https://github.com/rt-net/raspicat_slam_navigation) + +- :octicons-mark-github-16: +Gazeboシミュレーションパッケージ +[rt-net/raspicat_sim](https://github.com/rt-net/raspicat_sim) + +- :octicons-mark-github-16: +URDFパッケージ +[rt-net/raspicat_description](https://github.com/rt-net/raspicat_description) + diff --git a/docs/raspicat/products.md b/docs/raspicat/products.md index 8c45f35..c908359 100644 --- a/docs/raspicat/products.md +++ b/docs/raspicat/products.md @@ -9,11 +9,6 @@ Raspberry Pi Cat(ラズベリーパイキャット)は 屋外でも動かせる中型2輪ロボットです。 [Raspberry Pi Mouse](../raspimouse/products.md)をスケールアップしたROS対応の移動プラットフォームロボットです。 -!!! info - 本製品のソフトウェアチュートリアルは準備中です。更新時はTwitterにてお知らせします。 - Follow @rt_corp - - ![Raspberry Pi Cat](https://rt-net.github.io/images/raspberry-pi-cat/raspberry-pi-cat.png) ## 紹介動画 @@ -31,4 +26,6 @@ Raspberry Pi Cat(ラズベリーパイキャット)は 製品はこちらから購入できます。 -一部パーツ終売のため、本製品は生産終了しました。後継機を発売予定です。 \ No newline at end of file + +!!! info + 一部パーツ終売のため、本製品は生産終了しました。後継機を発売予定です。 \ No newline at end of file diff --git a/docs/raspicat/ros/install.md b/docs/raspicat/ros/install.md new file mode 100644 index 0000000..dcd05ca --- /dev/null +++ b/docs/raspicat/ros/install.md @@ -0,0 +1,105 @@ +--- +title: ROSのインストール +robot: Raspberry Pi Cat +--- + +# ROSのインストール + +このページでは、以下の2つのデバイスへのROSのインストール方法を説明します。 + +* Ubuntuインストール済みのノートパソコン等のPC +* Ubuntuインストール済みのRaspberry Pi + +なお、ROSをすでにインストール済みの場合はこのページの手順は不要です。 + +## 使用機材 {: #requirements} + +* セットアップ済みRaspberry Pi Cat本体 + * [製品マニュアル](https://rt-net.jp/products/raspberry-pi-cat/#downloads)を読んで組み立て済みの状態を前提としています + * Raspberry PiにOS(**Ubuntu Server 18.04**)がインストール済みであること + * Raspberry Pi OSでのROSの動作は確認していません。 + * **デバイスドライバ**がインストール済みであること + * [デバイスドライバのインストール手順](../driver/install.md)を参照してください +* USB Type-Bケーブル(Raspberry Pi Catに同梱されています) +* ノートパソコン等のPC + * OS(**Ubuntu Desktop 18.04**)がインストール済みであること + +## 事前準備 {: #preparation} + +[デバイスドライバのインストール](../driver/install.md)の[Raspberry Piへのログイン](../driver/install.md#raspberry-pi-login)に沿ってRaspberry Piへログインします。 + +## ROSのインストール(公式のドキュメントに沿って進める場合) {: #official-document} + + +[https://wiki.ros.org/melodic/Installation/Ubuntu](https://wiki.ros.org/melodic/Installation/Ubuntu){target=_blank rel=noopener} +を参考に、**ROS Melodic**をインストールします。 + +GUIを使用する場合は**Desktop-Full**を、 使用しない場合は**ROS-Base**パッケージをインストールします。 + +## ROSのインストール(インストールスクリプトを使う場合) {: #install-script} + +### ノートパソコン等のPC + +非公式のインストールスクリプトを使うことで簡単にROSをインストールできます。 + +このROSインストールスクリプトは`curl`を使用します。以下のコマンドでインストールします。 + +```sh +$ sudo apt install -y curl +``` + +以下のコマンドでROSインストールスクリプトを実行します。 +環境にもよりますが完了までは10分以上かかる場合があります。 + +```sh +$ bash -c "$(curl -SsfL u.ty0.jp/ros-melodic-desktop)" +``` + +スクリプトが問題なく実行できれば以下のメッセージが表示されます。 + +```txt +Success installing ROS melodic +Run 'source ~/.bashrc' + +If any error occurs, please refer to the following URL. +https://github.com/Tiryoh/ros_setup_scripts_ubuntu/ +``` + +以下のコマンドでインストールした設定を読み込みます。 + +```sh +$ source ~/.bashrc +``` + +### Raspberry Pi + +非公式のインストールスクリプトを使うことで簡単にROSをインストールできます。 + +このROSインストールスクリプトは`curl`を使用します。以下のコマンドでインストールします。 + +```sh +$ sudo apt install -y curl +``` + +以下のコマンドでROSインストールスクリプトを実行します。 +環境にもよりますが完了までは10分以上かかる場合があります。 + +```sh +$ bash -c "$(curl -SsfL u.ty0.jp/ros-melodic-ros-base)" +``` + +スクリプトが問題なく実行できれば以下のメッセージが表示されます。 + +```txt +Success installing ROS melodic +Run 'source ~/.bashrc' + +If any error occurs, please refer to the following URL. +https://github.com/Tiryoh/ros_setup_scripts_ubuntu/ +``` + +以下のコマンドでインストールした設定を読み込みます。 + +```sh +$ source ~/.bashrc +``` diff --git a/docs/raspicat/ros/package-install.md b/docs/raspicat/ros/package-install.md new file mode 100644 index 0000000..b239efc --- /dev/null +++ b/docs/raspicat/ros/package-install.md @@ -0,0 +1,61 @@ +--- +title: ROSパッケージのインストール +robot: Raspberry Pi Cat +--- + +# ROSパッケージのインストール + +このページでは、Raspberry Pi/Ubuntu PCへのROSパッケージのインストール方法を説明します。 + +## 使用機材 {: #requirements} + +* セットアップ済みRaspberry Pi Cat本体 + * [製品マニュアル](https://rt-net.jp/products/raspberry-pi-cat/#downloads)を読んで組み立て済みの状態を前提としています + * Raspberry PiにOS(**Ubuntu Server 18.04**)がインストール済みであること + * Raspberry Pi OSでのROSの動作は確認していません。 + * **デバイスドライバ**がインストール済みであること + * [デバイスドライバのインストール手順](../driver/install.md)を参照してください + * ROSがインストール済みであること + * [ROSのインストール手順](./install.md)を参照してください +* USB Type-Bケーブル(Raspberry Pi Catに同梱されています) +* ノートパソコン等のPC + * OS(**Ubuntu Desktop 18.04**)がインストール済みであること + +## 事前準備 {: #preparation} + +[デバイスドライバのインストール](../driver/install.md)の[Raspberry Piへのログイン](../driver/install.md#raspberry-pi-login)に沿ってRaspberry Piへログインします。 + +## ROSパッケージのインストール {: #install-ros-packages} + +制御用のパッケージである +[rt-net/raspimouse](https://github.com/rt-net/raspimouse){target=_blank rel=noopener}、[rt-net/raspicat_ros](https://github.com/rt-net/raspicat_ros){target=_blank rel=noopener} +SLAM/ナビゲーション用のパッケージである +[rt-net/raspicat_slam_navigation](https://github.com/rt-net/raspicat_slam_navigation){target=_blank rel=noopener} +RaspberryPiCat用のURDF記述マクロを含んだパッケージである +[rt-net/raspicat_description](https://github.com/rt-net/raspicat_description){target=_blank rel=noopener} +をダウンロードしてインストールします。 + +!!! Tip + **Raspberry Pi**と**PC**の両方にダウンロードおよびインストールを行います。 + +```sh +# Create workspace +$ source /opt/ros/melodic/setup.bash +$ mkdir -p ~/catkin_ws/src +$ cd ~/catkin_ws/src + +# Clone ROS packages +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspimouse.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspimouse_description.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspicat_ros.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspicat_slam_navigation.git +$ git clone https://github.com/rt-net/raspicat_description.git + +# Install dependencies +$ rosdep update +$ rosdep install -r -y -i --from-paths raspicat* raspimouse* + +# make & install +$ cd ~/catkin_ws && catkin_make +$ source ~/catkin_ws/devel/setup.bash +``` diff --git a/docs/raspicat/ros/samples.md b/docs/raspicat/ros/samples.md new file mode 100644 index 0000000..d486121 --- /dev/null +++ b/docs/raspicat/ros/samples.md @@ -0,0 +1,229 @@ +--- +title: ROSの実行 +robot: Raspberry Pi Cat +--- + +# ROSを使用してRaspberry Pi Catの制御 + +このページでは +実機を使用した、SLAMからナビゲーションまでの実行方法を説明します。 +## 使用機材 {: #requirements} + +* セットアップ済みRaspberry Pi Cat本体 + * [製品マニュアル](https://rt-net.jp/products/raspberry-pi-cat/#downloads)を読んで組み立て済みの状態を前提としています + * Raspberry PiにOS(**Ubuntu Server 18.04**)がインストール済みであること + * Raspberry Pi OSでのROSの動作は確認していません。 + * **デバイスドライバ**がインストール済みであること + * [デバイスドライバのインストール手順](../driver/install.md)を参照してください + * ROSがインストール済みであること + * [ROSのインストール手順](./install.md)を参照してください + * ROSパッケージがインストール済みであること + * [ROSパッケージのインストール手順](./package-install.md)を参照してください +* USB Type-Bケーブル(Raspberry Pi Catに同梱されています) +* ノートパソコン等のPC + * OS(**Ubuntu Desktop 18.04**)がインストール済みであること + +## 事前準備 {: #preparation} + +### ROSパッケージの読み込み {: #preparation-source-workspace} + +サンプルを実行する場合は下記コマンドを実行し、 +ROSとパッケージを読み込んでください。 + +```sh +$ source /opt/ros/melodic/setup.bash +$ source ~/catkin_ws/devel/setup.bash +``` + +### Raspberry PiとPC間のROSネットワークを接続する {: #preparation-ros-master-uri} + +環境変数`ROS_IP`、`ROS_MASTER_URI`を設定することで、 +PCからネットワークを介してRaspberry Pi側のトピックやサービスにアクセスできます。 + +Raspberry PiのIPアドレスが`192.168.11.89`、 +PCのIPアドレスが`192.168.11.100`のとき、 +下記コマンドで環境変数を設定します。__この設定値は環境によって変わりますのでご注意ください__。 + +```sh +# Raspberry Pi側 +$ export ROS_IP=192.168.11.89 +$ export ROS_MASTER_URI=http://192.168.11.89:11311/ + +# PC側 +# ROS_MASTER_URIにはRaspberry PiのIPアドレスを入力する +$ export ROS_IP=192.168.11.100 +$ export ROS_MASTER_URI=http://192.168.11.89:11311/ +``` + +ネットワーク接続を切る場合は、 +`ROS_MASTER_URI`をデフォルトの`http://localhost:11311/`に戻します。 + +!!! Warning + PCから操縦する場合はネットワークと環境変数を設定してください。 + +## キーボードで操縦する {: #teleop-keyboard} + +操作方法はターミナルに出力されます。 +#### Raspberry Pi {: #teleop-keyboard-pi} +```sh +# センサやモータ用のノードの立ち上げ +$ roslaunch raspicat_bringup raspicat_bringup.launch +``` + +#### PC {: #teleop-keyboard-pc} +```sh +# キーボード用のノードの立ち上げ +$ roslaunch raspicat_bringup teleop.launch joy:=false +``` + +## ジョイスティックコントローラで操縦する {: #teleop-joy} + +操作方法は[こちら](https://github.com/rt-net/raspicat_ros/blob/main/raspicat_gamepad_controller/README.ja.md)のパッケージを参照してください。 + +=== "ジョイスティックコントローラをPCに接続した場合" + #### Raspberry Pi + ```sh + # センサやモータ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch + ``` + #### PC + ```sh + # ジョイスティックコントローラ用のノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=true + ``` +=== "ジョイスティックコントローラをRaspberry Pi 4に接続した場合" + #### Raspberry Pi + ```sh + # センサやモータ用およびジョイスティックコントローラ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch joy:=true + ``` + +## LiDARでSLAM {: #lidar-slam} + +ジョイスティックコントローラおよびキーボードにてRaspberry Pi Catを操作出来る状態でSLAMを実行します。 +ここでは、**PC**上にて**SLAM**を実行する方法を紹介します。 +[raspicat_slam](https://github.com/rt-net/raspicat_slam_navigation/tree/main/raspicat_slam) +パッケージで実行が可能なSLAMは、[gmapping](http://wiki.ros.org/gmapping)、[cartographer](http://wiki.ros.org/cartographer)、[slam_toolbox](http://wiki.ros.org/slam_toolbox)の3種類です。 +**rosbag**を使用する場合はオフラインでSLAMを行うことができます。 + +!!! Warning + **Raspberry Pi**と**PC**間で通信を行い、**PC**上で**SLAM**を実行する場合は、時刻の同期が必要です。 + これは、**tf**関連のエラーを防ぐためです。 + +### gmapping {: #lidar-slam-gmapping} + +=== "Online SLAM" + #### Raspberry Pi + ```sh + # センサやモータ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch + ``` + #### PC + ```sh + # gmappingの実行 + $ roslaunch raspicat_slam raspicat_gmapping.launch joy:=true + + # 地図の保存 + $ roslaunch raspicat_slam map_save.launch map_file:=map-path + ``` + +=== "Offline SLAM" + #### PC + ```sh + # rosbag playおよびgmappingの実行 + $ roslaunch raspicat_slam raspicat_gmapping.launch rosbag:=true rosbag_rate:=1 rosbag_topics:="/odom /scan /tf /tf_static" rosbag_filename:=rosbag-path + + # 地図の保存 + $ roslaunch raspicat_slam map_save.launch map_file:=map-path + ``` + +### cartographer {: #lidar-slam-cartographer} +=== "Online SLAM" + #### Raspberry Pi + ```sh + # センサやモータ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch + ``` + #### PC + ```sh + # cartographerの実行 + $ roslaunch raspicat_slam raspicat_cartographer.launch joy:=true + + # 地図の保存 + $ roslaunch raspicat_slam map_save.launch map_file:=map-path + ``` + +=== "Offline SLAM" + #### PC + ```sh + # rosbag playおよびcartographerの実行 + $ roslaunch raspicat_slam raspicat_cartographer.launch rosbag:=true rosbag_rate:=1 rosbag_topics:="/odom /scan /tf /tf_static" rosbag_filename:=rosbag-path + + # 地図の保存 + $ roslaunch raspicat_slam map_save.launch map_file:=map-path + ``` + +### slam_toolbox {: #lidar-slam-toolbox} +=== "Online SLAM" + #### Raspberry Pi + ```sh + # センサやモータ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch + ``` + #### PC + ```sh + # slam_toolboxの実行 + $ roslaunch raspicat_slam raspicat_slam_toolbox.launch joy:=true + + # 地図の保存 + $ roslaunch raspicat_slam map_save.launch map_file:=map-path + ``` + +=== "Offline SLAM" + #### PC + ```sh + # rosbag playおよびslam_toolboxの実行 + $ roslaunch raspicat_slam raspicat_slam_toolbox.launch rosbag:=true rosbag_rate:=1 rosbag_topics:="/odom /scan /tf /tf_static" rosbag_filename:=rosbag-path + + # 地図の保存 + $ roslaunch raspicat_slam map_save.launch map_file:=map-path + ``` + +## LiDARでナビゲーション {: #lidar-navigation} + +SLAMによって作成した地図を使用し、Navigationを行います。 +[raspicat_navigation](https://github.com/rt-net/raspicat_slam_navigation/tree/main/raspicat_navigation) +パッケージで実行が可能なNavigationは、[move_base](http://wiki.ros.org/move_base)、[neonavigation](https://github.com/at-wat/neonavigation)の2種類です。 + +!!! Warning + **Raspberry Pi**と**PC**間で通信を行い、**PC**上で**Navigation**を実行する場合は、時刻の同期が必要です。 + これは、**tf**関連のエラーを防ぐためです。 + +=== "move_base" + #### Raspberry Pi + ```sh + $ roscore + + # センサやモータ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch lidar_ether:=false lidar_usb:=true joy:=false + ``` + #### PC + ```sh + + # move_baseの実行 + $ roslaunch raspicat_navigation raspicat_navigation.launch navigation:="move_base" mcl_map_file:=map-path navigation_map_file:=map-path + ``` + +=== "neonavigation" + #### Raspberry Pi + ```sh + $ roscore + + # センサやモータ用のノードの立ち上げ + $ roslaunch raspicat_bringup raspicat_bringup.launch lidar_ether:=false lidar_usb:=true joy:=false + ``` + #### PC + ```sh + # neonavigationの実行 + $ roslaunch raspicat_navigation raspicat_navigation.launch navigation:="neonav" mcl_map_file:=map-path navigation_map_file:=map-path + ``` diff --git a/docs/raspicat/simulator/install.md b/docs/raspicat/simulator/install.md new file mode 100644 index 0000000..389bf76 --- /dev/null +++ b/docs/raspicat/simulator/install.md @@ -0,0 +1,70 @@ +--- +title: シミュレータのインストール +robot: Raspberry Pi Cat +--- + +# シミュレータのインストール + + +このページでは、 +[raspicat_sim](https://github.com/rt-net/raspicat_sim){target=_blank rel=noopener} +パッケージを用いたシミュレーションのセットアップ方法と実行方法について説明します。 + + +## 使用機材 {: #requirements} + +* ノートパソコン等のPC + * OS(**Ubuntu Desktop 18.04**)およびROSがインストール済みであることを前提としています + * インストール方法については[ROSのインストール](../ros/install.md)を参照してください。 + +## パッケージのダウンロードとインストール {: #install} + +制御用のパッケージである +[rt-net/raspimouse](https://github.com/rt-net/raspimouse){target=_blank rel=noopener}、[rt-net/raspicat_ros](https://github.com/rt-net/raspicat_ros){target=_blank rel=noopener} +SLAM/ナビゲーション用のパッケージである +[rt-net/raspicat_slam_navigation](https://github.com/rt-net/raspicat_slam_navigation){target=_blank rel=noopener} +シミュレータ用のパッケージである +[rt-net/raspicat_sim](https://github.com/rt-net/raspicat_sim.git){target=_blank rel=noopener} +RaspberryPiCat用のURDF記述マクロを含んだパッケージである +[rt-net/raspicat_description](https://github.com/rt-net/raspicat_description){target=_blank rel=noopener} +をダウンロードしてインストールします。 + +```sh +# Create workspace +$ source /opt/ros/melodic/setup.bash +$ mkdir -p ~/catkin_ws/src +$ cd ~/catkin_ws/src + +# Clone ROS packages +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspimouse.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspimouse_description.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspicat_ros.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspicat_slam_navigation.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspicat_sim.git +$ git clone -b $ROS_DISTRO-devel https://github.com/rt-net/raspicat_description.git + +# Install dependencies +$ rosdep update +$ rosdep install -r -y -i --from-paths raspicat* raspimouse* + +# make & install +$ cd ~/catkin_ws && catkin_make +$ source ~/catkin_ws/devel/setup.bash + +# Gazeboで使用するハードウェアモデルデータをダウンロード +$ rosrun raspicat_gazebo download_gazebo_models.sh +``` + +## 動作確認(キーボードで操縦) {: #teleop} + +!!! Tip + 初回起動時において、Gazeboはモデルをインターネットからダウンロードします。 + そのため、シミュレータ環境の立ち上げに時間がかかる場合があります。 + +```sh +# シミュレータの起動 +$ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch + +# キーボード操縦用ノードの立ち上げ(別のターミナルでコマンドを実行) +$ roslaunch raspicat_bringup teleop.launch joy:=false +``` diff --git a/docs/raspicat/simulator/samples.md b/docs/raspicat/simulator/samples.md new file mode 100644 index 0000000..18f75a0 --- /dev/null +++ b/docs/raspicat/simulator/samples.md @@ -0,0 +1,193 @@ +--- +title: シミュレータでサンプルを動かす +robot: Raspberry Pi Cat +--- + +# シミュレータでサンプルを動かす + +このページでは、 +[raspicat_sim](https://github.com/rt-net/raspicat_sim){target=_blank rel=noopener} +パッケージと +[raspicat_slam_navigation](https://github.com/rt-net/raspicat_slam_navigation){target=_blank rel=noopener} +パッケージを使ってシミュレータ上でSLAM/Navigationを実施する方法について説明します。 + +## 使用機材 {: #requirements} + +* ノートパソコン等のPC + * OS(**Ubuntu Desktop 18.04**)、ROS、シミュレータがインストール済みであることを前提としています + * インストール方法については[ROSのインストール](../ros/install.md)と[シミュレータのインストール](./install.md)を参照してください。 + +## シミュレータ環境を立ち上げる {: #launch} + +!!! Tip + 初回起動時において、Gazeboはモデルをインターネットからダウンロードします。 + そのため、シミュレータ環境の立ち上げに時間がかかる場合があります。 + +#### Gazeboのみ立ち上げ +```sh +#シミュレータの起動 +$ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false +``` +#### GazeboとRVizの立ち上げ +```sh +#シミュレータおよびRVizの起動 +$ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch +``` + +## 操縦する {: #teleop} + +![raspicat_sim](https://rt-net.github.io/images/raspberry-pi-cat/raspicat_gazebo_with_iscas_museum.gif) + +### キーボードで操縦する {: #teleop-keyboard} + +```sh +# シミュレータの起動 +$ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch + +# キーボード操縦用ノードの立ち上げ(別のターミナルでコマンドを実行) +$ roslaunch raspicat_bringup teleop.launch joy:=false +``` + +### ジョイスティックコントローラで操縦する {: #teleop-joy} + +```sh +# シミュレータの起動 +$ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch + +# ジョイスティックコントローラ操縦用ノードの立ち上げ(別のターミナルでコマンドを実行) +$ roslaunch raspicat_bringup teleop.launch joy:=true +``` + +## シミュレータ環境でSLAM {: #slam} + +#### キーボードで操縦 {: #slam-teleop-keyboard} + +=== "gmapping" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # gmappingの実行 + $ roslaunch raspicat_slam raspicat_gmapping.launch + + # キーボード操縦用ノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=false + + # 地図の保存(map_fileのパスは任意のディレクトリへのパスを指定できます) + $ roslaunch raspicat_slam map_save.launch map_file:=$(rospack find raspicat_slam)/config/maps + ``` +=== "cartographer" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # cartographerの実行 + $ roslaunch raspicat_slam raspicat_cartographer.launch + + # キーボード操縦用ノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=false + + # 地図の保存(map_fileのパスは任意のディレクトリへのパスを指定できます) + $ roslaunch raspicat_slam map_save.launch map_file:=$(rospack find raspicat_slam)/config/maps + ``` +=== "slam_toolbox" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # slam_toolboxの実行 + $ roslaunch raspicat_slam raspicat_slam_toolbox.launch + + # キーボード操縦用ノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=false + + # 地図の保存(map_fileのパスは任意のディレクトリへのパスを指定できます) + $ roslaunch raspicat_slam map_save.launch map_file:=$(rospack find raspicat_slam)/config/maps + ``` + +#### ジョイスティックコントローラで操縦 {: #slam-teleop-joy} +=== "gmapping" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # gmappingの実行 + $ roslaunch raspicat_slam raspicat_gmapping.launch + + # ジョイスティック操縦用ノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=true + + # 地図の保存(map_fileのパスは任意のディレクトリへのパスを指定できます) + $ roslaunch raspicat_slam map_save.launch map_file:=$(rospack find raspicat_slam)/config/maps + ``` + + +=== "cartographer" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # cartographerの実行 + $ roslaunch raspicat_slam raspicat_cartographer.launch + + # ジョイスティック操縦用ノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=true + + # 地図の保存(map_fileのパスは任意のディレクトリへのパスを指定できます) + $ roslaunch raspicat_slam map_save.launch map_file:=$(rospack find raspicat_slam)/config/maps + ``` + + +=== "slam_toolbox" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # slam_toolboxの実行 + $ roslaunch raspicat_slam raspicat_slam_toolbox.launch + + # ジョイスティック操縦用ノードの立ち上げ + $ roslaunch raspicat_bringup teleop.launch joy:=true + + # 地図の保存(map_fileのパスは任意のディレクトリへのパスを指定できます) + $ roslaunch raspicat_slam map_save.launch map_file:=$(rospack find raspicat_slam)/config/maps + ``` + + +## シミュレータ環境でナビゲーション {: #navigation} + +=== "move_base" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # move_baseの実行 + # 任意の地図データへのパスを指定できます + $ MAP_FILE=$(rospack find raspicat_slam)/config/maps/iscas_museum_map.yaml + $ roslaunch raspicat_navigation raspicat_navigation.launch navigation:="neonav" mcl_map_file:=$MAP_FILE navigation_map_file:=$MAP_FILE + ``` + + + +=== "neonavigation" + ```sh + # シミュレータの起動 + $ roslaunch raspicat_gazebo raspicat_with_iscas_museum.launch rviz:=false + + # neonavigationの実行 + # 任意の地図データへのパスを指定できます + $ MAP_FILE=$(rospack find raspicat_slam)/config/maps/iscas_museum_map.yaml + $ roslaunch raspicat_navigation raspicat_navigation.launch navigation:="neonav" mcl_map_file:=$MAP_FILE navigation_map_file:=$MAP_FILE + ``` + + diff --git a/mkdocs.yml b/mkdocs.yml index 345de07..93b2e15 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -111,6 +111,17 @@ nav: - 5. 関連リンク集: jnmouse/others.md - Raspberry Pi Cat: - 1. 製品について: raspicat/products.md + - 2. デバイスドライバ: + - 1. インストール: raspicat/driver/install.md + - 2. サンプルを動かす: raspicat/driver/samples.md + - 3. ROS: + - 1. ROSのインストール: raspicat/ros/install.md + - 2. ROSパッケージのインストール: raspicat/ros/package-install.md + - 3. ROSサンプルの実行: raspicat/ros/samples.md + - 4. シミュレータの実行: + - 1. シミュレータのインストール: raspicat/simulator/install.md + - 2. サンプルを動かす: raspicat/simulator/samples.md + - 5. 関連リンク集: raspicat/others.md - USB出力9軸IMUセンサモジュール: - 1. 製品について: usb9imu/products.md - 2. 関連リンク集: usb9imu/others.md