Open mmurooka opened 10 years ago
エンドエフェクタはどうやって表されていればいいかな?
以下が現状
urdf的には,名前が決まったfixed_jointでつながれたリンクを付けられれば現状と同じになる. VRMLにjoint_idをマイナスにして書いておいたらいいという提案はどうだろうか?
目的は、
でいいでしょうか。
できれば、破綻しない方法かつ現実的な作業量で終わる方法がいいと思います。 ばくぜんとですが、どこかのモデルファイルに後付けする方法よりは、極力モデル変換のフローの中でちゃんとサポートしてあげるのがいいです。
現実的な、のためにちょっと目的をブレークダウンするとすれば、
になりそう。後者は、robot_state_publisherがTFを出すのがベストというかんじでしょうか。 そうするとチョイスは前者のどこに書いておくか、になりそう。
一個調べきれてなくて教えてほしいですが、 colladaのmanipulatorタグに書いておくとよかたりしますか? 具体的には、
が知りたいです。 もし1か2のどちらかができるのであれば、colladaのmanipulatorタグにエンドエフェクタ情報をかきさえすれば
と、かんたんで破綻しない線にのせられそう。 [1] https://github.com/fkanehiro/hrpsys-base/issues/232
https://github.com/start-jsk/rtmros_tutorials/pull/102 でとりあえずtfは出せているので、これを採用すると、 次はrobot_state_publisherが出すと嬉しい、というのになります。 tfを出すプログラムは極力少なくしたい、というのがあるので、@snozawa さんの言うとおり、 何処に入れるか、という問題になりますね。
tfが出るだけでいいなら,これでいいのではないか?(試してはいない)
- colladaのmanipulatorタグにかいておいて、robot_state_publisherだしたらmanipulatorの座標系がTFにでてくるかどうか?
- 上記ができない場合、colladaのmanipulatorタグにかいておいたものを変換したら、robot_state_publisherでエンドエフェクタTFをだしてくれるようなurdfを出力してくれそうか?(ちょっと前みたらでてなさそう、xacroにする必要あり?)
書くプログラムとしては1.と2.はほぼ同じですね. 前にも書いたように,urdfとしてはfixed jointでつながった質量,形状を持たないリンクを付けることになるので.
tfが出るだけでいいなら,これでいいのではないか?(試してはいない)
そうなると,VRMLのそのリンクを呼んで,eusのモデルを作る,とかが必要ですね.
tfで出て欲しいframe_idは、larm_end_coordsのような書式でいいのかな?
ちょっと考えてみると、エンドエフェクタ情報とは何か
manipulatorは定義上、limbに対して1つではない。 定義通りに使う必要はあまりないかもしれない。 daeのmanipulatorは export-colladaの引数で与えることができる。
manipulatorのurdfのリンクへの変換は、単純では manipulatorの名前をlarm_end_coordsにして、urdfにmanipulatorをlinkとして変換するので良いか?
この場合、yamlのend-coordsも廃止、もしくは、larm-end-coords -> daeのmanipulator名を書くようにする。
eusのIKもなにか変わりそうな気がするのですが、気のせいですか?
https://github.com/start-jsk/rtmros_tutorials/pull/102#issuecomment-60722058