手搓一台英伟达自动驾驶小车!Duckiebot(小鸭子)全套开源 DIY 硬核教程
引言:全网火爆的“小鸭子”自动驾驶机器人到底是什么?
在机器人与人工智能教育领域,有一只火遍全球的“小黄鸭”——Duckiebot(小鸭子自动驾驶机器人)。
这个项目最初由 MIT(麻省理工学院)发起,后来 NVIDIA(英伟达) 作为核心战略合作伙伴深度加入。英伟达将强大的 Jetson 边缘计算平台与 Isaac 机器人仿真生态注入其中,将其打造成为了全球最具性价比的开源自动驾驶学习平台。
无论你是想学习 ROS 2、OpenCV 计算机视觉、卡尔曼滤波,还是深度学习与强化学习,手搓一台 Duckiebot 绝对是目前性价比最高、反馈最爽的硬核项目!
今天这篇文章,就带大家全面拆解 Duckiebot 的软硬件架构,并提供最新的开源仓库地址与手搓 DIY 教程!
一、 Duckiebot 软硬件架构拆解
Duckiebot 的设计理念极其纯粹:用极简的硬件,实现工业级的自动驾驶算法逻辑。
1. 硬件架构:小身材,大能量
- 边缘 AI 大脑: NVIDIA Jetson Nano / Orin Nano(强大的 GPU 加速能力是实时跑 AI 模型的关键)。
- 视觉感知系统: 160° 超广角鱼眼摄像头(IMX219)。全车无激光雷达,纯靠单目视觉驱动,极其考验算法能力。
- 动力与底盘: 双轮差速驱动底盘、TT 直流减速电机、高精度光电编码器(测速)与 ToF 激光测距传感器。
- 灵魂外观: 3D 打印车架 + 车头标志性的黄色小小鸭。
2. 软件生态:现代化且完全开源
- 底层与中间件: 基于 Ubuntu + NVIDIA JetPack SDK,完全适配 ROS / ROS 2。
- 容器化部署: 官方算法采用 Docker 镜像化管理,无需繁琐编译环境,一键拉取镜像即可运行。
- 核心算法: 包含了逆透视变换(IPM)、车道线检测、卡尔曼滤波状态估计、PID 转向控制以及基于 YOLO 的标志牌/行人识别。
二、 2026 最新开源地址汇总(建议收藏)
以下是为整理的最新的官方 GitHub 仓库及文档:
-
官方项目总主页与文档:
-
【最新更新】硬件 CAD 与 3D 打印文件(STL):
-
针对想自己用 3D 打印机手搓车架的小伙伴,官方现已将完整的 3D 模型开源在 Onshape 平台,并提供了直链下载: * 🌐 **官方 3D CAD 交互式模型(Onshape 平台,免安装在线查看/导出):** * 👉 [Duckiebot DB21J (NVIDIA Jetson 版) 3D CAD 总装图](https://cad.onshape.com/documents/b248eb9adac50da4bbdf6421/w/797ee2f718048684260efb75/e/d4e9d5ca4ae47d8fe2d93e1c) *(点击页面左下角各部件,右键即可选择 `Export...` 导出为 STL 或 STEP 格式用于 3D 打印)* * 📘 **官方 DB21 系列硬件组装与部件下载指南:** * 👉 [Duckiebot DB21 硬件组装官方手册](https://docs.duckietown.org/daffy/opmanual-duckiebot/out/duckiebot_building.html) *(里面详细列出了每一个 3D 打印件的名称、推荐打印参数以及组装步骤)*
-
-
核心控制与算法源码:
三、 如何从零“手搓”一台你的鸭子车?
手搓一台 Duckiebot 的整车成本可以控制在 800 – 1500 元 RMB 之间(取决于选择 Jetson Nano 还是 Orin Nano)。
步骤 1:准备材料清单(BOM)
- 主板: NVIDIA Jetson Nano B01 (4GB)
- 摄像头: IMX219 160 度广角鱼眼镜头
- 电机驱动: PCA9685 PWM 扩展板 + TB6612FNG 电机驱动模块(或 Jetbot 一体化驱动板)
- 底盘硬件: TT 电机 x2、轮子 x2、万向轮 x1、编码器 x2
- 电源: 支持 5V/3A 稳定输出的快充移动电源
- 结构件: 从上述 GitHub 仓库下载 STL 打印件(或使用通用亚克力小车底盘改造)
步骤 2:组装与物理校准
- 组装底盘: 将电机、轮子与 3D 打印车架固定。
- 摄像头倾角: 将摄像头固定在车头,保持向下倾斜约 15°~20°。注意:视觉方案对摄像头角度极其敏感!
步骤 3:系统烧录与脚手架安装
- 烧录 NVIDIA 官方 JetPack 镜像至 SD 卡,启动 Jetson 开发板并连接 Wi-Fi。
- 在电脑终端安装 Duckiebot 官方控制工具:
pip3 install duckietown-shell dts --help
步骤 4:关键校准(软件灵魂)
在跑自动驾驶前,必须进行三项校准:
- 电机校准(Wheel Calibration): 消除左右电机物理误差,确保给相同指令时小车能走直线。
- 相机畸变校准(Camera Calibration): 利用打印的黑白棋盘格矫正鱼眼镜头产生的画面弯曲。
- 外参标定(Extrinsic Calibration): 让小车明确“画面里的线条”在现实世界中对应的实际距离。
步骤 5:发车!
跑通 dts 巡线命令,铺设一条带有黄线(中线)和白线(边线)的跑道,你的小鸭子就能实现自主巡线和避障了!
四、 总结与进阶方案
英伟达与 Duckietown 联合打造的这个项目,真正降低了机器人算法的门槛。当你完成基础巡线后,还可以利用 NVIDIA Isaac Sim 进行“数字孪生”仿真,或者部署 TensorRT 加速的 YOLO 模型 实现复杂的交通路口识别。
如果你在 DIY 手搓的过程中遇到任何硬件接线或环境部署问题,欢迎在评论区留言交流!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持以下吧
