差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
| ros:study:00 [2018/04/13 07:03] – [roslaunch] tsukuchalle | ros:study:00 [2018/04/20 01:51] (現在) – [ノード] tsukuchalle | ||
|---|---|---|---|
| 行 13: | 行 13: | ||
| ~/ | ~/ | ||
| source ~/ | source ~/ | ||
| - | | + | 一度端末を閉じて,開き直して,.bashrcの変更を反映する. |
| + | cd ~/ | ||
| + | catkin_make | ||
| ===== 環境変数 ===== | ===== 環境変数 ===== | ||
| ROSは環境変数をパッケージの検索などに使っているので, | ROSは環境変数をパッケージの検索などに使っているので, | ||
| 行 27: | 行 30: | ||
| 例として,ros_studyというパッケージを作る. | 例として,ros_studyというパッケージを作る. | ||
| cd ~/ | cd ~/ | ||
| - | catkin_create_pkg ros_study std_msgs sensor_msgs nav_msgs roscpp | + | catkin_create_pkg ros_study std_msgs sensor_msgs nav_msgs |
| std_msgs以降の引数は依存パッケージを指定している. | std_msgs以降の引数は依存パッケージを指定している. | ||
| ===== roscore ===== | ===== roscore ===== | ||
| ==== roscore ==== | ==== roscore ==== | ||
| - | (ROSを使うときに最初に実行するコマンド,rosoutというノードが起動する) | + | (ROSを使うときに最初に実行するコマンド,rosout, |
| roscore | roscore | ||
| roscoreを行っている間はその端末では他のコマンドが実行できないので,別の端末を起動する.\\ | roscoreを行っている間はその端末では他のコマンドが実行できないので,別の端末を起動する.\\ | ||
| 行 105: | 行 108: | ||
| === rosrun === | === rosrun === | ||
| - | rosrun ros_study ros_study_node | + | rosrun ros_study ros_study_node |
| でros_studyという名前のパッケージにあるros_study_nodeという名前のノードを実行する.\\ | でros_studyという名前のパッケージにあるros_study_nodeという名前のノードを実行する.\\ | ||
| 後で使うので実行したまま,別の端末を起動する. | 後で使うので実行したまま,別の端末を起動する. | ||
| 行 114: | 行 117: | ||
| ===== topic ===== | ===== topic ===== | ||
| - | ノード間で非同期的にやり取りされるデータ | + | ノード間で非同期的にやり取りされるデータをメッセージと呼ぶ.\\ |
| + | メッセージの送信先の指定はtopicによって行われる.\\ | ||
| + | topicはwebサービスにおけるアドレスに似ている. | ||
| === topic一覧の表示 === | === topic一覧の表示 === | ||
| rostopic list | rostopic list | ||
| - | === topicの中身の表示 === | + | === topicに送られたデータの表示 === |
| 例としてros_study_node/ | 例としてros_study_node/ | ||
| - | rostopic echo ros_study_node/ | + | rostopic echo ros_study_node/ |
| 後で使うので実行したまま,別の端末を起動する. | 後で使うので実行したまま,別の端末を起動する. | ||
| 行 154: | 行 159: | ||
| === launchファイル === | === launchファイル === | ||
| 例えば,以下のようなファイルを作る.\\ | 例えば,以下のようなファイルを作る.\\ | ||
| - | pkgにはパッケージ名,\\ | ||
| - | nameには適当に理解しやすい固有名(ノード名と同じでも可),\\ | ||
| - | typeにはノード名を指定する.\\ | ||
| - | paramタグを使ってパラメータを指定する.\\ | ||
| ~/ | ~/ | ||
| < | < | ||
| 行 181: | 行 182: | ||
| </ | </ | ||
| </ | </ | ||
| + | pkgにはパッケージ名,\\ | ||
| + | nameには適当に理解しやすい固有名(ノード名と同じでも可),\\ | ||
| + | typeにはノード名を指定する.\\ | ||
| + | paramタグを使ってパラメータを指定する.\\ | ||
| + | remapタグを使ってトピック名を変更する.\\ | ||
| === launchファイルを実行する === | === launchファイルを実行する === | ||
| roslaunch ros_study apple.launch | roslaunch ros_study apple.launch | ||
| 別の端末で | 別の端末で | ||
| - | | + | |
| さらに別の端末で | さらに別の端末で | ||
| rostopic pub john_node/ | rostopic pub john_node/ | ||
| - | すると, | + | すると,data: |
| - | | + | rosrun rqt_graph rqt_graph |
| - | と表示される. | + | すると,メッセージが受け渡される流れを確認できる. |