[控场AI]
· 4 分钟阅读· 2,312 字

从零DIY 3D打印摆线减速器:ESP32S3控制板与运动规划全记录

从零DIY 3D打印摆线减速器:ESP32S3控制板与运动规划全记录

Reddit用户从零自研3D打印摆线减速器,集成ESP32S3控制与编码器闭环,并致谢社区帮助。

一位Reddit用户在r/robotics分享其从零开始制作3D打印摆线减速器的项目,涵盖机械结构、基于ESP32S3的自制主控板、编码器反馈和运动规划算法,实现了全栈自研。项目已能运行,但J1关节存在卡顿、整体传动存在回差,用户计划在下一轮迭代中解决,并还有一个自由度待添加。帖子特别感谢社区此前的建议帮助其突破技术障碍,体现了开源硬件社区协作对个人DIY者的实际价值。文章还梳理了ESP32S3选型、编码器闭环、全栈自研和渐进迭代等可复用经验。

一位Reddit用户在r/robotics版块发帖,分享了自己从零开始制作3D打印摆线减速器(cycloidal drive)的项目进展,并特别感谢社区此前的建议帮助他解决了技术难题。这个项目涵盖了从机械结构到电子控制的全栈自研,包括基于ESP32S3的主控板、编码器反馈以及运动规划算法。

reddit source: Thank you all

项目全貌:从机械到电子的完整自研

据该用户描述,整个项目“完全从零开始”(done from scratch),不仅包括3D打印的摆线减速器本体,还涉及自制的控制板(ESP32S3)、编码器集成和运动规划。这意味着从物理传动到软件算法的每一个环节都由个人独立完成,没有依赖现成的商用模块。

摆线减速器本身是一种高减速比、结构紧凑的传动方案,常用于机器人关节。用3D打印来制造这类精密部件,对公差控制和材料选择都有较高要求。用户表示目前所有驱动部件均为3D打印,因此仍存在一定的回差(play),但计划在下一轮迭代中解决。

摆线减速器的工作原理:摆线减速器依靠一个偏心安装的摆线轮与外围针齿的啮合来实现减速。摆线轮齿廓为短幅外摆线的等距曲线,当输入轴带动偏心轮旋转时,摆线轮同时进行公转和自转,通过针齿约束将公转转化为低速自转输出。其单级减速比可达数十比一,且多齿同时啮合带来高刚度和抗冲击能力。与谐波减速器相比,摆线减速器没有柔性元件,更适合重载场景;但零件加工精度要求高,3D打印时齿廓误差和层间纹理会直接转化为回差。

回差(play/backlash):回差指传动系统中输入反向时,输出端在开始跟随前存在的空程角度。对机器人关节而言,回差会破坏编码器闭环的相位裕度,导致定位抖动或振荡。3D打印摆线减速器的回差主要来源包括:齿廓打印偏差、偏心轴承间隙、针齿与摆线轮的实际接触点偏移,以及塑料件在负载下的弹性变形。常见补偿手段有预紧装配、双摆线轮错位布置,以及在控制层用编码器实测值做间隙标定。

当前进展与遗留问题

项目已经能够运行,用户发布了一段短视频展示当前状态。不过他也坦诚地指出了两个待改进点:一是J1关节(第一个自由度)仍有“crunchy”(卡顿、不顺畅)的问题需要修复;二是整体传动存在回差,这在高精度运动控制中会影响定位精度。

用户提到还有一个自由度(dof)待添加,说明整个机械臂或运动平台尚未完全成型,但主体架构已经跑通。从“happy that it is all coming together now”可以看出,他对当前进展持乐观态度。

社区协作的价值

在帖子中,用户多次感谢社区:“a lot of your suggestions really did help me”。他附上了原始求助帖的链接,表明此前的技术障碍是通过社区讨论找到解决方向的。这种从求助到反馈再到成果展示的闭环,体现了开源硬件社区协作的实际价值——尤其是对于个人DIY者而言,社区经验往往比官方文档更直接有效。

有意思的是,用户并未详细说明具体是哪些建议起了作用,但结合项目内容推测,可能涉及减速器参数设计、3D打印公差补偿或ESP32S3的编码器接口配置等方面。

技术亮点与可复用经验

这个项目有几个值得关注的DIY实践点:

  • ESP32S3作为主控:该芯片具备较强的处理能力和丰富的外设接口,适合需要实时运动规划的小型机器人项目。
  • 编码器闭环:在3D打印传动存在回差的情况下,编码器反馈对位置控制尤为重要。
  • 全栈自研:从机械设计到PCB再到固件,个人完成全链路开发,对能力要求高但可控性最强。
  • 迭代思路:用户明确表示当前版本的问题(回差、J1卡顿)将在下一轮迭代中解决,这种渐进式改进是DIY项目的典型节奏。

对于想要尝试类似项目的爱好者,这个案例提供了一个可参考的路径:先用3D打印快速验证机械方案,再逐步完善电子控制和算法,不必追求一次到位。

ESP32-S3 的适用边界:ESP32-S3 是乐鑫推出的双核 Xtensa LX7 芯片,主频 240 MHz,自带 USB OTG、丰富 GPIO 和 RMT/PCNT 等外设。其中 PCNT(脉冲计数器)硬件模块可高效读取增量式编码器,RMT 可用于生成步进电机的精确脉冲序列,这使它在小型关节控制中能兼顾实时性与成本。不过它并非硬实时平台,运动规划若涉及多轴插补或高频闭环,需借助 FreeRTOS 任务优先级和定时器中断来保证确定性,复杂轨迹规划仍建议下放给上位机。

编码器闭环在低成本传动中的作用:当机械传动本身存在不可消除的回差时,编码器的安装位置决定了闭环能补偿到什么程度。若编码器装在电机端(半闭环),只能修正电机跟随误差,无法感知输出端回差;若装在关节输出端(全闭环),则可直接测量负载位置,但会引入传动非线性带来的稳定性挑战。DIY 项目中常见的折中是电机端编码器加输出端绝对位置校准,在换向时做间隙补偿。

后续方向

用户计划增加一个自由度并修复现有问题。若回差问题通过结构优化或补偿算法得到改善,这个3D打印摆线减速器方案有望在轻负载机器人关节中获得更广泛的应用。社区的下一次反馈或许会围绕J1卡顿的具体成因展开——是齿轮啮合问题、轴承间隙还是装配误差,目前尚不清楚。

总体来看,这是一个典型的个人机器人项目:目标明确、路径清晰、问题公开,并且受益于社区协作。

#3D打印摆线减速器#ESP32S3#DIY机器人#运动规划#编码器#开源硬件#社区协作
分享:

相关推荐