做四足机器人,最难的不是算法,不是电机,而是你画出来的第一版结构能不能在第三次调试的时候不断腿。我见过太多人把精力全堆在步态和强化学习上,结果机械结构一塌糊涂,走着走着关节嘎吱响,跑两步大腿直接断裂,最后只能回去改图重做。这个坑我踩过不止一次,所以想认真把四足机器人机械结构这件事从头到尾拆一遍:从构型取舍、材料选型、传动方案到装配调试、故障排查,全是基于实际项目经验的干货。无论你是刚入门想做一台能站起来的四足,还是想优化现有平台的结构刚度和减重,这篇内容都适合你慢慢看。
1. 整体构型选型:动手画图之前,先想清楚腿怎么布
1.1 腿部拓扑结构:串联腿与闭链腿的取舍
四足机器人腿部构型,本质上就两大类:开链串联腿和闭链并联腿。市面上绝大多数能跑能跳的四足,比如MIT Cheetah、宇树的机器狗,用的都是串联腿——髋关节两个自由度(外摆 roll + 俯仰 pitch),膝关节一个自由度(pitch),组成一条带三个旋转关节的机械腿。这种构型的核心优势是控制模型简单,每个关节独立驱动,逆解算起来很直接,工作空间大,足端活动范围广,前后摆腿、抬腿都能轻松覆盖。
闭链五连杆腿就是另一条路线了。它的特点是两个驱动电机都装在髋部或者机身侧边,通过连杆机构把动力传到足端。这样做的好处是腿部末端质量大幅降低,转动惯量小,抗冲击能力强,而且峰值力矩需求低,适合做爆发力强的跳跃动作。但代价是工作空间明显受限,运动学是非线性的,控制复杂度高,机构零件多,装配精度要求很苛刻。我试过一台五连杆足式平台,光保证左右腿对称和连杆长度公差就折腾了两周,更不用说后续调运动学参数的时间成本。
给新手的建议很直接:第一次做四足,选串联腿,三关节分布按照“髋外摆 roll——髋俯仰 pitch——膝俯仰 pitch”的顺序来。这种构型资料最多,控制例程一抓一大把,而且单腿模块化程度高,坏了大腿单独换一根就行。别一上来就挑战闭链,除非你已经有扎实的并联机构设计经验。
| 构型类型 | 工作空间 | 控制难度 | 抗冲击能力 | 零件数量 | 适用场景 |
|---|---|---|---|---|---|
| 串联三关节腿 | 大 | 低 | 一般 | 少 | 通用行走、跑跳、教学 |
| 闭链五连杆腿 | 小 | 高 | 强 | 多 | 高爆发跳跃、负重场景 |
| 混联腿 | 中 | 中 | 中 | 多 | 特定科研验证平台 |
1.2 关节配置细节与腿长分配的设计逻辑
先说关节轴向分布。hip roll 这个外摆关节,有人放在髋关节最外侧,有人把它放在大腿根部内侧。我最开始做的那版,roll 关节放在外侧、pitch 关节放在内侧,结果腿部侧向尺寸很大,站立时机身横向宽度被撑得很开,转向时惯性也大。后来改成 roll 在髋部外侧、pitch 在其内侧,并且让 roll 和 pitch 的旋转轴线尽量在同一个平面相交于一点,这样腿部摆动时更紧凑,机身侧倾控制也更线性。
腿长分配方面,业界比较通用的做法是大腿小腿接近等长,或者微微偏向上长下短。比例大概在 1:1 到 1.2:1 之间。为什么不能差太多?大腿比例过长,站立时髋关节力矩过大;小腿过长,重心高,行走稳定性差,而且足端着地时容易打滑。我自己常用的一个经验公式:腿部总长度(髋 pitch 轴心到足端)约等于机身宽度的 0.8~1.0 倍。机身宽 30cm 的机器人,腿长做到 25~30cm 左右,站立高度和步态协调都比较舒服。
抬腿高度和步幅也跟腿长直接挂钩。一般正常行走,足端离地高度只需要 3~5cm,步幅控制在腿长的 40% 以内就够了。如果腿长比例不对,比如大腿比小腿长太多,抬腿时小腿会容易向内踢到机身底板,所以在画图阶段就要做以下几件事:
- 在 CAD 里把三关节的旋转范围预设好,一般 pitch 关节正负 45 度到 60 度,roll 关节正负 25 度左右。
- 建一个简化模型,手动拖拽足端到工作空间边界点,检查大腿、小腿、电机外壳、减速器之间有没有干涉。
- 把机身的底板、侧板也摆进来,模拟腿部收到极限位置会不会磕碰。
这些检查在图纸阶段做,成本几乎为零,但等结构件加工回来后才发现干涉,那就只能返工重做,费钱又耗时间。
2. 材料选型与加工工艺:减重和刚度之间的平衡点到底在哪
2.1 不同部位的结构件材质怎么选
四足机器人的材料选择,绝对不是越硬或者越轻越好,要看具体零件承受什么载荷、需要什么功能。常见的几个选择,我分别说说实际感受。
7075 铝合金是最均衡的结构件材料,强度高(屈服强度接近 500MPa)、密度低(2.81g/cm³)、CNC 加工性能好、阳极氧化后外观和耐磨性都不错。大腿、髋关节支撑件、机身侧板这类主承力结构,我优先用 7075-T6。6061 铝便宜、加工更容易,但强度低一截,适合做支架、非承力外壳。
TC4 钛合金密度比铝高 60%,但屈服强度接近 900MPa,适合做轴座、关节耳片这种承受高接触应力、空间又受限的关键点。不过钛合金是真的难加工,攻丝容易断丝锥,价格是铝的十几倍,做之前要确认加工厂有没有钛合金加工经验,不然一批零件报废是常有的事。
碳纤维板只建议用在非受力的外壳、大腿盖板或者狭长形状的连杆上。碳板的好处是刚性好、密度低,但打孔容易分层,螺丝锁紧处如果没有预埋螺母或者大垫片,用一段时间孔位就会变形。我踩过最惨的一个坑:用碳板做小腿,和踝关节连接处的孔没有加铜套,锁紧螺丝后跑了几十分钟,孔直接裂了。
3D 打印尼龙(PA12)适合快速做复杂结构的样件,比如内部走线槽、传感器支架,打印出来轻量化、形状自由,但强度和表面精度有限。金属 3D 打印(如铝、钛合金)可以做出传统加工做不出来的拓扑优化结构,但价格高,表面粗糙度也影响配合,一般用在科研迭代阶段。
| 材料 | 密度 g/cm³ | 屈服强度 MPa | 加工难度 | 综合成本 | 典型用途 |
|---|---|---|---|---|---|
| 6061 铝合金 | 2.70 | 276 | 低 | 低 | 支架、非承力结构 |
| 7075 铝合金 | 2.81 | 503 | 中 | 中 | 主承力大腿、机身板 |
| TC4 钛合金 | 4.43 | 900 | 高 | 高 | 轴座、关节耳片 |
| 碳纤维板 | 1.60 | 600+ | 中 | 中高 | 盖板、窄连杆 |
| 3D 打印尼龙 | 1.01 | 45 | 低 | 低 | 走线槽、快速样件 |
2.2 关键零件设计与公差控制的实际经验
结构设计里最容易翻车的,是配合公差和应力集中。关节轴和轴承的配合,我一般推荐轴的公差取 h6,轴承孔取 H7,也就是间隙配合,既能顺利装入,又不至于松动。如果是轴和铝件直接压配,轴径差控制在 0.005~0.01mm 以内,并且孔口要倒角 0.5mm,不然压进去的时候会刮出金属屑。
大腿和小腿这种承受反复弯曲载荷的杆件,最怕的就是直角尖角。尖角处应力集中系数很高,在反复冲击下很快就会疲劳开裂。设计时所有受力部位过渡圆角至少做 R2,最好是 R4 以上,尤其是轴孔根部。图纸上如果没标圆角,加工师傅默认会做成直角,等断腿了再去改图,来回至少浪费一周。
另外,阳极氧化也会影响尺寸。氧化膜层厚度通常在 5~10μm,螺纹孔如果设计在公差临界值,氧化后攻丝会变紧,甚至装不下螺丝。我的做法是:配合公差较紧的位置做局部遮蔽、不做阳极,或者加工时把内孔单边做大 0.05mm 预留氧化层空间。
还有一个小细节——所有螺纹孔必须标注有效螺纹深度。很多加工厂默认只攻一半深度,结果你拿到手锁 M3 螺丝,拧进去两圈就到底了,完全没强度。标注上“有效牙 8mm”或者“通孔”,能避免大量装配问题。
3. 传动方案与关节执行器:扭矩、背隙和响应速度怎么平衡
3.1 减速器选型:谐波、行星还是准直驱
关节驱动方案是整个机械结构里最核心的部分。常见的减速器有三种:谐波减速器、行星减速器和无减速器的直驱/准直驱方案,三者的特性和适用场景差异很大。
谐波减速器减速比大(常用 50:1~160:1)、零背隙、重量轻,力矩控制精度高,是中高端四足的标准选择,比如宇树、MIT Cheetah 都用了类似方案。但谐波也有明显缺点:贵、柔轮容易疲劳损坏、输入转速不能太高。我有一台机器用的是 100:1 谐波,行走时非常安静,力矩线性度也好,但有一次从 40cm 高度跌落直接冲击到输出端,柔轮变形报废,换一个柔轮的钱比一对行星减速器还贵。
行星减速器背隙偏大(一般的 0.5°~1°),但便宜、皮实、抗冲击能力强,学习阶段非常推荐。用行星减速器时,建议选高精度(背隙在 0.3° 以内)的型号,再配合编码器闭环控制,实际运行效果并不差。
准直驱则是用高 KV 无刷电机加小减速比(5:1~10:1),利用大电流输出高力矩,代表是 Unitree A1 的方案。这种方案响应速度极快,力矩控制带宽高,跌倒时因为输出端惯量小也不容易损坏结构。但准直驱对电机和驱动器要求很高,需要大电流、高功率密度,成本一点也不低。
| 方案类型 | 减速比范围 | 背隙 | 抗冲击 | 力矩精度 | 成本 | 适合阶段 |
|---|---|---|---|---|---|---|
| 谐波减速器 | 50~160:1 | 零 | 差 | 高 | 高 | 高性能跑跳、科研 |
| 行星减速器 | 6~50:1 | 0.3°~1° | 好 | 中 | 低 | 入门学习、行走验证 |
| 准直驱 | 5~10:1 | 极小 | 好 | 高 | 高 | 高动态控制研究 |
选型建议很简单:预算有限或者第一次做,行星减速器起步,把基础运动控制跑通再说;等项目有第二版预算,再上谐波。
3.2 电机扭矩需求估算与减速比计算过程
选电机之前,先得算明白关节到底需要多少扭矩。我以一个整机 25kg、腿长 30cm 的四足机器人为例,做一次完整体的估算流程。
正常站立时,单腿平均承重约 6kg(三条腿支撑),即足端垂向力约 60N。髋 pitch 关节在支撑相需要克服的是足端力臂带来的力矩,最恶劣情况是腿水平伸直的状态,力臂就是整条腿长 0.3m,关节力矩约 60N × 0.3m = 18Nm。
行走时动态载荷是静载的 2~3 倍,所以峰值力矩按 50Nm 来算。如果减速器选了 10:1 的行星减速器,传动效率约 80%,电机端需要输出的峰值扭矩约 50 / (10 × 0.8) = 6.25Nm。再预留 20% 的余量,电机峰值扭矩 8Nm 以上比较稳妥。电机 KV 值的选择也一样:假设关节需要达到 10rad/s 左右的角速度,电机端转速就是 10 × 10 = 100rad/s,也就是大概 955rpm,选电机的额定转速在 1000rpm 以上即可。
总结下来,设计一台 25kg 级四足机器人,单腿三关节的扭矩配置建议是:
- 髋 roll:30~40Nm
- 髋 pitch:50~60Nm
- 膝盖 pitch:40~50Nm
膝关节扭矩不是最大的,但膝盖在迈步时经常需要高速摆动和小扭矩输出,所以电机转速和响应速度比峰值扭矩更关键。
3.3 关节结构与轴承布局的细节设计
关节模组不是把电机和减速器一拧就完事,轴承布局直接决定关节刚度和寿命。核心原则是:两轴承之间跨距要足够大,保证轴受力后不发生歪斜,也就是常说的“大跨距支撑”。
以髋 pitch 关节为例,输出轴穿过一个长度约 40mm 的铝座,我一般两端各放一个 6802 深沟球轴承,跨距近 30mm,而不是只在单侧放一个。单轴承设计看着省事,但其实输出轴悬臂非常长,受侧向力后轴承侧向游隙会变大,关节明显晃动,跑起来腿部姿态全是乱的。
轴承轴向预紧也很关键。通常用卡簧或者锁紧螺母施加很小的轴向预紧力,压掉轴承内部间隙,但注意不能锁过头,否则轴承运转阻力增大、发热严重。我通常用扭矩扳手调到刚好消除晃动、又能顺畅转动的位置,大概就是你手指能感觉到轻微阻尼、但盘两圈以后可以靠惯性继续转的松紧度。
润滑方面,启动关节的减速器和轴承,选锂基脂或者合成润滑脂,充满减速器腔体一半左右,不要全灌满,否则搅油阻力大,温度上升快。轴承处抹薄薄一层即可,不需要挤太多,抹多了高速运转时容易被甩出来。
4. 装配、走线与调试:机械和电气之间最容易被忽视的接口
4.1 单腿子装配与整机总装的顺序
装配顺序讲究“先子后母”,先装单腿,再装整机。单腿装配我推荐的流程是:先把髋 roll 子装配(电机、减速器、轴承、轴座)装好,再装髋 pitch 和膝 pitch 的模块,最后把大腿小腿连杆连上去。这样能保证每个关节都能单独盘转测试,有问题锁定在最小范围内,不用拆整机排查。
锁螺丝的扭矩一定要控制。M3 内六角杯头,一般拧 1.5~2.5Nm,超过 3Nm 就有滑丝风险。关键受力处的螺丝,必须上螺纹胶,比如乐泰 243(中等强度,手指能拧开,但抗震动很好)。特别是连接电机法兰和减速器输入端的螺丝,我见过没上螺纹胶,跑着跑着螺丝震松脱落,最后直接把谐波柔轮打碎的案例。
总装时有个容易忽略的检查:用手转动每条腿,从足端到髋关节,顺着整个传动链感受有没有卡滞和异响。正常状态盘腿应该顺滑、没有任何“咯噔”感。如果有关节在某个角度卡一下,大概率是轴承安装偏斜或者轴与孔同心度不够,趁早解决,不要等到上电再去排查。
4.2 走线和线缆管理的实战经验
机械结构设计时,走线是最容易被低估的环节。动力线(电机 A/B/C 三相线)是高压大电流,编码器线和霍尔线是低压小信号,两者如果绞在一起,电机高负载时编码器数据会跳动,位置环都会跟着抖。我的经验是动力线和信号线分开走,在机身两侧各走一路,或者中间用一层绝缘隔板隔开。
关节处走线要尤其注意。腿部在运动时,线束在关节弯曲段反复弯折,是最容易磨破、折断的地方。正确做法是:把线缆余量留在机身上部的集线区,而不是留在关节的弯曲段。这就像晾衣服的时候把绳子余量放在挂钩上,而不是让它在衣架上甩来甩去。我用的是尼龙编织网包裹整束线,再用束线带固定在结构件上,关节近端留一个 U 型缓冲弯,确保关节转到极限位置时线束也不会被过度拉伸或挤压。
编码器线首选双绞屏蔽线,屏蔽层单端接地。另外,磁编码器芯片要离电机磁铁至少 5mm 以上,否则磁路干扰会造成电平跳变。第一版设计时我把编码器直接贴在电机底部,中间只隔了一层 1mm 铝板,结果一上强电流,角度数据就跳 3~5 度,后来改为安装在减速器输出侧,远离电机磁钢,问题才解决。
4.3 上电前的零位标定与低刚度初调流程
机械结构装好以后,千万不要急着上大步态,有个循序渐进的调试流程。我总结下来大致是这样:
第一步,用手把每条腿摆到一个默认零位姿态,在程序里记录当前编码器值作为零偏。这个零位必须固定,比如让大腿垂直于地面、小腿与大腿成 90 度,每次上电都执行同样的零位标定,否则同一个角度下编码器读数不同,支撑腿会突然乱跳。
第二步,先用极低的关节刚度(比如 PD 控制里的 Kp 设到当前设计值的 20%,Kd 设到 30%)让四条腿缓慢支撑起来。此时要盯紧各关节的电流反馈,如果某关节电流异常高,说明该关节存在卡滞或者零位偏太多,需要断电调整。
第三步,在支撑稳定的基础上,逐步提高刚度,然后做蹲起动作。蹲起是检验机械结构和传动系统最有效的简单测试——如果能连续缓慢做 20 次蹲起而关节不发热、无异响,那说明机构装配基本合格,可以进入步态调试。
5. 常见问题与排查技巧实录
5.1 结构异响、断腿与疲劳损伤的处置
机械结构用久了,最常见的故障就是异响和断裂。异响的来源要区分位置:关节轴转动时沙沙响,大概率是轴承进了金属屑,这种情况先清洁润滑,拆轴承风险很大,能不拆就不拆;踩地瞬间传来“咔嚓”声,多半是螺丝松动或者连杆间隙变大,先检查各连接螺丝的扭矩,再检查关节轴承的侧向间隙。
断腿的位置几乎永远出现在几个固定的地方:大腿根部开孔处、踝关节耳片、侧板螺丝孔边缘。原因基本都是应力集中加疲劳。想要从根本上减少断腿概率,设计阶段就注意三点:
- 受力杆件的大孔、沉头孔边缘倒圆角,避免锐边。
- 关键承力件尽量用封闭或半封闭截面,比薄板平板强度高很多。
- 定期检查,尤其是每次高强度跑跳后,用手按压所有连接处,确认没有可感位移。
如果已经断了,也别慌,铝合金件直接重新 CNC 很快,钛合金件改铝件过渡也完全撑得住教学测试。不管怎样,零件设计上尽量做到单腿可互换,这样维修顾只换一条腿,不用动整机。
5.2 关节反馈精度问题的排查思路
关节角度跳动是一个很常见但不难解决的问题。排查顺序我建议这样走:先看绝对值编码器的线束和接头,松动或者氧化是最大嫌疑;第二步确认屏蔽层接地是否可靠,没有良好接地时,电机一转动,编码器数据就会跟着噪声跳;第三步检查编码器安装间隙,如果磁铁和芯片间隙变化,读取角度会非线性畸变。
还有一个容易被忽略的原因是电机本体发热导致编码器温漂。关节连续工作十几分钟后,电机温度升高,编码器读数可能缓慢偏移一两度。如果遇到这种情况,程序里做温度补偿或者改用温漂系数更低的外部编码器方案。
5.3 过载发热与谐波柔轮的保护策略
电机过热是四足机器人机械结构逃不开的问题。过热的原因除了负载过大、散热不良,还有一个很隐蔽的因素是关节阻力异常增大。我排查过一台机器人,膝盖电机总是发烫,最后发现是膝盖关节轴承轴向锁得太紧,轴承转动阻力巨大,白白消耗大量电流。处理完预紧力之后,同工况下电机温度直接降了 20 度。
谐波减速器在使用中也要特别留意“柔轮过载”现象。柔轮在高频交变载荷和冲击下,寿命是有限的。保护策略是:在足端与小腿之间设计缓冲结构(比如硅胶脚垫或者弹簧缓冲器),释放落地冲击;同时在控制层限制关节输出扭矩和电流上限,避免堵转过载。柔轮一旦出现金属疲劳断裂,基本只能更换,没有维修价值,所以保护要前置。
在整套结构设计评估时,有一条核心原则值得牢记:刚性再高也不如缓冲合理。四足机器人的使用场景难免有冲击,与其用无限加强结构件去硬扛,不如在足端、关节保护、控制限幅三层都做一点缓冲设计。这样结构寿命会大幅提高,后续调试省心很多。
我个人做了几版四足平台的体会是:机械结构是最值得花时间打磨的部分,调了半年控制之后回头看,收益最大的往往是当初重新设计的那些结构细节——加了圆角、换了材料、移了走线位置。所以说,先别急着追求花哨的运动性能,把结构做扎实,再谈跑跳,路会顺很多。