Sie sind auf Seite 1von 3

INFORME 1.

DYNAMIXEL

Informe 1. Dynamixel
Diego A Gomez, Jesus D Jimenez, Daniel F Zorrilla
(diajimenezpr, jedjimenezsa, dfzorrillaa)@unal.edu.co

ResumenEn este laboratorio tuvimos la iniciacion a roboplus


y a los motores Dynamixel AX-12 de Robotis, la identificacion
de los registros de la memoria EEPROM y RAM, conociendo las
partes basicas de su estructura y comunicacion con el conector
USB2Dynamixel, en cuanto a su protocolo de comunicacion y
conector (3PConector) y la transformacion de grados a valores
digitales para la manipulacion de su zona operativa.
Palabras claveDynamixel, Robotis, EEPROM, RAM, AX12.

Introduccion En la primera seccion del laboratorio presentamos el preinforme propuesto para este primer laboratorio
en donde exponemos caractersticas generales del Dynamixel
AX12, junto a la tabla de registros de la memora EEPROM
y RAM. Finalmente en la segunda seccion del laboratorio,
presentamos el desarrollo de la gua de laboratorio numero 1
del curso de Robotica, en donde implementamos una funcion
de matlab (revisar archivo .m adjunto en la entrega) para
convertir grados en valores digitales y expusimos los registros
solicitados.

Figura 1. Tabla de control parte 1

I. P REINFORME
I-A. Consultar las caractersticas basicas de los motores
Dynamixel.
Cuales son las ventajas de los motores? Dynamixel
son los actuadores mas avanzados a nivel de robotica
personal. Son motores de muy altas prestaciones para
robots totalmente programables y que proporcionan
mucha informacion de feedback, como posicion,
temperatura, carga, voltaje de entrada, etc.
Cual es el voltaje de operacion de cada motor?
Para los Dynamixel AX12 que son los que vamos a
utilizar, el rango de voltaje de operacion es de 9 a 12
voltios. El voltaje de operacion recomendado es de 11.1V
Que protocolos de comunicacion utiliza? El comando
de senal es por paquetes digitales, con Half duplex
Asynchronous Serial Communication (8bit,1stop,No
Parity), y la parte fsica es por medio de TTL Level
Multi Drop (daisy chain type Connector)

I-B. Revisar cuidadosamente cada registro de la tabla de


control y tenerlas disponibles el da de la practica.
I-C. Consultar el nombre y el uso de cada parte del
USB2Dynamixel.
Como se selecciona el modo de comunicacion?
Se selecciona haciendo uso interruptor a un costado
del USB2dynamixel el cual tiene las opciones de TTL,
RS485 y RS 232 Ver imagen 3

Figura 2. Tabla de control parte 2

A que protocolo corresponde el 3P Connector?


Corresponde al protocolo TTL.
II.

D ESARROLLO

II-A. Realice una funcion en MATLAB para convertir de


a ngulo al valor digital que se enva al motor, teniendo en
cuenta los lmites del motor.
Explicacion del algoritmo: La funcion de MATLAB debe
hacer una conversion entre el valor digital que entiende e
dynamixel y el valor de un a ngulo, para expresar la relacion
que existe entre las senales digitales y los a ngulos se debe tener
en cuenta la zona operativa del motor. Se decide colocar la
posicion 0 en la parte inferior, encontramos que hay un desfase
de 30 a izquierda y derecha de e ste punto delimitando as la

INFORME 1. DYNAMIXEL

en sentido horario como en sentido antihorario, teniendo en


cuenta que por defecto el motor tiene una zona muerta de 60.
Como se muestra en la siguiente figura:

Figura 3. USBtoDynamixel conector


Figura 6. Zona operativa Dynamixel

Para limitar el a ngulo del motor a una valor de 200 grados,


se utiliza la funcion encontrada en el punto anterior y se
determina el valor correspondiente a esos 200 grados en
valores digitales que el motor Dynamixel pueda entender

Figura 4. Funcion de Matlab

zona no operativa del motor, es decir que el motor funciona en


los restantes 300 y que estos 300 deben ser correspondientes
a los valores digitales que van desde 0 hasta 1023. Hallar la
relacion que existe entre los valores digitales y los grados:

Figura 7. Zona operativa Dynamixel

Llegara hasta 200 y se detiene ya que esta limitado por


la configuracion realizada en el paso anterior. El ejemplo de
limitar el rango superior del motor a 200 grados esta en la
figura 4

Figura 5. Zona operativa Dynamixel

Se decide colocar la posicion 0 en la parte inferior, encontramos que hay un desfase de 30 a izquierda y derecha de
e ste punto delimitando as la zona no operativa del motor, es
decir que el motor funciona en los restantes 300 y que estos
300 deben ser correspondientes a los valores digitales que van
desde 0 hasta 1023. Hallar la relacion que existe entre los
valores digitales y los grados
II-B. Como se puede limitar el rango de posicion? limite el
rango superior del motor a 200 grados Que ocurre si aplica
la posicion objetivo a 300 grados?
Se limita con las siguientes lneas de codigo, modificando el
valor numerico resaltado en negrilla, es decir, por ejemplo si
aumentamos el valor 0 y/o disminuimos el valor de 1024,
significa que la zona operativa del motor disminuye tanto

II-C. Los datos del servomotor se encuentran en dos tipos de


memoria: EEPROM y RAM Cual es la diferencia entre ellas
segun las especificaciones de los motores? Para que sirve el
registro Lock? (bloquear)? En que podra emplearlo?
Memoria
EEPROM.
(Electrically
Erasable
Programmable Read-Only Memory Memoria
programable borrable de solo lectura) como su nombre
lo indica es una memoria que puede ser programada y
borrada con impulsos electricos, para los Dynamixel en
esta memoria
Memoria RAM. Random Access Memory, en esta
memoria se cargan todas las instrucciones que ejecuta
la unidad central de procesamiento (CPU) la cual esta
en el microcontrolador que trae integrado el Dynamixel
Registro Lock
El resgistro Lock se utiliza para bloquear la memoria
EEPROM, de manera que esta memoria pueda o no ser
modificada, tal como se muestra en la siguiente imagen.

INFORME 1. DYNAMIXEL

Figura 8. Registro Lock

El registro puede implementarse cuando se quiere que los


valores de configuracion que se le asignen a los Dynamixel se mantengan al momento de ejecutar un programa
y no se vean modificados de manera involuntaria con
alguna linea de codigo incorrecta.
II-D. Por que son importante los datos ID y MOVING del
motor?
Los datos de ID es importante porque es un numero u nico
para identificar el Dynamixel, el rago de ID va de 0a 252,
algo para resaltar es que el ID 254 es utilizado como
un Broadcast ID, es decir, que si se utiliza este para
transmitir un packete de datos, podemos manejar todos
los Dynamixel identificados, hay que tener cuidado para
no duplicar la identidad de dos Dynamixel en un espacio
de trabajo.
El dato de moving es importanto porque, como podemos
ver en la figura 9, este valor nos representa si llego a la
posicion de destino ejecutada (con valor 0), o si se esta
moviendo a esta posicion requerida (con valor 1)

Figura 9. Registro Moving

R EFERENCIAS
[1] Kay, A. (2012). Robotica Educativa
Personal. Obtenido
de
Robotica
para
proyectos
abiertos:
http://www.roboticapersonal.es/search/label/Dynamixel
[2] Robotis. (2010). Robotis e-MAnual. Obtenido de V1.25.00:
http://support.robotis.com/en/product/dynamixel/ax series/dxl ax
actuator.htm#Actuator Address 2F
[3] tdrobotica. (2013). Servomotor Dynamixel AX-12. Obtenido
de
http://tdrobotica.co/servomotor-dynamixel-ax-12a153-kg-cm59rpm/202.html