警示:此文为北京小芽科技翻译,版权归属于北京小芽科技,可以转载,但要声明出处(北京小芽科技博客xiaoyatec.com)


AX-12A舵机产品的购买链接:

https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-12042102182.8.ZfooQM&id=520033646260

AX-12/ AX-12+/ AX-12A ROBOTIS舵机技术资料(英文原版) 链接地址为:

http://support.robotis.com/en/product/actuator/dynamixel/ax_series/dxl_ax_actuator.htm

 AX-12+AX-12的升级版,在电路设计、制作材料、齿轮组等都做了升级;

 AX-12AAX-12+的升级版本,现在这个系列中只有AX-12A在售,其他的已经停产。


AX-12A舵机是半双工的TTL通信方式,全双工转半双工的原理图如下:




普通用户可以购买USB2Dynamixel串口转换器进行舵机控制,购买链接:

https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-13679964690.14.ZfooQM&id=527977462608

管脚说明如下图所示:


技术参数:                         

品名

Dynamixel AX-12 / AX-12+ /AX-12A

重量

53.5g(AX-12/AX-12+), 54.6g(AX-12A)

尺寸

32mm x 50mm x 40mm

精度

0.29°

齿轮减速比

254:1

静止扭矩 (N.m)

1.5N.m(12.0V, 1.5A)

空载速度 (RPM)

59rpm(12V)

操作范围

舵机模式 : 300 °

轮式模式 : 无限旋转

操作电压

9~12V (推荐电压 : 11.1V)

操作温度

-5°C ~ 70°C

指令信号

数据信号

通讯协议

半双工异步串口通讯(8bit,1stop, No Parity)

物理连接

TTL 多点总线

(菊花链型连接)

ID

254 ID (0~253)

波特率

7343bps ~ 1Mbps

反馈功能

位置, 温度, 负载, 输入电压,电流,等

材质

外壳 : 工程塑料

齿轮 : 工程塑料

 堵转扭矩指的是瞬间禁止最大扭矩

※ 稳定动作的扭矩一般设计为堵转扭矩的1/5或者更少

控制列表:                

控制表包含了舵机的状态和操作信息。用户可以通过修改指令包数据来控制舵机。

 

EEPROM RAM 存储

RAM 区域中的数据在断电时不会被保存, 而保存在 EEPROM 区域的数据即使在断电时仍然会保存在 EEPROM內。

Address ( 位址)

表示数据储存的位址,为了从控制列表中读取或者烧写数据,用户需要把数据分配到正确的指令包位置中。

Access ( 存取)

Dynamixel 拥有两类数据:只读数据,这类数据一般用于传感器;可读写数据,这类数据主要作为驱动数据使用,多作为控制用途。

Initial Value ( 初始值)

EEPROM存储区域中, 在下面控制列表右边的初始值,为出厂设置的初始值;而在RAM区域,在控制列表的右边的初始值,为舵机上电启动时的初始值。

Highest/Lowest Byte ( /低位字节)

在列表中, 有一些数据共享同一名称, 但会在名称末尾加上一个(L)(H)来区分不同的地址,这类数据需要16比特的存储区域,并且这个区域会按照8比特的宽度来区分高(high)低(low)位。这两个位址必须由一个指令包同时读取或写入。

区域

地址  (16进制)

名称

描述

存取

初始值    (16进制)

E

E

P

R

O

M

0 (0X00)

Model Number(L)

Lowest byte of model number

R

12 (0X0C)

1 (0X01)

Model Number(H)

Highest byte of model number

R

0 (0X00)

2 (0X02)

Version of Firmware

Information on the version of firmware

R

3 (0X03)

ID

ID of Dynamixel

RW

1 (0X01)

4 (0X04)

Baud Rate

Baud Rate of Dynamixel

RW

1 (0X01)

5 (0X05)

Return Delay Time

Return Delay Time

RW

250 (0XFA)

6 (0X06)

CW Angle Limit(L)

Lowest byte of clockwise Angle Limit

RW

0 (0X00)

7 (0X07)

CW Angle Limit(H)

Highest byte of clockwise Angle Limit

RW

0 (0X00)

8 (0X08)

CCW Angle Limit(L)

Lowest byte of counterclockwise Angle Limit

RW

255 (0XFF)

9 (0X09)

CCW Angle Limit(H)

Highest byte of counterclockwise Angle Limit

RW

3 (0X03)

11 (0X0B)

the Highest Limit Temperature

Internal Limit Temperature

RW

70 (0X46)

12 (0X0C)

the Lowest Limit Voltage

Lowest Limit Voltage

RW

60 (0X3C)

13 (0X0D)

the Highest Limit Voltage

Highest Limit Voltage

RW

140 (0XBE)

14 (0X0E)

Max Torque(L)

Lowest byte of Max. Torque

RW

255 (0XFF)

15 (0X0F)

Max Torque(H)

Highest byte of Max. Torque

RW

3 (0X03)

16 (0X10)

Status Return Level

Status Return Level

RW

2 (0X02)

17 (0X11)

Alarm LED

LED for Alarm

RW

36(0x24)

18 (0X12)

Alarm Shutdown

Shutdown for Alarm

RW

36(0x24)

R

A

M

24 (0X18)

Torque Enable

Torque On/Off

RW

0 (0X00)

25 (0X19)

LED

LED On/Off

RW

0 (0X00)

26 (0X1A)

CW Compliance Margin

CW Compliance margin

RW

1 (0X01)

27 (0X1B)

CCW Compliance Margin

CCW Compliance margin

RW

1 (0X01)

28 (0X1C)

CW Compliance Slope

CW Compliance slope

RW

32 (0X20)

29 (0X1D)

CCW Compliance Slope

CCW Compliance slope

RW

32 (0X20)

30 (0X1E)

Goal Position(L)

Lowest byte of Goal Position

RW

31 (0X1F)

Goal Position(H)

Highest byte of Goal Position

RW

32 (0X20)

Moving Speed(L)

Lowest byte of Moving Speed (Moving Velocity)

RW

33 (0X21)

Moving Speed(H)

Highest byte of Moving Speed (Moving Velocity)

RW

34 (0X22)

Torque Limit(L)

Lowest byte of Torque Limit (Goal Torque)

RW

ADD14

35 (0X23)

Torque Limit(H)

Highest byte of Torque Limit (Goal Torque)

RW

ADD15

36 (0X24)

Present Position(L)

Lowest byte of Current Position (Present Velocity)

R

37 (0X25)

Present Position(H)

Highest byte of Current Position (Present Velocity)

R

38 (0X26)

Present Speed(L)

Lowest byte of Current Speed

R

39 (0X27)

Present Speed(H)

Highest byte of Current Speed

R

40 (0X28)

Present Load(L)

Lowest byte of Current Load

R

41 (0X29)

Present Load(H)

Highest byte of Current Load

R

42 (0X2A)

Present Voltage

Current Voltage

R

43 (0X2B)

Present Temperature

Current Temperature

R

44 (0X2C)

Registered

Means if Instruction is registered

R

0 (0X00)

46 (0X2E)

Moving

Means if there is any movement

R

0 (0X00)

47 (0X2F)

Lock

Locking EEPROM

RW

0 (0X00)

48 (0X30)

Punch(L)

Lowest byte of Punch

RW

32 (0X20)

49 (0X31)

Punch(H)

Highest byte of Punch

RW

0 (0X00)

地址功能协助(对应上表中的“名称”)

EEPROM 区域

Model Number

舵机型号,比如AX-12A,型号为12

 

Firmware Version

固件版本

 

ID

这是一个唯一数值,用于标识Dynamixel舵机。

可以使用的值范围为02520xFC),2540xFE)作为广播ID使用。

如果ID 2540xFE)作为指令包使用,将会对所有Dynamixel舵机起作用。

注意:不要在同一控制系统中使用重复的舵机ID(将会导致控制器无法检测到舵机的情况出现)

Baud Rate

这个值代表了协议的传输速度,可以用02540xFE)的值来代替,分别代表的波特率值如下表所示。

速度值可以用以下公式进行计算:

Speed(BPS) = 2000000/(Data+1)

Data

Set BPS

Target BPS

Tolerance

1

    1000000.0  

    1000000.0  

  0.000 %

3

      500000.0  

      500000.0  

  0.000 %

4

      400000.0  

      400000.0  

  0.000 %

7

      250000.0  

      250000.0  

  0.000 %

9

      200000.0  

      200000.0  

  0.000 %

16

     117647.1 

      115200.0  

 -2.124 %

34

        57142.9 

        57600.0  

  0.794 %

103

        19230.8 

        19200.0  

 -0.160 %

207

          9615.4 

          9600.0  

 -0.160 %

注意:UART串口通信能接受最大3%左右的错误率。

Return Delay Time (回应延迟时间)

回应延迟时间是指在数据发出时,到数据返回直接的时间间隔。

可用数值范围为02540xFE),而每个数值代表2微秒。

这就是说,如果数值为10,那么就是延迟20微秒,而默认的初始值是2500xFA),也就是0.5毫秒。


CW/CCW Angle Limit (顺时针/逆时针角度限制)

控制舵机的极限角度。

可设置的范围和单位跟目标位置的相同(地址:300X1E),,310X1F))

l 顺时针方向角度限制:目标位置的最小值(地址:300X1E),,310X1F))

l 逆时针方向角度限制:目标位置的最大值(地址:300X1E),,310X1F))

可以依据顺时针或者逆时针方向来设定以下两种模式的值

Operation Type

CW / CCW

Wheel Mode

 both are 0

Joint Mode

neither at 0

轮子模式可以使舵机处于无极限地旋转状态,此时机器人可以把舵机当做车轮来使用。

关节模式可以控制舵机的转动角度,此时可以把舵机当做机器人的关节来使用。

 

The Highest Limit Temperature(最高温度限制)

警告:设置温度时不要低于/高于默认值。

当温度警示灯停止之后,要等待至少20分钟之后才重新使用舵机。

如果舵机在高温下使用,可能会损坏舵机。

The Lowest (Highest) Limit Voltage (最低(最高)电压限制)

可以设置的范围为:502500x32~0x96),单位为0.1V

例如,如果设置为80,则电压值为8V

如果“当前电压值”(地址420x2A)的值)超出设定值,电压状态错误位(Bit0)会被置为‘1’并返回,同时也会导致警报地址(地址170x11)和180x12))被设置。

 

Max Torque (最大扭矩)

最大输出扭矩,可设置范围为0到1023(0x03ff),单位为最大扭矩的0.1%。

比如,数值1023(0x3ff)代表的是Dynamixel舵机的最大扭矩,而数值512(0x200)代表的是舵机最大扭矩的50%。但舵机上电时,地址34(0x22)和35(0x23)里的数值代表的是舵机初始扭矩。

 

Status Return Level (状态回传)

状态回传取决于怎样回传状态包,这里有三种回传方式可选择:

数值

状态回传

0

  对所有指令不作回传 (除了 PING 指令)

1

  只对“READ”指令做回传

2

  对所有指令做回传

当指令为广播ID时,不管回传状态为什么方式都不作回传。

Alarm LED (警示LED

Alarm Shutdown 关闭警示)

Dynamixel舵机在操作期间如果监测到错误发生,会做出自我保护。

错误位可以设置为以下情况:

Bit

Name

Contents

Bit 7

0

Bit 6

指令错误

当传送了不符合规格的指令,或者传送的动作指令里没有reg_write指令。

Bit 5

过载错误 

当前承载超过了最大扭矩的承受范围

Bit 4

校验位错误 

发送的协议出现校验位的校验码错误

Bit 3

范围错误

所传送的指令超出设定范围

Bit 2

过热错误

舵机内在温度超出了设定的温度范围

Bit 1

角度限制错误

传送指令中的角度超出设定的角度范围

Bit 0

输入电压错误

使用电压超出设定的电压范围

 

由于错误码是以逻辑或“OR”进行运算的,所以可以叠加回传。例如,0X05(二进制为:00000101)集合,表示检测到输入电压错误和过热错误。如果错误产生,就报警LED来说,LED会闪烁,假如报警LED关闭,舵机将会通过控制扭矩限制Torque Limit(地址34,35)变为0,而致使输出扭矩变成0%。

 

 

RAM随机存储区域__________________               

 

扭矩生效

数值

说明

0

通过中断电机供电保持舵机转矩不变

1

通过对电机供电使舵机产生转矩

 

LED

数值

说明

0

关闭LED

1

开启LED

 

Goal Position (目标位置)

这个值代表目标位置。

值的范围为:0到1023。单位精度为0.29度。

如果目标位置超出范围值,状态数据包的角度限制错误位(Bit 1)将会返回“1”,并且将会根据警告LED的设置发出警报。

以上图片信息只用于关节模式,在轮子模式下不可用!

 

Moving Speed (转动速度)

这个值代表的是到达目标位置的转动速度。

根据不同的模式选择,会有不同的范围值和单位值。

l 关节模式:

范围值为:0到1023(0X3FF)。单位值为0.111rpm。

当设置为0时,舵机将不受速度控制以最大速度运动。

如果设置为最大值1023时,速度为114rpm。

例如,如果值设置为300,代表的是33.3rpm。

注意:确保是在关节模式时设置的最大值,即使设置的范围超出了最大值,转动的速度也将不会超出最大的范围值。

l 轮子模式:

范围值为:0到2047(0X7FF),单位为0.1%。

当逆时针方向旋转时,范围值为0到1023,0值为停止;

时针方向旋转时,范围值为1024到2047,1024值为停止。

这就是说第10个bit是用于控制方向的。

在轮子模式,对于扭矩可以控制输出的大小,而不可以控制速度。

例如,如果设置为512,代表为最大输出的50%。


Torque Limit (扭矩限制)

最大扭矩输出控制

范围为0到1023(0X3FF),单位为0.1%。

例如,如果设置为512,代表为50%,意思就是最大输出扭矩的50%。

当控制器上电时,将会以Max Torque(地址14,15)里的值为初始值。

注意:当触发关机警告时,舵机将会失去扭矩,此时舵机扭矩为0。在这个时候,如果更改舵机扭矩的值,不为0,舵机将可重新启用。

Present Position (当前位置值)

代表舵机的当前位置。

范围为0到1023(0X3FF),单位为0.29度。

警告:在轮子模式下,这个值不能代表移动距离和转动频率。

Present Speed (当前速度)

代表当前的运动速度。

范围值为0到2047(0X7FF)。

如果此值为0到1023时,代表此时是逆时针旋转;

如果此值为1024到2047时,代表顺时针旋转。

这就是说,第10个bit的值代表了运动方向,0和1024是等效的。

这个值的单位得视转动模式而定。

l 关节模式:

单位为0.11rpm。

例如,如果值为300,代表了逆时针运动的速度为33.3rpm。

l 轮子模式:

单位为0.1%。

例如,如果值为512,代表着逆时针输出扭矩为最大扭矩的50%。

 

Present Load (即时负载)

代表现在负载情况。

范围为0到2047,单位为0.1%。

如果范围为0到1023,逆时针方向负载;

如果范围为1024到2047,顺时针方向负载。

这就是说,第10个bit的值代表了运动方向,0和1024是等效的。

例如,如果值为512,代表着逆时针方向以50%的扭矩负载

注意:即时负载是根据输出进行内部推测的值,而不是来自力矩传感器。由于这个原因,这个值不可用于测量重量或者力矩,但可以用于判断受压方向。

Present Voltage (当前电压)

代表当前供应的电压。

这个值是当前实际电压的10倍,例如,输入电压为10V,这个值为100(0X64)。

 

Present Temperature (当前温度)

这个值代表了舵机的摄氏温度。

这个值跟实际摄氏温度值一致,例如,数值为85(0X55),代表当前温度为85℃。

 

指令登记:

说明

0

没有指令通过REG_WRITE传输

1

有指令通过REG_WRITE传输.

注意:如果ACTION指令被执行,这个值将会变成0

旋转运动

说明

0

 目标位置运动指令执行完毕

1

 目标位置运动指令正在执行中

 

锁定

说明

0

 EEPROM 区域可被修改

1

 EEPROM 区域不可被修改

警示:如果Lock设置为1,必须断电,重新上电,该数值变为0

载流

驱动电机的电流已经设为最小。

可设置的范围为0x20到0x3ff。

舵机尺寸:





OpenCM9.04控制XM430-W350舵机

视频地址: https://haokan.baidu.com/v?vid=8171648541988572636

阅读全文

利用OpenCM9.04控制板获取舵机反馈

声明:此文档版权归属于北京小芽科技,可以转载,但要声明出处(北京小芽科技博客xiaoyatec.com)   OpenCM9.04控制板分为 A、B、C三个版本,这三个版...

阅读全文

Dynamixel Protocol 2.0 的协议使用样例介绍

声明:此文档版权归属于北京小芽科技,可以转载,但要声明出处(北京小芽科技博客xiaoyatec.com)   对于Robotis舵机来说,由于舵机版本的不同,使用的...

阅读全文

欢迎留言

你必须启用JavaScript才能看到这里的验证码!