CyberRT 使用指南

一、CyberRT 概述

Apollo Cyber RT 是百度 Apollo 团队专为自动驾驶场景设计的开源高性能运行时框架。它基于集中式计算模型,针对自动驾驶的高并发、低延迟、高吞吐量需求进行了深度优化。

核心设计目标

  • 加速开发: 提供明确的任务接口、数据融合机制和丰富的开发工具
  • 简化部署: 高效的自适应消息通信、资源感知的调度器、更少的依赖
  • 赋能自动驾驶: 为自动驾驶量身定制的组件和架构

二、CyberRT 核心架构组件

1. Component (组件机制)

Component 是 CyberRT 中最小的功能执行单元,所有模块(感知、定位、规划、控制等)都以 Component 形式存在。

两种类型:

  • 普通 Component: 支持最多 4 路消息融合,基于主 Channel 消息触发执行
  • TimerComponent: 定时触发执行,不依赖消息到达

核心特点:

// Component 示例
class ComponentSample : public Component<Driver, Chatter> {
 public:
  bool Init() override;  // 初始化:创建 Node、Reader、Writer
  bool Proc(const std::shared_ptr<Driver>& msg0,
            const std::shared_ptr<Chatter>& msg1) override;  // 核心逻辑
};
CYBER_REGISTER_COMPONENT(ComponentSample)  // 注册组件

优势:

  • 通过 DAG 文件配置依赖关系和参数,支持动态加载
  • 可通过 launch 文件灵活部署到不同进程
  • 算法与工程解耦,算法专注算法,工程专注工程

2. Channel (通道通信)

  • 用于 Component 间的数据通信
  • 支持 Publisher/Subscriber 模式实现点对点通信
  • 基于 共享内存 (本地) 和 FastDDS (跨机)

3. Node (节点)

  • Cyber RT 的基本组成单元
  • 每个模块包含一个 Node,通过定义 Reader/Writer 或 Se
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值