ROS學習(三)——建立一個簡單的發布節點和訂閱節點,ros節點
暑假在家有些懈怠,不,非常懈怠— —||!良心已經發痛了,想快些補回原來的進度,但忽然發現,中斷了一段時間再重新去學習,有的地方連最基本的符號都忘記了
,這次特意弄個最最基礎的,恢複一下,以前的進度。
1.建立一個工作空間
$ mkdir -p ~/catkin_xi/src$ cd ~/catkin_xi/src
在home檔案夾裡面發現建立好了相應的檔案夾,當然裡面,空空的,什麼都沒有。
接著,使用catkin_make命令在catkin 工作空間中建立檔案夾,目前的目錄應該能看到'build'和'devel'這兩個檔案夾。在'devel'檔案夾裡面你可以看到幾個setup.sh檔案。
$ cd ~/catkin_xi/$ catkin_make
然後source一下,setup.sh檔案。
把路徑切換到src的路徑下,
$ cd ~/catkin_ws/src
$ catkin_create_pkg beginner_tutorials std_msgs rospy roscpp
用這個命令建立一個名為'beginner_tutorials'的新程式包,這個程式包依賴於std_msgs、roscpp和rospy。這將會建立一個名為beginner_tutorials的檔案夾,這個檔案夾裡麵包含一個package.xml檔案和一個CMakeLists.txt檔案,這兩個檔案都已經自動包含了部分你在執行catkin_create_pkg命令時提供的資訊。
使用rospack命令工具來查看一級依賴包。
$ rospack depends1 beginner_tutorials
當然,這可能會遇到一個問題,就是發生錯誤,輸入這個代碼,可以糾正。
$ source devel/setup.bash
rospack列出了在運行catkin_create_pkg命令時作為參數的依賴包,這些依賴包隨後儲存在package.xml檔案中。直接開啟這個檔案,在裡面粘貼,
<?xml version="1.0"?><package>... <buildtool_depend>catkin</buildtool_depend> <build_depend>roscpp</build_depend> <build_depend>rospy</build_depend> <build_depend>std_msgs</build_depend> <run_depend>roscpp</run_depend> <run_depend>rospy</run_depend> <run_depend>std_msgs</run_depend>...</package>
一個程式包還可以有好幾個間接的依賴包,幸運的是使用rospack可以遞迴檢測出所有的依賴包。
之後呢,建立個簡單的發布節點和訂閱節點
$ roscd beginner_tutorials$ mkdir src$ touch src/talker.cpp
同樣,建立訂閱節點也是這樣
$ cd beginner_tutorials$ touch src/listener.cpp