What It Does
项目做的是什么
- 以 DS20270C 双轮轮毂伺服差速底盘作为执行层,导航模式下统一接收 /cmd_vel_smooth。
- MID360 激光/IMU 进入 Fast-LIO,再产出点云、里程计与可供 Nav2 使用的 2D 地图。
- Nav2 MPPI、velocity_smoother、collision_monitor 分层处理轨迹、平滑和最后一道避障保护。
VLN Relation
和当前 VLN 主线的关系
Craft Record
工程痕迹
这个项目保留了从硬件选型、结构验证、驱动调试、话题链路到现场反馈的连续记录。页面里放的不是单独的效果截图,而是一段可回溯的迭代线索。
Media
关键画面
README Snapshot
README / 项目说明片段
ljh_amr2_hubwheel_drive
这是 ljh_amr2 系列里的轮毂伺服 AMR 真车项目。当前工程不是仿真 demo,而是围绕你的实车链路整理出来的 ROS2 Humble 工作空间:
- Livox MID360 负责激光和 IMU 输入
- Fast-LIO 负责建图、里程计和点云输出
- PCD/PGM 地图分别用于 ICP 定位和 Nav2 map_server
- Nav2 使用 MPPI 局部控制器
- velocity_smoother 负责速度平滑
- collision_monitor 负责最后一层近距离避障保护
- DS20270C 轮毂伺服驱动器负责底盘运动
ljh_robot_web提供网页控制台和状态查看
车辆印象
这台车是小型差速轮毂 AMR,当前导航 footprint 按实测外形配置:
车长: 0.486 m
车宽: 0.450 m
半长: 0.243 m
半宽: 0.225 m
底盘是 DS20270C 双轮轮毂伺服差速结构。相比普通小车底盘,它更像一台紧凑的工业调试 AMR:机械上重点是轮毂伺服和 CAN 控制,软件上重点是 ROS2 真车链路、MID360 建图定位、Nav2 导航和网页控制台。
MPPI 加入后的效果
MPPI 是 Nav2 的模型预测路径积分控制器。放到你这台车上,主要效果是:
- 行驶会更连续
MPPI 会在当前速度约束、车体 footprint、局部 costmap 下采样多条未来轨迹,再选代价最低的一条,不是简单追一个局部点。转弯和贴路径时更容易平顺。
- 避障更自然
MPPI 的 CostCritic 会结合局部 costmap 和真实矩形 footprint 计算碰撞代价。前方有障碍时,不只是“突然停”,它会尽量选择代价更低的轨迹。
- 对轮毂差速底盘更合适
当前 motion_model: DiffDrive,vy_max: 0.0,避免 Nav2 输出横移速度。速度上限也按你的车调成保守档:
vx_max: 0.20
vx_min: 0.0
wz_max: 0.60
controller_frequency: 10.0
model_dt: 0.10
time_steps: 24
batch_size: 800
- 仍然保留硬保护
MPPI 是规划控制层,collision monitor 是最后保护层。即使 MPPI 或 costmap 没来得及绕开,近距离 stop 区也会把输出速度压成 0。
当前主链路
Livox MID360
-> /livox/lidar, /livox/imu
-> Fast-LIO
-> /Odometry, /cloud_registered, /cloud_registered_body
-> odom -> base_link
-> pointcloud_to_laserscan
-> /scan
-> ICP registration
-> map -> odom
-> Nav2 map_server + planner_server + MPPI controller_server
-> /cmd_vel_nav
-> velocity_smoother
-> /cmd_vel_raw
-> collision_monitor
-> /cmd_vel_smooth
-> DS20270C CAN chassis node
底盘在导航模式下必须订阅:
/cmd_vel_smooth
不要让底盘直接订阅 /cmd_vel_nav 或 /cmd_vel_raw,否则会绕过平滑和避障保护。
当前硬件配置
| 模块 | 当前配置 |
| --- | --- |
| 底盘 | DS20270C 轮毂伺服差速底盘 |
| 车体尺寸 | 0.486 m x 0.450 m |
| Nav2 footprint | `[[0.243, 0.225], [0.243, -0.225], [-0.243, -0.225], [-0.243, 0.225]]` |
| 激光雷达 | Livox MID360 |
| 雷达 IP | `192.168.1.3` |
| 主机雷达网口 | `eth0`, `192.168.1.100/24` |
| 常用 SSH 地址 | `192.168.3.248` |
| ROS 版本 | ROS2 Humble, Ubuntu 22.04 |
| 地图点云 | `ljh20260724.pcd` |
| 2D 地图 | `maps/map.yaml`, `maps/map.pgm` |
完整 README 已保存在本站快照中,可从本页底部打开。