4、传感器接口与数据处理:摄像头接口(MIPI CSI、GMSL)、激光雷达接口(以太网、CAN)、毫米波雷达与超声波接口
传感器接口这块,说实话是嵌入式平台选型里最容易踩坑的地方。我见过不少团队,算力选得挺高,结果接口带宽不够,数据根本传不进来——那叫一个尴尬。
今天咱们就把摄像头、激光雷达、毫米波雷达、超声波这四类传感器的接口,掰开揉碎了讲清楚。
4.1 摄像头接口:MIPI CSI 与 GMSL
摄像头是自动驾驶的「眼睛」,数据量最大,实时性要求也最高。目前主流接口就两个:MIPI CSI 和 GMSL。
4.1.1 MIPI CSI(Camera Serial Interface)
MIPI CSI 是手机和嵌入式设备上最常见的摄像头接口。它走的是差分信号,用 D-PHY 或 C-PHY 物理层。
关键参数:
- 带宽:D-PHY v2.0 单 lane 最高 4.5 Gbps,4 lane 就是 18 Gbps。够跑 4K@60fps 没问题。
- 距离:一般不超过 30cm。超过这个距离信号就衰减得厉害。
- 适用场景:舱内摄像头、环视摄像头(如果布置得近)。
4.1.2 GMSL(Gigabit Multimedia Serial Link)
GMSL 是 Maxim(现 ADI)搞出来的串行器/解串器方案。说白了,就是把 MIPI 信号转成同轴电缆传输,距离能拉到 15 米以上。
为什么自动驾驶离不开 GMSL?
- 远距离传输:车规级线缆,15 米稳稳的。
- 抗干扰:同轴电缆屏蔽好,EMC 表现优秀。
- 双向通信:GMSL 支持反向通道,可以用来传控制信号、I2C、GPIO。
我个人习惯,前视、侧视、后视摄像头一律用 GMSL。环视如果离得近,可以用 MIPI CSI 省点成本。
- 平台必须支持 GMSL 解串器(比如 MAX9296A 或 MAX96712)。
- 确认解串器输出的 MIPI CSI 格式与 SoC 的 CSI 控制器匹配。
- 注意 GMSL 的线束成本——同轴电缆比 FPC 贵不少。
4.2 激光雷达接口:以太网与 CAN
激光雷达的数据量比摄像头小得多,但点云数据的处理方式完全不同。
4.2.1 以太网接口(主流)
现在 90% 的激光雷达都用以太网输出。为什么?因为点云数据本质上是 UDP 包流,以太网天然适合。
常见配置:
| 激光雷达型号 | 接口 | 带宽需求 | 数据格式 |
|---|---|---|---|
| Velodyne VLP-16 | 100Base-TX | ~10 Mbps | UDP 包 |
| Hesai Pandar64 | 1000Base-T | ~80 Mbps | UDP 包 |
| RoboSense RS-LiDAR-128 | 1000Base-T | ~150 Mbps | UDP 包 |
嗯,这里要注意:激光雷达的 UDP 包是「发完就不管」的。如果网络拥堵,丢包了怎么办?我建议在接收端做丢包检测和重传机制,或者干脆用双网口冗余。
4.2.2 CAN 接口(辅助)
CAN 接口在激光雷达上一般只用来传控制命令和状态信息。比如:
- 设置旋转速度
- 读取温度、电压
- 触发同步信号
数据量很小,CAN 2.0 就够了,CAN FD 更宽裕。但千万别指望用 CAN 传点云数据——带宽完全不够。
我曾经在一个项目里看到有人试图用 CAN 传激光雷达数据,结果一帧点云要传好几秒,那还做什么实时感知?
4.3 毫米波雷达接口
毫米波雷达的数据量介于激光雷达和超声波之间。主流接口是 CAN 或 CAN FD。
典型数据内容:
- 目标列表(每个目标有距离、速度、角度、RCS)
- 点云数据(部分高端雷达支持)
- 雷达状态(温度、故障码)
CAN FD 的带宽是 8 Mbps,传目标列表绰绰有余。但如果雷达输出点云(比如 4D 成像雷达),那 CAN FD 就有点吃力了,这时候可以考虑以太网。
- 确认雷达输出的数据量——目标列表还是点云?
- CAN FD 控制器要支持 ISO 11898-1:2015 标准。
- 如果走以太网,注意雷达的 UDP 包频率和大小。
4.4 超声波接口
超声波雷达最简单,也最容易被忽视。但它负责的是「最后一米」的感知,停车、泊车全靠它。
接口类型:
- UART:最常见。一根 TX、一根 RX,波特率 115200 或 460800。
- I2C:部分超声波传感器用,适合短距离多设备通信。
- LIN:车规级,适合车身网络。
数据格式也很简单:每个传感器返回一个距离值(毫米或厘米),外加一个回波强度。处理起来几乎不占 CPU。
但有个坑:超声波传感器容易受温度、湿度、风噪影响。我建议在驱动层做滤波,比如中值滤波或卡尔曼滤波,不然停车时距离值跳来跳去,用户体验很差。
4.5 接口选型总结
| 传感器类型 | 推荐接口 | 带宽需求 | 传输距离 | 关键注意点 |
|---|---|---|---|---|
| 摄像头(近距) | MIPI CSI | ~18 Gbps | <30 cm | 信号完整性、线缆长度 |
| 摄像头(远距) | GMSL | ~12 Gbps | ~15 m | 解串器兼容性、线束成本 |
| 激光雷达 | 以太网 | 10~150 Mbps | ~100 m | UDP 丢包、PTP 同步 |
| 毫米波雷达 | CAN FD / 以太网 | ~8 Mbps | ~40 m | 数据量评估、协议兼容性 |
| 超声波 | UART / I2C / LIN | <1 Mbps | ~5 m | 滤波算法、环境干扰 |
最后说一句:接口选型不是单纯看带宽,还要考虑线束成本、EMC 要求、平台支持情况。我建议在项目初期就做一个接口矩阵表,把每个传感器的接口需求、带宽、延迟要求列清楚,不然到后期改接口,那成本可就大了。