[choreonoid-users-ja 00215] Re: AISTシミュレータの円筒モデルが変?(Re: 車輪のシミュレーション)

中岡 慎一郎 s.nakaoka @ aist.go.jp
2016年 11月 28日 (月) 14:40:02 JST


升谷先生

お分かりかと思いますが、我々が議論していたのは、シリンダを多面体に分割しないで、シリンダの曲面のまま衝突の計算を行う手法についてです。

この場合、多面体に分割した時のようにゴツゴツとならずに、滑らかな干渉を実現できます。分割数を増やす場合は処理も重くなってしまいますが、そのようなことも起こりません。

ただし制約として、シリンダと平面のみの衝突に対応可能です。地面が任意の形状の場合は、対象外となります。

この機能について、以前OpenHRP3では利用可能だったようなので、それを復活させられないか検討してみます。当面は分割数を増やすことで対応していただければと思います。


On 11/28/16 14:33, 中岡 慎一郎 wrote:
> 了解です、ソースを見直しつつ、Choreonoid上でも利用できないか検討してみます。
> 
> On 11/28/16 14:21, 金広文男 wrote:
>> どのように実装したか、記憶が定かではないのですが、RSJ09の予稿を見ると円筒の円と平面が
>> 交差する2点を干渉点として出すようにしていると書いてあるので、1点だけ出すようにしていた
>> 時期があったとしてもそれは直したのではないかと思います。
>>
>> @InProceedings{kanehiro:RSJ09-1,
>>   author =       {金広文男 and 中岡慎一郎 and 原功 and 比留川博久},
>>   title =        "{OpenRT Platform/ロボットシミュレータOpenHRP3.1}",
>>   booktitle = RSJ09,
>>   pages =        {RSJ2009AC1D1-03},
>>   year =         {2009},
>> }
>>
>> ________________________________________
>> 差出人: choreonoid-users-ja <choreonoid-users-ja-bounces @ choreonoid.org> が 中岡 慎一郎 <s.nakaoka @ aist.go.jp> の代理で送信
>> 送信日時: 2016年11月28日 14:07:21
>> 宛先: choreonoid-users-ja @ choreonoid.org
>> 件名: [choreonoid-users-ja 00212] Re: AISTシミュレータの円筒モデルが変?(Re: 車輪のシミュレーション)
>>
>>> OpenHRP3で実装されていた、円筒と平面との組み合わせにおいて円筒を円筒として扱う機能は
>>> 引き継がれていないのでしょうか?
>>
>> 対応する干渉チェックのコードはソースに入っていますが、インタフェースレベルではまだ実行できるようになっていないようです。
>>
>> 実は私もこの機能が頭に浮かんだのですが、OpenHRP3で試した時に、(シリンダの側面から見て)干渉法線を一本だすだけだと、シリンダが転がった時に沈んでいってしまう症状があったかと思います。これを防ぐには干渉法線を2点とる必要があることを認識したまでは覚えているのですが、実際に2点とって沈み込まないところまで実現できていましたっけ?そこのところ記憶があやふやだったので、確認してからと思っていたところでした。
>>
>> On 11/28/16 13:47, 金広文男 wrote:
>>> 金広@産総研です。
>>>
>>> 横から失礼します。
>>> OpenHRP3で実装されていた、円筒と平面との組み合わせにおいて円筒を円筒として扱う機能は
>>> 引き継がれていないのでしょうか?
>>>
>>> ________________________________________
>>> 差出人: choreonoid-users-ja <choreonoid-users-ja-bounces @ choreonoid.org> が 中岡 慎一郎 <s.nakaoka @ aist.go.jp> の代理で送信
>>> 送信日時: 2016年11月28日 13:41:41
>>> 宛先: choreonoid-users-ja @ choreonoid.org
>>> 件名: [choreonoid-users-ja 00209] Re: AISTシミュレータの円筒モデルが変?(Re: 車輪のシミュレーション)
>>>
>>> 升谷先生
>>>
>>>> さて、円柱を多面体近似していることは、車輪が転がりにくいことと関係して
>>>> いるでしょうか?
>>>
>>> はい、まさにこれが原因だと思います。
>>>
>>> 多面体近似における分割数については、「YAMLによる追加情報の記述」によって指定できます。
>>>
>>> (分割数については記述がありませんが、YAMLについては以下を参照ください。
>>> http://choreonoid.org/ja/manuals/latest/handling-models/modelfile/modelfile-yaml.html
>>> )
>>>
>>> 今回の例ですと、wheel.yaml というようなファイルを作成して、そこに例えば
>>>
>>> modelFile: "wheel.wrl"
>>> geometry:
>>>   divisionNumber: 200
>>>
>>> と記述してください。
>>> divisionNumber に分割数を指定します。
>>>
>>> このファイルをwheel.wrlの代わりにモデルファイルとして読みこむようにします。
>>>
>>> するとこの分割数で生成されたポリゴンになるかと思います。
>>>
>>> なお、上記の記述方法はまだ実験的なものとなっています。本来プリミティブごとに指定したいと思いますし。
>>>
>>> これについて、現在開発版にて整備中の「新YAML形式モデルファイル」で整備していきたいと思っています。
>>>
>>> (まだ書きかけですが、これに関する説明が以下にあります。
>>> http://choreonoid.org/ja/manuals/latest/handling-models/modelfile/modelfile-yaml.html
>>> )
>>>
>>>
>>> On 11/28/16 12:47, MASUTANI Yasuhiro wrote:
>>>> 中岡様、服部様、
>>>>
>>>> 大阪電通大の升谷です。
>>>> 回答ありがとうございます。
>>>>
>>>> 先のcnoidファイルにおいて初期のピッチ角を変更すると振る舞いが変わり、服
>>>> 部様の説明が理解できました。円が20分割されていますので、初期ピッチ角を
>>>> 360/20/2=9 [deg]にすると回転は生じませんでした。また、初期ピッチ角を-2
>>>> [deg]等にすると、x軸の負の方向へ転がりました。
>>>>
>>>> さて、円柱を多面体近似していることは、車輪が転がりにくいことと関係して
>>>> いるでしょうか?中心からオフセットのある点で、床面から垂直効力を受ける
>>>> とすると、車輪の半径0.05[m]、荷重 2.8×9.8/3 = 9.15 [N]
>>>>
>>>>   9.15*0.05*sin(pi/20) ≒ 0.07 [Nm]
>>>>
>>>> となり観測されている状況と一致します。
>>>>
>>>> At Mon, 28 Nov 2016 11:24:21 +0900,
>>>> 中岡 慎一郎 <s.nakaoka @ aist.go.jp> wrote:
>>>>>
>>>>> 補足なのですが、多面体近似における分割数を指定することができて、それを増やすことでポリゴンの角も滑らかになり、よりシリンダに近い挙動を実現することが可能です。
>>>>>
>>>>> 今そのやり方を確認しておりますので、しばらくお待ちいただけますでしょうか。よろしくお願いします。
>>>>>
>>>>> On 11/28/16 11:03, 服部静子 wrote:
>>>>>> 産総研の服部です。
>>>>>>
>>>>>> 添付して頂いたファイルで、シミュレーション実行し、現象確認しました。
>>>>>>
>>>>>> wheel.wrlファイルのなかで、形状データを円柱で定義されていますが、
>>>>>> AISTシミュレータの中では読み込まれたモデルの形状は全て、三角形の多面体に近似されます。
>>>>>> ワイヤーフレーム表示にした時に表示されている形状がそれになります。
>>>>>> 床と接触しているところを注目して頂くと、初期位置が角のところになっているため、このような動きになるかと思います。
>>>>>>
>>>>>> ________________________________________
>>>>>> 差出人: choreonoid-users-ja <choreonoid-users-ja-bounces @ choreonoid.org> が MASUTANI Yasuhiro <masutani @ osakac.ac.jp> の代理で送信
>>>>>> 送信日時: 2016年11月28日 9:07
>>>>>> 宛先: choreonoid-users-ja @ choreonoid.org
>>>>>> 件名: [choreonoid-users-ja 00204] AISTシミュレータの円筒モデルが変?(Re: 車輪のシミュレーション)
>>>>>>
>>>>>> choreonoid-users-ja MLの皆様,
>>>>>>
>>>>>> 大阪電気通信大学の升谷です。
>>>>>>
>>>>>> AISTシミュレータの円筒のモデルの動きが変です。添付のcnoidとwrlでシミュ
>>>>>> レーションしてみていただけないでしょうか。床に円筒が置かれているだけで
>>>>>> すが、力もトルクもかけていないのに、一定の角度転がって止まります。まる
>>>>>> で「起き上がりこぼし」のように重心が中心にないような挙動です。
>>>>>>
>>>>>> モデルの書き方が悪いのでしょうか?
>>>>>>
>>>>>> ご確認いただけると幸いです。
>>>>>> よろしくお願いいたします。
>>>>>>
>>>>>> At Sun, 27 Nov 2016 01:12:53 +0900,
>>>>>> MASUTANI Yasuhiro <masutani @ osakac.ac.jp> wrote:
>>>>>>>
>>>>>>> Choreonoid-1.5.0のAISTシミュレータの動力学モード「順動力学」を使って、
>>>>>>> 車輪型ロボットのシミュレーションをしたいのですが、うまくいきません。
>>>>>>>
>>>>>>> 使っているのは添付のwrlファイルのモデルです。
>>>>>>>
>>>>>>> BodyRTCを使って、左右の車輪にトルクを与えるだけの実験をしてみました。ト
>>>>>>> ルクを与えても車輪がなかなか動かず、0.1〜0.15 [Nm]まで上げると動き出し
>>>>>>> ます。静止摩擦に勝って動き出すような感じです。理想的な車輪もモデルでは、
>>>>>>> わずかなトルクで動き出すのではないかと思いますが、そうはなりません。
>>>>>>>
>>>>>>> また、動き出してからも、左右の車輪の接触状態が一定でないような挙動を示
>>>>>>> します。
>>>>>>>
>>>>>>> 実は、PI制御や摩擦補償的な制御も試しているのですが、うまく速度制御でき
>>>>>>> ないので、条件を単純化してここに辿り着きました。
>>>>>>>
>>>>>>> AISTシミュレータは、車輪のシミュレーションに向いていないのでしょうか?
>>>>>>> あるいは、車輪のシミュレーションに向いたパラメータの選び方がありますか?
>>>>>>>
>>>>>>> ご助言をいただけると幸いです。また、車輪のシミュレーションの事例があり
>>>>>>> ましたら教えていただけないでしょうか?
>>>>>>>
>>>>>>> よろしくお願いいたします。
>>>>>>
>>>>>> --
>>>>>> # 升谷 保博
>>>>>> # 大阪電気通信大学 総合情報学部 情報学科
>>>>>> # 575-0063 大阪府四條畷市清滝1130-70 / TEL&FAX: 072-876-5107
>>>>>> _______________________________________________
>>>>>> choreonoid-users-ja mailing list
>>>>>> choreonoid-users-ja @ choreonoid.org
>>>>>> https://choreonoid.org/mailman/listinfo/choreonoid-users-ja
>>>>>>
>>>>
>>>
>>> --
>>> 中岡 慎一郎 <s.nakaoka @ aist.go.jp>
>>> 産業技術総合研究所 知能システム研究部門
>>> ヒューマノイド研究グループ
>>>
>>> _______________________________________________
>>> choreonoid-users-ja mailing list
>>> choreonoid-users-ja @ choreonoid.org
>>> https://choreonoid.org/mailman/listinfo/choreonoid-users-ja
>>> _______________________________________________
>>> choreonoid-users-ja mailing list
>>> choreonoid-users-ja @ choreonoid.org
>>> https://choreonoid.org/mailman/listinfo/choreonoid-users-ja
>>>
>>
>> --
>> 中岡 慎一郎 <s.nakaoka @ aist.go.jp>
>> 産業技術総合研究所 知能システム研究部門
>> ヒューマノイド研究グループ
>>
>> _______________________________________________
>> choreonoid-users-ja mailing list
>> choreonoid-users-ja @ choreonoid.org
>> https://choreonoid.org/mailman/listinfo/choreonoid-users-ja
>> _______________________________________________
>> choreonoid-users-ja mailing list
>> choreonoid-users-ja @ choreonoid.org
>> https://choreonoid.org/mailman/listinfo/choreonoid-users-ja
>>
> 

-- 
中岡 慎一郎 <s.nakaoka @ aist.go.jp>
産業技術総合研究所 知能システム研究部門
ヒューマノイド研究グループ



choreonoid-users-ja メーリングリストの案内