产品规格书 - RX8-U29H-M
1. 产品特点
- 采用无刷马达 / 不锈钢齿轮组 / 全金属外壳设计
- UART 双向通信,最高波特率 1 Mbps,支持位置与状态回读
- 12-bit 绝对值位置编码器(4,096 阶分辨率),可任意设定原点
- 多圈角度最大控制范围 ±368,640°(1,024 圈),具备断电角度记忆功能
- 内置梯形加减速算法,实现平滑运动控制
- 提供三种停止模式:锁力保持 / 失锁释放 / 阻尼控制
- 集成温度、电压、堵转、功率、电流多重保护机制,具备智能功率限制功能
- 配套可视化上位机调试软件,支持固件升级
2. 型号定义
3. 规格参数
3.1 基础参数
| 参数项 | 参数值 |
|---|---|
| 工作电压 | 9.0~12.6 V |
| 马达类型 | 无刷马达 |
| 位置传感器 | 12-bit 非接触式绝对值编码器(磁编码) |
| 分辨率 | 4096 阶 / 360°(0.088°) |
| 有效角度 | ±180°(单圈)/±368,640°(多圈) |
| 处理器 | 32-bit MCU |
| 通信类型 | UART / TTL 半双工 |
| 波特率 | 9,600 bps ~ 1 Mbps |
| ID 范围 | 0 ~ 254 |
| 减速比 | 173:1 |
| 齿轮材料 | 全金属不锈钢组合 |
| 输出轴规格 | 不锈钢 / Ø6 mm / D 型 |
| 外壳材料 | 全铝合金 |
| 接口类型 | PH2.0 – 3Pin |
| 尺寸重量 | 40 × 20 × 40 mm / 83 g |
| 工作温度 | -10~60 ℃ |
| 工作模式 | 单圈角度 | 多圈角度 | 阻尼模式 |
3.2 特性参数(@12V)
| 参数项 | 参数值 |
|---|---|
| 静态堵转扭矩 | 2.74 N·m(28kg·cm) |
| 最大动态扭矩 | 1.18 N·m(12kg·cm) |
| 额定扭矩 | 0.44 N·m(4.5kg·cm) |
| 空载转速 | 142 rpm(0.070 s / 60°) |
| 额定转速 | 116 rpm(0.086 s / 60°) |
| 峰值电流 | 5.5 A |
| 空载电流 | <300 mA |
| 待机电流 | <40 mA |
| 轴向 | 20 N |
| 径向 | 40 N |
4. 外观尺寸与安装
文件下载: PDF | STEP | DWG| 更多配件图纸
5. 接口与连线
6. 开发环境与SDK
提供覆盖主流控制板、语言与机器人框架的 SDK/示例工程,支持快速验证、功能开发与系统集成。
| 平台/环境/语言 | 兼容型号/内容 |
|---|---|
| Arduino | |
| ESP32 | |
| STM32 | |
| 树莓派(Python) | |
| 编程语言 | |
| 机器人框架 |
7. 保护功能
总线舵机集成温度、电压、堵转、功率、电流等多重保护机制,并可通过状态标志位判断当前是否触发对应保护。
| 温度保护 |
|---|
|
| 堵转保护 |
|---|
|
| 功率保护 |
|---|
|
| 电压保护 |
|---|
|
| 电流保护 |
|---|
|
Warning
- 电压保护触发后,必须断电并重新上电,舵机才会恢复工作。
- 堵转/功率/电流保护用于避免过载损坏,阈值设置过高可能导致保护失效。
- 若频繁触发温度/电流保护,请降低负载或改善散热与供电。
Note
- 温度保护的默认阈值为 70℃。
- 电压保护的默认保护区间:7.4V 版本:6.0-8.4V / 12V 版本:9.0-12.6V / 24V 版本:20.0-25.2V。
- 电流保护可与堵转/功率保护结合使用,当上位机未触发前两项逻辑时,电流保护作为硬件层级的最后保障。
8. 指令与协议
总线舵机采用 UART/RS485 总线 通讯协议,基于 半双工异步串行通信 机制,采用 指令-响应 的方式,实现主控与多舵机之间的控制指令下发、状态回读,并通过为每个舵机分配唯一 ID 完成总线寻址与设备识别(默认 ID = 0)。
8.1 控制指令
- 帧格式为 8 位数据位 + 1 位停止位(无奇偶校验)。
TxD与RxD不可同时工作,任一时刻仅允许一个设备发送数据,其余设备需处于接收待命状态。- 建议连续指令的发送间隔控制在 5-10 ms。
| 指令名称 | 指令编号 | 响应封包类型 |
|---|---|---|
| 通讯检测 | 01 (0x01) | 固定 |
| 简易单圈角度控制 | 08 (0x08) | 可配置 |
| 高级单圈角度控制 (基于时间) | 11 (0x0B) | 可配置 |
| 高级单圈角度控制 (基于速度) | 12 (0x0C) | 可配置 |
| 单圈当前角度读取 | 10 (0x0A) | 固定 |
| 简易多圈角度控制 | 13 (0x0D) | 可配置 |
| 高级多圈角度控制 (基于时间) | 14 (0x0E) | 可配置 |
| 高级多圈角度控制 (基于速度) | 15 (0x0F) | 可配置 |
| 多圈当前角度读取 | 16 (0x10) | 固定 |
| 重置圈数 | 17 (0x11) | 可配置 |
| 阻尼控制 | 09 (0x09) | 可配置 |
| 停止指令 | 24 (0x18) | 可配置 |
| 同步指令 | 25 (0x19) | 无 |
| 异步写入指令 | 18 (0x12) | 无 |
| 异步执行指令 | 19 (0x13) | 无 |
| 数据读取 | 03 (0x03) | 固定 |
| 数据监控 | 22 (0x16) | 固定 |
| 设置原点 | 23 (0x17) | 可配置 |
| 自定义配置参数 | 04 (0x04) | 可配置 |
Note
默认设置下,舵机在执行指令时若收到新指令,会立即中断当前指令并优先执行新指令,原指令不再继续。
8.2 指令封包
指令封包是主控向舵机下发控制或查询命令时所使用的标准数据结构。
- header: 固定为
0x12 0x4C,用于标识指令封包的起始位置。 - cmd_id: 本次封包的控制指令
-
length: 表示后续数据内容 (content) 的字节数,用于解析封包。
-
content: 根据命令字不同,存放控制参数 (如舵机 ID、目标角度、运动时间、功率值等) 。
- checksum: 所有字节累加求和后取模 256 的结果,用于校验数据完整性。
8.3 响应封包
响应封包是舵机接收指令封包并校验通过后,解析参数并向主控返回执行结果与相关数据的标准数据结构。
其总体结构与指令封包一致,仅起始位置标识位和数据内容定义有所区别。
- header: 固定为
0x05 0x1C,用于标识响应封包的起始位置。 - cmd_id: 本次封包的控制指令
-
length: 表示后续数据内容 (content) 的字节数,用于解析封包。
-
content: 根据命令字不同,返回执行结果,或相应数据 (如当前角度、电压、温度、版本、回读参数等) 。
- checksum: 所有字节累加求和后取模 256 的结果,用于校验数据完整性。
9. 运动与控制指令
9.1 通讯检测
通过发送目标 ID 的通讯检测指令,依据响应封包判断舵机是否在线。
| 指令ID | 指令名称 | 说明 |
|---|---|---|
| 01 (0x01) | 通讯检测 | 响应封包 = 在线设备 ID |
9.2 单圈角度控制
- 支持基于时间或速度两类控制方式,并可通过单圈角度读取指令获取当前位置。
- 控制范围为 ±180°,最小控制精度 0.1°。
| 指令ID | 指令名称 | 参数 |
|---|---|---|
| 08 (0x08) | 简易单圈角度控制 | 目标角度、运动时间、运行功率 |
| 11 (0x0B) | 高级单圈角度控制(基于时间) | 目标角度、运动时间、加速时间、减速时间、运行功率 |
| 12 (0x0C) | 高级单圈角度控制(基于速度) | 目标角度、运动速度、加速时间、减速时间、运行功率 |
| 10 (0x0A) | 单圈当前角度读取 | 响应封包 = 舵机当前角度 |
9.3 多圈角度控制
- 支持基于时间或速度两类控制方式,并可通过多圈角度读取指令获取当前位置。
- 控制范围为 ±368,640°(±1,024圈),最小控制精度 0.1°。
| 指令ID | 指令名称 | 参数 |
|---|---|---|
| 13 (0x0D) | 简易多圈角度控制 | 目标角度、运动时间、运行功率 |
| 14 (0x0E) | 高级多圈角度控制(基于时间) | 目标角度、运动时间、加速时间、减速时间、运行功率 |
| 15 (0x0F) | 高级多圈角度控制(基于速度) | 目标角度、运动速度、加速时间、减速时间、运行功率 |
| 16 (0x10) | 多圈当前角度读取 | 响应封包 = 舵机当前角度 |
9.4 圈数重置 / 断电记忆
圈数重置
- 舵机处于释放锁力状态时,可通过上位机或指定指令来重置圈数,将当前绝对位置的角度重新记录为当前角度。
- 重置后初始角度落在 -180° 至 +180° 区间。
| 指令ID | 指令名称 | 说明 |
|---|---|---|
| 17 (0x11) | 重置圈数 | - |
Note
如图所示,A1 点当前角度为 6,880°,重设后的角度为 θ1;A2 点当前角度为 6,800°,重设后的角度为 -θ2。
断电角度记忆
- 断电后,若伺服舵机的角度未发生变化,则上电后读取的当前角度值保持不变。(例如:A 点为断电前的角度位置 6,800°,断电期间角度未改变,舵机仍停留在 A 点,则上电后读取的角度仍为 6,800°。)
- 断电后,若由于外力作用导致舵机角度发生变化,则再次上电后读取到的角度值将落在记忆角度 ±180° 的范围内。
Note
如图所示,A 点为断电前的角度 6,800°。若断电期间舵机被外力转动,最终停在 B1 点,则上电后读取角度为 6,920°;若停在 B2 点,则读取角度为 6,680°。
9.5 阻尼模式
允许伺服舵机在外部力作用下调整到不同的角度位置,同时保持一定的阻尼效果,阻尼系数可自定义。
| 指令ID | 指令名称 | 参数 |
|---|---|---|
| 09 (0x09) | 阻尼控制 | 执行功率(单位 mW) |
9.6 停止指令
- 可以根据不同运动控制需要,选择合适的停止指令类型,具体类型详见下表。
- 停止指令也可用于舵机在堵转保护触发后恢复正常工作状态。
- 当舵机处于失锁状态时,发送“保持锁力”指令可使其从当前位置重建锁力。
| 指令ID | 指令名称 | 说明 |
|---|---|---|
| 24 (0x18) | 失去锁力 | 停止运动,并释放锁力。 |
| 24 (0x18) | 保持锁力 | 停止运动,并维持锁力,或在无锁力状态恢复锁力。 |
| 24 (0x18) | 保持阻尼 | 停止运动,并进入阻尼模式,外力可以调整角度。 |
9.7 同步指令
- 单条指令同时包含多个伺服舵机的控制指令,适用于多个舵机协同动作的场景。
- 每个伺服舵机通过唯一的 ID 与指令内容中的参数进行匹配,仅解析并响应与自身 ID 相关的控制信息。
- 所有伺服舵机接收完指令后,将同时开始执行各自的指令,实现同步动作效果。
| 指令ID | 指令名称 | 说明 |
|---|---|---|
| 25 (0x19) | 同步指令 | - |
9.8 异步指令
- 异步指令由异步写入指令和异步执行指令两部分组成。
- 已暂存的运动指令,在未重新写入或未断电的情况下将持续保留,不会因其他指令的运行而被覆盖或清除。
- 异步指令被触发执行后,相关参数将被自动清除,不再保留。
| 指令ID | 指令名称 | 说明 |
|---|---|---|
| 18 (0x12) | 异步写入指令 | 将目标运动指令写入舵机寄存器暂存,不立即执行。 |
| 19 (0x13) | 异步执行指令 | 统一触发已暂存的异步运动指令,实现多舵机同步执行。 |
9.9 状态读取 / 数据监控
用于获取舵机运行状态与关键参数,便于调试、巡检和上位机实时显示。
| 指令ID | 指令名称 | 说明 |
|---|---|---|
| 03 (0x03) | 数据读取 | 单个读取舵机状态参数或配置参数,返回对应参数值。 |
| 22 (0x16) | 数据监控 | 返回完整状态数据,包含电压、电流、功率、温度、状态位、角度与圈数等信息。 |
9.10 设置原点
用于将舵机当前位置设为原点,常用于装配后的零位校准,并为控制算法提供统一的运动起始参考。
| 指令ID | 指令名称 | 参数 |
|---|---|---|
| 23 (0x17) | 设置原点 | 舵机 ID / reset = 0 |











