Jetson Nano + ROS で四足歩行ロボットをシミュレーションしてみる(Rviz)


Jetson Nanoを使うのは、この程度のハードでも動くのか?ということを試すくらいの意味です。
Rvizでの動きのシミュレーションは問題なかったですが、Gazeboは厳しかったです。
本来はもっとパワーのあるPCでやりましょう。


ROSのRvizやGazeboの中で四足歩行ロボットを動かしてみましょう。

ここではRviz内のロボットをキーボードやPS4コントローラで制御してみます。

四つ足状のもの(Quadruped)を制御するROSパッケージとしてはCHAMPを使います。

ロボットのモデルはchvmp/robotsをインストールすれば以下のようなロボットを試せます(SpotやMini Pupperも用意されています)。

Anybotics’ ANYmal B
Anybotics’ ANYmal C
Boston Dynamic’s Spot
Unitree Robotics’ Aliengo
Unitree Robotics’ Go1
MIT Mini Cheetah
OpenDog V2
Open Quadruped
Stochlite
MangDang’s Mini Pupper
Stanford Pupper
その他

注:モジュールが不足していると動かないモデルもあります

 

独自に四つ足状のものを動かしたい場合は、ご自分でモデルと(SDFではなく)URDFファイルを準備して、CHAMPのsetup assistantを使って取り込めばいいようです。

キーボードから制御する場合はteleop_twist_keyboardを使いますが、PS4コントローラのようなJoystickデバイスも使いたい場合はCHAMPのchamp_teleopを使いましょう。

CHAMPはkinetic、melodic、noeticに対応しています。

ここではmelodicを使ってみます。

 


事前準備

Jetson Nano にROS (Melodic) をインストール

OSイメージはJetpack 4.6 (Ubuntu 18.04 LTS) を使います。

以下をご参照

Jetson Nano にROS1 (Melodic) をインストール(メモ)

 


CHAMPインストール

CHAMPを参照

事前準備のとおりだとすれば、ユーザー(jetson)ホームにワークスペースがあるので以下のようになります。

 


teleop_twist_keyboardインストール

Rvizでロボットをキーボード制御します。

 


ロボットモデルを使ってみる

chvmp/robotsをインストールします。

事前準備のとおりのディレクトリ構成だとします。

クローンしてインストールおきます。

ビルド

 

どのロボットを使うかは以下のディレクトリにあるconfigフォルダーを参照

~/catkin_ws/src/robots/configs

roslaunch <configフォルダー名> bringup.launch rviz:=true


Mini Pupper を使ってみます。

別ターミナルで teleop_twist_keyboardを起動

制御例(ターミナルウィンドウをアクティブにして、キーを長押し)

i(I):前進

、(<):バック

o、u:半径を取って旋回

j、l:その場で旋回

J、L:(カニみたいな)横歩き

O、U:斜めに移動

など

ちなみにk(K)キーは何もしないようです。

キーボード制御だとこんな動きになります。

キーボード制御は以下のコマンドでも実行できます。

このコマンドはオプションを追加して、PS4コントローラで制御する時に使います。

 


PS4コントローラで制御

Jetson Nano にコントローラ用ライブラリをインストール

以下参照

Jetson Nano (4GB) + PS4コントローラ

 

Mini Pupper をRvizで起動しておきます。

ジョイスティックデバイスを使うので、別ターミナルで以下を実行

キーボード制御の場合はターミナルウィンドウをアクティブにする必要がありましたが、PS4コントローラはBluetooth制御なので不要です。

 

ボタン等のアサイン

L2:ロボットがこけました。これを回復する方法が分かりません。使わない方がいい?

R2:立ち上がります(上を向くに近い?)。

 

A:直進

B:その場で左旋回

C:バック

D:その場で右旋回

E:ダウン(おすわり、というより前かがみ)

任意の方向にスムーズに移動させるには、かなり微妙なスティック操作が必要になります、難しいです。

 


Next

Gazebo でMapping やNavigation をやってみます。

 


Appendix

キーアサイン

 

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*