做四足机器人这两年,我最大的感受是:很多人一上来就盯着算法和控制折腾,结果机架还没站稳就发现机械结构拖了后腿——要么关节间隙大得离谱,要么共振点离工作频率近得吓人,要么换几次摔就变形了。机械结构这个东西,它不像代码可以无限迭代,改一版模具和加工就是实实在在的时间和钱。所以我一直觉得,四足机器人的上限一半写在算法里,另一半早就刻在结构图纸上了。这篇东西我想把机械结构这块掰开揉碎讲清楚,从设计逻辑、腿部构型、自由度分配到材料工艺和装配调试,都是我自己做过、踩过、改过之后沉淀下来的东西。不管你是准备自己搓一台竞赛机,还是做科研平台验证算法,或者纯粹对机械设计好奇,这篇应该都能给你一些能直接落地的参考。
1. 机械结构设计不能拍脑袋:先从运动需求反推刚度、质量和寿命
机械结构最忌讳的就是"先画个好看的机器人再说"。四足机器人的腿部、躯干、关节每个尺寸和材料选择,都必须从运动需求反推回来。我一般会把需求拆成三组硬指标:负载能力、运动速度、续航与散热。这三组指标直接决定结构刚度、总质量和关节输出能力,逃不掉的。
1.1 从步态频率和小跑步态反推结构固有频率
结构设计里最容易忽略的一个数字是固有频率。四足机器人trot步态下,支撑相和摆动相交替频率通常在2~4Hz之间,加上足端落地的冲击激励,频率成分能到10~20Hz甚至更高。如果结构某个零件的固有频率落入这个区间,跑起来就会出现明显抖动,甚至引发共振放大,导致IMU数据毛刺和关节控制振荡。
我一般用两个办法在图纸阶段就规避这个问题:第一,大腿小腿采用有限元模态分析,确保一阶固有频率大于30Hz,至少要远离步态基频的三到五倍;第二,装配完成后做一次简易扫频测试,用手机加速度计贴在躯干上,从1Hz扫到50Hz,看哪个频率点加速度幅值异常放大,那就是需要加强或者减重的薄弱位置。很多团队跳过这步直接上算法,最后找半天原因发现是机架某个支架在20Hz附近共振,这属于典型的"结构债"。
1.2 负载、自重、关节扭矩之间的定量关系
四足机器人单腿的质量通常占整机总质量的18%~25%。这不是拍脑袋定的:支撑相时单腿要承受全部或大部分重量,摆动相时腿部自身的惯性力又决定了关节扭矩的下限。有一条粗略估算公式在我设计时很常用:
关节峰值扭矩 ≈ (整机重量 + 动态冲击系数×整机重量) × 等效臂长 + 腿部自身惯量×角加速度
动态冲击系数在trot步态落地时我一般取2~3倍,跳跃落地能到5~8倍。假设一台15kg的四足,单腿支撑时承受约75~150N的动态载荷,大腿等效臂长约0.15m,那么髋关节峰值扭矩就要做到11~22Nm左右。再叠加腿部摆动时大腿自身约0.5kg的惯量贡献,实际选电机+减速器的峰值扭矩至少要留30%余量。这些数字要在画图前就算清楚,否则结构一重,电机扭矩不够,整个平台就废了。
2. 腿部构型不是越像狗越好:三种主流方案的对比与选型逻辑
四足腿部构型看起来五花八门,但主流只有三种路线:串联关节型、并联驱动型、混合构型。每条路线都有自己清晰的适用范围,选错路线的代价后面很难靠控制补回来。
2.1 串联构型:简单可靠,控制友好的主流选择
串联构型就是我们熟悉的"髋-大腿-小腿"三段式:髋关节负责外展/内收,大腿处有前后摆动的关节,膝盖处有弯曲关节。MIT的Cheetah系列、Spot都采用了类似的串联方案。它的优点是运动学模型直观,每个关节独立控制,雅可比矩阵求得快,控制算法成熟;缺点是结构刚度靠每个关节的减速器刚度和结构件刚度串联而成,越靠末端的关节,负载越复杂。
我第一台四足用的就是全串联构型。实际跑起来发现一个有意思的细节:小跑步态下,膝关节承受的弯矩和扭矩都很大,但膝关节又在大腿末端,空间受限,不能放太大的电机。所以我当时把膝关节驱动电机放在了髋关节附近,通过同步带或连杆把动力传到膝盖,这样的"异地驱动"在减小腿部惯量的同时,也大幅降低了膝关节的冲击载荷对电机轴的直接影响。这个思路后来在很多竞赛机器人和轻量化平台上都能看到。
2.2 并联驱动:高刚度高精度,但占空间和重量
并联构型在四足上主要体现在髋关节外摆机构或小腿驱动上,有些平台甚至会做成"五连杆+驱动电机"的腿部结构。并联的最大好处是把驱动源放在靠近躯干的位置,转动惯量小,结构刚度和末端精度高,特别适合需要精确落足、抗冲击的场景。缺点是工作空间受限、运动学计算复杂,关节奇异位形处理麻烦,而且整套机构占用的空间和重量在小型化平台上是吃不消的。
我之前帮人评估过一个并联腿部方案,静态精度确实优秀,足端重复定位精度能控制在0.5mm以内,但整腿重量比同规格串联腿重了将近40%。对于15kg以下的小型四足来说,这个重量代价太大了。除非你的目标不是奔跑,而是稳定性优先的静态步态巡检,否则我个人不太建议小平台上全并联。
2.3 混合构型:在惯量和刚度之间找平衡
混合构型本质上是"串联布局+并联驱动局部"的折中,最常见的做法就是膝关节异地驱动(电机放髋关节,通过同步带或四连杆把动力传给膝盖)。这样做的好处非常直观:大腿最重的驱动源被挪到靠近骨盆的位置,腿部旋转惯量大幅下降,膝关节又保留了串联布局的简单控制的优点。
我做结构设计时,大腿段和小腿段的质心位置是要单独核算的。理想情况下,大腿段质心尽可能靠近髋关节旋转中心,小腿段质心尽量靠近膝关节旋转中心。这样摆动相同角速度时,关节功耗能降低30%以上。四连杆膝关节还有一个额外的好处:可以设计成非线性的传动比,让膝盖在弯曲过程中扭矩输出更贴合实际需求曲线,这个细节很多公开设计里都没讲透。
3. 自由度分配与驱动布置:为什么说"关节放哪里"比"选多大电机"更重要
自由度分配是四足机械结构里最需要动脑子的环节。少一个自由度,运动能力受限;多一个自由度,重量和复杂度激增。我倾向于把自由度分成"必选"和"可选"两类来看。
3.1 每条腿的四个核心自由度
标准的四足机器人每条腿通常有3个主动自由度:髋关节外摆(yaw)、髋关节前后摆(pitch)、膝关节弯曲(pitch)。有些平台会在踝关节加第四个自由度用来落足姿态调节,但大部分跑跳为主的设计会砍掉踝关节主动自由度,改用弹性被动关节或者干脆刚性固定,因为踝关节主动驱动带来的重量代价,往往大于它在平地上的落足姿态收益。
髋关节外摆自由度是很多人容易忽略的,但它决定了机器人能否做侧向移动和转向。这个关节承受的力主要是机器人的侧向分量和步态切换时的动态载荷,冲击不亚于前后摆动的髋关节。我做结构时,髋外摆关节的轴承会专门选大一规格,因为它出问题的概率比前后摆高得多——一旦外摆关节松动,整个腿部就会"飘",跑起来姿态数据会很诡异。
3.2 驱动电机与减速器的布置策略
驱动布置有三种基本思路:全部关节直驱/准直驱、谐波减速器集中驱动、行星减速器+同步带传动。这里有一个核心矛盾——电机越靠近末端,转动惯量越大,腿部动态响应越差;电机越靠近躯干,传动路径越长,效率和刚度损耗越大。
我个人的实测经验如下:
| 方案 | 单腿惯量 | 结构复杂度 | 控制难度 | 峰值扭矩 | 适用场景 |
|---|---|---|---|---|---|
| 直驱/准直驱 | 中高 | 低 | 中(依赖高扭矩电机) | 小~中 | 轻量高速动态平台 |
| 谐波减速器 | 高 | 中 | 低(刚性好) | 大 | 重载稳定平台 |
| 行星减速器+同步带 | 低 | 高 | 中 | 中 | 竞赛/轻量平台 |
准直驱方案(中空大扭矩电机+低减速比行星减速器)这两年在学术界很流行,MIT Cheetah 3和不少高校平台都在用。它靠大力矩电机直接输出,省掉多级减速,反向驱动性好,落地冲击能被电机反电动势部分吸收,控制上更像"弹性驱动"。缺点是电机本身贵,驱动器峰值电流要求高,整机成本下不来。我做过一套三段式同步带传动的腿,膝关节峰值扭矩能到25Nm以上,但传动间隙和皮带预紧力的维护确实让人头疼。后来换了准直驱方案,维护成本降下来了,但电机和驱动板的预算翻了一倍多。没有绝对好坏,只有是否匹配你的目标和预算。
3.3 通过算例确认关节减速比和电机峰值转速
这里给一个我常用的选型算例。假设目标trot步态频率2Hz,步长约0.25m,支撑相占空比50%,那么摆动相时间约0.25秒内足端要走完0.25m。按脚跟轨迹近似正弦,膝关节在摆动相内的角速度峰值大约在6~8rad/s。此时如果减速器选择6:1,那么电机轴的峰值转速大约在36~48rad/s,也就是约340~460rpm。这个转速区间对大多数无刷电机来说处在高效区附近。反过来,如果减速比选到15:1,电机要跑到1100rpm以上,对电机的高速性能和驱动器带宽就有更高要求了。所以减速比不能单独看扭矩放大倍数,还得跟电机转速、控制带宽放在一起权衡。
我记得有一版设计,最初减速比选了10:1,跑起来发现膝关节响应滞后明显,后来改用6.5:1,控制延迟明显改善,代价是峰值扭矩余量小了一些。这种取舍,就是典型的结构和控制联合优化的过程。
4. 材料、工艺与连接方式的实战选择:碳纤维不是万能解药
材料选择是整个机械结构里最容易被"参数党"带偏的部分。很多人看到MIT用碳纤维,就觉得自己也要全碳;看到别家机架是铝合金,又觉得铝太重。我的观点是:材料选择要从载荷路径、工艺成本、修复难度三个维度综合考虑。
4.1 铝合金、碳纤维、3D打印件的实际定位
铝合金(7075或6061)是我最常用的结构材料。7075-T6抗拉强度在560MPa以上,硬度和疲劳性能都比6061好一大截,但价格和加工难度也会上去。对于躯干主梁、髋关节座这类承受多向复杂载荷的零件,我会优先考虑7075;对于非承力支架、电池仓、传感器安装座这类低载荷件,用6061甚至3D打印PA12就够了,没必要全机武装到牙齿。
碳纤维材料用在四足上的核心优势不是"轻",而是"比刚度高"。碳纤维板的弹性模量约是铝合金的3倍,密度只有铝的60%,所以同样刚度下碳纤维板可以做到更轻更薄。但它有两个致命弱点:一是抗冲击性差,落地剐蹭或者摔机时容易崩裂分层,不好修;二是打孔处应力集中严重,需要埋金属嵌件或者做加强层。我现在只在躯干底板和大腿主梁这两个"纯弯曲"场景用碳纤维,关节受力和冲击区一律用铝合金或钢件。这个搭配让整机减重约15%,但维修成本基本没增加。
4.2 轴承、紧固件与公差配合:细节决定寿命
机械结构里最不值钱但最能拉低体验的就是紧固件和轴承。四足机器人腿部关节的振动频率高、冲击大,普通内六角螺钉在长时间服役后很容易松动,我全部改用带尼龙防松圈的不锈钢螺钉,关键位置再涂螺纹胶。轴承选型上,各关节至少用深沟球轴承,髋外摆和膝关节位置用带法兰的薄壁轴承,不要省这几块钱——我早期因为轴承间隙大,导致足端定位误差累计超过3mm,整机跑起来震颤严重,排查了很久才意识到问题出在关节轴承的径向游隙上。
公差配合也是经验的集中体现。碳纤维件和铝合金件配合时,因为两者热膨胀系数差异,过盈量过大会压裂碳板,过小又会松动,我一般控制在0.02~0.05mm的过渡配合。3D打印件和金属件之间不要直接做精密配合,打印件有缩水和层纹,精度很难到0.1mm以下,不如留0.3mm间隙后用柔性橡胶垫或尼龙套筒过渡。
4.3 装配顺序和预载荷管理
装配是机械结构里最容易被低估的环节。四足机器人的腿部结构往往要在很小的空间里同时布置轴承、电机、编码器、线缆和润滑脂,装配顺序错了,要么返工,要么埋下隐患。我的习惯是:先装关节轴系(轴承+轴+卡簧),再固定电机和减速器,然后走线,最后装外壳或保护支架。走线要在装配前就规划好路径和长度,预留足够的运动余量,避免关节转动时拉扯线缆。
还有一个关键点是预载荷控制。髋关节外摆螺钉的锁紧力过大会压迫轴承,导致转动发涩;过小又会产生轴向窜动。我一般用扭力扳手控制在0.8~1.2Nm范围内,锁紧后手动转动检查阻尼是否均匀。这个细节极不起眼,但很多新手机器人的"关节偶发卡涩"问题就是从这里来的。
5. 躯干与悬挂结构:经常被忽略但决定整机稳定性的载体
四条腿设计得再好,躯干结构拉胯,整机表现一样上不去。躯干是电池、主控板、驱动板、IMU等核心部件的载体,同时还要抵抗四条腿传来的弯曲力矩和扭转力矩。很多人把躯干当成一块"平板",这是错的。
5.1 躯干的抗扭设计与重心控制
四足在斜向步态或者单腿支撑时,躯干会受到明显的扭转载荷。如果躯干做成简单的平板,扭转变形会直接影响足端着地点位间接误差。我的设计原则是:躯干做成盒式或桁架式结构,用两侧墙板和上下板材围成闭合截面,抗扭刚度比单层板提升好几个量级。躯干左右侧板之间的加强筋不是装饰,它是抗扭刚度的核心。
重心位置是我每次画图的出发点之一。整体重心必须落在四条腿支撑多边形中心附近,前后偏差不超过整机长度的10%。电池是最重的单件,我通常把电池仓设计在躯干中后部可调位置,通过前后移动电池来微调重心——这样比改结构件快得多,也不影响整机刚度。重量30kg级别以下的平台,这里能省下很多反复迭代的时间。
5.2 悬挂与足端弹性:处理好"落地即冲击"
为了解决落地的瞬间冲击,很多设计都会在足端做文章。我测试过刚性足端、硅胶套足端和带弹簧缓冲的足端。刚性足端动态响应最直接,但落地冲击会顺着小腿传到大腿直至驱动电机,长期跑跳后电机轴承和编码器故障率明显上升。硅胶套足端适合室内平整地面,缓冲一般且磨损快。真正好用的是"弹簧+阻尼"组合的弹性足端,能吸收大部分高频冲击,但会影响足端着地时的位置精度和步态控制带宽,这个代价必须在算法校正阶段补回来。
躯干内部的减震也不能忽视。IMU是感知系统最核心的传感器,它对高频振动非常敏感。我会在IMU和躯干之间加一层硅胶减震垫,再配合软件里的低通滤波,姿态解算数据明显干净许多。另外,电池仓边缘也要贴薄橡胶垫,否则跑动中电池晃动产生的额外力矩会让控制难度陡增。
6. 装配调试阶段最容易遇到的结构问题与排查链路
结构设计和零件加工只是第一步,真正让人头疼的永远是装配和调试阶段冒出来的各种"疑难杂症"。我把这些年最常遇到的几类问题整理出来,附上我的排查链路,希望对你有帮助。
6.1 关节间隙与足端抖动的关联判断
现象是跑起来足端轨迹有明显抖动,但控制参数已经改过很多轮了,效果始终不好。排查链路我一般是:先做静态手动检查——用手握住大腿和小腿,沿径向和轴向分别施加力,感受有没有晃动量。如果用手就能感觉出哪怕0.5mm的径向窜动,说明轴承或配合已经有问题。接下来用百分表打膝关节轴心位置,测量径向跳动和轴向窜动,如果跳动超0.1mm,就检查轴承游隙、卡簧是否到位、螺钉预紧力是否合适。最后检查电机和减速器输出端的连接是否打滑,尤其同步带方案要确认齿带张紧度。这几年好几个"控制调不好"的案例,最后都查出来是同步带松动导致的回程间隙在作怪。
6.2 关节异响、发热和卡涩的常见来源
关节异响的第一大来源是轴承润滑不足或轴承内部有异物;第二大来源是齿轮/减速器装配偏心;第三大来源是线缆和护套在关节旋转过程中发生摩擦。发热问题则多半是预压过大、轴承位不同轴或者减速器润滑脂过稠。卡涩的原因一般集中在:螺钉过长顶到了轴承外圈、法兰压盖变形压迫轴承、壳体加工毛刺没有清除。所以我在装每个关节前会先单独做一次"空载转动测试",用电机动起来听声音、手感阻尼均匀度,确认无异常再装整腿。这个习惯帮我筛掉了大量低级装配失误。
6.3 结构迭代的"最小改动"原则
最后聊一下结构迭代的方法论。四足机器人机械结构出问题时,切忌"大改"。每轮改动如果涉及多个零件多个部位,一旦出现问题,你根本分不清是哪个改动起了反作用。我坚持"每次只改一个变量":这轮只改膝关节传动比,下轮只改大腿材料,再下轮只调整重心位置。把每一次改动做成可对比的实验,记录数据再决定下一步。这样做虽然慢,但每一步都扎实,不会在原地打转。
另外,做结构修改前一定要先确认问题源确实在结构侧。我见过太多人把控制参数乱调一通,最后发现是结构松了;也见过有人反复重做结构件,因为没发现其实是编码器零漂导致的位置误差。机械和软件是两个互相干扰的复杂系统,调试时要明确边界,哪个变量属于结构侧、哪个属于算法侧,要有判断依据。
根据我个人经验,做四足机器人的正确路径是:先花几周时间把机械结构做得扎实、边界清晰,再开始写控制代码。结构上没有解决好的问题,最终都会以各种匪夷所思的方式出现在算法调参里,让你误以为是自己能力不行。反过来,结构底子好,哪怕初期控制调得粗糙,机器人也能稳稳当当走起来,给你充分的容错空间去调试更复杂的步态和机动动作。希望这篇关于机械结构的拆解,能帮你少走一段弯路。