Skip to content
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

YAML形式モデルのカメラが配信されない #89

Open
m-asahi opened this issue Jan 19, 2018 · 3 comments
Open

YAML形式モデルのカメラが配信されない #89

m-asahi opened this issue Jan 19, 2018 · 3 comments

Comments

@m-asahi
Copy link

m-asahi commented Jan 19, 2018

棒の先にカメラがついた単純なモデルcamをyaml形式で作成して、choreonoidでボディとして読み込み、小アイテムとしてBodyRosItemをつけましたが、/cam/camera/image_rawが配信されません。(choreonoid内でシーンビューを見ることはできています)

cam.body

このcamモデルをサンプルのjvrc-1-rviz.launchの中に入れてみたところ、rcamera/lcameraのimage_rawは配信されますが、やはり/cam/camera/image_rawは配信されません。

BodyRosItem::createSensors の動きを追ってみたところ、メンバ変数visionSensors_について、JVRC-1では2つのカメラが読み込まれますが、camではこれが空のままなのがわかりました。

Body::devicesが空なのが、VRMLBodyLoaderとYAMLBodyLoaderの間の差異に起因するのだとすると、原因はChoreonoid本体側にあるかとも思われますが、ひとまずこちらでご報告します。

@yosuke
Copy link
Contributor

yosuke commented Sep 27, 2018

同様の問題を確認。

本家の実装を見るとデバイス取得APIの使い方が少し変わってしまっていそう。

https://github.com/s-nakaoka/choreonoid_rosplugin/blob/master/src/BodyPublisherItem.cpp#L265

@yosuke
Copy link
Contributor

yosuke commented Sep 27, 2018

BodyRosItemが実装された当初はgetSortedById()をコールするとすべてのセンサが取得できていたが、bodyの規格を作るにあたってIDが振られていないセンサの作成を許容したのかもしれない(その場合はgetSortedById()だと取得できないのかもしれない)。

yosuke added a commit to yosuke/choreonoid_ros_pkg that referenced this issue Sep 27, 2018
@yosuke
Copy link
Contributor

yosuke commented Sep 27, 2018

無事に修正できたと思う。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants