ROSノードの利用
[
Front page
] [
New
|
List of pages
|
Search
|
Recent changes
|
Help
]
Start:
Up:[[Tutorial]] Previous:[[RoboCupCamp]]
----
#contents
*ROSノードの利用 [#i319ab36]
**はじめに [#v503c171]
ここでは既存のROSノードをSIGVerseで利用する方法を紹介しま...
※このチュートリアルはUbuntu12.04LTS上のSIGVerse v2.2.0以...
**SIGVerse内ロボット制御のためのコントローラの作成 [#v993...
まず、制御ノードからのメッセージを浮け、SIGVerse内のロボ...
$ tar xvfz ros_if.tar.gz -C <catkin_ws>/src
<catkin_ws>/src/ros_if/CMakeLists.txt の102, 103行目にSIG...
#highlight(cpp:firstline[100]){{
include_directories(include
${catkin_INCLUDE_DIRS}
<SIGVerse_path>/include/sigverse
<SIGVerse_path>/include/sigverse/comm/controller
)
}}
これを、例えば次のように環境に応じて変更します。
#highlight(cpp:firstline[100]){{
include_directories(include
${catkin_INCLUDE_DIRS}
/home/UserName/sigverse/include/sigverse
/home/UserName/sigverse/include/sigverse/comm/controller
)
}}
コントローラをビルドします。
$ cd <catkin_ws>
$ mkdir devel/lib/libros_if
$ catkin_make
次のコマンドでファイルが作成されたことを確認してください。
$ ll devel/lib/libros_if/sig_if_ctrl.so
ファイルが存在しない旨のメッセージが表示される場合は、cat...
$ cp src/ros_if/ros_world.xml devel/lib/libros_if/
** SIGVerseの起動 [#y0140483]
まず、これまでに作業を行っていた端末(terminal)とは別に新...
$ roscore
起動が確認できたら、別のウィンドウあるいはタブで新しく端...
$ cd <catkin_ws>
$ source devel/setup.bash
$ cd devel/lib/libros_if
$ sigserver.sh -w ./ros_world.xml
** SIGViewerの起動とシミュレーションの開始 [#ad807c4c]
- 各自のSIGViewerを立ち上げます。これまでのチュートリアル...
- ホストとの接続が正常にできていることが確認されたら、シ...
- ※このチュートリアルではビューアはSIGVerse世界をモニタす...
** 制御ノードの起動 [#c2e4683e]
- 次に制御ノードを起動します。これは、TurtleSimとしてROS...
$ rosrun turtlesim turtle_teleop_key
すると、http://wiki.ros.org/ROS/Tutorials/UnderstandingTo...
Reading from keyboard
---------------------------
Use arrow keys to move the turtle.
と表示され、同端末はユーザからのキー入力待ち状態になりま...
- ここで、必要なノードが起動されているか確認してください...
$ rosnode list
によって行えます。これにより、同端末に
/ros_sig_node
/rosout
/teleop_turtle
と表示されることを確認してください
- ros_sig_node はSIGVerse内のオブジェクトを操作するための...
- rosout は roscoreを起動すると必ず生成されるノードです。
- teleop_turtle は「rosrun turtlesim turtle_teleop_key」...
** 制御ノードの動作確認 [#zf77a354]
- 次に、teleop_turtleノードを起動した端末をアクティブにし...
** メッセージ送受信の様子の図示 [#oaf8cdd9]
- ros_sig_node は teleop_turtleが発するメッセージをsubs...
$ rosrun rqt_graph rqt_graph
によって確認でき、次のような図をみることができます。
#br
#br
#ref(rosgraph_turtle.png)
#br
#br
これは、teleop_turtle ノードが turtle1/commad_velocity...
#highlight(end)
----
Up:[[Tutorial]] Previous:[[RoboCupCamp]]
#counter
End:
Up:[[Tutorial]] Previous:[[RoboCupCamp]]
----
#contents
*ROSノードの利用 [#i319ab36]
**はじめに [#v503c171]
ここでは既存のROSノードをSIGVerseで利用する方法を紹介しま...
※このチュートリアルはUbuntu12.04LTS上のSIGVerse v2.2.0以...
**SIGVerse内ロボット制御のためのコントローラの作成 [#v993...
まず、制御ノードからのメッセージを浮け、SIGVerse内のロボ...
$ tar xvfz ros_if.tar.gz -C <catkin_ws>/src
<catkin_ws>/src/ros_if/CMakeLists.txt の102, 103行目にSIG...
#highlight(cpp:firstline[100]){{
include_directories(include
${catkin_INCLUDE_DIRS}
<SIGVerse_path>/include/sigverse
<SIGVerse_path>/include/sigverse/comm/controller
)
}}
これを、例えば次のように環境に応じて変更します。
#highlight(cpp:firstline[100]){{
include_directories(include
${catkin_INCLUDE_DIRS}
/home/UserName/sigverse/include/sigverse
/home/UserName/sigverse/include/sigverse/comm/controller
)
}}
コントローラをビルドします。
$ cd <catkin_ws>
$ mkdir devel/lib/libros_if
$ catkin_make
次のコマンドでファイルが作成されたことを確認してください。
$ ll devel/lib/libros_if/sig_if_ctrl.so
ファイルが存在しない旨のメッセージが表示される場合は、cat...
$ cp src/ros_if/ros_world.xml devel/lib/libros_if/
** SIGVerseの起動 [#y0140483]
まず、これまでに作業を行っていた端末(terminal)とは別に新...
$ roscore
起動が確認できたら、別のウィンドウあるいはタブで新しく端...
$ cd <catkin_ws>
$ source devel/setup.bash
$ cd devel/lib/libros_if
$ sigserver.sh -w ./ros_world.xml
** SIGViewerの起動とシミュレーションの開始 [#ad807c4c]
- 各自のSIGViewerを立ち上げます。これまでのチュートリアル...
- ホストとの接続が正常にできていることが確認されたら、シ...
- ※このチュートリアルではビューアはSIGVerse世界をモニタす...
** 制御ノードの起動 [#c2e4683e]
- 次に制御ノードを起動します。これは、TurtleSimとしてROS...
$ rosrun turtlesim turtle_teleop_key
すると、http://wiki.ros.org/ROS/Tutorials/UnderstandingTo...
Reading from keyboard
---------------------------
Use arrow keys to move the turtle.
と表示され、同端末はユーザからのキー入力待ち状態になりま...
- ここで、必要なノードが起動されているか確認してください...
$ rosnode list
によって行えます。これにより、同端末に
/ros_sig_node
/rosout
/teleop_turtle
と表示されることを確認してください
- ros_sig_node はSIGVerse内のオブジェクトを操作するための...
- rosout は roscoreを起動すると必ず生成されるノードです。
- teleop_turtle は「rosrun turtlesim turtle_teleop_key」...
** 制御ノードの動作確認 [#zf77a354]
- 次に、teleop_turtleノードを起動した端末をアクティブにし...
** メッセージ送受信の様子の図示 [#oaf8cdd9]
- ros_sig_node は teleop_turtleが発するメッセージをsubs...
$ rosrun rqt_graph rqt_graph
によって確認でき、次のような図をみることができます。
#br
#br
#ref(rosgraph_turtle.png)
#br
#br
これは、teleop_turtle ノードが turtle1/commad_velocity...
#highlight(end)
----
Up:[[Tutorial]] Previous:[[RoboCupCamp]]
#counter
Page: