LESSON 11 · 阶段 C · 硬件入门 · LEARN NOTES

收进学习手册 · 2026-09-11 · duck.whatled.com

第 11 课 · 画自己的电路板:imu_to_dxl 的故事

这一课解决什么问题:官方有两块自研板,一块已开源,另一块(imu_to_dxl)没公开——全网买不到,只能自己画。这一课讲清这块板是干什么的、怎么用"连接表"把它画出来,以及画板→打样→焊接→自测的全流程。

前置:第 08 课(读图五步法、符号小字典)。


1. 这块板是干什么的:让 IMU 伪装成一个舵机

一句话(出自 microduck-replica/docs/imu_to_dxl-设计包/设计规格.md):让 IMU 伪装成一个 Dynamixel 舵机,在总线上占 ID 200,和 15 个真舵机在同一次 sync_read 里被一起读回——主机不用跑姿态融合,也不占用第二条总线。

回顾第 01 课的闭环:策略每 20 毫秒要吃进 61 个数,其中就有身体姿态。真机上,姿态就是这个 ID 200 的"假舵机"上报的——它其实是 IMU 芯片 LSM6DSV16X 加一颗小 MCU,把陀螺和四元数数据包装成舵机总线的应答格式。

为什么全网没有现成的?官方的 RPI Robot HAT 板是完整开源的(KiCad 工程 + Gerber + BOM,Apache-2.0),microduck-replica/docs/硬件规格速查.md 考证得很清楚:官方拒绝的只是"整机开源硬件"这个标签,真正没公开的正是 imu_to_dxl 板。而它只有 5 个芯片,协议已经从官方 Rust 源码逐行还原(ID 200、1 Mbps、读地址 124 取 12 字节、超时 30ms,全部标注【已验证】),固件协议层 6/6 项测试通过——敢自绘,是因为每根线都有出处。

2. 连接表方法:引脚编号不敢凭记忆写怎么办

构建日志 2026-09-06 记了画图卡住的真实原因:引脚编号不敢凭记忆写——写错一个脚号,板子就废。解法是采用网络名 + 引脚名的连接表(microduck-replica/docs/imu_to_dxl-设计包/原理图连接表.md),把引脚编号交给立创 EDA 的商城符号(下单编号 C529333 等)自动对应——你画线时只认网络名,比如:

SCL  = U1.PB6 + U2.SCL + R1.2      (I²C 时钟)
+3V3 = U4.VOUT + U1.VDD + U2.CS + U3.VCC + …

配套纪律:全部网络在 EDA 里用同名网络标签(Net Label),不直接拉线;每个元件做一张"引脚预算表",每个脚都有去处,防漏连。这正是嘉立创工作流的正确姿势。

3. 两个新手最易翻车点(表里埋着的)

  1. LSM6DSV16X 的 CS 脚必须拉到 3V3。这个脚是 I²C/SPI 模式选择:悬空会漂进 SPI 模式,I²C 怎么都读不到——你会以为芯片是坏的,其实是自己没喂它一个确定电平。
  2. LDO 输入电容耐压 ≥25V。这块板挂在 8.4V 总线(2S 锂电满电)上,耐压 10V 的电容长期超压会老化失效——选型时数字要留余量,不能"刚刚好"。

这两条的共同教训:芯片没读不到、电容会坏,病根都在画图阶段就埋下了。照连接表画,表里已经替你踩过这两脚。

4. 画板 → 打样 → 焊接 → 自测:流程概览

① 画板   嘉立创 EDA(免费)按连接表画原理图 → 排 PCB(板框 45×22 已备好 DXF)
② 打样   EDA 里一键下单,5 块小板几十元;项目预算给这块板 ≈¥100(含元件)
③ 焊接   阻容一律 0603 小封装;先烙铁练习,焊点套热缩管(第 08 课四件套)
④ 自测   SWD 排针烧录固件 → USB-TTL 单板先 PING 通 → 再挂总线联调

(顺带一提:工作区里还有个 KiCAD-MCP-Server,是让 AI 助手帮你操作 KiCad 画板的开源工具,感兴趣可以自己玩,本课不依赖它。)

动手练习(20 分钟,¥0)

打开 microduck-replica/hardware/imu_to_dxl/imu_to_dxl-接线表.md,挑出 +3V3 网络,把它的全部连接点抄成一张清单。抄完检查:U2 的 CS 在不在里面?不在就说明你没读懂第 3 节第一翻车点。

自查清单

下一课预告

第 12 课算总账:这只鸭子到底花多少钱、下单按什么顺序、为什么采购单要"规格导向"而不是塞一堆链接——全部来自真实踩坑。

延伸资源

什么鸭 WHATDUCK · 复刻学习笔记 ← 全部手册 · 首页