跳转至

Fashionstar Atom S:10 自由度双足机器人

1. 简介

  • 项目名称:Fashionstar Atom S 10-DOF Open Source Robot Kit
  • 简介:这是一个完全开源的 10 自由度人形机器人,旨在为机器人爱好者提供一个低成本、高可玩性的硬件平台。核心动力源自 10 颗 Fashionstar RA8-U25H-M 总线舵机,配合极简的电子架构,让你可以发挥更多的想象力。
  • 机器人架构:总线舵机 + RUC-01 转接板(供电/通信)+ Seeed Studio XIAO 主控(可选 Grove 扩展)+ 3D 打印结构件。
  • 自由度配置:整机 10 DOF,覆盖头部、手臂及腿部关节。
  • 关节执行器:Fashionstar RA8-U25H-M 总线伺服舵机 × 10(支持总线通讯,布线简洁)。
  • 机器人骨架:全 3D 打印结构,提供 STP/STL 文件下载,损坏可随时重新打印,也可根据需求重新设计外观。
  • 控制与接口:USB Type-C(上位机调试)、UART 串口(主控通信)、总线舵机接口、Grove 扩展接口(可选)。

Tip

👉 想跑 Python AI?接上 树莓派。 👉 想做物联网控制?接上 ESP32。 👉 想学底层控制?接上 STM32 或 Arduino。

Atom S 外观

2. 硬件架构说明

2.1 驱动与电源管理(RUC-01 接口板)

驱动与电源管理(RUC-01 接口板)作为机器人的动力枢纽,负责总线通信管理与电源分配:

  • 舵机通讯:板载 4 路总线舵机接口(支持串联扩展),负责总线伺服舵机的信号和电源。
  • PC 调试接口:集成 USB Type-C 接口,可直接连接 PC 上位机进行动作组编辑与调试。
  • 系统供电:负责电压转换,并为主控板提供稳定的电源输入。
  • 通讯接口:提供标准 UART 串口,用于接收上层主控板的控制指令。

2.2 逻辑主控与扩展(MCU + Grove Shield)

逻辑主控与扩展(MCU + Grove Shield)作为机器人的“大脑”,负责运行控制算法及处理传感器数据:

  • 核心主控:采用 Seeed Studio XIAO 系列开发板,体积小巧,性能强大。
  • 生态扩展:配套 Grove 接口扩展板,引出丰富的通用接口。
  • 主要功能:运行机器人运动学程序,并通过 Grove 接口无缝连接各类传感器(如超声波、视觉、语音模块等),实现复杂的交互功能。

2.3 数据流向说明

调试/编辑模式(Debug Mode)

PC --(USB)--> RUC-01 --(总线)--> 舵机

说明:直接通过电脑软件调节舵机角度、保存动作组,不经过 XIAO 主控。

自主运行模式(Autonomous Mode)

传感器/遥控器 --(信号)--> XIAO --(UART 指令)--> RUC-01 --(总线)--> 舵机

说明:XIAO 主控根据传感器反馈或预存代码,自主控制机器人行动。

3. 机器人结构说明

  1. 机器人结构展示以及舵机默认 ID 编号
结构展示与默认 ID
  1. 机器人伺服舵机处于零度时的姿态
零度姿态

4. 动作编辑器使用说明

Web 版动作编辑器:https://wiki.fashionrobo.com/uartbasic/robotstudiopro/

4.1 编辑器整体框架说明

动作编辑器整体可分为 3 个模块:

  1. 串口连接/断开操作以及发送信息情况模块
  2. 舵机状态/角度查询与角度控制模块
  3. 机器人动作组优化与动作组数据导出/导入模块
编辑器整体框架

4.2 编辑器控件说明

4.2.1 串口连接与关闭

串口连接与关闭

4.2.2 实时姿态数据页面

  • 布局:每个舵机的控件可以在画布中拖动,可将机器人的位置摆放出来并且 ID 号也与之对应,点击即可锁定该布局。
  • 扫描:重新扫描机器人中所有在线舵机。
  • 检查:检查是否高低压保护、堵转等异常状态。
  • 单次读取:单次读取舵机实时角度。
  • 状态颜色:绿色表示舵机在角度控制状态;红色表示舵机在卸力/阻尼释放状态。
实时姿态数据页面

通过拖拽可对舵机角度进行控制:

  • 实时读取:实时读取舵机角度。
  • 速度:拖拽滑动条控制舵机角度的速度,防止角度控制速度过快。
  • 解锁模式:将舵机释放以方便动作编辑,可卸力释放/阻尼释放。
角度控制与解锁模式

4.2.3 动作组数据页面

  • 动作组:用户可自行配置动作组,数量不限。
动作组
  • 添加动作组
添加动作组
  • 检查异常状态(高低压保护/堵转等)
检查异常状态
  • 删除整个动作组(至少保留一组)
删除动作组
  • 运动验证:对添加的所有动作进行运动验证。
运动验证
  • 循环播放
循环播放
  • 停止播放
停止播放
  • 调整动作顺序:拖动单个动作调整动作之间的顺序。
  • 动作时间(Time):舵机转到目标角度所需的时间(示例为 2s)。
  • 间隔时间(Interval):动作与动作之间的等待时间。
动作时间与间隔
  • 删除所属动作
删除动作
  • 运行所属动作
运行动作
  • 添加当前动作
添加当前动作
  • 导出动作组数据:导出舵机数据,便于导入到控制器中。
导出动作组
  • 导入动作组数据:导入已有动作组并进行修改。
导入动作组

4.3 从动作编辑到机器人离线动作的流程(示例:Seeed Studio XIAO ESP32S3 Sense)

  1. 点击“连接串口”,对机器人进行串口连接。
连接串口
  1. 选择机器人所在的串口。
选择串口
  1. 扫描机器人身上的所有伺服舵机。
扫描舵机
  1. 点击“全卸”释放所有舵机控制,便于掰动结构进行动作编辑;若只需编辑手部或腿部舵机,可单独解锁需要执行的舵机。
  2. 设置“动作时间”与“间隔时间”。
  3. 每编辑好一个动作后点击“添加当前”,将当前动作加入动作组。
  4. 动作组编辑完成后点击播放进行验证。

说明:单独的每个动作均可以进行单个舵机的角度修改、时间修改、间隔修改以及动作验证。

动作验证
  1. 点击“导出(JSON)”,将动作组数据导出为 JSON 文件。
导出 JSON
  1. 打开导出的 JSON 文件,复制 frames 中的内容(包含 [] 在内的所有内容)。
复制 frames
  1. 将复制的内容替换程序中 jsonData 的内容;完成后编译并下载到控制板中,然后通过蓝牙手柄对机器人进行控制(可参考“机器人控制参数说明”章节)。
替换 jsonData

5. 机器人控制参数说明(按实际情况修改)

5.1 机器人默认参数说明

  • BAUDRATE:机器人串口波特率。
  • SERVO_NUM:机器人舵机数量。
默认参数

5.2 蓝牙参数说明(如使用)

  • BLE_NAME:蓝牙手柄名称。
  • BLE_UUID:蓝牙手柄 UUID。
蓝牙参数

5.3 Web 端遥控参数说明(如使用)

  • SERVICE_UUID:服务 ID。
  • CHARACTERSTIC_UUID:特征 ID。
Web 端遥控参数

5.4 示教模式参数说明

  • MAX_ACTIONNUM:示教模式最大的动作组数量。
  • Default_RobotRunSpeed_Demonstration:示教模式运行的默认速度。
  • MIN_RobotRunSpeed_Demonstration:示教模式运行的最大速度。
  • MAX_RobotRunSpeed_Demonstration:示教模式运行的最小速度。
  • Adjust_RobotRunSpeed_Step:调节示教模式运行速度的步进值(每次加减 200)。
示教模式参数

5.5 数据说明(按实际需求修改)

  • RemoteControl_DefaultDemoAction:默认演示动作(动作编辑器导出的动作)。
  • RemoteControl_Exe:示教模式执行命令。
  • RemoteControl_Record:示教模式记录动作命令。
  • RemoteControl_Damping:阻尼模式命令。
  • RemoteControl_Reset:机器人复位命令。
  • RemoteControl_ReduceRunSpeed:减少示教运行速度。
  • RemoteControl_AddRunSpeed:增加示教运行速度。

蓝牙手柄说明:遥控器的具体数据需要用户自行确认,并确定按键需求后再对控制程序进行修改。

蓝牙手柄数据

Web 端遥控说明:遥控器的具体数据需要用户自行确认,并确定按键需求后再对控制程序进行修改。

Web 端遥控数据

5.6 机器人复位角度参数说明

  • ROBOT_RESET_POSITION_0 ~ ROBOT_RESET_POSITION_9:0 号舵机 ~ 9 号舵机的零位角度设置(机器人复位角度)。

说明:用户需要按照机器人的复位角度进行参数修改。

复位角度参数

6. 遥控说明

6.1 蓝牙手柄按键使用说明

  1. 蓝牙手柄长按开机,并与 MCU(XIAO_ESP32S3)进行蓝牙配对连接。
  2. 当蓝牙手柄与 MCU 配对成功时,机器人会执行鞠躬动作与复位。

操作说明:

  • 按下“机器人默认动作执行”:机器人执行内置动作。
  • 按下“机器人复位”:机器人回到默认复位动作。
  • 按下“机器人阻尼模式”:机器人进入可摆动状态,便于示教动作编辑。
  • 按下“机器人示教动作记录”:机器人记录当前摆动动作。
  • 按下“机器人示教模式动作执行”:执行刚记录的示教动作(默认不清除)。
  • 按下“减少机器人示教模式执行速度”:系统减少示教动作运行速度(机器人右手 6 号舵机上下挥动提示速度)。
  • 按下“增加机器人示教模式执行速度”:系统增加示教动作运行速度(机器人右手 6 号舵机上下挥动提示速度)。
蓝牙手柄按键示意 1
蓝牙手柄按键示意 2

6.2 手机/电脑 Web 端遥控使用说明

  • 未连接状态:
未连接状态
  • 寻找设备并点击配对进行连接:
配对连接
  • 已连接状态:Web 端遥控与 MCU 配对成功时,机器人会执行鞠躬动作与复位。
已连接状态

Web 端遥控所有按键说明:程序中“红色”的按键数据存在 btn_Main,“黄色”的按键数据存在 btn_border

在 Demo 程序中,默认遥控按键定义如下:

  • 红色
  • 0X01:增加机器人示教模式执行速度(右手 6 号舵机上下挥动提示速度)。
  • 0X02:增加机器人示教模式执行速度(系统减少运行速度,右手 6 号舵机上下挥动提示速度)。
  • 0X04:机器人示教动作记录。
  • 0X08:机器人示教模式动作执行。
  • 0X10:机器人默认动作执行。
  • 0X20 ~ 0X80:默认未定义。
  • 黄色
  • 0X01 ~ 0X02:默认未定义。
  • 0X04:机器人阻尼模式。
  • 0X08:机器人复位。
  • 0X10 ~ 0X80:默认未定义。
Web 端遥控按键说明

Web 端遥控器链接:https://wiki.fashionrobo.com/ps2v2/

7. 附录

  • Fashionstar 舵机 Wiki 资料:https://wiki.fashionrobo.com/
  • 提供 STM32 / Python / ROS / C++ / Arduino 等舵机控制 SDK