ROS编程

1.#include <ros/ros.h>,只有包含了头文件,才能在程序里调用头文件里提供的库函数,头文件里包括以下功能函数:
ros::init() : 解析传入的ROS参数,从而初始化节点的名称和其他信息,一般我们ROS程序一开始都会以这种方式开始。
ros::NodeHandle : 和topic、service、param等交互的公共接口,节点的句柄(相当于51单片机里边的EA),只有有了它才可以用来创建Publisher、Subscriber以及用来对当前节点进行各种操作。
ros::master : 包含从master查询信息的函数
ros::this_node:包含查询这个进程(node)的函数
ros::service:包含查询服务的函数
ros::param:包含查询参数服务器的函数,而不需要用到NodeHandle
ros::names:包含处理ROS图资源名称的函数
ros::shutdown()手动关闭rosnode/ctrl+c
2.以下是常见的一个ROS程序的执行步骤:
#include<ros/ros.h>
int main(int argc, char** argv)
{
    ros::init(argc, argv, "your_node_name"); 
    ros::NodeHandle nh;
    //....节点功能
    //....
    ros::spin();//用于触发topic、service的响应队列
    return 0;
}
3.Topic通信
应用场景:传感器数据收发,速度控制指令的收发...
编程过程,先创建消息结构体文件,然后通过编译生成,消息头文件,之后可被节点程序引用。服务同理

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值