ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Stack-chan Case v1.0(DYNAMIXEL 版)组装指南:XL330 伺服配置、3D 打印外壳与整机装配实战

Stack-chan Case v1.0(DYNAMIXEL 版)组装指南:XL330 伺服配置、3D 打印外壳与整机装配实战 嵌入式物联网智能硬件机器人硬件开发前端AI 应用【免费下载链接】stack-chanA JavaScript-driven M5Stack-embedded super-kawaii robot.项目地址https://gitcode.com/gh_mirrors/sta/stack-chan点击查看免费下载Stack-chan Case v1.0 是 Stack-chan 机器人第二版外壳目前仅支持 ROBOTIS DYNAMIXEL XL330 串行总线伺服配套 v1.0 电路板schematics与 M5Stack CoreS3。本文基于仓库 case/v1/dynamixel.md 官方组装指南展开完整覆盖所需部件清单、XL330 的 ID/波特率改写方法、腿舵与颈舵的装配顺序、机身合壳的七步流程并结合固件源码firmware/host/modules/motion/dynamixel-driver.ts、firmware/host/platforms/stackchan_rt/manifest.json等解释“为什么伺服要设置成 ID1/2、波特率 1Mbps”读完即可独立完成一台 DYNAMIXEL 版 Stack-chan 的从零装配与参数配置。一、规格背景从 Case v0 到 v1.0 的迁移仓库 case/README.md 明确记载了外壳的规格过渡Case v0 支持 RS30X、SCS0009、SG90 三种伺服并配套 v0.2.1 电路板而Case v1.0 目前仅支持 DYNAMIXEL XL330配套 PCB 为 v1.0 版更多伺服支持将随时间陆续加入。也就是说本指南是 v1.0 外壳的当前唯一官方装配文档。外壳本身shell、feet、bracket、gear、horn 等并非购买成品而是以 3D 打印方式获取自行使用 3D 打印机打印或通过 JLCPCB 3D 打印、DMM.make 等 3D 打印服务下单如果上述方式都不便可考虑直接购买整机套件。仓库在 case/v1 目录下为每个零件同时提供了STEP 源文件可导入 Fusion360 等 CAD 软件继续编辑与STL 打印文件零件STEPSTL用途Shellshell.stepshell.stl外壳主体Feet 上盖feet_top.stepfeet_top.stl腿部伺服底座上片Feet 下盖feet_bottom.stepfeet_bottom.stl腿部伺服底座下片前支架bracket_XL330_f.stepbracket_XL330_f.stl连接上下两只伺服后支架bracket_XL330_b.stepbracket_XL330_b.stl固定上下两只伺服齿轮标准gear_XL330.stepgear_XL330.stl插入伺服输出轴、带动 feet齿轮窄款gear_XL330_narrow.stepgear_XL330_narrow.stl齿轮孔过松时的备选Hornhorn.stephorn.stl颈舵输出与 shell 咬合Backpack见 case/backpack 目录见 case/backpack 目录电池背板打印建议齿轮孔位在 3D 建模时已针对打印精度预留了较大间隙若装配时发现孔位过松导致虚位请换用gear_XL330_narrow版本。二、所需部件清单DYNAMIXEL 版按官方指南完整装配一套需要以下 14 项物料序号部件数量说明1电路板Stack-chan board v1.01参见 schematics/README.md2M5Stack CoreS31主控主机3Horn1打印件4Shell1打印件5Gear_XL3302打印件孔位过松时改用 Gear_XL330_narrow6Backpack1打印件用于电池7Bracket_XL330_f1打印件前支架8Bracket_XL330_b1打印件后支架9M2×4mm 盘头自攻螺丝4固定电路板与 shell文档原文 2x4mm10Feet_top1打印件11Feet_bottom1打印件12M2.5×6mm 内六角自攻螺丝2随 XL330 附赠134cm 通信线缆2伺服与电路板间的 DYNAMIXEL 通信线14DYNAMIXEL XL3302一只作腿舵、一只作颈舵三、XL330 的 ID 与波特率设置装机前必做两只 XL330 出厂默认为ID1、波特率 57600。Stack-chan 固件按固定的 ID 与波特率寻址伺服因此装机前必须用 ROBOTIS 官方工具Dynamixel Wizard2将两只伺服改写为下表配置伺服角色ID波特率腿伺服左右旋转pan 轴11M颈舵俯仰tilt 轴21M3.1 除 XL330 外需要准备的接线设备要把 PC 与 XL330 连接起来还需要U2D2ROBOTIS 的 USB 转 DYNAMIXEL 通信器SMPS2Dynamixel供电模块为总线提供伺服电源5V AC 适配器为 SMPS2Dynamixel 供电。接线方式遵循 DYNAMIXEL 总线标准SMPS2Dynamixel 一端接 5V 电源、一端接 U2D2 与伺服总线的数据/电源线U2D2 通过 USB 连接 PC。3.2 安装 Dynamixel Wizard2前往 ROBOTIS 官方手册emanual.robotis 的 Dynamixel Wizard2 页面在软件下载区选择Linux版本下载。给下载的安装包添加执行权限后双击即可开始安装。3.3 改写 ID 与波特率的具体步骤点击Options选择与 XL330 相连的 USB 端口点击Scan扫描总线XL330 会出现在左侧列表中此时即可通信在左侧列表选中 XL330依次修改ID与Baud Rate点击对应条目在右下角下拉框中为波特率选择1000000bps随后点击Save按钮使参数生效。关键注意同一总线上不能同时连接两个 ID 相同的伺服。因此改写 ID 时必须将伺服逐个单独连接完成改写再换下一只不要同时挂两只进行扫描改写。3.4 固件侧如何消费这些配置源码佐证文档规定的 ID1/2、波特率 1M 并非随意取值而是与固件配置严格对齐。在 firmware/host/platforms/stackchan_rt/manifest.json 中可以看到 DYNAMIXEL 专用平台的默认驱动配置config: { driver: { type: dynamixel, typeLocked: true, panId: 1, tiltId: 2, serial: { transmit: 7, receive: 6, port: 1, baud: 1000000 } } }其中panId: 1对应腿舵左右旋转、tiltId: 2对应颈舵俯仰串口波特率1000000正是文档要求改写的1Mbps。装配时若某只伺服的 ID 被写错例如两只都保持默认 ID1固件将无法分别控制两个轴表现为“两只舵一起动”或“只动一只”。驱动器实现位于 firmware/host/modules/motion/dynamixel-driver.ts其构造函数正是按panId/tiltId/baud创建两个Dynamixel实例this._pan new Dynamixel({ id: param.panId, baudrate: param.baud, ... }) this._tilt new Dynamixel({ id: param.tiltId, baudrate: param.baud, ... })而底层的 DYNAMIXEL 2.0 协议实现位于 firmware/host/modules/motion/protocols/dynamixel.ts其中的波特率常量定义印证了0x03即对应 1Mbpsexport const BAUDRATE { BAUD_9600: 0x00, BAUD_57600: 0x01, BAUD_115200: 0x02, BAUD_1000000: 0x03, BAUD_2000000: 0x04, } as const仓库还提供了一段可直接复用的波特率改写示例 firmware/mods/examples/dynamixel/mod.js其中changeBaudrate()对 ID1、ID2 两只伺服依次下发setBaudrate(0x03 /* 1Mbps */)与文档中“逐只连接改写”的流程一致——这也是一种不用 Wizard2、直接用固件烧写方式配置波特率的替代路径。四、组装步骤4.1 组装腿伺服ID1取gear_XL330那个小的十字形零件插入 ID1 的伺服输出轴。插入时对齐 XL330 输出齿轮上的突起与孔位下图十字件与输出轴的相对位置保证装配后方位正确将带齿轮的伺服插入feet_top。十字件四个臂中带缺口的那条臂朝前正面从背面用M2.5×6mm 自攻螺丝固定将feet_bottom滑入到位扣合完成腿部底座。4.2 组装颈舵ID2与腿舵相同将gear_XL330插入 ID2 的伺服输出轴用M2.5×6mm 自攻螺丝固定在伺服输出侧安装horn打印件用于后续与 shell 咬合。4.3 组装机身7 步接好伺服线缆为腿舵、颈舵分别接上 4cm 通信线缆前支架合体用bracket_XL330_f将上下两只伺服组合在一起正面卡合后支架锁固用bracket_XL330_b将上下两只伺服从背面锁固形成完整的双轴俯仰/偏航机构接电路板用通信线缆把电路板与两只伺服相连。此步务必对照 schematics 确认连接器方向正确错误插反会导致总线通信失败horn 入壳将装好 horn 的整机沿滑槽滑入shellhorn 与 shell 内侧的咬合结构对齐固定电路板用 4 颗M2×4mm 盘头自攻螺丝在 4 个角位把电路板与 shell 锁固安装主机将 M5Stack CoreS3 本体嵌入到位完成整机。若希望将 M5Stack 进一步锁死可参考 case/README.md 中 v0 外壳的做法利用主机底部两个孔以 M3×15mm 螺丝固定避免仅靠卡合带来的松动。五、装机后的驱动原理补充为了让读者理解装配正确性如何被固件验证这里补充驱动器层的核心行为见 dynamixel-driver.ts角度→位置映射applyRotation()将弧度角换算为 DYNAMIXEL 的 4096 步/圈位置编码position floor((angleDeg 180) * 4096 / 360)因此 2048 即机械中位tilt 轴限幅颈舵角度被钳制在-30°10°防止转动超程撞壳电流位置混合控制驱动器将两只伺服设为OPERATING_MODE.CURRENT_BASED_POSITION0x05定义见 protocols/dynamixel.ts按位置误差以 P 增益换算目标电流输出实现带扭矩柔性的平滑运动——这也是 XL330 相较于普通 PWM 舵机的特性所在装配方向自检文档强调舵机方位必须对齐若安装方向错误伺服行程会与外壳干涉而无法正常工作。建议在把舵机锁进外壳之前先烧录一次固件并用示例 mod如 firmware/mods/examples/dynamixel/mod.js按 A 键旋转、LED 交替闪烁验证双轴运动方向是否正确。六、常见问题速查现象原因与处理齿轮孔过松、腿部虚位3D 打印精度所致换用 gear_XL330_narrow.stl两只舵同时响应同一指令改写 ID 时未逐只连接导致 ID 冲突按 3.3 节逐个改写舵机扫描不到检查 U2D2 端口选择、SMPS2Dynamixel 供电5V AC 适配器与总线接线颈舵运动超程或撞壳确认 gear 插入方位与 feet 正面的缺口臂对齐且 tilt 角度在 -30°10° 范围内日语版组装指南见 case/v1/dynamixel_ja.md外壳总体迁移说明与旧版v0差异见 case/README.md。赞分享嵌入式物联网智能硬件机器人硬件开发前端AI 应用【免费下载链接】stack-chanA JavaScript-driven M5Stack-embedded super-kawaii robot.项目地址https://gitcode.com/gh_mirrors/sta/stack-chan点击查看免费下载相关推荐Stack-chan Case v0 外壳组装实战指南3D 打印、伺服电机配置与整机装配Stack chan Case v0 外壳组装实战指南3D 打印、伺服电机配置与整机装配 Stack chanスタックチャン是一个由 JavaScript嵌入式物联网智能硬件机器人硬件开发前端AI 应用Stack-chan ケース v1.0DYNAMIXEL XL330 版组装完全指南从伺服 ID/波特率配置到整机装配Stack chan ケース v1.0DYNAMIXEL XL330 版组装完全指南从伺服 ID/波特率配置到整机装配 Stack chan ケース v1嵌入式物联网智能硬件机器人硬件开发前端AI 应用Stack-chan SG90 版外壳适配指南面向 M5Stack Core2 for AWS 的 3D 打印壳体改造与伺服验证Stack chan SG90 版外壳适配指南面向 M5Stack Core2 for AWS 的 3D 打印壳体改造与伺服验证 本文围绕 stack cha嵌入式物联网智能硬件机器人硬件开发前端AI 应用上一篇5分钟搞定Windows虚拟手柄驱动ViGEmBus终极指南下一篇如何快速掌握ViGEmBusWindows虚拟游戏手柄驱动的完整指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表