博客摘录于:机器人操作系统(ROS)浅析–[美] Jason M. O’Kane 著–肖军浩 译

第三章 编写ROS程序

前两章的摘录,其实就是想提醒下学习ROS前期过程中可能遇到的问题以及部分困惑。
catkin_create_pkg pkg-name

其实,这个功能包创建命令没有做太多工作,它只不过创建了一个存放这个功能包的目录,并在那个目录下生成了两个配置文件。
第一个配置文件,叫做package.xml,清单文件。
第二个文件,叫做CMakeLists.txt,是一个Cmake的脚本文件,Cmake是一个符合工业标准的跨平台编译系统。这个文件包含了一系列的编译指令,包括应该生成哪种可执行文件,需要哪些源文件,以及在哪里可以找到所需的头文件和链接库。当然,这个文件表明catkin在内部使用了Cmake。

ROS包的命名遵循一个命名规范,只允许使用小写字母、数字和下划线,而且首字符必须是一个小写字母。一些ROS工具,包括catkin,不支持那些不遵循此命名规范的包。
24 geometry_msgs : : Twist msg ;
25 msg.linear . x = double ( rand ( ) ) / double (RAND_MAX) ;
26 msg.angular.z = 2* double ( rand ( ) )/double (RAND_MAX) − 1 ;
27
28 // Publish the message .
29 pub . publish ( msg ) ;
msg消息发布相关运动
ros::Subscriber
15 int main ( int argc , char ** argv ) {
16 // Initialize the ROS system and become a node .
17 ros::init ( argc , argv , " subscribe_to _pose " ) ;
18 ros::NodeHandle nh ;
19
20 // Create a subscri ber obj ect .21 ros::Subscriber sub = nh.subscribe ( " turtle1/pose " ,1000,
22 &poseMessageReceived ) ; //CallBack;
23
24 // Let ROS take over .
25 ros::spin ( ) ;

对ROS进行消息机制的处理中,需要清晰明白的了解自己想发布和订阅的节点,或者自己定义,通过遵循ROS的机制即可,中途对msg的应用需要留意下。

ROS-机器人操作系统(ROS)浅析----第三章相关推荐

  1. ROS机器人操作系统学习笔记(三)ROS通信架构

    ROS机器人操作系统学习笔记(三)ROS通信架构 ROS的通信架构是ROS的灵魂,也是整个ROS正常运行的关键所在.ROS通信架构包括各种数据的处理,进程的运行,消息的传递等等.本章主要介绍了通信架构 ...

  2. ROS 机器人操作系统进阶实战

    ROS(Robot Operating System) 是一个开源的机器人操作系统,目的是提供开发平台.工具及生态给开发人员,可以让开发人员快速开发.本课程通过精心设计的案例,分析技术要点.理解运行原 ...

  3. ROS机器人从零开始——ROS的认识与理解

    ROS机器人从零开始--ROS的认识与理解 **说明:博客的主要目的是帮助想要学习ROS的朋友建立一套系统的ROS学习流程,快速的掌握基于ROS的开发过程,避免走弯路.本系列博客记录了ROS的仿真学习 ...

  4. 一文读懂自动驾驶中的机器人操作系统ROS

    一.什么是机器人操作系统ROS 1.ROS(Robot Operating System)是一个操作系统 ROS是对机器人的硬件进行了封装,不同的机器人.不同的传感器,在ROS里可以用相同的方式表示( ...

  5. 机器人操作系统ROS 编程开发--详细总结

    最近工作涉及到自动驾驶的,需要学习ROS,学习中总结了一些知识点,分享给大家. ROS基本介绍 机器人操作系统ROS,是一种分布式处理框架(又名Nodes),ROS常用C++和python编程语言开发 ...

  6. 机器人操作系统ROS(4)话题编程

    此节的前提是已经创建好工作空间,请参考 工作空间 一.话题通讯模型 二.话题编程实现 1. 实现发布者(Talker) a.在~/catkin_ws/src/learning_communicaton ...

  7. 从零打造一个机器人002【初识机器人操作系统--ROS】

    从零打造一个机器人002[初识机器人操作系统–ROS] 1.ROS是什么 ROS是一个适用于机器人的开源的元操作系统.其实它并不是一个真正的操作系统,其底层的任务调度.编译.寻址等任务还是由Linux ...

  8. 使用机器人操作系统ROS 2和仿真软件Gazebo 9搭建机器人教程(一)

    参考链接:https://github.com/bunchofcoders/basic_bocbot 本文为使用ROS 2和Gazebo9搭建仿真机器人详细指南. 确保已按如下说明安装ROS和Gaze ...

  9. <笔记>机器人操作系统ROS理论与实践--第一讲:认识ROS

    <笔记>机器人操作系统ROS理论与实践--第一讲:认识ROS 前言 一.为什么需要ROS 二.ROS的总体设计 1.一个目标 2.五个特点 3.四位一体 三.ROS的系统实现--三个层次 ...

  10. 机器人操作系统ROS—深度相机+激光雷达实现vSLAM建图与导航 转载

    原文:机器人操作系统ROS-深度相机+激光雷达实现vSLAM建图与导航_wx5d23599e462fa的技术博客_51CTO博客 这次将带大家学习如何使用深度相机实现机器人的视觉SLAM建图及导航. ...

最新文章

  1. puppet运维自动化之yum仓库管理
  2. 什么是m叉树_重型货架是什么?重型仓储货架介绍
  3. AndroidStudio2.2 Preview3中NDK开发之CMake和传统 JNI在目录结构和配置文件上的区别
  4. 数据结构 递归讲解
  5. 仿windows造字程序的 ASP.NET图片组合生成控件
  6. Go 语言新提案:添加模糊测试支持
  7. 微信公众号页面支付接口java,[Java教程]微信公众号支付(三):页面调用微信支付JS并完成支付...
  8. [转载]----linux系统工程师的前途在哪里?
  9. LeetCode 474. Ones and Zeroes 动态规划解法+拓展
  10. pytest框架实现一些前后置(固件,夹具)的处理
  11. t3显示乱码_打开T3出现乱码是什么原因,如下图
  12. 一个Java对象到底占多大内存?
  13. 全网最详细教程(上):教你如何从0-1制作出一张可视化大屏
  14. 设计在链式存储结构上交换二叉树中所有结点左右子树的算法
  15. 建筑工地使用的人脸识别门禁实名制管理系统是什么
  16. 0006 -求三个数的平均数
  17. Unity VR游戏教程
  18. 宋宝华:世上最好的共享内存(Linux共享内存最透彻的一篇)
  19. 【简陋Web应用3】实现人脸比对
  20. app四种开发模式区别,网页链接转app优缺点

热门文章

  1. C++餐厅点餐结算系统
  2. LPC2124单片机的基础操作——GPIO、外部中断、定时器和串口
  3. word文档如何插入公式编号并对齐
  4. notebook 实现3d可视化
  5. 人工神经元算法视频教学,人工智能神经网络算法
  6. gcc连接脚本 ld.info
  7. 如何制定IT灾难恢复计划
  8. C Primer Plus 第六版---编程练习2
  9. 1,Nginx负载均衡策略upstream,六种策略
  10. 转载】泡MM与GOF的23种模式(看着挺有意思)