资讯动态

OPENARM KER复刻完之后的一些总结

发布时间:2026/10/14 10:59:31 来源:尧图企业网站定制
实习机械工程师复刻 OpenArm KER 遥操外骨骼全记录从选型调研到双臂16通道链路打通一、为什么做这个项目本人是实习机械工程师在一家具身智能公司工作,机械设计背景日常做 3D 打印/ 出工程图/设计简单机构没有从事过软件相关的工作。这个项目的起点是一个很朴素的问题人远程操控机械臂这件事从头到尾到底涉及什么带着这个问题我把一套成熟的开源遥操外骨骼完整复刻一遍。十五天后链路从传感器到上位机全部打通。这篇文章记录完整的选型逻辑、技术路线、踩过的坑和学到的东西以及修改了什么。二、选型调研不是拍脑袋是一个筛选过程很多人复刻开源项目是看到什么火就做什么我的调研分了三层。第一层市面产品盘点确认方向先看了工业助力外骨骼傲鲨智能 FIT-U、赤源动力 CDYS-S2、Ekso EVO——这类的定位是给人省力是执行机构不是输入设备方向不符但它们的穿戴固定结构后腰支撑、腹带、插扣形式值得借鉴。然后横评了六款数采/遥操外骨骼产品重量特点大象机器人 myController S5701.5kg商业化成熟自带屏幕NuExo学术5.2kg腕部构型可换数据维度全戴盟 DM-DataMaster4kg面向真机数采交付灵巧智能 DexCap4.2kg官网开放模型文件启能 Qnbot Exo Plus2.6kg自研 TMR 双轴摇杆线性扳机灵心巧手-结构依赖铝型材移位这一层看下来有两个结论一是穿戴方式的主流是背部刚性骨架针织腹带减重是所有产品的核心竞争点二是这些商业产品全都不开放核心工程文件对复刻学习价值有限。第二层开源方案评估工程文件完整性是第一指标方案评估结论OpenArm KEREnacticApache 2.0CAD、固件源码、BOM、PCB、上位机 Python 库全量开源完整度断层第一OpenHomie / HOMIE论文与代码开源但每个关节用 DYNAMIXEL XL330 舵机两臂 14 个成本高机械硬件文件不全中国矿业大学 RM 战队7 自由度技术报告开源用 GTB 磁敏霍尔角度传感器但只有报告没有全套工程文件KER 的全称是Kinematic Equivalent Replica运动学等效复刻——单臂7 轴 夹爪共 8 个测量通道双臂 16 通道连杆长度按 OpenArm 2.0 机械臂的70% 设计角度可 1:1 映射到机械臂无需坐标变换。这个设计哲学本身就是遥操外骨骼的最优解加上工程文件完整性最强就是它了。第三层元器件选型编码器是整个项目的核心传感器做了五方案对比方案原理分辨率接口一句话评价TLE5012BKER 原版GMR 巨磁阻15bitSSC类SPI角度稳定性最好但专有协议、公开例程少AS5048A霍尔14bitSPI/PWM开源生态最成熟但对气隙/同轴度敏感MT6701差分霍尔14bit四种可选国产综合折中优选MT6826SAMR 磁阻15bitSPI 等自带自校准可补偿安装误差但例程少MLX90363三轴霍尔14bitSPI工业级鲁棒但无成品模块不适合快速样机最终选 TLE5012B与原版完全一致协议、固件、PCB 都能直接用GMR原理的角度稳定性实测表现最好。结构材料调研阶段给出的官方推荐路线是 6061-T6 主体 哑光黑色硬质阳极氧化氧化层绝缘避免金属壳体干扰磁编码器信号 7075-T6 受力补强 PA12 尼龙小件。但复刻时的现实是预算有限实际做法是除了铰链等关键受力件其余结构件全部用拓竹 3D 打印机打 PLA材料并且腹部海绵垫也换成打印的。这个降级的可行性判断依据遥操外骨骼是纯被动测量设备——不传扭矩载荷只有人手自重和运动惯量PLA 的刚性和抗蠕变特性完全扛得住PLA本身绝缘还天然免掉了金属壳体屏蔽磁信号的顾虑。实测结果链路全部打通、读数稳定结构件零故障。省下的预算花在了不能平替的地方——编码器、主控、轴承米思米 C-FL6700ZZ7-9 元/个这些测量链路上的东西。一句话总结这个项目的精度分配哲学钱和公差都花在测量链上结构件够用就行。三、我的角色AI 写代码同学焊板子调试验收归我这个项目是两个人搭伙做的编码器板卡的焊接制作由一位嵌入式硬件背景的同学完成我负责焊接之后的一切。代码则由 AI 辅助完成。三方的分工正好各占一段板卡焊接嵌入式硬件同学完成 16 块编码器板的焊接制作系统集成者我整条链路——传感器→总线→主控→上位机→3D 模型的架构与取舍由我定链路装配与调试主力我板子焊完交到我手上之后组链、烧录、逐板验证、万用表排障全部自己动手。16 块板一块块烧固件后面所有的链路故障、传感器故障定位都在我手上完成测试与验收我每个固件改动都要经过我的台架实测才上线需求定义与技术裁决我AI 写代码但写什么、对不对由我拿协议手册和实测数据裁决事后看这个分工还挺有意思那块读数卡死 359.99° 的板子多焊的电阻是装配环节引入的缺陷但把它定位出来的靠的是分层排查——焊接的人不查错查错的人不焊接正好说明复刻项目的瓶颈不在焊接本身在调试。四、技术路线与当前状态当前状态这条链路已完全打通双臂 16 通道全部出数3D 上位机里OpenArm 2.0 模型实时跟随外骨骼动作。几个值得一提的协议细节编码器 4 字节帧的帧头 MSB1、数据字节 MSB0——裸 RS485 流上任何时刻丢失同步都能在一个字节内找回代价是带宽利用率降到 87.5%固件先答缓存、答后刷新应答用上一周期的读数答完立刻读传感器总线延迟和数据新鲜度两头兼顾每块板 ID 在编译期写死所以 16 块板要一块一块烧五、结构上的平替与自制能实现功能就行复刻开源项目最容易掉进去的坑就是觉得“BOM 清单里的每个料都得原样买齐”。实际做下来不少地方我都没有按官方清单来这一节专门记录结构上的改动。1. 五金件和元器件同尺寸平替铰链、轴承、编码器板上的元器件有不少都换成了便宜的同尺寸或同型号平替件。逻辑很简单这套外骨骼是被动测量设备人手带着它动它自己不传递扭矩、不承受冲击结构件的受力水平非常低。只要安装尺寸对得上、功能等效便宜件和贵件没有区别。真正不能省的只有测量链——编码器芯片、磁铁、轴承回转精度钱都花在这条链上五金件和结构件够用就行。2. 腹部支撑垫直接打印腹部和身体接触的那块垫子也没有采购直接打印了一个装上去。这个件没有任何精度要求唯一指标是“贴身、能穿”属于最典型的“能实现功能就行”。3. GoPro 磁吸快拆改成了自设计的滑槽快拆原版设计里外骨骼本体和穿戴部分之间用的是 GoPro 磁吸快拆这类标品一套要小一百块——为了拆装一个主控专门买一套磁吸件我觉得不太值。这块正好是我的本职自己重新设计了连接结构用滑槽替代磁吸外骨骼顺着槽由于重力向下到位就锁紧反向一滑就能拆下来快拆功能一样实现成本只有几克打印耗材。4. 小结这一节和上一节“结构件全用打印”的逻辑是一脉相承的预算和精度都优先喂给测量链结构件和标准件能用便宜方案就用便宜方案。开源项目给你的不只是一份图纸更是修改的自由——清楚自己项目的公差该花在哪比照单全收抄 BOM 重要得多。有意思的是这些是整个项目里自己设计的部分反而是我唯一不用现学的环节——写代码、烧固件、看协议都要从比较弱的基础开始学画结构改结构反而是全程最不慌的一步。六、踩坑实录全文最有价值的部分坑 1单接任意 ID 编码器没有读数原版协议是接力应答制每板只认前驱 ID 的 CMD2才应答主控广播 ID0只能触发 ID1。单接 ID9 时两条应答路径全断——死寂。解法改造主控固件为混合轮询——广播级联为主总线静默 300µs 判链断后用 CMD1 直接点名补询 4 个失联 ID每 4ms 一轮。不改动任何编码器原版固件实现了断链跳过、单板可测。这是本项目最大的一笔固件改造。可以叫AI帮你改坑 2某板读数恒定 359.99° 不变写了个台架诊断固件用 USB 转 485 直连单板逐层排查MCU 应答正常 →RS485 回环正常 → TLE5012B 读回恒 0x7FFF满量程。0x7FFF 恰好对应359.99°——数据线被钳在高电平。目检发现板上有个电阻是有问题的重焊后读数恢复实测噪声 ±0.05°。教训读数稳定在一个奇怪值先怀疑硬件路径再怀疑软件。坑 3USB 上位机帧率只有 500Hz逐层分析后确认16 通道数据帧 87 字节 USB 全速单包 64 字节上限每帧需要 2 个 USB 事务稳定耗时约 2ms——500Hz 是这套硬件的物理上限原版产品同样如此。1kHz 是固件内部采样率不是 USB 端到端帧率。教训先算理论带宽再怀疑实现。这个数字也让遥操够不够快有了定量答案500Hz 对人手遥操绰绰有余人手动作带宽不到 10Hz。坑 4烧录偶发卡死、COM 口被锁avrdude/Python 僵尸进程锁住 COM 口后续烧录全部假失败——曾差点据此误判一块无辜的板子硬件短路。清理进程后同一块板一次烧成。教训排除法之前先排除测试工具本身。实战发现编码器安装精度没有想象中可怕官方资料强调磁芯与芯片的同心度、气隙控制做结构出身的一度以为需要精密工装。实测结论0.1~0.3mm 级的安装偏差完全不影响使用——这类随机角度偏置会被零点标定一次性吸收掉。真正影响使用的是三类问题磁铁与芯片轴向没对上气隙超界、编码器轴与关节转轴不同轴会随转动周期性跳变、以及板上焊接短路。也就是说常规 3D打印公差完全够用不需要为编码器安装上精密工装。这对机械背景的复刻者是个好消息。实战发现二磁铁载环必须点胶否则会掉编码器模块里镶嵌磁铁的外部旋转件磁铁载环与轴承内圈是轻配合仅靠摩擦力定位——手臂甩动、脱戴磕碰这个件很容易直接脱落。解决方法很土但很有效装配时在磁铁载环与轴承内圈结合处点一圈胶环氧或嵌入式用的胶都行不用太粘的也可以一次到位从此不再是故障点。这个坑的启示对机械背景的人很直接编码器模块内部的转动配合以低摩擦可转动为第一设计目标天然没有紧固冗余装配工艺要补设计的不足。七、15天学会了什么嵌入式部分流程PlatformIO 编译/烧录/熔丝位UPDI 编程以及固件改完必须本地编译验证再烧录的工程纪律曾被一次静默编译失败坑过总线通信RS485 半双工EN 引脚方向控制、差分抗扰、级联协议、4 字节包的自同步设计顺带把 CAN 帧基础补了为下一步电机控制铺路Python 从零到能读跑脚本、读报错、改参数、看懂协议解析——到能 review AI 写的代码这个程度就停不陷进去学开发调试方法论分层隔离 数据驱动CSV 定量分析噪声与帧率不凭感觉下结论开源项目评估License 合规Apache 2.0 允许商用衍生、工程文件完整性比星数重要、BOM 平替采购的淘宝方法论嵌入式硬件入门板子是同学焊的但调试归我等于被逼着学会了看硬件——能看懂电源、接口、主控芯片这几块在板上的大致分工虚焊、连锡、多焊元件这类装配级缺陷也能自己定位。不要求会画电路但出了问题知道该往哪量、往哪看八、下一步打通输出端复刻的是输入端外骨骼→角度下一阶段打通输出端意优电机的CAN 驱动桥接——KER 16 通道角度 → 映射 → CAN 位置指令 → 真机械臂再加上异地转发WebSocket 局域网A 地穿戴、B 地跟随完整闭环。长远来看这个规划是有必要的不过由于最近需要参与一个遥操灵巧手的外骨骼手套项目这个计划要暂时搁置一下。附相关仓库本文提到的所有东西代码和图纸都在下面这几个地方我的复刻仓库keelo12345/ker-exoskeleton-replica里面有两个修改版编码器固件独立应答版、台架诊断版和逐条改动说明、4 个重新设计的结构件 STEP、项目 README。KER 原版仓库enactic/openarm_ker_firmwareEnactic 官方原版固件我的修改全部从它出发。OpenArm 官方文档站docs.openarm.dev结构 BOM、购买清单、装配说明都在这里想自己动手复刻的从这里起步。两个仓库摆在一起正好能看清一件事开源项目到手之后一个非嵌入式背景的人实际改了多少、能改到什么程度——这也是我写这篇文章最想回答的问题。有问题欢迎评论区交流或者私信我也可以直接去仓库。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑