低速自动驾驶全栈科研平台:软硬件一体化搭建与实车闭环验证
TL;DR 面向低速自动驾驶研究,搭建集感知、定位、规划与控制于一体的乘用车和四轮独立转向 AGV 实验平台。
自主搭建的双形态自动驾驶科研实车平台:打通全传感器套件、车载边缘计算与线控底盘全栈架构。自动驾驶算法研究在仿真环境之外,需要面对真实的地面摩擦力、传感器物理噪声、总线通信延迟与执行器非线性响应。2019 年进入实验室初期,商用自动驾驶测试平台成本极其昂贵且底层通信协议高度封闭,难以开展涉及底盘极限动力学与底层传感器驱动的研究。为了建立自主可控的实车实验体系,我们决定从最底层的硬件电气改装开始,全自主搭建科研实车平台。
在 2019 至 2022 年间,我们自主设计并搭建了两套物理构型互补的自动驾驶实验车:一套为面向园区道路巡航的低速纯电动乘用实车,另一套为具备全向机动能力的四轮独立驱动与转向(4WID-4WIS)科研 AGV 小车。研发工作贯穿了机械安装支架测绘加工、高低压隔离配电箱定制、底盘私有 CAN 总线协议逆向解析与 Linux SocketCAN 驱动编写、多传感器微秒级硬件时钟同步,以及基于 ROS 的感知、定位、规划与底盘控制全栈算法体系。最终在校园与园区实际道路环境下,完成了涵盖激光 SLAM、RTK 循迹、视觉车道线保持、动态多目标识别跟踪、自动紧急制动(AEB)、极限自主泊车与车车网联(V2X)跟随等多类典型场景的实车全闭环验证。
项目背景
自动驾驶核心科研平台 · 全栈软硬件自主研发
为在真实物理环境中检验和迭代算法,实验室在早期开展了全栈自动驾驶实车平台的自主搭建。从底层线控底盘改装与配电隔离做起,逆向解析 CAN 总线协议并构建完整的 ROS 软件栈,搭建了稳定可复用的科研实车平台,为后续感知、定位与控制算法研究提供实车验证环境。
- 实车交付与多场景闭环验证
- 2 大构型线控自动驾驶实车科研平台;300+ 小时实车路测、涵盖 8 大场景全闭环演示(横向循迹误差 <5 cm,AEB 响应 <60 ms)与全栈 ROS 系统
我在项目中的工作
作为项目负责人,从零搭建 2 代全线控自动驾驶科研实车平台(乘用车与 4WIS AGV),累计完成 300+ 小时实地路测,负责底层线控改装、配电隔离、CAN 总线逆向与多场景实车闭环验证。
两套底盘形态,互补的科研试验场
为了全面支撑不同层级的科研攻关,我们设计并搭建了两种差异化的物理实验底盘:
园区低速电动乘用车平台: 具备标准乘用车的悬挂、转向管柱与载人座椅空间。底盘承载能力强、空间开阔,支持在车顶与车头布置重型传感器阵列(包括 32 线激光雷达、双目立体工业相机、前后环视广角相机、双天线 RTK-GNSS 以及高精度惯性测量单元),后备箱布置搭载独立 GPU 的高性能车载工控机。该平台主要用于验证长距离大范围的园区高精地图构建、激光/视觉/惯导融合定位、复杂道路交通参与者博弈决策以及车车网联编队协同。
紧凑型四轮独立转向(4WID-4WIS)全向 AGV 平台: 底盘搭载 8 台大功率无刷直流伺服电机(4 台负责四轮独立驱动,4 台负责四轮独立转向转角)。该构型突破了传统阿克曼转向机构的非完整运动学约束,可在软件层面实时切换为标准阿克曼前向转向、同向斜行蟹行(Crab Steer)、横向平移(Lateral Shift)以及四轮对角转向的原地零半径旋转(Zero-Radius Pivot Turn)。该平台专门用于极限狭窄空间内的敏捷避障验证与复杂车位极限几何泊车算法研究。
两套平台共同确立了一个核心技术原则:使高层算法直接面对真实的物理接触力学、通信抖动与执行器死区滞后,为后续算法的鲁棒性优化构筑物理基准。
多传感器融合 → 实时状态估计 → 决策规划 → 线控底盘执行
车载全栈 ROS 系统打通环境感知、实时建图定位与高精度轨迹跟踪,线控底盘经由 CAN 毫秒级闭环执行。
硬件构建:从零到一的电气与传感器拓扑
在缺乏现成车规配套套件的条件下,将分散的传感器与执行器集成为高可靠的整车系统,需要系统性解决电气干扰、空间标定与时间同步等工程难题。
表格可左右滑动,查看其余列。
| 硬件子系统 | 选型配置与主要功能 | 现场搭建中攻克的关键工程挑战 |
|---|---|---|
| 线控底盘与 CAN 总线 | 转向电机、电驱动油门与电液线控制动推杆 | 逆向解析底盘私有通信协议,开发 100 Hz 循环 Linux SocketCAN 高确定性驱动,建立硬件心跳急停机制 |
| 3D 激光雷达 | 32 线 / 16 线机械旋转式 LiDAR,负责 3D 点云空间扫描与建图 | 定制铝合金减震桁架,阻隔车体振动传递,消除点云颠簸高频抖动;标定激光束反射强度衰减阈值 |
| 高动态工业相机 | 前向窄角 60° 相机与大广角 120° 相机,负责车道线与目标视觉识别 | 消除进出林荫道与地下通道的强逆光过曝;基于圆孔标定板实现相机与激光雷达的高精空间刚性标定 |
| RTK-GNSS 差分定位 | 双天线 RTK 接收机,提供厘米级三维坐标与绝对航向角真值 | 双天线前后基线布局优化(保持 1.5 米间距);解决高大建筑物遮挡造成的载波相位跳动与卫星失锁平滑平稳过渡 |
| 车规级 IMU 惯导单元 | 6 轴高精惯性测量单元,提供 200 Hz 加速度与角速度 | 机械基座严格对齐车身几何中心与后轴轴线;在静止与恒温环境下完成三轴零偏(Bias)与温漂在线校准 |
| 超声波雷达阵列 | 前后保险杠布置 8 颗超声波探头,负责近身盲区探测 | 合理优化各探头波束锥角交叉重叠区域,通过通道时序触发消除临近探头声波互串干扰 |
| 配电与电气隔离 | 48V 动力电池组转 12V/24V 隔离直流供电网络 | 设计强弱电物理隔离配电箱,加入压敏电阻与瞬态抑制二极管(TVS),消除电机反电动势浪涌与地线回路干扰 |
1. 硬件时钟硬同步与纳秒级时间对齐
在车辆以 20–30 km/h 速度行进时,100 毫秒的时间漂移将造成接近 1 米的空间投影位置误差。传统的基于软件系统时间戳(ROS Time)打标的方式受操作系统的调度抖动影响,精度难以满足多传感器特征级融合的要求。
我们构建了多层级硬件授时与硬触发同步机制:
- PTP 与 PPS 纳秒级授时:RTK-GNSS 接收机锁定卫星信号后,输出高精度的秒脉冲(PPS, Pulse Per Second)方波与 GPRMC 时间报文,激光雷达接收 PPS 信号将自身内部时钟锁定在纳秒级绝对时间基准上;
- FPGA/微控制器硬件脉冲触发曝光:由专用微控制器捕获 PPS 同步信号,并以 20 Hz 的固定频率向工业相机发送外触发方波脉冲,强制相机图像传感器在特定激光雷达旋转至前向视场的瞬间同步曝光;
- 采集端驱动在底层直接读取硬件帧寄存器捕获的时间戳,将全系统多源传感器的数据采集时间对齐误差压缩至 1 毫秒以内。
2. 空间外参刚性联合标定(LiDAR-Camera-IMU Extrinsics)
针对多传感器空间位姿偏差,设计了专用标定流程:
- 相机与激光雷达的刚性外参变换矩阵,基于包含空心圆孔的专用棋盘标定板进行联合解算。通过最小化三维激光点在空间平面上的拟合误差与在二维图像边缘的重投影误差,结合圆孔边缘特征完成非线性优化解算;
- IMU 与激光雷达的外参则通过车辆在空旷场地上执行连续正弦波转向与急加减速运动,利用连续轨迹参数化求解二者角速度与线加速度的动态残差,获得厘米级平移与 0.1 度级旋转外参精度。
3. 底盘私有 CAN 总线逆向与线控驱动开发
实车底盘控制器(VCU)的原厂通信协议未公开。我们利用 CAN 监听盒录制车辆人工驾驶时的总线原始报文,通过对比油门开度、刹车踏板踩踏、转向盘旋转与轮速计脉冲的变化规律,逐帧逆向反推提取关键 DBC 信号字段(包括转向角反馈、期望转向角写入、左右轮速脉冲计数及制动压力指令)。
在此基础上,开发了具备安全校验机制的 Linux SocketCAN 驱动程序:
- 采用 100 Hz 定时循环线程向底盘写入控制帧,保证通信周期的确定性;
- 建立双向校验看门狗:一旦底盘控制器在 100 毫秒内未收到上位机有效心跳包,底层固件立即强制退回人工接管状态并主动施加平缓制动,杜绝软件死机导致车辆失控。
全栈 ROS 软件架构与算法系统
软件架构运行于 Ubuntu Linux 与 ROS 环境,深度优化节点间通信效率,划分为三大核心业务链路:
1. 定位与高精建图链路
- 基于激光点云与 IMU 紧耦合的 SLAM 建图: 从 32 线 LiDAR 扫描点云中提取曲率极值点(线特征与面特征),通过 IMU 连续预积分提供高频位姿先验,构建因子图优化后端。实时解算车辆六自由度位姿并在线拼接点云,生成全局坐标系下的厘米级三维几何点云地图。
- 基于 NDT/ICP 的高频在线自定位: 在预先构建的高精点云地图中,系统采用正态分布变换(NDT)与匹配协方差自适应 ICP 算法,以 50 Hz 频率实时匹配当前激光帧与全局地图,输出高可靠的实时位姿。即使在穿过完全遮挡卫星信号的楼宇连廊时,位姿估计依然连续平滑无跳变。
- 双天线 RTK-GNSS 差分循迹: 利用车顶前后安装的双天线基线,在静止状态下即可直接解算出车辆航向角。融合地面轮速计读数,在宽阔道路上为局部规划器提供绝对地理参考。
2. 环境感知与道路语义理解链路
- 前向视觉车道线实时拟合: 工业相机采集的图像经过畸变校正与逆透视映射(IPM)变换至鸟瞰坐标系,采用轻量化分割网络提取车道边界像素。利用三次多项式曲线拟合车道中心线,实时提取车道曲率与横向中心线偏移量,为车道居中控制提供几何输入。
- 视雷融合多目标 3D 检测与跟踪: 利用深度学习目标检测网络识别 2D 图像中的行人与车辆目标框;通过标定外参将目标视锥反向投影至 3D 激光点云中,提取对应的局部聚类点云簇并拟合 3D 有向包围盒(Oriented Bounding Box)。后端接入交互式多模型无迹卡尔曼滤波(IMM-UKF),在线融合匀速与匀转弯率运动模型,输出平滑的世界坐标系速度与加速度估计。
3. 分层决策规划与高频线控执行
- 分层决策状态机: 上层有限状态机(FSM)负责全局任务调度,涵盖巡航循迹、遇障减速避让、交叉路口会车让行、极限泊车与紧急制动等模式;局部规划器在 Frenet 坐标系下实时采样多项式轨迹簇,动态避让前方慢速行驶障碍物。
- 横纵向动力学闭环控制: 横向控制结合纯跟踪(Pure Pursuit)与线性时变模型预测控制(LTV-MPC),根据车速动态自适应前视距离,消除大曲率转弯时的超调与画龙现象;纵向控制基于速度与加速度闭环 PID,经由 CAN 总线以 100 Hz 高频实时下发转向角与制动力矩指令。
实车录屏:七大核心场景全闭环
上面的七段实拍录像完整记录了两台实车平台在校园道路与试验场地中的高强度闭环验证:
- 三维激光雷达实时建图:搭载 32 线 LiDAR 的乘用车在林荫道与建筑区间平稳行驶,实时渲染出包含树木树冠、路牙与建筑立面的高保真几何点云地图;
- 高精 SLAM 自主定位循迹:完全关闭卫星差分信号,车辆纯粹依靠车载点云地图与 NDT 实时匹配,在数百米长曲折道路上平稳自主巡航;
- AGV 实车视觉车道线保持:4WIS 小车前向相机实时解析地面白色引导标线,转向机构动态自适应调整,小车平滑稳定保持在车道中央巡航;
- 车载多目标高动态检测:随车视角与算法检测框同步回放,在复杂光影下准确识别横穿马路的行人、迎面自行车与路边停放车辆,输出三维几何朝向框;
- 自动紧急制动(AEB)实车极限验证:面对突然推入车道正前方的假人目标,感知系统在 60 毫秒内计算出碰撞时间(TTC < 1.2s),底层线控制动推杆全力抱死,车辆在障碍物前 0.8 米处平稳安全刹停;
- 狭窄库位全自动泊车:超声波雷达探测车位边界,算法规划出包含两把倒车的多段轨迹,4WIS 小车精准倒车揉库,最终姿态完美对齐停车标线;
- V2X 网联双车协同跟随:通过车载无线自组网实时广播前车动力学状态,两台实验车在复杂弯道上保持恒定车距,实现高灵敏度、无延迟的列队协同编队。
工程总结与技术积累
通过从零到一亲手完成两台实车平台的机械改装、电气布线、总线逆向、时钟同步与算法栈落地,我们建立了扎实且完整的物理系统工程感知力:
- 物理层先验对算法健壮性的决定性作用:仿真器中不存在通信掉包、高频振动、地线噪声与电机反电动势冲击。唯有在实车上亲手调试过配电浪涌与电机死区,才能真正理解控制算法为何必须设计前馈抗扰与硬件看门狗兜底。
- 时间确定性是传感器融合的生命线:任何复杂的空间几何算法,一旦遭遇毫秒级的时钟偏差与不确定延迟,融合结果必然发散失效。采用硬件级 PPS 授时与外触发曝光,从物理底层消除延迟不确定性,是多模态感知系统可靠运行的前提。
- 模块化解耦与可复用性:这套软硬件一体化的自主全栈平台,为课题组后续的多项产学研合作项目(包括工业搬运机器人、自主割草机及地下车库自主泊车)提供了直接可迁移的技术积淀与工程范式。