Cyber_RT

发布时间 2023-09-18 18:57:01作者: 辰令

Cyber RT

Apollo8.0的架构图,软件核心层中,感知、规划、控制等模块的存在使得汽车具备了类人的驾驶能力
  

  Apollo ROS(Apollo 3.0及之前版本)迁移到Apollo Cyber RT(Apollo 3.5及之后版本)
  ROS基于CMake来构建系统,在ROS项目中,需要CmakeLists.txt和package.xml来定义构建配置
  Cyber RT则是基于Bazel。BUILD文件的作用相当于CMakeLists.txt加上package.xml
         Bazel是Google研发的一款开源构建和测试工具,也是一种简单、易读的构建工具
  Cyber RT中,数据文件从ROS Bag更改为Cyber Record。
     Cyber RT有一个数据迁移工具rosbag_to_record,用户可以很容易地将Apollo 3.0 (ROS)之前的数据文件保存到Cyber RT
Cyber-RT   Cyber RT(Robotic Technology)
    Apollo实现的基础库,比如有Lock-Free的对象池,Lock-Free的队列
  服务发现和Publish-Subscribe通信机制
###工具
     Cyber Monitor:   cyber_monitor -h
     Cyber Visualizer
     Cyber Recorder     cyber_recorder   cyber_recorder info -h
     rosbag_to_record   rosbag_to_record input.bag output.record
   cyber_node list	  cyber_channel	cyber_launch
	 
对比:		 
  channel-record
  Topic--bag
 ###Ros bag

MDC bag

 MDC提供了rtfevent系列工具,对标ros系列工具:rtfnode rtfevent rtfbag	  
 MDC提供了mviz可视化工具,对标rviz,可显示2D/3D检测结果
  https://bbs.huaweicloud.com/forum/thread-97739-1-1.html

通信机制-多源异构数据如何在芯片之间、在各任务进程之间高效、稳定地传递

以消息为中心:TCP协议 UDP传输协议   面向信号的CAN CAN(Controller Area Network
  MQTT(Message Queue Telemetry Transport):MQTT是一种轻量级的、基于发布-订阅模型的通信协议和中间件

SOME/IP和DDS这种“以服务/数据为中心”的发布和订阅模式,开发者们只需明确我需要什么样的数据、数据传到哪儿
    闭源的通信中间件主要有Vector公司的SOME/IP、RTI公司的DDS等;
	开源的通信中间件主要有OPEN DDS、FAST DDS、Cyclone DDS等
SOME/IP
  :Scalable service-Oriented MiddlewarE over IP,是一种面向服务的传输协议
DDS提供了发布-订阅模型,允许分布式系统中的实体以实时和可靠的方式共享数据。
 而在DDS生态系统中,Fast DDS和OpenDDS是两个备受关注的开源实现
      ROS 2 的大多数版本使用 Fast DDS 作为中间件
	  OpenDDS是一个基于C++的DDS实现
CyberRT中的DDS

通讯协议和格式定义

中间件解决方案
面向服务的通信协议
    中间件解决方案-:Data Distribution Service 数据分发服务
    DDS 已经广泛用于 战列舰、大坝等大型公用设施、金融系统、空间系统、飞行系统、火车总机系统	
    
    DDS 是一个 DCPS (Data-Centric Publish Subscribe) 模型,
      其中包括Participant, Publisher, Subscriber, DataWriter, DataReader, Topic等概念
Xaver、Orin等面向自动驾驶的SOC芯片上也都预留了DDS接口  

相关协议

 GSML 相机高速传输接口(硬件),包括编码器和解码器
 IP类型的网络环境  共享内存、跨核通讯、PCI-e等网络类型
 autosar是汽车软件协会制定的一套软件标准
     1.上层应用层(Application Layer)
     2.中间件RTE(Runtime Environment): 中间件主要是一些通信比如dds、somip、iceoryx等
     3.下层的基础软件(Basic Software)

Real Time OS 实时操作系统

 RTOS(Real Time OS 实时操作系统
  QNX

硬件层

华为:VDC(智能车控平台)负责整车和底盘域,MDC(智能驾驶平台)负责自动驾驶域,CDC(智能座舱平台)负责娱乐域。
百度:
地平线
英伟达

参考

通信中间件,DDS与SOME/IP 谁主沉浮  https://course.zhidx.com/download/detail/NzU0NTJkMDk5YzRkMmQzNzg0MDI=
华为MDC相关思考  https://zhuanlan.zhihu.com/p/544718464
cyber record包解析工具 https://zhuanlan.zhihu.com/p/499516617
https://cyber-rt.readthedocs.io/en/latest/CyberRT_API_for_Developers.html
https://github.com/daohu527/cyber_record/tree/main/cyber_r