Apollo ROS

3 篇文章 0 订阅
1 篇文章 0 订阅
  • ROS概述
  • Apollo ROS原理
  • ROS深入介绍
  • Apollo框架使用

目录

ROS概述

机器人操作系统的历史

核心概念

基础message 类型

首先启动 ROScore

编译系统——基于cmake

Apollo ROS原理

通信性能优化

去中心化网络拓扑

数据兼容性扩展

ROS深入介绍

ROS packages基本组成方式

CMakeLists怎么去编译ROS工程

hello world

subscriber例子

Publisher例子

其他通讯方式

可视化工具

Apollo框架使用

TF坐标系转换

RQT用户接口

机器人模型(URDF)

仿真中的描述(SDF)

其他使用比较广泛的概念


 

ROS概述

     

从不同模块的数据交互 到车的决策控制

ROS是基于消息机制的,从子模块都构建构成

     

 ROS Overview

       

机器人操作系统的历史

松耦合、点对点,嵌入式,跨语言、轻量级、开源框架

            

核心概念

节点(node):算法模块(感知)—— 不同节点相互独立、相互通信 

节点管理器(ROScore):cpu 节点之间建立通信连接

主题(topic):包含各种信息  通讯时候的不同数据类型文件

             

基础message 类型

                   

首先启动 ROScore

  • Roslaunch 启动各个节点
  • Talker 启动发送节点程序
  • Rostopic info 启动主题订阅
  • listener 启动接受信息

编译系统——基于cmake

              

launch文件

              

Gazebo 仿真工具

               

Apollo ROS原理

ROS能否满足工程需求?

  • 大数据量传输性能瓶颈
  • 单中心的网络存在单点风险
  • 数据格式缺乏后向兼容

                                                       

通信性能优化

由于通信的性能问题,大数据量会在通信时会有延迟。

在自动驾驶中,一个传感器数据(camera)可能会有很多的节点去订阅。

之前的ROS在多个订阅 会做很多的复制。

Apollo 共享内存减少了多次数据copy。

             

               

            

去中心化网络拓扑

原生ROS以Master为中心(过程太多,建立联系时太依赖master)(在多机系统更加不适应)

Apollo建立一个点对点的复杂网络拓扑

                

RTPS服务 (通知各个节点,有新的节点加入/退出)

      

流程

                 

                  

数据兼容性扩展

原生ROS使用 Message 描述组件接口语言(接口升级,接口难以兼容)

Apollo引入一个新的消息买描述格式 Protobuf (tensorflow)

                            

         

ROS深入介绍

ROS packages基本组成方式

         

package 定义了可执行文件中依赖的一些库,软件版本,开发信息

               

CMakeLists怎么去编译ROS工程

                 

hello world

nodehaddle 句柄指针

        

subscriber例子

接收方。使用回调函数

         

Publisher例子

         

每个节点都是复杂的交互过程,既有发送,又有接收

其他通讯方式

service

  

parameter

主动去get 参数

       

可视化工具

rviz 也可以当作其中的一个节点

       

Apollo框架使用

TF坐标系转换

节点是松耦合的关系,在系统中是独立运行的。每个节点有其自己的坐标系。

相对独立的坐标系,转化到一个坐标系

      

 控制行命令   TF转换树   可视化

             

               

RQT用户接口

R QT 可视化

             

常用工具

rqt_image_view 实时看camera中的图像数据

              

rqt_multiplot(转化为二维坐标系)

                     

rqt_graph 节点显示(tensorflow)

                

日志系统

          

           

机器人模型(URDF)

统一机器人格式描述语言

            

 

               

仿真中的描述(SDF)

 

      

其他使用比较广泛的概念

Services(list call)

           

                 

                 

Actions(多一个取消的功能)

         

Time

                

Bags(录制数据,比较、)

                    

Debug

                  

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值