人形可以避免我们改造世界的麻烦,很多场景结构都是为人类设计的,但是,完全没有必要局限于“越来越像人”,除非你的应用场景是高端硅胶娃娃。
我决定换个方向,从「功能决定形态」的角度,重新想一想:如果一个机器人要做站立、行走、搬运、折叠收纳四种完全不同的任务,它的结构应该长什么样?
这个结构的核心不是一个「造型」,而是一套「关节角度系统」。
双躯干:上下分体,关节解耦
传统机器人的躯干通常是一整块,人形机器人尤其如此。我的方案把躯干分成上下两部分,中间用一个旋转关节(crossAxis)连接。这个关节负责两件事:
当机器人需要折叠收纳时,上下躯干沿这个轴对折,最终完全贴合,体积压缩到最小。

当机器人站起来时,上下躯干沿这个轴展开,在Y轴方向上形成一条直线,机器人恢复到完整身高。
这个关节不是装饰用的,是整个折叠/展开系统的核心机械约束。
四臂:不是装饰,是独立执行器
机器人的四只手臂,每只都有三个关节(J1基座、J2上臂、J3前臂),三个关节全部可以独立控制角度。
这四只手臂和上下躯干之间没有硬性绑定——它们跟着上躯干一起旋转,但自身角度完全自主。这意味着:
站立的时候,四臂可以是收起状态,也可以是前伸状态,取决于任务需求。
搬运的时候,上双臂在外侧环抱立方体,下双臂从底部托住——四只手臂分成两组,各自执行不同的动作。
折叠收纳的时候,四臂全部收进上躯干内部,和上下躯干一起完成整体收纳。
关键是,这四种臂姿态(收起、前伸、环抱、搬运)和四种运动模式(站立、行走、双足站立、折叠收纳)是独立的,可以自由组合。
四足:不只是腿,是一套运动系统
四只脚,每只由大腿、小腿、万向轮组成。大腿和小腿之间是膝关节,可以独立屈伸。四只脚的运动由一个中央控制器统一调度。
站立模式下,四足均匀支撑,躯干保持水平。
行走模式下,前后腿交替迈步,torsoPivot保持水平,躯干不随步伐倾斜。
双足站立是另一个状态——后腿作为支撑脚,前腿收起贴紧躯干,躯干绕后腿关节立起来。这时候机器人只有两只脚着地,但通过重心理论可以稳定支撑。
折叠收纳时,四足向内折叠,与躯干一起收纳进最小体积里。
关节角度:不是设计出来的,是调出来的
说起来有点反直觉——这套结构的关节角度,不是从图纸上设计出来的,而是一边做可视化调试,一边迭代出来的。
每一个关节角度,都需要实际看到效果之后才能确定。J1转多少度才能让手臂不干扰其他部件、J2转多少度才能恰好托住立方体底部、J3转多少度才能在搬运时保持稳定——这些全是调出来的,不是算出来的。
Three.js 做实时可视化,把这个过程变得非常直观。每调一次,立即看到结果,不满意再改,改完再看。反复几十次之后,最终的关节角度才定下来。
为什么这个结构是最理想的机器人
传统的机器人设计思路是「功能模块化」——腿归腿、手归手、躯干归躯干,各司其职。但当任务场景在站立、行走、搬运、折叠之间频繁切换时,这种模块化的思路就会遇到矛盾:一只手,既要能搬运重物,又要在收纳时被完全收进去,它的形态和关节配置到底应该服从谁?
我的方案是:不让单一姿态「妥协」,让每一种姿态都完整实现,通过关节的角度变化来达成。收起时完全收起,搬运时完全展开,站立时比例协调——关节角度是唯一的变量,形态跟着任务走,不是任务迁就形态。
这套结构还没有做出实物,目前只在 Three.js 的可视化环境里验证了运动逻辑。但从运动学的角度看,它的核心矛盾已经解决了——关节角度够用,四种状态互不干扰,可以稳定切换。
希望现在搞机器人的公司可以借鉴一下我的设计思路,早点造出实用的机器人,功德无量!
夜雨聆风