:この記事でから来てhttp://wiki.ros.org/ROS/Tutorials/UnderstandingNodes
- 図(グラフ)概念の概要
- ノード(ノード):ROSノードを下記する他のノードROSとの通信に使用される実行可能プログラムです。
- メッセージ(メッセージ):購読または主題にデータ型を使用した場合のデータ構造を公開します。
- トピックス(トピックス):ノードは、トピック、テーマにメッセージを公開したり、他のノードとのデータ交換を実現するために、メッセージを受信するために購読することができます。
- ホストノード(マスター):ホストノードは他のノードにノードを見つけやすくするためのサービスを提供して命名します。
- ROS出力(rosoutは):ROSでSTDOUTまたはstderr(ROSで標準出力)と同等です
- ROSコア(roscore):ホストノード+ +標準出力パラメータサーバ。
- コアROS(roscore)
roscoreは、あなたが他のノードが実行する前にroscoreを実行する必要があり、コマンドROSの実行を使用することです。
$のroscore ... /home/shao/.ros/log/93b4e9f2-d146-11e9-a3fd-69f079ca327f/roslaunch-UAVlab1-13621.logするためにログインする ディスクの使用状況のログディレクトリを確認します。これは時間がかかる場合があります。 割り込みにCtrl-Cを押して 、ログファイルのディスク使用量をチェック完了。使用方法は、<1ギガバイトです。 開始roslaunchサーバーのhttp:// UAVlab1:40901 / ros_commバージョン1.12.14 概要 ======== パラメータ * / rosdistro:運動 * / rosversion:1.12.14は NODES 自動始まる新しいマスター・ プロセスを[マスター]:開始PID [13631] ROS_MASTER_URI =のhttp:// UAVlab1:11311 / 93b4e9f2-d146-11e9-a3fd-69f079ca327fが設定/ RUN_IDに プロセスは、[rosout-1]:PID [13644]で開始 開始したコアサービス[/ rosout]
図に示すように、成功した操作の後。
- rosnodeコマンド
rosnodeコマンドを使用して、情報のROSノードを表示することができます。たとえば:rosnode listコマンドリスト実行しているノードをROS。
以下のように、新しいターミナルを開く、実行rosnodeリスト:
$ rosnodeリスト / rosout
図から分かるように、rosoutノードがあり、コマンドをroscoreを開始します。
情報ROSノードを表示するrosnode infoコマンドを使用します。$のrosnode情報/ rosout --------------------------------------------- ----------------------------------- ノード[/ rosout] 出版: * / rosout_agg [rosgraph_msgs /ログイン] サブスクリプション: * / rosout [不明なタイプ] サービス: * / rosout / get_loggers * / rosout / set_logger_level 連絡ノードのhttp:// UAVlab1:42313 / ... でPid:13644
-
rosrun実行ノード
次のようにコマンド構文を実行することができますrosrun ROSノードは次のとおりです。
$ rosrun [パッケージ名] [NODE_NAME]
問題の文書の公式ウェブサイトは、右のは次のようになります。
rosrun <パッケージ> <実行>
その第二の引数は、実行プログラム名、ノード名は必ずしも同一ではありません。
新しいターミナルを開き、実行します。$ rosrun turtlesim turtlesim_node
小亀は自分自身が登場しました。
次に見ることができるrosnodeを使用します。
$のrosnodeリスト / rosout / turtlesim
あなたはturtlesimのノード以上のものを見ることができます。
その後、パラメータはノードの名前に変更することができリマップ、新しいターミナルを開きます。$ rosrun turtlesim turtlesim_node __name:= my_turtle
そして、rosnodeリストを実行します
$のrosnodeリスト / my_turtle / rosout / turtlesim
あなたは、複数のノードのmy_turtleを見ることができます。
pingコマンドと同様ノードと、の間の通信を確認するrosnodeのpingコマンドを使用します。$のrosnodeピング/ my_turtle rosnode:ノードが[/ my_turtle]は 3.0sのタイムアウト付きのping / my_turtle // UAVlab1:43947 /時間= 0.296116ms HTTPからXML-RPC応答 HTTPからXML-RPC応答:// UAVlab1:43947 /時間= 0.949144ms のhttpからXMLRPC応答:// UAVlab1:43947 /時間= 0.707150ms のhttpからXMLRPC応答:// UAVlab1:43947 /時間= 0.704050ms のhttpからXMLRPC応答:// UAVlab1:43947 /時間= 1.071930ms