.launchファイルで立ち上がるファイルの場所

1,132 views
Skip to first unread message

gryu39

unread,
Oct 27, 2013, 6:31:48 AM10/27/13
to ros-jap...@googlegroups.com
木下です。

keyop.launchで立ち上がるプログラムを調べて、どのようなことを行っているか調べようとしています。

まず、keyop.launchの中身を見たところ、
  <node pkg="kobuki_keyop" type="keyop" name="keyop" output="screen">
となっていたので、kobuki_keyopパッケージのkeyopという実行ファイルを実行しているのだと考えました。

そこで、kobuki_keyopパッケージの中身を調べたのですが、
keyopという実行ファイルを見つけることが出来ませんでした。

この実行ファイルはどこにあるのでしょうか。
また、ソースコードなどを見ることができればそれも見たいと思っています。
よろしくお願いします。


keyop.launchの中身

<!--
  Raw keyop configuration for working with the default kobuki launcher (minimal.launch). 
 -->
<launch>
  <node pkg="kobuki_keyop" type="keyop" name="keyop" output="screen">
    <remap from="keyop/motor_power" to="mobile_base/commands/motor_power"/>
    <remap from="keyop/cmd_vel" to="mobile_base/commands/velocity"/>
    <param name="linear_vel_step"  value="0.05" type="double"/>
    <param name="linear_vel_max"   value="1.5"  type="double"/>
    <param name="angular_vel_step" value="0.33" type="double"/>
    <param name="angular_vel_max"  value="6.6"  type="double"/>
    <param name="wait_for_connection_" value="true" type="bool"/>
  </node>
</launch>


kobuki_keyopパッケージ内

kobuki_keyop
├── cmake
│   ├── kobuki_keyopConfig-version.cmake
│   └── kobuki_keyopConfig.cmake
├── launch
│   ├── keyop.launch
│   ├── readme.txt
│   └── safe_keyop.launch
├── package.xml
└── param
    ├── keyop_mux.yaml
    └── keyop_smoother.yaml


Kei Okada

unread,
Oct 28, 2013, 7:03:17 PM10/28/13
to ros-jap...@googlegroups.com
いい質問ですね.

凄くややこしいのですが,バイナリは以下のように/opt/ros/${ROS_DISTRO}/lib/<package_name>以下に出来るようになっています.

/opt/ros/groovy/share/kobuki_keyop$ ls
cmake launch package.xml param
/opt/ros/groovy/lib/kobuki_keyop$ ls
keyop

http://ros.org/reps/rep-0122.html に以下のように書いて有ります.
lib/<ros-package-name>/
  All package-relative executables and scripts are installed in
lib/<ros-package-name>/ subdirectory.

普段自分で開発するところはrosbuild (<package>/bin 以下にバイナリが出来る)だと思うのですが,
debで入るプログラムはcatkinと呼ばれるbuildsystemを使っているので,rosbuildとは違うディレクトリ構成になります.
http://wiki.ros.org/catkin/conceptual_overview


2013/10/27 gryu39 <yukinosh...@gmail.com>:
> --
> このメールは Google グループのグループ「ROS JAPAN User's Group」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、ros-japan-use...@googlegroups.com
> にメールを送信します。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

gryu39

unread,
Oct 28, 2013, 11:28:33 PM10/28/13
to ros-jap...@googlegroups.com
ありがとうございます。

教えていただいた通り、実行ファイルをlibの中に見つけることができました。
catkinというビルドシステムだとパッケージ外にビルドすることができるのですね。


ソースの存在についてですが、
この実行ファイルkeyopについて
私は自分でcatkinを実行してコンパイルを行なっていないので、
rosをインストールした際にkeyopの元となるソースコードは含まれておらず、
実行ファイルのみがもともとインストールしたファイルに入っていたと考えていいのでしょうか。


Kei Okada

unread,
Oct 29, 2013, 12:01:04 AM10/29/13
to ros-jap...@googlegroups.com
はい.そうなりますね.
ソースは,https://github.com/yujinrobot/kobuki/tree/hydro-devel/kobuki_keyop
にあるようです.

2013/10/29 gryu39 <yukinosh...@gmail.com>:

gryu39

unread,
Oct 29, 2013, 4:33:05 AM10/29/13
to ros-jap...@googlegroups.com
ソースの場所も教えていただいてありがとうございます。
教えていただいたアドレスから、無事ソースの中身も見ることができました。
これからkeyopで何を行なっているのか読んでいきたいと思います。

ありがとうございました。

Reply all
Reply to author
Forward
0 new messages