Twist: 一种消息类型,用于表示机器人的线速度和角速度
Topic :总线管道 将消息传到Subscriber中
1. 创建功能包
geometry_msgs
2.创建发布者代码
3.配置发布者代码编译规则
add_executable(velocity_publisher publisher/velocity_publisher.cpp)
,指定了要创建的可执行文件的名称为velocity_publisher,以及该文件的源代码文件为publisher/velocity_publisher.cpp。此命令告诉CMake编译器如何生成可执行文件。
target_link_libraries(velocity_publisher ${catkin_LIBRARIES} )
,指定了链接到velocity_publisher可执行文件中的库
${catkin_LIBRARIES}
是一个变量,代表了catkin工具链的库文件。Catkin是ROS(机器人操作系统)的构建系统,用于构建ROS包。${catkin_LIBRARIES}
变量包含了所需的ROS库,例如roscpp和std_msgs等。
4.编译并运行发布者
4.1编译
cd ~/catkin_ws
catkin_make
4.2设置环境变量
source devel/setup.bash #需要配置环境变量,否则系统无法找到运行程序
注:每次运行都需要设置环境变量,如果嫌麻烦可以:
- 在主目录下
- ctrl+h显示隐藏文件
- 找到".bashrc"文件,打开
- 在文件最后位置加上“source /home/xxx/catkin_ws/devel/setup.bash”
- 此处路径要全,xxx表示用户名
4.3运行发布者
roscore
rosrun 功能包名 节点名
rosrun turtlesim turtlesim_node
rosrun learning_topic velocity_publisher