想做一个既能爬坡越障、又比四足稳得多的小机器人,六足是个很好的方向。六条腿天生优势:随时保持三点支撑,地形复杂也不容易翻,运动方式还多变。这篇文章把一套用 Arduino 控制 18 个舵机的六足机器人完整方案讲清楚,从材料、3D打印到步态调试,照着能搭起来。

先搞清结构:六条腿、每条3关节
六足机器人的每条腿一般做成3个关节:髋节(coxa)负责抬腿方向、股节(femur)和胫节(tibia)负责摆动落地,对应叫法很多,本质都是“3个舵机驱动一条腿的3段连杆”。6条腿就是18个舵机,也就是18个自由度。
机械件一般用3D打印做,PLA够了,标准设置加少量支撑。一条腿需要打印 leg_mount、coxa、femur、tibia 四件,建议先打印一条腿装起来,确认零件配合没问题,再一口气打剩下的五条,避免打错了重来。

材料清单(照着买)+ 两个省钱建议
核心件就几样:Arduino(Uno 或 Mega 都行)、18个舵机、舵机扩展/驱动板、电池(18650两节串联或3S航模锂电)、降压模块、一堆杜邦线和M3螺丝。舵机是最大的一笔开销,也是决定寿命的关键。
这里有第一个坑:新手常买 SG90 这个微型舵机,便宜、到处有,但它是塑料齿,机器反复走路时腿部抬起落下有冲击,塑料齿很容易磨损甚至扫齿,用久了会抖、无力、卡死。预算允许的话,直接上金属齿的 MG90S 或 MG996R,重量价格略增一点点,耐用性是质变,我后面所有腿都换成了金属齿,再没出过问题。
另一个建议:18个舵机同时跑电流不小,不要把舵机的电和 Arduino 板子的电混在一起。用两路供电——舵机一路走降压模块供给,主控单独一路,避免舵机抽电瞬间把主控拉死机。
舵机怎么接线
每个舵机3根线:红色接电源(5V或电池),棕色/黑色接地,黄色/橙色接 Arduino 数字引脚。Arduino Uno 只有6个硬件PWM脚(3/5/6/9/10/11),但 Servo 库能用软件定时器在几乎所有数字脚上模拟PWM,一路接到底问题不大(Mega 引脚更充裕更从容)。建议每接一个舵机就拍照记下它接在哪个引脚,18个全接完很容易乱。
底座接线时,把5V和GND也引到扩展板的接线端子上备用,后面调试方便。

步态:核心就“两队腿轮着走”
六足能稳定走路,靠的是“三角步态”。把6条腿分成两组:1、3、5为一组,2、4、6为另一组。走路时先抬起第一组腿往前摆(摆动相),落地的同时第二组腿稳稳撑住地面推动身体前进(支撑相),然后换组。关键原则一条:永远不要同时让超过两条腿离地,这样机身始终有三点支撑,不会倒。
简单说每条腿就两个阶段:摆动相(抬起前移)和支撑相(落地推身),以波纹/交替模式运动,六足就稳稳往前走了。想转向,就调整左右两组腿的摆动幅度差。
别忘了校准舵机(最容易忽略的一步)
很多六足装好不动、或走起来歪歪扭扭,九成是舵机没校准。装配时每个舵机要设到0度位置再装舵臂;装好后先别急着拧紧舵臂螺丝,逐条腿对照中性位置(股节水平、胫节和股节成90°)调整,确认角度对了再把螺丝拧死。
有舵机驱动板(比如SSC-32或PCA9685)的,可以用配套的校准工具逐通道查;每次上传代码前,把代码里的引脚分配和各关节偏移量改成你自己的实际值,不然腿动起来位置是错的。

进阶方向
基础会走后,可以加的东西不少:HC-05蓝牙模块做手机遥控、HC-SR04超声传感器做自动避障、装个摄像头做巡线或视觉跟随。再进阶就是给每条腿加逆运动学(IK)算关节角度,或者用PCA9685+树莓派/ESP32顶替 Arduino 得到更强的算力和更多的舵机通道。
对想入门足式机器人、又想让成本可控的人,用 Arduino 和 18 个舵机做六足,是把机械、电子、嵌入式一次都练到的最实在的路径之一。从打一条腿开始,到六条腿走出第一步,中间踩过的坑就是最值的学习素材。











3D打印一条腿先试装再打剩余五条,这个建议能省不少冤枉料,新手友好。
两路供电分开这个细节很多教程不讲,舵机一抽电主控就重启,踩过的人才懂。
调舵机中性位置那段太重要了,我之前装好不动就是舵机没校零,卡了整晚。
三角步态讲得清楚,两队腿轮着走、别让两条腿同时离地,三点支撑就不会翻,入门理解很直观。
18个MG90S金属齿舵机,这个思路对,SG90塑料齿走几次步就扫齿,教材里这个坑说得很实在。