BEIKE blog

備忘録です

Raspberry Pi Catの使い方

アントニオさんがやること

1. 電池の確認(raspicat、pc)

  • 開始時、それぞれ満タンかを確認。
  • 走行中は、PC(10%以下)、raspicat(ボタンを押して、青色のLEDが2つ消えていたら)それぞれどれかの状態になっていたら、一旦終了し19階に帰る。

2. ワークスペース確認

3. gitのブランチの確認(一応)

  • 今のブランチを確認
git branch

4. joyコントローラで操作する

5. LiDARを使って、gmappingをする

6. 得られたマップを使って、waypointを手に入れる

  1. 得られたマップとwaypointをつかて、ナビゲーションを行う。

概要

Raspberry Pi Catの使い方がわからない人向けにまとめる。(備忘録でもある)


必要なもの


使い方

Raspberry Pi Catでローカルネットの構築方法

PCとラズパイを有線LANでつないで通信を行う方法。

やり方は以下の記事の通りです。

beike.hatenablog.jp


複数のPCでROSを動かす場合のネットワーク設定方法

このサイトの6.1.4の図がわかりやすい。

emanual.robotis.com

https://i.gyazo.com/f7ed8c847faccb40e4a171c435198949.png

それぞれの.bashrcに記述する。変更後は、sourceで反映させる。

~$ vim ~/.bashrc
~$ source ~/.bashrc

記述する内容を一応書く。

  • マスター側(ノートPC)
~$ vim ~/.bashrc

.bashrcを開いたら一番下の方に

export ROS_MASTER_URI=http://<ifconfigで見たIPアドレス(ノートPC)>:11311
export ROS_HOSTNAME=ifconfigで見たIPアドレス(ノートPC)
export ROS_MASTER_URI=http://<ifconfigで見たIPアドレス(ノートPC)>:11311
export ROS_HOSTNAME=ifconfigで見たIPアドレス(Raspberry Pi Cat)

それぞれ記述しおわったら、source ~/.bashrcで反映させておく。


Raspberry Pi Catでマップ作成

使用しないときは、非常停止スイッチを押しておくこと、また使用するときは押してること忘れてることがあるので注意!

非常停止スイッチ用の配線が抜けているとモータに出力がいかないので注意!

Raspberry Pi CatとノートPC間のROS_IPなどの設定が終わっているとして、話を進めていきます。

  • 以下の順番通りにコマンドを打っていきます。
~$ roscore  (ノートPC側)
~$ roslaunch raspicat_navigation raspicat_bringup.launch   (Raspberry Pi Cat側)
~$ roslaunch raspicat_slam slam_remote_pc.launch  (ノートPC側)
~$ roslaunch raspicat_gamepad_controller logicool.launch  (ノートPC側)
~$ roslaunch raspicat_gamepad_controller smooth.launch(ノートPC側)

slam_remote_robot_usb_urg.launchに関しては、一部修正してあります。(同じlaunchを立ち上げていたのでその部分を消した)

マップ取れたら、以下のコマンドで保存

~$ rosrun map_server map_saver -f ~/map

Raspberry Pi Catでナビゲーション

PCとラズパイでの時間(dateコマンドで確認)に10(設定したparamによる)~∞秒のずれがあるとエラーが出てコストマップが出てこないので時間同期をする必要があることに注意!(本来なら外付けハードウェアクロックで何とかなる:電池がない場合)

以下のコマンドで無理やり調整可能(手動)

sudo date -s "10/12 18:16 2020"
  • 以下の順番通りにコマンドを打っていきます。
~$ roscore  (ノートPC側)
~$ roslaunch raspicat raspicat.launch  (Raspberry Pi Cat側)
~$ roslaunch raspicat_navigation raspicat_bringup.launch  (Raspberry Pi Cat側)
~$ roslaunch raspicat_navigation raspicat_navigation.launch  (ノートPC側)