【Apollo】【driver】【canbus】适配非canbus设备的方式

本文介绍了如何在Apollo自动驾驶系统中适配非CAN总线设备,特别是通过serial通信的方式。首先,理解can_client是与设备交互的关键,它支持三种通信方式。以新增serial通信为例,需在指定目录下创建相应文件和实现类,同时更新BUILD编译脚本。完成这些步骤后,可在sensors模块中如毫米波雷达一样应用新通信方式,参考已有socket通信方案和相应配置文件进行调整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,要明白只有can_client才会与设备通信,在apollo中can_client提供了三种通信方式

  enum CANCardBrand {
    FAKE_CAN = 0; //假的数据通信,一般模拟使用
    ESD_CAN = 1; //esd canbus卡通信
    SOCKET_CAN_RAW = 2; //socket 通信,在gem车上使用
  }

需要新增的通信方式,以serial为例

1.在modules/drivers/canbus/proto/can_card_parameter.proto 中新增如下

  enum CANCardBrand {
    FAKE_CAN = 0; 
    ESD_CAN = 1; 
    SOCKET_CAN_RAW = 2; 
    SERIAL_CAN = 3; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值