1、创建软件包
catkin_create_pkg ssr_pkg rospy roscpp std_msgs
catkin_create_pkg:用catkin工具创建软件包
ssr_pkg:包名
依赖项 :rospy、roscpp //依赖项就是这两个地址(/opt/ros/noetic ~/catkin_ws/devel/)下的某个软件包。
rospy --->对python的支持
roscpp ---> 对C++的支持
std_msgs --->标准消息
执行后会 创建package.xml、CMakeLists.txt文件
ssr_pkg/include/ssr_pkg、ssr_pkg/src两个文件夹
2、创建节点
如创建一个超声波节点
在ssr_pkg/src文件下创建ultr_node.cpp<超声波节点> //超声波节点main函数所在处
#include <ros/ros.h>
int main(int argc, char *argv[])
{
ros::init(argc, argv, "ultr_node");
/*需要在CMakeLists.txt文件中添加库链接
target_link_libraries(ultr_node
${catkin_LIBRARIES}
)
*/
while (ros::ok()) { //使用ros::ok()才可以响应ros信号
printf("ultr_node running\n");
//--->code<---
}
return 0;
}
3、编译设置
在CMakeLists.txt文件文件中添加编译规则:
add_executable(ultr_node src/ultr_node.cpp)
//为这个package添加一个可执行文件
//ultr_node 这个可执行文件名称
//src/ultr_node.cpp 指定从这个文件开始编译
4、运行节点
roscore //启动ros核心
source ~/catkin_ws/devel/setup.bash //加载环境参数到终端
rosrun ssr_pkg ultr_node //运行ultr节点
5、其它
/opt/ros/noetic<ROS版本>/share/ 路径下软件包来源:
apt-get install ros-noetic-desktop-full指令安装的基础包
apt-get install ros-<ROS版本>-xxx 独立扩展包
通过apt下载的软件包都是现成的可执行文件,catkin工作空间中的都是源码文件需要编译成为可执行文件。
source /opt/ros/noetic/setup.bashr
//作用加载opt/ros/noetic中apt下载的软件包地址
source ~/catkin_ws/devel/setup.bash
//加载catkin_ws空间的软件包地址
//一般写在~/.bashrc