-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sensorの名前がkeywordではないのでアクセスできなくなっている #18
Comments
こういうことが起るのでテストコードを作りましょう. |
コミットログを見る限りではsymbolで無視される大文字小文字の差異を別物として扱えるように 候補としては
|
判断のポイントはロボットに
のようなアクセスをする必要があるかどうかですかね。
でアクセスするのはどうでしょうか? |
なんか同じ議論がirtmodelかpr2の時にあった気がします.さがしてもパッとメールがでてこないんだけど.その時はどういうことになったんだっけ? テストプログラムは 2014-04-15 21:29 GMT+09:00 Yohei Kakiuchi [email protected]:
|
すいません、こちら忘れていました。 もともと議論があって、もろもろ合意にいたったルールとしては、
があります。 モデルに関連するテストは、Euslispモデルがないとできないので、結構テストが難しいですね。 一つありえる方法は、生成物をどこかにコミットする(今回のケースだとeus/models)、でしょうか。 |
は以下だっけ? Issueへのリンクが無いので,どうしてこうなったかわからないですね.メールは無かったっけ? send robot :sensor "sensor_name"
みたいな事が書いてあれば,テストになるし,これが正しい使い方,というふうにできて,
みたいなことをしなくていいはずです. |
時期的には、だいたいこのくらいだったんだと思います。
そうです。
これは必要だと思います。 今回のバグも、あるロボットでは:rasensorみたいにシンボルでアクセスして、 |
話を理解していないかもしれないけど,生成物をコミットすると,生成ツールを変更した時に手作業が必要になって,それが面倒になると直接書き込んで,二度と自動生成できないのでよくわからなくりますね.nervousのAutobalancerが良い例です.なので止めたほうが良いです. また「内部のJenins」もある意味branchだったわけですが,今回のように変更があると置いていかれますよね.2ヶ月ぐらい放置になっているかと思います.大体そういうものでしょう.githubはprivateなリポジトリがつくれるから,それも一案かもしれません. |
なるほど、確かに生成物コミットは危ないですね。
これもそうですね。 ただ問題は今は2つあって、
だと思います。 例えば、samplerobotはprivateでなくopenhrp3標準で、hrpsys_ros_briddgeレベルではテストされてますが、 本当はバグにそったテスト用ロボットを作るか、 |
なん通りもあるかな? 2通りぐらいで、かつ、書く時はこちらで書いて下さいという標準があればいいように思います。
|
今は歴史的に4とおりあり、
になってますが、 ただ、2通りだとしても、2種類のロボットモデルがあるほうがいいきがします |
4個! link/jointは何個だろうか. |
はそうで,privateはprivate repo でいいんじゃないかというのと,下流工程の物はhttp://jenkins.ros.org/job/prerelease-hydro-openrtm_aist_core/ARCH_PARAM=amd64,UBUNTU_PARAM=precise,label=prerelease/5/consoleFull みたいなjenkins jobを作ればいいので,http://jenkins.jsk.imi.i.u-tokyo.ac.jp:8080/job/rtm-ros-robotics/ みたいな物を整理して,ちゃんとセキュリティをかんがえて作ればいいともいますが, このIssueそのものポイントは jsk-ros-pkg/jsk_model_tools/euscollada/src/collada2eus.cpp というかなりわかりづらい依存関係が生じていることです.なので, 一方で,collada2eusの生成物を使っているrtm-ros-robot-interface.lを プログラムAは
と書きましたが,これは結局はirtrobotのAPIリストになるわけで,
みたいに関数があるかないかぐらいのものでもいいともいますし,あるいは 以下で言いたかったのもそういうことになります.
|
そうですね、jenkinsならちゃんとテストできますね。 サンプル兼テストを作る、というのも賛成です。
これに関しては、いくつかことなるものをサポートする場合には、 今回のバグはアクセッサに関してですが、「いくつかことなるもの」のもっと最たる例は、 |
link/jointは、string+symbolでのアクセスで、2コですね。
をけずるかんじでしょうか。 |
で、センサのaccessorをかえてPReqを直しました。
など引数なしで実行するとなぜか一個目のセンサがかえってくるのも、 |
いいか悪いか分からなけど,rbrainの仕様がそうなっているので,意図的にそうしてあると思います.確認してみて下さい. 歴史的経緯としては昔はカメラは1つしかついていなかったので,send robot :camera としたらカメラが一つ帰ってくる, 2014-04-18 12:53 GMT+09:00 snozawa [email protected]:
|
はい、rbrain由来のものです。 個人的には、limbで変えるものもやはりかなり必要だと思っていて, |
ごめん,議論を降り出しにしちゃうけど,一回 2014-05-01 12:42 GMT+09:00 snozawa [email protected]:
|
そうですね。 これまでのissueとちょっと方法のカウントの仕方をかえて、下記にまとめてみます。 pr2eusやrbrainのコードであったのは、
の4つくらいがあって、それぞれ実際どれがあるかは下記のようになってます。
です。 リンクやセンサ単体にアクセスする他にlimbからアクセスすることも別途できて、 なので、上記のforce-sensorの
も、 |
2014-05-03 16:38 GMT+09:00 snozawa [email protected]:
また,
は,結局シンボルだと大文字小文字で名前の衝突は避けられないから,stringが推奨されている,というので正しい? |
…(comment) and reduce unused args
そうなります。
limbメソッドからセンサにアクセスするようにして、再度PRを修正しました。 あとは残りの項目ですが(最後の一個はさっき思いつきました)、
|
モデルコンバージョンなどで必要にならないでしょうか?そもそもirteusにした時にセンサをちゃんと使っているロボットがなかったので,sensor系が貧弱というだけの理由だと思います. また,今回の変更でrbrain側からコードが幾つか消せる気がする(pr2eusも)とおもいますが,そのへんはどうなっているでしょうか? |
なるほど、やはり必要でしょうか。
jsk-ros-pkg側からはいくつかコードがきえます。 rbrainは難しいですが、どうしましょうか。 |
どうでしょうか? @YoheiKakiuchi
なるほど.では難しいですね.pr2.l euscollada-robot.lだけですね.euscollada-robot.lの前の方の定義は全て消せるかな.本来は必要ないはず,だと思うので. |
そうですね。pr2.lの該当部分だけでなく、 euslisp/jskeus#72 また、 |
はい それでいいと思います |
…usage.l, demo/sample-robot-model.l : add sensor accessosr and test codes ;; original PR is euslisp/pull/72
…te sensor methods ;; latest sensor methods are added and testes by euslisp/jskeus#92
…: remove :camera method which is already committed to irtrobot.l
…rite sensors methods ;; sensors method are supported from euslisp/jskeus/pull/92
最終的にどういう仕様になったのでしょうか? send robot :link link-name としたときに、シンボルかストリングと書いていたけれど、
|
…erwrite sensor methods
…e :camera method which is already committed to irtrobot.l
遅くなりましたが、アクセッサは、ご指摘のものであっています。
そうですね。 せっかくdocumentationもできたので、書いておくとよさそうですが、 |
rename snapmap url
@snozawa このセンサの名前を文字列にするのはなぜ必要だったのでしたか?
9d9cf0a
副作用として、以下のようにアクセスできていたのができなくなっています。
https://github.com/start-jsk/rtmros_common/blob/master/hrpsys_ros_bridge/euslisp/rtm-ros-robot-interface.l で
がエラーになります。
The text was updated successfully, but these errors were encountered: