AISTSimulatorにおける摩擦の設定


#1

最近のChoeonoidのAISTSimulatorの摩擦の設定に変更がありましたか?

Choreonoidに付属のPA10Pickupプロジェクトにおいて,AISTSimulatorのプロパティの静止摩擦係数と動摩擦係数のどちらも0にして,シミュレーションを実行したところ,バージョン1.5では,ハンドが滑って箱を把持できませんが,最新版では摩擦が0.5の場合と違いがないように見えます.

最近のバージョンでは,どこか別の場所で摩擦を設定するのでしょうか?


#2

Choreonoid開発グループの皆様,

「WRS2018トンネル競技総括シンポジウム」の準備でお忙しいことと思いますが,本件についてフォローをしていただけると大変助かります(学生の卒研がかかっています).

もう少し調べてみたところ,バージョン1.5と1.6の間で変化があることがわかりました.

前のメッセージを書いた時は,Windowsで試していましたが,Ubuntu上で改めてソースからビルドして確認しました.

  • v1.5.0とv1.6.0のソースコードは以下からダウンロード.
    https://github.com/s-nakaoka/choreonoid/releases

  • 2つのリリースに対してシェルで以下の内容を実行(X = 5, 6)

    tar xvfz choreonoid-1.X.0.tar.gz
    cd choreonoid-1.X.0
    mkdir build
    cd build
    cmake …
    make
    bin/choreonoid …/share/project/PA10Pickup.cnoid

  • v1.5.0では,AISTSimulatorのプロパティの静止摩擦係数と動摩擦係数を0.0にすると,ハンドが滑って箱を把持できません.

  • v1.6.0では,AISTSimulatorのプロパティの静止摩擦係数と動摩擦係数を0.0にしても,0.5の場合と同じように箱を把持できます.

  • 症状としては,Windowsで確かめた場合と同じようです.

  • 摩擦の現象の違いが,v1.5.0とv1.6.0の間であることがはっきりしました.

  • 仕様の変更ですか?バグですか?

まずは確認をお願いいたします.


#3

回答が遅くなってしまいすみません。

摩擦については、最新版(開発版)では、接触マテリアルという情報を用いて行うようになっています。

これについてはAGXDynamicsプラグインの開発に伴って導入しました。AGXで使用する場合は、以下のページの解説が参考になるかと思います。
http://choreonoid.org/ja/manuals/latest/agxdynamics/agx-material.html

産総研エンジンでは、この件についてどこまで導入できていたか、確認しますので、しばらくお待ちいただけますでしょうか。まだ完全には導入できていなかったかもしれません。

基本的には、マテリアル設定ファイルでまずマテリアルを定義し、マテリアルのペアに対して摩擦係数などを設定し、モデルファイルではリンクごとにmaterialでマテリアル名を指定します。


#4

はい,そのページは見ていましたが,AISTSimulatorには無関係だろうと判断していました.


#5

産総研エンジンでは、マテリアルの摩擦係数だけ対応しています。
PA10モデルファイルのHAND_L、HAND_Rリンクに
material: PA10HAND
を追加し、

choreonoid/share/default/materials.yamlのmaterials:に

  • name: PA10HAND
    roughness: 0.0

を追加、または、
contactMaterials:に

  • materials: [ Default, PA10HAND ]
    friction: 0.0

を追加すると、箱がすべって持てなくなります。