ROS備忘録_パッケージ,ノード,ローンチ作成
パッケージをつくる
cd ~/catkin_ws/src
catkin_create_pkg mypkg rospy
上図のコマンドでsrcフォルダの中にmypkgという名前のrospyというライブラリに依存したパッケージの作成が完了
![](https://assets.st-note.com/img/1661169170474-NSLLYgTYRe.png)
lsでディレクトリの様子をみるとたしかに新しいパッケージが生成されている。その中に入るとCMakelistsなどがすでに存在する。
vi package.xml
なれるまでは先にpackage.xmlを先に編集する。
maintainerとlicenseを編集する
![](https://assets.st-note.com/img/1661169309269-IxZP1wOmwP.png?width=1200)
ノードの作成、実行
このあとpythonでノードを作成していく場合は、scriptsという名称のディレクトリを作成する
mkdir scripts
この中にノードとなるプログラムをおいていく
![](https://assets.st-note.com/img/1661169603120-HVZGAJuj9g.png)
作成したノードをおいて、パーミッションを確認すると、フラグがたっていないことがわかる
![](https://assets.st-note.com/img/1661169923093-Jzc5dCAi7o.png?width=1200)
実行のパーミッションを与えて、再度確認するとフラグが立っている
下記のコマンドでパーミションを与える
chmod +x joy_to_twist.py
![](https://assets.st-note.com/img/1661170001753-aCAhENh7Uh.png?width=1200)
実行権限を付与できたら下記のコマンドでノードを実行する。
このときのディレクトリはどこでもいい
rosrun mypkg joy_to_twist.py
実行すると特に出力画面には何も表示されない
そこで、実行されているかどうかを確認していく
![](https://assets.st-note.com/img/1661170570795-lwIh85nPHk.png)
下記のコマンドで実行されているノードのリストを確認すると、
rosnode list
下図のように先程実行したノードがリストに表示される
![](https://assets.st-note.com/img/1661170614010-xAQmsWIo99.png)
下記のコマンドでトピックのリストを表示すると、
rostopic list
ノード内で定義されたトピックがリストに表示される
ここでは、/joyと/turtle1/cmd_vel
![](https://assets.st-note.com/img/1661170717894-1qoHquEfxX.png)
ローンチファイルの作成
下記のコマンドでディレクトリをひとつつくる
cd catkin_ws/src/mypkg/
mkdir launch
下図のようにディレクトリが作成されたら、その中に作成したローンチファイルを置いていく。
![](https://assets.st-note.com/img/1661171452728-ywSwn2CpOk.png)
下図のコマンドでローンチファイルを実行すると、ファイル内に記述したノードたちが指定したオプションに従って起動する。
roslaunch mypkg joy_lesson.launch
![](https://assets.st-note.com/img/1661172076203-Acw77v139z.png?width=1200)
この記事が気に入ったらサポートをしてみませんか?