跳转至

磁编码 SMS 舵机 - 内存表解析

适用于 SMS RS485 系列串行舵机。双字节字段按低字节在前传输。

STS 系列(半双工 TTL)内存表见STS 内存表,两系列地址含义存在差异,不要混用。

1 舵机通信协议

舵机使用FT-SCS自定义协议,出厂时的串口默认配置,SMS舵机波特率默认为115200使用RS485总线通信;波特率可配置范围38400~1Mbps,默认通信地址(站号)为1。

完整协议帧格式与指令集见通信协议。

2 舵机内存表定义

如果功能地址采用两个字节的数据,低位字节在前地址,高位字节在后地址

2.1 版本信息

地址DEC 地址HEX 功能名称 字节数 初始值 权限 取值范围 单位 说明
0 0x00 固件主版本号 1 – 只读
1 0x01 固件次版本号 1 – 只读
2 0x02 END 1 0 只读 0表示小端存储结构
3 0x03 舵机主版本号 1 – 只读
4 0x04 舵机次版本号 1 – 只读

2.2 EPROM配置

地址DEC 地址HEX 功能名称 字节数 初始值 权限 取值范围 单位 说明
5 0x05 舵机ID 1 1 读写 0~253 号 总线上唯一的主ID标识
6 0x06 波特率 1 0 读写 0~7 无 0-7分别代表波特率:1000000(0),500000(1),250000(2),128000(3),115200(4),76800(5),57600(6),38400(7)
7 0x07 应答返回延时 1 0 读写 0/50~253 2us 最大可设置返回延时 254*2=508us,0表示最少返回延时,设置<50默认仍然为50(100us)
8 0x08 应答状态级别 1 1 读写 0~1 无 0:除读指令与PING指令外其它指令不返回应答包;1:对所有指令返回应答包
9 0x09 最小角度限制 2 0 读写 0~4094 0.087度 多圈绝对位置控制时此值为0
11 0x0B 最大角度限制 2 4095 读写 1~4095 0.087度 多圈绝对位置控制时此值为0
13 0x0D 最高温度上限 1 70 读写 0~100 ℃
14 0x0E 最高输入电压 1 – 读写 0~254 0.1V
15 0x0F 最低输入电压 1 40 读写 0~254 0.1V
16 0x10 最大扭矩 2 1000 读写 0~1000 0.1% 上电赋值给48号地址转矩限制
18 0x12 相位 1 – 读写 0~254 无 特殊功能字节,无特别需求不可修改
19 0x13 卸载条件 1 – 读写 0~254 无 对应位设置1为开启相应保护,对应位设置0为关闭相应保护
20 0x14 LED报警条件 1 – 读写 0~254 无 对应位设置1为开启闪灯报警,对应位设置0为关闭闪灯报警
21 0x15 位置环P 比例系数 1 – 读写 0~254 无 控制电机的比例系数(1/4)
22 0x16 位置环D 微分系数 1 – 读写 0~254 无 控制电机的微分系数(1/8)
23 0x17 位置环I 积分系数 1 0 读写 0~254 无 控制电机的积分系数
24 0x18 最小启动扭矩 1 – 读写 0~254 0.1% 设置舵机的最小输出启动扭矩
25 0x19 积分限制值 1 0 读写 0~254 无 最大积分值=积分限制值*4,0表示关闭积分限制功能,位置模式0与模式4生效
26 0x1A 正向不灵敏区 1 1 读写 0~16 0.087度 最小单位为一个最小分辨角度
27 0x1B 负向不灵敏区 1 1 读写 0~16 0.087度 最小单位为一个最小分辨角度
28 0x1C 保护电流 2 511 读写 0~2047 6.5mA 最大可设置电流为 500 * 6.5mA = 3250mA
30 0x1E 角度分辨率 1 1 读写 1~128 无 对传感器最小分辨角度的放大系数
31 0x1F 位置偏移 2 0 读写 0~8191 0.087度 0~2047表示0~2047;2048~4095表示0~-2047;4096~6143表示-2048~-4095;6144~8191表示-2048~-4095(表示偏置-4095~4095)
33 0x21 运行模式 1 0 读写 0~2 无 0:位置伺服模式;1:电机恒速模式;2:PWM开环调速度模式;3:步进模式
34 0x22 保持扭矩 1 20 读写 0~254 1% 进入过载保护后输出扭矩,如设20表示20%的最大扭矩
35 0x23 保护时间 1 200 读写 0~254 10ms 当前负载输出超过过载扭力并保持的计时时长,如设200表示2秒,最大可设2.5秒
36 0x24 过载扭矩 1 80 读写 0~254 1% 启动过载保护时间计时的最大扭力阀值,如设80表示80%的最大扭矩
37 0x25 速度闭环P比例系数 1 – 读写 0~254 无 电机恒速模式(模式1)下,速度环比例系数
38 0x26 过流保护时间 1 200 读写 0~254 10ms 最大可设置 254 * 10ms = 2540ms
39 0x27 速度闭环I积分系数 1 – 读写 0~254 无 电机恒速模式(模式1)下,速度环积分系数

2.3 SRAM控制

地址DEC 地址HEX 功能名称 字节数 初始值 权限 取值范围 单位 说明
40 0x28 扭矩开关 1 0 读写 0~2 无 写0:关闭扭力输出;写1:打开扭力输出;写128:任意当前位置校正为2048
41 0x29 加速度 1 0 读写 0~254 8.7度/秒² 舵机运行加/减速度,0表示最大加速度
42 0x2A 目标位置 2 0 读写 -32767~32767 0.087度 绝对位置控制方式,最大对应最大有效角度,BIT15为方向位
44 0x2C PWM开环速度 2 1000 读写 0~1000 0.1% PWM开环调速度模式下生效,BIT10为方向位
46 0x2E 运行速度 2 舵机出厂默认最大速度 读写 -32767~32767 0.732RPM/0.0146RPM 控制电机最高运行速度,BIT15为方向位;速度0默认表示最高速度,可通过相位设置0表示停止;速度单位可通过相位设置,0.732RPM/0.0146RPM两种单位,速度单位设置为0.0146RPM,其精度也是0.732RPM
48 0x30 转矩限制 2 最大扭矩(16),默认1000 读写 0~1000 0.1% 用户可程序修改此值来控制堵转扭矩的输出
50~54 0x32~0x36 无定义 1
55 0x37 锁标志 1 1 读写 0~1 无 写0关闭写入锁,写入EEPROM地址的值掉电保存;写1打开写入锁,写入EEPROM地址的值掉电不保存

2.4 SRAM反馈

地址DEC 地址HEX 功能名称 字节数 初始值 权限 取值范围 单位 说明
56 0x38 当前位置 2 – 只读 – 0.087度 反馈舵机当前绝对位置,BIT15为方向位;步进模式3返回当前位置与目标位置的步进差值,BIT15为方向位
58 0x3A 当前速度 2 – 只读 – 0.732RPM/0.0146RPM 反馈当前电机转动的速度,速度单位根据相位设置,BIT15为方向位
60 0x3C 当前负载 2 – 只读 – 0.1% 当前控制输出驱动电机的电压占空比,BIT10为方向位
62 0x3E 当前电压 1 – 只读 – 0.1V 当前舵机工作电压
63 0x3F 当前温度 1 – 只读 – ℃ 当前舵机内部工作温度
64 0x40 异步写标志 1 0 只读 – 无 采用异步写指令时,标志位
65 0x41 舵机状态 1 0 只读 – 无 对应位被置1表示相应错误出现
66 0x42 移动标志 1 0 只读 – 无 舵机在运动时标志为1,舵机到达目标并且停止时为0;舵机无更新目标位置保持为0
67 0x43 目标位置 2 0 只读 – 0.087度 当前目标位置
69 0x45 当前电流 2 – 只读 – 6.5mA 反馈当前电机相电流
71 0x47 无定义 2 – 只读 – –

2.5 出厂参数

地址DEC 地址HEX 功能名称 字节数 初始值 权限 取值范围 单位 说明
80 0x50 移动速度阀值 1 – 只读 – –
81 0x51 DTs(ms) 1 – 只读 – –
82 0x52 速度单位系数 1 – 只读 – –
83 0x53 Hts(ns) 1 – 只读 – – 20.83ns,sms舵机固件>=2.54有效,其它版本保持0
84 0x54 最大速度限制 1 – 只读 – – 单位0.732rpm
85 0x55 加速度限制 1 – 只读 – –
86 0x56 加速度倍数 1 – 只读 – – 加速度为0时加速度倍数生效,加速度倍数与加速度同时为0表示舵机响应速度最快

3 特殊字节解释

3.1 舵机相位

位数/位权重:说明

  • BIT0(1):驱动方向相位;(0)正向,(1)反向
  • BIT1(2):驱动桥模式;(0)无刷,(1)有刷,重启生效
  • BIT2(4):速度单位,(0)0.732RPM,(1)0.0146RPM
  • BIT3(8):速度模式;(0)速度0表示停止,(1)速度0表示最高速度
  • BIT4(16):角度反馈模式,(0)反馈单圈角度,(1)反馈全角度
  • BIT5(32):电压采样,(0)1.5K低压采样,(1)1K高压采样
  • BIT6(64):PWM频率,(0)24kHz,(1)16kHz
  • BIT7(128):位置反馈方向相位,(0)正向,(1)反向

提示

如果同时设置多个位,舵机的相位值为各个位值之和。例如:原相位值为0,舵机运行反向,则相位值为128+1=129;

3.2 舵机状态

舵机状态:0表示正常,1表示异常

位数/位权重:说明

  • BIT0(1):电压状态
  • BIT1(2):磁编码状态
  • BIT2(4):温度状态
  • BIT3(8):电流状态
  • BIT4(16):----
  • BIT5(32):负载状态
  • BIT6(64):----
  • BIT7(128):----

提示

如果同时有多种状态,舵机的状态值为各个位值之和。例如:电压过压/欠压与舵机过热,则舵机状态值为4+1=5;

3.3 卸载条件

卸载条件:0表示关闭,1表示开启

位数/位权重:说明

  • BIT0(1):电压保护
  • BIT1(2):磁编码保护
  • BIT2(4):过热保护
  • BIT3(8):过流保护
  • BIT4(16):----
  • BIT5(32):负载过载
  • BIT6(64):----
  • BIT7(128):----

提示

如果同时设置多个位,舵机的卸载条件值为各位值之和。例如:电压保护与过热保护同时开启,则卸载条件值为4+1=5;

3.4 LED报警条件

LED报警条件:0表示关闭,1表示开启

位数/位权重:说明

  • BIT0(1):电压报警
  • BIT1(2):磁编码报警
  • BIT2(4):过热报警
  • BIT3(8):过流报警
  • BIT4(16):----
  • BIT5(32):负载过载报警
  • BIT6(64):----
  • BIT7(128):----

提示

如果同时设置多个位,舵机的LED报警条件值为各位值之和。例如:电压报警与过热报警同时开启,则报警条件值为4+1=5;

不要跨系列套用地址

其他系列即使使用相同地址,含义也可能不同(例如 HLS 系列地址 44–45 为目标电流,本表为 PWM 开环速度)。请返回通信协议选择正确的内存表。

源码定义