组装机器人底盘 — 卡扣、转接线与独立供电¶
这一章讲什么: 纯动手章。把第 02 章买的零件拼成一台能通电的机器人底盘: 拼底盘卡扣 → 装电机轮子 → 把 Pi 和 Inventor HAT Mini 装上顶板 → 做电机/编码器转接线 → 绑充电宝 → 通电,SSH 连上。 学完你能带走三样手艺:免焊接线、连接器转接、通电测试流程——它们对任何电子项目都管用。
1. 先看现象:这一章过完,机器人第一次「活了」¶
到此为止,一切都是准备:选了零件(第 2 章)、烧了系统卡(第 3 章)、写了同步工具(第 4 章)。 这一章结束的标志物很明确:一台不插墙电、自己背着电池的机器人, 你用 SSH 从电脑上连上去,看到熟悉的提示符——「完全无线、远程可达」1。
但先泼一盆冷水:通电之前的一切操作,错误都可以撤销;一通电,接错的线就是真损失。 所以本章暗含一条仪式链:每一步做完都有「验证动作」——卡扣装到位有「咔哒」声, 线接完有分组核对,通电先看灯再看 SSH。书里甚至提醒: 充电宝的线先别插 Pi,等到「准备就绪」那一刻再插2。
2. 顶层全景:五个工位¶
① 拼底盘 下板 + 电机支架 + 电机 + 轮子 + 万向轮珠 + 上板
② 装大脑 Pi + 散热片 + GPIO 增高排针 + Inventor HAT Mini + 卡扣固定
③ 做线 电机 2 针 + 编码器 4 针 ⇢ WAGO ⇢ HAT 6 针(左右各一套)
④ 上电准备 充电宝绑下板,按钮灯朝后,线走 Pi 底下大开口
⑤ 通电测试 灯闪 → 灯停 → SSH 连上 → sudo poweroff(先关机再拔线!)
图说:①②③ 都可以翻回去重来,④⑤ 开始要按顺序、守规矩。
3. 核心原理之一:免焊组装——卡扣与支架的力学¶
底盘零件从「板架(sprue)」上掰下来再拼——书里建议留着原包装盒当零件盘3。 这一章的机械装配全是卡扣(snaps)与夹持的学问,没有一颗焊点:
电机支架两步装法(两个支架,左右各做一次): 卡环支架(collar bracket)先套进电机座的平面侧——在固定夹和齿轮箱之间推进去, 再绕电机座旋转,让支架的平面与电机轴同向——这一转就把支架锁死了, 同时保证之后装轮子时不打架4。然后端部支架(end bracket)也按「平面朝轴」的方向装上。
电机上底盘:对准底盘槽位——注意连接器和编码器盘相对底盘的朝向, 把卡扣推进槽里,来回晃一晃,听到「结实的咔哒」就是锁到位5。
轮子和第三点支撑:电机轴的横截面是带平面的(不是纯圆), 轮子的轴孔也带平面——对准平面推入,转到咬合再推到底;推的时候从另一侧托住电机, 别让轴承受全部推力。机器人由此坐在「两个轮子 + 一个万向轮珠(castor nub)」上, 三点支撑,能自己站稳6。
上板:四根斜角支撑柱(support struts)对准对角卡入,再把上板扣上—— 先外圈四根、再电机侧四根,每根都推到卡扣完全咬合7。
这些步骤没什么理论,但书里反复强调的「对齐平面、听到咔哒、不要硬来」 是所有塑料卡扣装配的通用纪律——硬掰就是断件。
4. 核心原理之二:装 Pi 和 HAT——散热、绝缘与应力¶
电子装配的第一步是散热与绝缘,书里演示得很细:
- Pi 4 要贴散热片(heatsink),但散热片是金属的、会变高;
- HAT 扣上去之后,板底绝不能碰到散热片的金属——否则短路;
- 解法:GPIO 增高排针(GPIO riser)——一段加长的排针插座,把 HAT 垫高; 再用 M2 铜柱把 HAT 的螺丝孔和 Pi 的螺孔撑起来,让 HAT 底面与铜柱端面齐平8。
这个组合解决的是两个隐患:绝缘(金属对金属会短路)和应力(全靠排针撑着 HAT, 插拔时会撬松焊盘;有了铜柱,力走螺丝不走排针)8。
扣 HAT 的手法也有讲究:均匀下压在插 GPIO 的位置周围,别让排针单边受力; 螺丝拧到「没有缝隙」就停——再紧会伤零件9。
最后整个「Pi + HAT」组件用主板的塑料卡扣(clips)固定在顶板上; 卡扣的位置是经过挑选的,避开 Pi 上连接器的凸起,不会顶到任何接口10。
5. 核心原理之三:转接线——插头对不上,是常态不是事故¶
本章技术含量最高的一节。问题很具体:电机自带两根线(2 芯驱动 + 4 芯编码器), 插头是 JST 2.0 PH;而 Inventor HAT Mini 的电机口是 6 芯 JST 1.0 SH—— 形状不同,插不进11。书里点了一句大实话:插头形状对不上,是电子项目的常态, 解决思路是「转接」而不是「重买」11。
机制:三组线,六个回路¶
HAT 侧(6 芯 JST 1.0 SH) WAGO 转接 电机侧
┌──────────────────────┐ ┌──────┐ ┌──────────────────┐
│ M1 / M2 电机动力 ± │═════│ │═════│ 2 芯 PH:电机 ± │
│ VCC / GND 编码器供电 │═════│ 免焊 │═════│ 4 芯 PH:VCC/GND │
│ A / B 编码器信号 │═════│ 对接 │═════│ 4 芯 PH:A/B 信号 │
└──────────────────────┘ └──────┘ └──────────────────┘
图说:6 根线分三组,组与组之间绝不能混——动力线串进信号组会烧东西。
三组各自的职责(后面章节全要用):M1/M2 是电机的动力,电流大; VCC/GND 给编码器小板供电;A/B 是编码器的两路脉冲信号,计数靠它(第 11 章)12。 纪律书里写得清楚:不要跨组;多余的线先整根留着,别剪12。
免焊对接:WAGO 221 与剥线手法¶
转接不用焊,用 WAGO 221 直插连接器:带扳手的凸轮结构,把两根线的金属芯压进同一个 导体,牢固对接13。配的材料清单:电机自带 2 芯和 4 芯 pig-tail(预压接线尾, 约 30 cm)各一;HAT 侧 6 芯 JST 1.0 SH pig-tail(约 120 cm,偏长);WAGO 221 12 个14。
剥线手法书里教到手指级别:
- 剥线钳咬在该剥的位置,压下去,绕一个小圈切断绝缘皮,拉掉;
- 细线末端容易散,把散开的铜丝拧成一股,端头变粗更好夹;
- WAGO 扳手抬起、线插到底、扳手按下——注意书里用 Note 框警告: 合拢时手指别放在连接器下面,它合拢的力道不小15。
成品:一侧电机需要 6 个 WAGO、12 个对接点(6 根线两端各一); 两侧共做两套16。做完用海报胶泥(Blu-Tack)把 4 个一组、2 个一组的 WAGO 各自拢成块, 再把两块叠起来——空间占得小,也防止它们在机器人肚子里晃散; 有螺旋包线管的话,此刻把线束包起来,后面走线会顺很多17。
回到主线例子:一根转接线的完整生命¶
取线 HAT 侧 6 芯 pig-tail(1.2 m) + 电机侧 2 芯/4 芯 pig-tail(0.3 m)
分组 6 根线按 M 动力 / VCC-GND / A-B 信号分三组(书图 5.12 的配色只是示意,
实物线色不对应,务必按组而非按色)
剥拧 每端剥 ~5–6 mm,散铜丝拧成一股
对接 两端进同一个 WAGO,扳手压下(手指避开下方)
成束 4+2 两组 WAGO 用胶泥拢块、叠放;可选包线管
走线 HAT 端插入 6 芯插座(图 5.15 箭头 A),线从上板左右槽穿出(B),
WAGO 块轻塞到 Pi 底下(C)——不要硬塞
底面 机器人翻面,线从检修口(D)拉出,插进电机与编码器插头(E)
图说:先上板、后底面;一次做一侧,动力与编码器线始终不分开。
排障哲学在这一节也埋了伏笔:书里让你一次只做一侧,这样电机接线和编码器接线 始终成对,不容易张冠李戴18。
6. 核心原理之四:独立供电——充电宝就是这块机器人的油箱¶
供电方案在第 02 章已定(单充电宝、共电),本章是落地:
- 固定:魔术贴扎带(Velcro ties)穿进上板槽位,从下面兜住充电宝、收紧;
- 朝向:充电宝的按钮和电量灯朝车尾——外面一眼能看到还剩多少电;
- 走线:充电口的线从 Pi 底下的大开口上来,但先别插进 Pi——把一切就绪再通电2。
选魔术贴而不是胶的理由藏在第 5 章的练习里:电池要经常拆下来充电, 固定方式必须可重复拆装——这是所有电池固定的通用约束。
7. 核心原理之五:通电测试——灯、SSH、关机,一个不能少¶
通电时刻的完整流程:
- 先看灯。USB 线插上 Pi,灯亮;绿灯闪烁是在启动;灯不亮先查充电宝有没有电。
- 等灯停。绿灯停止闪烁 = 系统起来了(第 03 章的灯语)。
- SSH 验证。
ssh <用户名>@<主机名>.local——看到提示符,就是「完全无线、远程可达」的实锤1。 - 低电量线索。如果接了显示器,屏幕角落的闪电图标代表供电不足—— 充电宝 3 A 不够的征兆19。
- 先关机再拔线。
sudo poweroff,等灯灭,再拔 USB——第 03 章的 SD 卡护身符, 这里再用一次;书里原话「务必总是 poweroff,否则拔电会损坏 SD 卡」20。
这一步过了,你就拥有了一台真正脱离插座的机器人:独立供电 + 无头 Wi-Fi, 意味着它可以被你电脑上的指令驱动着满地跑了21。缺的只有代码——那是下一章的事。
8. 作者的判断与证据¶
- 判断: 免焊优先是第一台机器人的价值观:WAGO 代替焊锡、pig-tail 代替自制线、 卡扣代替螺丝——书里明说焊锡技能「对第一台机器人尽量轻量」,要学也是小排针起步22。
- 判断: 「先做转接线、再整根留长」是对新手最友好的容错设计——书里允许你后头剪短重剥, 但反对一上来就剪12。
- 经验证据: 卡扣「结实咔哒」、WAGO 合拢力道、闪电图标 = 低电压, 都是可当场验证的观察;SparkFun 官方装配指南被引用为卡扣细节的出处9。
- 留白: 书里坦承不同底盘的装配差异大,「完全不同的底盘请去看它的文档」3。
9. 边界与局限¶
- 只对 Shadow 底盘 + Inventor HAT Mini 逐步负责。 换底盘或换 HAT, 卡扣、螺柱、插座全部不同,但「对齐→咔哒」「三组线不混」「先灯后 SSH」的方法论还在。
- 没有电路原理图教学。 书里给的是接线分组图,不是电压电流分析; 为什么电机线和信号线不能混,得靠第 01 章「电机吃电流」的常识补。
- 通电测试不含电机转动。 本章结束时电机只是「接好了」,转不转、转得对不对, 全部留给第 6 章用代码验——这是有意的顺序:先证明「身体活着」,再让它「动」。
10. 可带走的¶
- 卡扣装配三纪律:对齐平面、听到咔哒、绝不硬来5。
- 装 HAT 两隐患两解法:金属碰金属会短路(增高排针解决)、排针单边受力会撬坏(铜柱卸力解决)8。
- 插头对不上是常态,转接的思路:两头 pig-tail + 中间免焊对接11。
- 电机侧三组线——动力(M)、编码器供电(VCC/GND)、信号(A/B)——组间绝不交叉12。
- WAGO 四步:剥(钳子转小圈)、拧(散铜成股)、插(到底)、压(手指避开下方)15。
- 细线工程一次做一侧,让相关线始终成对18。
- 电池固定要可拆(魔术贴),电量显示要可见(按钮灯朝外)2。
- 通电测试顺序:灯亮 → 灯停 → SSH 通 → 闪电图标查供电 → poweroff 后再拔线1920。
11. 原文地图¶
| 主题 | 原书位置 |
|---|---|
| 底盘零件与 sprue | text/51-fm-technical-requirements.txt:19(搜「on a sprue」) |
| 电机支架两步装法 | text/51-fm-technical-requirements.txt:29(搜「collar bracket」) |
| 电机上底盘与咔哒 | text/51-fm-technical-requirements.txt:83(搜「solid click」) |
| 轮子平面与万向轮 | text/51-fm-technical-requirements.txt:62(搜「flat edges」) |
| 散热、GPIO riser、HAT 扣装 | text/52-fm-fitting-the-raspberry-pi.txt:33(搜「GPIO riser」) · text/52-fm-fitting-the-raspberry-pi.txt:57(搜「even pressure」) |
| 连接器不匹配与转接思路 | text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:22(搜「common problem」) · text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:31(搜「6-pin JST 1.0」) |
| 三组线与纪律 | text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:61(搜「There are three groups of」) |
| WAGO 免焊与剥线 | text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:43(搜「without soldering」) · text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:83(搜「snap with some force」) |
| 一侧一套与走线 | text/54-fm-connecting-independent-power.txt:10(搜「Work on one side at a time」) |
| 电池固定 | text/54-fm-connecting-independent-power.txt:35(搜「button and lights face the rear」) |
| 通电测试与关机 | text/55-fm-the-completed-robot-base.txt:13(搜「lightning icon」) · text/55-fm-the-completed-robot-base.txt:15(搜「totally untethered」) |
| 完成态方块图 | text/56-fm-summary.txt:4(搜「RGB LEDs」) · text/56-fm-summary.txt:10(搜「ready to roll」) |
-
出处:「The completed robot base」第 15 段(
text/55-fm-the-completed-robot-base.txt:15,搜「totally untethered」)。原文:看到无头机器人的提示符,「It is now totally untethered and reachable remotely!」。 ↩↩ -
出处:「Connecting independent power」第 36 段(
text/54-fm-connecting-independent-power.txt:36,搜「do not plug this into the Raspberry Pi」)。原文:接上充电宝的 USB 线,但「准备好之前不要插进 Pi」;线从 Pi 底下的大开口走。 ↩↩↩ -
出处:「Technical requirements」第 70 段(
text/51-fm-technical-requirements.txt:70,搜「assembly instructions」)。原文:本章假设你买了推荐的底盘;完全不同的底盘强烈建议查它自己的装配文档;零件「on a sprue(板架)」,拼之前先掰下来。 ↩↩ -
出处:「Technical requirements」第 29 段(
text/51-fm-technical-requirements.txt:29,搜「collar bracket」)。原文:卡环支架推过电机座平面、在固定夹与齿轮箱之间,旋转到支架平面与电机轴同向,锁死且保证轮子不打架;此装配做两次。 ↩ -
出处:「Technical requirements」第 83 段(
text/51-fm-technical-requirements.txt:83,搜「solid click」)。原文:端部支架平面朝轴;电机对准槽位(注意连接器与编码器盘朝向),卡扣推进槽,前后轻晃,「solid click(结实的咔哒)」即锁定。 ↩↩ -
出处:「Technical requirements」第 62 段(
text/51-fm-technical-requirements.txt:62,搜「flat edges」)。原文:电机轴带平面,对准轮子的平面轴孔推入,旋转到咬合;推到底之前从另一侧托住电机;万向轮珠扣在底下——机器人坐在两轮加一轮珠上。 ↩ -
出处:「Fitting the Raspberry Pi」第 8 段(
text/52-fm-fitting-the-raspberry-pi.txt:8,搜「Snap the struts」)。原文:斜角支撑柱卡进对角,上板槽位对齐,先外圈四根、再电机侧四根,每根推到卡扣完全咬合。 ↩ -
出处:「Fitting the Raspberry Pi」第 33 段(
text/52-fm-fitting-the-raspberry-pi.txt:33,搜「GPIO riser」)。原文:散热片会垫高;GPIO 引脚必须可达,HAT 底不得接触金属散热片;用 GPIO riser + M2 铜柱把 HAT 垫高,底面与铜柱齐平,减轻排针应力。 ↩↩↩ -
出处:「Fitting the Raspberry Pi」第 57 段(
text/52-fm-fitting-the-raspberry-pi.txt:57,搜「even pressure」)。原文:沿 GPIO 插口周围均匀下压;螺丝拧到无缝隙即停,过紧伤零件;主板卡扣细节见 SparkFun 装配指南。 ↩↩ -
出处:「Connecting the motors to the Raspberry Pi」第 8 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:8,搜「avoid pressure on the connectors」)。原文:卡扣位置避开 Pi 的连接器凸起;此时机器人有了 Pi + 电机控制器 + 传感器/舵机接口 + 灯。 ↩ -
出处:「Connecting the motors to the Raspberry Pi」第 22 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:22,搜「common problem」)。原文:电机线插头配不上 HAT 的电机口是「common problem(常见问题)」;HAT 侧 6 芯 JST 1.0 SH 内含电机动力和编码器针脚。 ↩↩↩ -
出处:「Connecting the motors to the Raspberry Pi」第 61 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:61,搜「There are three groups of」)。原文:三组——电机动力 M1/M2、编码器供电 VCC/GND、编码器信号 A/B;先用整根 pig-tail;注意不要跨组;线色仅示意,实物不匹配。 ↩↩↩↩ -
出处:「Connecting the motors to the Raspberry Pi」第 43 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:43,搜「without soldering」)。原文:WAGO 221 直插连接器用凸轮把线芯压进导体,免焊牢固对接;本为粗线设计,配文中的细线手法好用。 ↩↩ -
出处:「Connecting the motors to the Raspberry Pi」第 49 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:49,搜「around 30 cm long」)。原文 Tip:电机自带 2 芯与 4 芯 pig-tail 各约 30 cm;另购 6 芯 JST 1.0 SH pig-tail 约 120 cm、WAGO 221 12 个。 ↩ -
出处:「Connecting the motors to the Raspberry Pi」第 83 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:83,搜「snap with some force」)。原文 Note:剥线钳咬绝缘、绕圈、拉掉;散铜拧成更粗的端头;合拢时手指别在连接器下方——它合拢有力。 ↩↩ -
出处:「Connecting the motors to the Raspberry Pi」第 85 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:85,搜「6 inline connectors」)。原文:一侧一套组件,6 个直插连接器、12 个对接点;做几组就熟练;共需两套。 ↩ -
出处:「Connecting the motors to the Raspberry Pi」第 93 段(
text/53-fm-connecting-the-motors-to-the-raspberry-pi.txt:93,搜「poster-putty」)。原文:4+2 分组用胶泥拢块,叠放省空间;可选螺旋包线管分别包 HAT 线束与编码器线束。 ↩ -
出处:「Connecting independent power」第 10 段(
text/54-fm-connecting-independent-power.txt:10,搜「Work on one side at a time」)。原文:底面接线翻面操作;从检修口拉线、插电机与编码器插头;线太长可剪短重剥;一次做一侧,电机与编码器接线保持成对。 ↩↩ -
出处:「The completed robot base」第 13 段(
text/55-fm-the-completed-robot-base.txt:13,搜「lightning icon」)。原文:插电灯亮;没灯查充电;可接显示器看闪电图标——它也指示供电不足。 ↩↩ -
出处:「The completed robot base」第 20 段(
text/55-fm-the-completed-robot-base.txt:20,搜「SD cards can be corrupted」)。原文:拔电前务必 sudo poweroff;否则可能损坏 SD 卡。 ↩↩ -
出处:「Summary」第 10 段(
text/56-fm-summary.txt:10,搜「ready to roll」)。原文:底盘配齐轮子、Pi、电池,接近 ready to roll;让它「活过来」只差代码;独立供电 + 无头 Wi-Fi = 可被电脑指令驱动。 ↩ -
出处:「Connecting the motors to the Raspberry Pi」第 44 段(同 13)。原文明确「join two wires securely without soldering」;与第 02 章「免焊优先」一脉相承。 ↩