一、win11中点击ubuntu20.0(没有安装和环境配置的朋友可以看我的上一篇文章)
二、在ubuntu子系统的终端创建文件
2.1 创建一个工程文件名里面包含src,进入创建的工程文件中,执行catkin_make来自动创建ros基本的配置文件
mkdir -p TopicCommunication/src
cd TopicCommunication/
catkin_make
三、点击vscode
3.1先将vscode连接上子系统ubuntu
3.2 打开前面创建的工程文件
3.3用catkin_make编译
四、创建功能包
4.1 创建plumbling_pub_sub名的功能包
4.2 依赖的文件
roscpp rospy std_msgs
4.3在功能包里面下的src创建源文件
4.4对源文件编程
(与图片相比增加了功能)
#include "ros/ros.h"
#include "std_msgs/String.h"
#include <sstream>
/*
发布方实现
1.包含头文件
ROS中的文本类型 -->std_msgs/String.h
2.初始化 ROS 节点;
3.创建节点
4.创建发布者对象
5.编写发布逻辑并发布数据
*/
int main(int argc,char* argv[])
{
//2.初始化 ROS 节点;
ros::init(argc,argv,"Send_Information_Person");
//3.创建节点
ros::NodeHandle nh;
//4.创建发布者对象
ros::Publisher pub=nh.advertise<std_msgs::String>("fang",10);
//5.编写发布逻辑并发布数据
//以10HZ发布数据,并且文本添加编号
//先创建被发布的消息
std_msgs::String msg;
//发布频率
ros::Rate rate(10);
//设置编号
int count=0;
//编写一个循环,循环中发布数据
while (ros::ok())
{
count++;
std::stringstream ss;
ss<<"hello-->"<<count;
msg.data=ss.str();
pub.publish(msg);
//添加日志
ROS_INFO("SengInformation:%s",ss.str().c_str());
rate.sleep();
ros::spinOnce();//官方建议,处理回调函数
}
return 0;
}