Está en la página 1de 158

Instituto Politécnico Nacional

Escuela Superior de Ingeniería


Mecánica y Eléctrica
Unidad Zacatenco

“Proyecto 3: Escalamiento y
Sintonización del Eje Rotatorio y
programación del Jog (MAJ) y
Movimiento (MAM).”

U.A.: Manipuladores Industriales II


Profesor: Huerta González Pedro Francisco
Grupo: 9AV1
Equipo: 1
Integrantes:
▪ Casimiro Ortiz Michael Steven
▪ Hernández Chepe Karla Damaris
▪ López Contreras Andrés

Ingeniería en Control y Automatización

1
Índice
OBJETIVO............................................................................................................... 4
MATERIAL .............................................................................................................. 4
SOFTWARE ............................................................................................................ 4
MARCO TEORICO .................................................................................................. 4
Definición Servomotor. ......................................................................................... 4
Instrucción Impulsos de motion axis (MAJ) .......................................................... 5
Instrucción Mover Motion Axis (MAM).................................................................. 6
DESARROLLO ........................................................................................................ 8
A. Realizar el enlace punto a punto entre la computadora y el PAC ControlLogix
o CompactLogix de acuerdo con la topología. ..................................................... 8
B. Configurar el Driver de comunicación Ethernet /IP con el software RSLinx. . 12
C. Con el software Studio 5000 generar un nuevo proyecto, seleccionando el
controlador que se está utilizando. .................................................................... 14
D. Dar de alta las tarjetas o módulos de entradas y salidas analógicas y
digitales, movimiento, comunicación y especiales en función de cada tablero
asignado. ........................................................................................................... 19
E. Realizar las siguientes subrutinas en el proyecto RSLogix o Studio 5000: ... 30
F. En la memoria local del controlador “Program Tag”, crear los Tags de
acuerdo con el documento “Tags” para Control de Movimiento. ........................ 32
G. En la Subrutina Habilitación_EjeRotacional realizar el programa para habilitar
el eje rotacional dese la instrucción del mensaje. .............................................. 33
H. En la subrutina EjeRotacional_MAJ, realizar el programa desde el encendido
(MSO), movimiento Jog (MAJ), paro (MAS), pagado (MSF), shutdown (MASD),
reset del shutdown (MASR) y reset de falla (MAFR). Con la finalidad de
comprobar el funcionamiento del comando de movimiento del comando de
movimiento de Jog MAJ. .................................................................................... 52
I. En la subrutina EjeRotacional_MAM, realizar el programa desde el encendido
(MSO), movimiento Move (MAM), paro (MAS), pagado (MSF), shutdown
(MASD), reset del shutdown (MASR) y reset de falla (MAFR). Con la finalidad de
comprobar el funcionamiento del comando de movimiento para mover el eje
MAM................................................................................................................... 59
J. En la subrutina Secuencia_MAJ, realizar el programa desde el encendido
(MSO), movimiento Jog (MAJ), paro (MAS), apagado (MSF) shutdown (MASD),
reset del shutdown (MASR) y reset de falla (MAFR). Con la finalidad de realizar
el perfil de movimiento de velocidad, mediante la ejecución del comando de

2
movimiento Jog (MAJ), en donde se progaman “n” MAJ deacuerdo al perfil del
anexo 1. MAJ eje rotatorio. ................................................................................ 82
K. En la subrutina Secuencia_MAM, realizar el programa desde el encendido
(MSO), movimiento Move (MAM), paro (MAS), apagado (MSF), shutdown
(MASD), reset del shutdown (MASR) y reset de falla (MAFR). Con la finalidad de
realizar el perfil de movimiento de posición y velocidad mediante la ejecución del
comando de movimiento de move (MAM) en donde se programan “n” MAM de
acerudo al perfil del anexo 2. MAM eje rotatorio. ............................................. 119
L. Los resultados de cada subrutina documentarlos con las tendencias de
posición y velocidad del eje rotacional. ............................................................ 154
RESULTADOS .................................................................................................... 155
CONCLUSIONES................................................................................................ 157
BIBLIOGRAFIA ................................................................................................... 158

3
PROYECTO 3: ESCALAMIENTO Y SINTONIZACIÓN DEL EJE ROTATORIO Y
PROGRAMACIÓN DEL JOG (MAJ) Y MOVIMIENTO (MAM).”

OBJETIVO
Realizar el escalamiento y la sintonización de los lazos de control de los
Servodrives, así como la programación de los comandos MAJ y MAM para la
generación del perfil de movimiento del eje rotacional.

MATERIAL
• 1 PC.
• 1 PAC CompactLogix o ControlLogix.
• 1 módulo Servodrive Kinetix 350.
• 1 módulo de Servomecanismos lineal y rotacional.
• 1 switch Ethernet.
• 1 cable UTP.

SOFTWARE
• BOOTP/DHCP server
• RsLinx
• RsLogix 5000 o Estudio 5000

MARCO TEORICO
Definición Servomotor.
También denominado comúnmente como servo, son dispositivos de accionamiento
para el control de precisión de velocidad, par motor y posición. Constituyen un
mejor desempeño y precisión frente a accionamientos mediante convertidores de
frecuencia, ya que éstos no nos proporcionan control de posición y resultan poco
efectivos en bajas velocidades.

Un servomotor es aquel que contiene en su interior un encoder, conocido como


decodificador, que convierte el movimiento mecánico (giros del eje) en pulsos
digitales interpretados por un controlador de movimiento. También utilizan
un driver, que en conjunto forman un circuito para comandar posición, torque y
velocidad.

4
Instrucción Impulsos de motion axis (MAJ)
La instrucción MAJ es una instrucción de salida, se usa la instrucción MAJ para
iniciar un perfil de control de movimiento por impulsos para un eje.
Para interrumpir un impulso de eje, use la instrucción de impulsos de eje de
movimiento (MAJ) con una velocidad de cero o la instrucción de paro de eje de
movimiento (MAS).
Para usar la instrucción MAJ
• Se configura el eje como servoeje o como eje virtual.
• Se debe asegurar de que la tensión del eje tiene el servo activado si el eje
es un servoeje.
Se tiene los operandos que se muestra en la siguiente imagen.

MAJ cambia a los bits de estado de eje.

5
Instrucción Mover Motion Axis (MAM)
La instrucción MAM es una instrucción de salida, se usa la instrucción MAM para
iniciar un perfil de control de movimiento para un eje.
Para usar la instrucción MAM:
• Se configura el eje como servo eje o como eje virtual.
• Se asegura que la tensión del eje tiene el servo activado si el eje es un servo
eje.
Se tiene los operandos que se muestra en la siguiente imagen.

6
MAM cambia a los bits de estado de eje.

7
DESARROLLO
A. Realizar el enlace punto a punto entre la computadora y el PAC
ControlLogix o CompactLogix de acuerdo con la topología.
I. Para la PC utilizar la configuración de área local.
II. Para el PLC utilizar el software BOOTP/DHCP server.
III. utilizar el software BOOTP/DHCP server.

1) Para poder realizar el enlace punto a punto entre la computadora y los


Servodrives, se usa el software BOOTP/DHCP Server 2.3 usando las MAC
de los Servodrives y la IP del PAC siguiente.

Equipo Servodrive 1 Servodrive 2 PAC

MAC 00:0C:61:02:6B:AB 00:0C:61:01:80:E7 F4:54:33:54:40:C1

Modelo 2097-V33PR1-LM 2097-V33PR3-LM L27ERMQBCFC1B

IP 192.168.1.7 192.168.1.8 192.168.1.3


Tabla 1

8
2) Como se muestra a continuación se selecciona la MAC proporcionada por
el software BOOTP y se le da la dirección de la IP correspondiente.

3) Se procede a etiquetar las direcciones MAC y las IP para identificar cada


nodo.

4) Así mismo se procede a guardar el proyecto en la carpeta de equipo


correspondiente.

9
5) Ahora en el software de RSLinx se observa que ya se encuentra la topología
punto a punto, con un controlador CompactLogix y los servodrives.

6) Para poder asignas las IP´s a las estaciones de trabajo se debe abrir
el centro de conexión de redes.

7) En la ventana nueva que se abre, se debe seleccionar la segunda


opción de modifica.

10
• En el nuevo menú se da clic secundario y se selecciona propiedades.

• En la ventana que se despliega se elige el Protocolo de internet versión


4(TCP/IPv4) y se elige propiedades.

• Se asigna la IP y se da clic en “OK”

11
B. Configurar el Driver de comunicación Ethernet /IP con el software
RSLinx.
1) Se abre el software de RSLinx Classic.

2) Dentro de RsLinx se da clic en la pestaña de “Communications” y luego en


“Configure Drivers”.

12
3) Se elige la comunicación EtherNet/IP Driver

4) Se elige la nueva rutina que es la IP asignada anterior mente.

5) Se observa que el nodo nuevamente está en nodo con los Kinetix350 y el


controlador.

13
C. Con el software Studio 5000 generar un nuevo proyecto, seleccionando
el controlador que se está utilizando.
I. Tipo de carga: Rotacional Acoplado Directamente
II. Unidades de escalamiento son Revs

1) Se abre el Software Studio 5000, para comenzar a realizar un programa. Una


vez abierto la ventana principal del Software, damos clic en “New Project”.

2) Se muestra una nueva ventana acerca de la Configuración para el Nuevo


Proyecto. Para seleccionar el “CompactLogix”, nos apoyamos desde RSLinx
para obtener el nombre y así seleccionarlo más fácilmente.

3) En RSLinx seleccionamos la IP “192.168.1.3”, damos clic derecho y del menú


desplegable damos clic en “Module Configuration”.

14
4) De la ventana de Configuración de la IP, del recuadro de “Device Name” se
selecciona la parte de “1769-L27ERM” del nombre de nuestra IP, clic derecho
y copiar.

5) Ahora en el Software de Studio 5000, se pega lo ya antes copiado en el


buscador y se selecciona la opción de CompactLogix que se muestra en la
ventana.

15
6) En la parte inferior de la ventana de Configuración, encontramos un recuadro
de Name y escribimos “Servo_Controlador1”. Posteriormente damos clic en
Next.

7) Se regresa a la ventana del software de RSLinx, para verificar el número de


“Revisión”. Para ello, se selecciona la IP y clic derecho. En el menú
desplegable y se selecciona la opción de “Module Configuration”.

16
8) En la ventana que nos aparece, podemos verificar que se tiene el numero
“24.011” en Revisión.

9) Se regresa a Studio 5000, y en la Revisión que se debe tener es “24”. Se


modificamos y clic en Finish.

10) Nuevamente nos ubicamos en la ventana principal del software y ubicamos


en el árbol de proyecto la opción de “Eje Rotatorio”, dando doble clic.

17
11) Damos clic en la opción de “Scalling” que pertenece a “Motor”, veremos
nuevas opciones de las cuales nosotros vamos a seleccionar el tipo de carga
“Direct Coupled Rotatory”, que normalmente viene de forma predeterminada.
Se elige esta opción dado que se tiene un Eje rotatorio, el motor, servomotor,
una base y un disco que hacen el movimiento rotatorio e indica que es
acoplado directamente.

18
12) Ahora en la parte inferior, esta habilitada la opción de Unidades, donde
nosotros vamos a configurar que sean “Revs”, la base predeterminada como
Revoluciones. Además de poner en Scalling “1.0” revolución por “1.0”.

13) Ahora damos clic en “OK”, salvamos nuestro programa y descargamos.

D. Dar de alta las tarjetas o módulos de entradas y salidas analógicas y


digitales, movimiento, comunicación y especiales en función de cada
tablero asignado.
I. Límite de recorrido: 30 revs o 60 revs
II. Velocidad: 50 revs/seg o 75 revs/seg
III. Par: 50% o 80%
Una vez sintonizado, validar los valores de sintonización y visualizar los lazos
de Posición, Velocidad y Par.
1) Una vez ya descargado el programa, nuevamente nos ubicamos dentro del
árbol de programa y damos clic en “Eje Rotatorio”, y se abrirá una nueva
ventana.
2) Dentro de la ventana nueva, seleccionamos la opción de “Autotune”
(autosintonizar). En este caso se tienen que sintonizar los 3 lazos de control
(posición, velocidad y par).

19
3) En la parte inferior en “Travel Limit”, viene preestablecido las unidades de
“Revs” que seleccionamos anteriormente. En este caso, escribiremos que
será “45” Revs como límite.

4) Ahora en la siguiente opción de abajo, está la opción de “Speed” (velocidad),


en el cual viene preestablecido las unidades de “Revs/s”. El valor que
asignaremos será en función a la velocidad máxima que deseamos que
opere nuestro sistema, lo cual será “75” Revs/s.

5) Con este valor estamos amplificando el lazo de control de velocidad.

20
6) Posteriormente, también se puede visualizar la opción de “Torque”, con un
valor preestablecido de “100.0” % Rated del par nominal. En este caso,
asignaremos un valor de “80” % Rated.

7) Con esto se habilita el lazo del par. Ahora procedemos a abrir la cámara de
nuestro equipo de tal modo que se vea también nuestro programa.

8) Ubicamos dentro de la misma ventana del programa, la opción de “Perform


Tune”, que cuenta con la opción de “Start”, que hará que el eje se mueve lo
de una rueda para sintonizarse. Posteriormente, saldrá un mensaje de que
se ejecutó de forma correcta. Damos clic en “OK”.

9) Ahora dentro de la misma ventana que se tiene abierta, se visualiza un


apartado de “Loop Parameters Tuned” (sintonización de parámetros de lazo)
donde se tienen diferentes opciones acerca de la información de lazo los
cuales son:

21
• Lazo de Posición
• Lazo de Velocidad
• Lazo de Torque (Lazo de par)
Cuando se realizó la sintonización, dentro de cada lazo de control que se tiene,
está un PI que establece la constante proporcionar integral de estos 3 lazos de
control.
10) Una vez revisados estos lazos, se tiene en la parte inferior una opción de
“Accept Tuned Values”, al que daremos clic.

11) Una vez aceptados los valores, los 3 lazos quedarán con esos valores de
contantes establecidos. En la parte de Tuned Status aparecerá “Ready”.

12) Posteriormente damos clic en “OK” y se cerrará esta ventana.

22
13) Ahora damos clic derecho en la opción de “Eje Rotatorio” de nuestro árbol de
proyecto y de las opciones que se despliegan, seleccionamos “Motion Direct
Commands…”

14) Se procede a encender el Eje, seleccionando la opción de “MSO” (Motion


Servo On” y posteriormente dando clic en “Ejecute”.

15) Y visualizamos que no haya ningún error en la barra inferior de “Errors”. De


forma física el eje quedó más rígido porque se sintonizó con el par que se
requería.

16) Ahora dentro de la misma ventana de “Motion Direct Commands…”,


seleccionamos la opción de “MAJ” (Motion Axis Jog) y se podrá visualizar
que está en “Direction: Forward” (sentido horario) pero la Velocidad (Speed)
será modificada a “1” (lo equivalente a 60 revs/min). Luego ejecutamos.

23
17) Con la ayuda de la cámara se podrá visualizar que el Eje comienza a girar
en sentido horario a la velocidad que se estableció.

18) Debido a que ya se había sintonizado correctamente, su movimiento es más


uniforme.

19) Ahora comprobamos con un valor de Velocidad (Speed) de “0.1”, y


ejecutamos.

24
20) En la cámara se puede visualizar que el Eje comienza a girar en sentido
horario, pero a una velocidad muy lenta que son 6 revs/min., lo equivalente
a 0.1.

21) Una de las características del esquema de control de movimiento es que se


puede desempeñar velocidades muy bajas, así como muy altas.

22) Nuevamente probamos con un nuevo valor para Velocidad (Speed), el cuál
será “0.05” (lo equivalente a 3 revs/min) y ejecutamos. Y por consiguiente el
eje va a girar aún más lento que cuando se tenía a “0.1”.

25
23) Ahora probamos con “20” (1200 revs/min), para verificar que a pesar de que
el Eje gire mucho más rápido seguirá funcionando de manera correcta. Lo
cual se comprueba observando el Eje en la cámara y que cumple esta
función.

24) Ahora para detenerlo, damos el valor de “0” (0 revs/min), lo cual hará que el
Eje detenga su movimiento y que se puede verificar en la imagen que
muestra la cámara del equipo.

26
25) Posteriormente nos ubicamos en el apartado de opciones del lado izquierdo
de la misma ventana de “Motion Direct Commands”, y seleccionamos la
opción “MAM” (Motion Axis Move).

26) En el cual, vamos a configurar que el tipo de movimiento sea “Incremental”.

27
27) Además de determinar que se tenga el valor de “1” en Position (posición) al
igual que en Speed (velocidad). Una vez modificados, lo ejecutamos.

28) De esta forma el disco o eje, dará “1 rev.”, que se podrá visualizar en la
cámara.

29) Para visualizar que sea más notoria la Revolución, cambiamos el valor de
Speed (velocidad) a “0.2” conservando el mismo valor de Position. Luego
ejecutamos.

30) Haciendo que el eje llegue a la posición que establecimos, y que podemos
visualizar en la cámara del equipo.

28
31) Ahora modificamos el valor de Speed, a “20” y damos clic en ejecutar. El
eje va a girar demasiado rápido pero se va a detener en “1” revolución.

32) El resultado se verá visualizado en la cámara del equipo.

33) Ahora para apagar el eje, damos clic en el comando “MSF” (Motion Servo
Off). Posteriormente ejecutamos y quedará apagado correctamente.

29
E. Realizar las siguientes subrutinas en el proyecto RSLogix o Studio
5000:
I. MainRoutine
II. Habilitacion_EjeRotacional
III. EjeRotacional_MAJ
IV. EjeRotacional_MAM
V. Secuencia_MAJ
VI. Secuencia_MAM
Desde el MainRoutine realizar los saltos a las demás subrutinas.
1) Nos ubicamos en el árbol de programa, y damos clic derecho sobre
“MainProgram”, para crear una nueva subrutina.
2) Nos aparecerá una nueva ventana y configuramos la subrutina con el nombre
de “Eje_Rotacional_MAJ”. Damos clic en OK.

3) Ahora nos ubicamos en “MainRoutine”, copiamos y pegamos el ultimo


renglón que tenemos dentro de esta subrutina.

4) Posteriormente, en el contacto abierto del renglón 2, vamos a borrar el


nombre que se tenía para poder cambiar uno nuevo con su respectivo tag.
Para ello, escribimos el nombre de “Saltar_Eje_Rotacional_JOG” y damos
Enter.

30
5) Ahora damos clic derecho sobre el mismo contacto abierto, y del menú que
aparece, seleccionamos la opción de “New Saltar_Eje_Rotacional_JOG”
para crear su Tag.

6) En la nueva ventana que nos aparece, podemos configurar el Tag, pero


dejamos todo prestablecido y damos clic en “Create”.

7) Ahora en el elemento “JSR” del renglón 2, seleccionamos la opción que


hace que la subrutina salte a “Eje_Rotacional_MAJ”.

8) Y de esta forma se crea la subrutina adecuada.

31
F. En la memoria local del controlador “Program Tag”, crear los Tags de
acuerdo con el documento “Tags” para Control de Movimiento.
1) Para esta parte, utilizaremos un documento de Excel que contiene los tags
que estaremos utilizando para la configuración de los Ejes. Para ellos nos
ubicamos en el Explorador de Windows.
2) Ubicamos la dirección de “commesse (\\VBoxSvr) (Z:)

3) Dentro de este, se tiene un archivo en Excel llamado “Motion_ManII-


MainProgram-Tags”, el cual vamos a copias y pegar dentro de nuestra
carpeta de equipo que tenemos en Escritorio.

32
4) Cuando se abre el archivo, se puede visualizar que se tiene una tabla donde
se mencionan los tags por Señal, Nombre, Tipo de Dato y sus Atributos.

5) Para poder hacer uso de estos tags, se tienen que identificar a que elementos
pertenecen. De tal modo, que solo se tendrá que seleccionar el nombre,
copiar y pegar donde corresponde.
G. En la Subrutina Habilitación_EjeRotacional realizar el programa para
habilitar el eje rotacional dese la instrucción del mensaje.
1) Una vez creada la subrutina denominada “EjeRotacional_MAJ”, se procede
a realizar el programa correspondiente. Para esto, primero se agrega un
contacto normalmente abierto y un bloque MSO, para el tag del contacto
abierto será “HMI_On_EjeRotacional”, lo cual indica el accionamiento del
bloque MSO, mientras que, en el bloque de encendido MSO tendrá como
tags en el apartado Axis “Eje_Rotatorio” y en el apartado Motion Control
“MSO_On_EjeRotatorio”, con esto se energiza el eje del tag asignado.

2) De igual forma, se agrega un contacto normalmente abierto con su respectivo


bloque, el cual en este caso es el bloque de movimiento (MAJ).

3) Para el contacto abierto se le pondrá el tag correspondiente que está en la


tabla de Excel que anteriormente se guardó dentro de nuestra carpeta, el

33
cual es “HMI_Jog_EjeRotatorio”, además, se asegura que el tipo de dato sea
booleano y se encuentre ubicado en la carpeta Main Program.

4) Ahora bien, para configurar el bloque MAJ, en el apartado de Axis, lo que se


va activar sigue siendo, el eje rotatorio, por ende, en el apartado previamente
mencionado, se da click en la flecha que aparece en un costado, con esto se
despliega las opciones que se tienen generadas, en este caso se selecciona
la opción etiquetada como “Eje_Rotatorio” y se da enter.

5) En el apartado Motion Control del bloque MAJ, se le agrega un nuevo tag, el


cual tendrá como nombre “MAJ_Jog_EjeRotatorio”. En este bloque a
diferencia del anterior, es de tipo de dato de movimiento, es decir, va a
ejecutar un movimiento.

34
6) En el apartado de dirección (Direction), se le agrega un nuevo tag, el cual
tendrá como nombre “Dir_EjeRotatorio”, este apartado debe ser de tipo de
dato doble entero (DINT) y al igual que los anteriores, ubicarse en Main
Program.

7) En el apartado de velocidad (Speed), se le agregará un nuevo tag, el cual


tendrá como nombre “Speed_EjeRotatorio”, este apartado debe ser tipo de
datos real y ubicarse en la misma carpeta que los anteriores en Main
Program.

35
8) En el apartado de unidades de velocidad, se da click en la flecha que aparece
en un costado y se selecciona la opción de unidades por segundo (units per
sec).

9) Así mismo, para los apartados de unidades de aceleración y de


desaceleración, las unidades que manejarán serán unidades por segundo al
cuadrado (Units per sec2).

36
10) Para el apartado de “Jerk Units” será de tipo unidades por segundo al cubo
(Units per sec3) y para el apartado margen (Marge) se elige la opción de
deshabilitarlo para esta operación.

11) En el apartado de velocidad de margen se elige la opción programada


(Programmed) y para el seguro de posición (Lock position) se le coloca un
valor de “0”. Para el apartado de seguro se dirección (Lock direction) se
selecciona la opcion de ninguno (None).

37
12) En el apartado de perfil (Profile) se le da click y se expande la flecha que
aparece, en esta se muestran 2 opciones, de las cuales se elige la opción
trapezoidal.

13) Para el apartado del ritmo de acelearión (Accel Rate) se crea un nuevo tag,
el cual tendrá como nombre “Accel_EjeRotatorio”, el tipo de dato para este
tag es de tipo real y al igual que los demás tags creados anteriormente debe
ubicarse en la carpeta Main Program. Lo mismo se hace para el apartado de
ritmo de desaceleración, con la diferencia del nombre de tag, el cual tendrá
como nombre “Decel_EjeRotatorio”.

14) Para los apartados de “Accel Jerk” y “Decel Jerk”, el tipo de dato debe ser
real y que se encuentren ubicados en la carpeta Main Program, la diferencia
entre ambos es el tag que tendrá cada uno. Para el caso del apartado “Accel

38
Jerk” tendrá el nombre de “AccelJerk_EjeRotatorio” y para el apartado “Decel
Jerk” tendrá el nombre de “DecelJerk_EjeRotatorio”.

15) Con estos tags asignados y valores en el bloque MAJ, queda completamente
configurado.

16) Al igual que se hizo con el bloque MAJ, se procede a configurar el bloque
MAS, el cual también debe tener su contacto normalmente abierto para su
activación del bloque.

39
17) Para esto en el contacto abierto, se pondrá un tag con el nombre
“HMI_Stop_EjeRotatorio”, el cual, como su nombre lo indica, se encarga de
activar el bloque MAS para detener el eje rotatorio en su totalidad.

18) Ahora bien, se procede a configurar el bloque MAS. En el apartado de Axis


(eje), se da click y aparecen 2 opciones de ejes, en este caso el que se desea
activar es el eje rotacional.

19) En el apartado de tipo de paro (Stop Type) se selecciona la opción de “Jog”,


ya que el programa se está realizando con comandos de tipo Jog. Mientras
que para el apartado cambio de desaceleración, se selección la opción de si
(Yes), esto quiere decir que cuando se active el paro del eje rotacional lo hará
de forma gradual poco a poco.

40
20) Para el apartado de unidades de desaceleración, se selecciona la opcion de
unidades por segundo al cuadrado (Units per sec2). Para el apartado de
Change Decel Jerk se selecciona la opción de si (Yes). Además, en el
apartado Jerk Units se selecciona la opcion de unidades por segundo al cubo
(Units per sec3).

21) En el apartado de ritmo de desaceleración (Decel Rate) se da click y se


despliega una venta con diversas opciones de los tags previamente hechos,
en este caso se selecciona el tag “Decel_EjeRotatorio”.

22) Así mismo, para el apartado de “Decel Jerk” se selecciona el tag previamente
generado dando click, se despliega una ventana con los tags generados y se
selecciona el correspondiente, en este caso “DecelJerk_EjeRotatorio”.

41
23) Finalmente, se genera el tag en el apartado de control de movimiento (Motion
Control), el cual tendrá el nombre de “MAS_Stop_EjeRotatorio”. Esta
instrucción es de tipo de dato de movimiento y al igual que los anteriores,
debe pertenecer a la carpeta Main Program. Con esto queda completamente
configurado el bloque MAS.

24) Al igual que en el paso 3, se procede a poner un contacto normalmente


abierto para la activación del bloque correspondiente y un bloque MASD.

25) Como se vio previamente, se tiene que agregar un tag para el contacto
normalmente abierto para activar el bloque MASD. El nombre que tendrá el

42
tag será “HMI_ShutdownReset_EjeRotatorio”, el cual es de tipo de dato
booleano y debe estar ubicado en la carpeta Main Program.

26) En el apartado de Axis (eje) se selecciona el tag previamente creado de


“Eje_Rotatorio”, que es que hace la acción de activar el eje rotatorio de forma
fisica.

27) Finalmente, en el apartado de control de movimiento (Motion Control) se crea


el tag con el nombre “MASD_Shutdown_EjeRotatorio”, el cual es tipo de dato
de instrucción de movimiento y se encuentra ubicado en la carpeta Main
Program. Con esto queda completo el bloque MASD.

43
a. Para la siguiente instrucción se coloca nuevamente un contacto
normalmente abierto y el bloque MASR.

28) Para el contacto normalmente abierto se le asigna su tag correspondiente, el


cual ya esta previamente creado, para asignarlo se da click en el contacto y
se selecciona su tag asignado, que en este caso es
“HMI_ShutdowReset_EjeRotatorio”.

29) De igual forma que en los bloques de instrucciones anteriores, en el apartado


de Axis (eje) se selecciona el eje a mover, en este caso se trata del eje
rotacional.

44
30) Finalmente, se crea el tag correspondiente en el apartado de control de
movimiento (Motion control) con el nombre
“MASR_ShutdowReset_EjeRotatorio”, el cual es tipo de dato de instrucción
de movimiento y se encuentra ubicado en la carpeta Main Program. Con esto
queda completo el bloque MASR.

a. En la penúltima línea de instrucción, así como en las demás, se coloca


su contacto normalmente abierto para su activación y el bloque MAFR.

31) Para el contacto normalmente abierto se le coloca el tag con el nombre


“HMI_FaultReset_EjeRotatorio”, el cual es tipo de dato booleano y ubica en
la carpeta Main Program.

45
32) En el bloque MAFR en el apartado de Axis (eje) se selecciona el eje a mover
o accionar, en este caso se selecciona el eje rotatorio.

33) Finalmente, en el apartado de control de movimiento del bloque (Motion


Control) se crea el tag con el nombre “MAFR_FaultReset_EjerRotatorio”, el
cual es tipo de dato de instrucción de movimiento y se ubica en la carpeta
Main Program. Con esto queda configurado el bloque MAFR.

46
a. En la última instrucción se coloca un contacto abierto para su
activación y el bloque MSF.

34) Como se hizo anteriormente, se crea el tag correspondiente para el contacto


de activación del bloque, el cual tiene como nombre “HMI_Off_EjeRotatorio”,
el cual es tipo de dato booleano y se ubica en la carpeta Main Program.

35) En el apartado Axis (eje) se selecciona el eje a accionar, que en este caso
es el eje rotatorio.

36) Finalmente, en el apartado de control de movimiento (Motion Control) se crea


el tag que tendrá como nombre “MSF_Off_EjeRotatorio”, el cual es tipo de
dato de instrucción de movimiento y se ubica en la carpeta Main Progrma.
Con esto queda completado el bloque MSF.

47
37) Con esto queda completado el programa para su ejecución.
a. Una vez completado el programa, se procede a realizar una nueva
tendencia para la velocidad del eje rotatorio, para esto, se da click
derecho en el apartado del árbol del proyecto “Trend” y se selecciona
la opción “New Trend”.

38) Con esto se abre un cuadro de dialogo, en el cual se le pone el nombre de


“Eje_Rotatorio_Jog” y se da click en avanzar.

48
39) Finalmente, aparece una serie de datos, en las cuales se expande la opcion
de “Eje Rotatorio y se selecciona la subopción “Eje Rotatorio Actual Velocity”,
para agregarlo se da click en el apartado “Add” y aparecerá en la parte inferior
agregada. Una vez agregada se da click en terminar.

40) Con esto se abre una gráfica, a la cual se le da click derecho en el área de
muestreo (fondo negro) y se selecciona las propiedades de la gráfica (Chart
Properties).

49
41) Dentro de las propiedades de la gráfica, en el apartado de “Display” se
modifica el color de fondo de la gráfica, de preferencia de color blanco.

42) En el siguiente apartado de las propiedades de la gráfica, se modifica el


grosor de línea que se mostrará a la gráfica, en este caso se le coloca un
grosor de 2.

43) En el siguiente apartado correspondiente al eje “X”, se modifica el tiempo de


Spam que tiene la gráfica, en este caso se coloca un tiempo de 1 minuto, o
bien, 60 segundos.

50
44) Finalmente, en el apartado de eje “Y” se modifica los limites superiores e
inferiores que tendrá la gráfica, para esto se selecciona la opción de
personalizado (Custom) y se coloca un valor de “-50 a 50”. Con esto queda
configurada las propiedades de la gráfica.

51
45) Se procede a descargar el programa en el PLC.

H. En la subrutina EjeRotacional_MAJ, realizar el programa desde el


encendido (MSO), movimiento Jog (MAJ), paro (MAS), pagado (MSF),
shutdown (MASD), reset del shutdown (MASR) y reset de falla (MAFR).
Con la finalidad de comprobar el funcionamiento del comando de
movimiento del comando de movimiento de Jog MAJ.
1) Ya cargado el programa en el PLC, se activa la subrutina del bloque MSO
para activar el programa.

a. En el árbol de proyecto en la rutina “Main Routine” se activa el salto


a la subrutina creada para que se pueda ejecutar el programa.

52
b. Una vez activado el bloque de encendido MSO, se procede a activar
el bloque MAJ, el cual se acciona dando click derecho en el contacto
HMI_Jog_EjeRotatorio y seleccionar la opción “Toggle bit”.

c. Al accionar el bloque MAJ se puede observar que se va a error (ER),


ya que no tiene parámetros definidos de velocidad, aceleración y
desaceleración. Para solucionar esto, se le da valores a los
parámetros de velocidad, ritmo de aceleración y desaceleración y a
los parámetros Accel y Decel Jerk.

53
d. Para solucionar la falla se apaga el contacto dando click derecho y
seleccionando la opción “Toggle bit” y se vuelve a encender haciendo
lo mismo previamente dicho.

e. Con esto queda solucionado el erro y se puede apreciar como se


accionar el eje con ayuda de la cámara, el cual gira a 1 revolución por
segundo.

54
Posteriormente se cambia la velocidad del eje cambiando su velocidad de 1 a 5
revoluciones por segundo.

f. Ahora bien, para hacer la desaceleración y cambio de sentido del eje,


se modifica el parámetro de dirección (Direction) de 0 a 1, dónde el
valor 0 corresponde al sentido horario y el 1 al sentido antihorario.
Mientras que los parámetros de ritmo de aceleración y desaceleración
se cambian a 1, esto para que sea un paro lento y comience a girar en
sentido antihorario de forma consecutiva.

55
g. Ahora bien, se procede a observar su comportamiento en la gráfica
en la tendencia previamente creada dónde se configuraron las
propiedades de la gráfica. Se da click en el “Run” y se observa que se
mantiene un valor constante de “-5”, esto es por la velocidad asignada
de 5 y el signo negativo es debido al sentido en el que se encuentra
girando el eje, en este caso es antihorario.

Así mismo, se cambian los valores de velocidad, dirección, ritmo de aceleración y


desaceleración para observar como se comporta la gráfica de respuesta.

56
h. Finalmente, se procede a para el programa, para esto, primero se
debe detener la operación, para eso se activa el bloque MAS
accionando su contacto de activación.

57
Una vez activado el paro del programa se procede a apagarlo, para esto se acciona
el bloque MSF activando su contacto normalmente abierto.

Con esto se completa y finaliza la ejecución y comprobación del programa para


hacer girar el eje rotatorio en ambos sentidos a diferentes velocidades y
aceleraciones, así como desaceleraciones.

58
I. En la subrutina EjeRotacional_MAM, realizar el programa desde el
encendido (MSO), movimiento Move (MAM), paro (MAS), pagado (MSF),
shutdown (MASD), reset del shutdown (MASR) y reset de falla (MAFR).
Con la finalidad de comprobar el funcionamiento del comando de
movimiento para mover el eje MAM.
Antes de comenzar con el desarrollo del programa, se debe anexar su salto a
subrutina desde la rutina MainRoutine en el árbol del proyecto. Para esto, se agrega
un contacto normalmente abierto con el tag “Salto_Eje_Rotacional_MAM” y un
bloque JSR que contiene la dirección de la subrutina a activar, en este caso el tag
de la rutina “Eje_Rotacional_MAJ”.

1) Una vez creada la subrutina denominada “EjeRotacional_MAM”, se procede


a realizar el programa correspondiente. Para esto, primero se agrega un
contacto normalmente abierto y un bloque MSO, para el tag del contacto
abierto será “HMI_On_EjeRotacional”, lo cual indica el accionamiento del
bloque MSO, mientras que, en el bloque de encendido MSO tendrá como
tags en el apartado Axis “Eje_Rotatorio” y en el apartado Motion Control
“MSO_On_EjeRotatorio”, con esto se energiza el eje del tag asignado.

2) A diferencia del punto H, se hará uso de un bloque MAM en lugar de uno


MAJ, igual forma que en el punto anterior, se agrega un contacto
normalmente abierto con su respectivo bloque, el cual en este caso es el
bloque de movimiento (MAM).

Para el contacto abierto se le pondrá el tag correspondiente, el cual es


“HMI_Move_EjeRotatorio”, además, se asegura que el tipo de dato sea booleano y
se encuentre ubicado en la carpeta Main Program.

59
Ahora bien, para configurar el bloque MAM, en el apartado de Axis, lo que se va
activar sigue siendo el eje rotatorio, por ende, en el apartado previamente
mencionado, se da click en la flecha que aparece en un costado, con esto se
despliega las opciones que se tienen generadas, en este caso se selecciona la
opción etiquetada como “Eje_Rotatorio” y se da enter.

60
En el apartado Motion Control del bloque MAM, se le agrega un nuevo tag, el cual
tendrá como nombre “MAM_Move_EjeRotatorio”. En este bloque a diferencia del
anterior, es de tipo de dato de movimiento, es decir, va a ejecutar un movimiento.

En el apartado de tipo de movimiento (Move Type), se le pone directamente el valor


de 1, ya que indica que es un movimiento de tipo incremental, si se lo pone el valor
de 0 se indica que es un valor de tipo absoluto.

61
En el apartado de unidades de velocidad (Speed Units), se selecciona la opción de
unidades por segundo (Units per sec), mientras que, para los apartados de unidades
de aceleración y desaceleración se selecciona la opción de unidades por segundo
al cuadrado (Units per sec2).

Para el apartado de perfil (Profile), se selecciona la opción trapezoidal, mientras


que, para el apartado de “Jerk Units” se selecciona la opción de unidades por
segundo al cubo (Units per sec3).

En el apartado de margen (Marge) se selecciona la opción de deshabilitar (Disable),


mientras que para para el apartado de unidades de margen (Marge Units) se
selecciona la opción de programado (Programmed).

62
Para el apartado de seguro de posición (Lock Position) se le pone directamente el
valor de 0, mientras que para el apartado de seguro de dirección (Lock Direction)
se selecciona la opción de ninguno (None).

En el apartado de distancia de evento (Event Distance) se le pone directamente el


valor de 0. Así mismo, para el apartado de datos calculados (Calculated data) se le
pone de igual forma el valor de 0 directamente.

63
En el apartado de posición (Position) se crea un nuevo tag, el cual tendrá como
nombre “Position_EjeRotatorio”, éste será de tipo real y ubicado en la carpeta del
programa Servo_Controlador1”.

64
Finalmente, para los parámetros faltantes del bloque MAM, se mandan a llamar los
tags correspondientes, ya que, son los mismos que se utilizaron para la elaboración
del bloque de movimiento MAJ.

65
66
Con esto queda completamente configurado el bloque de movimiento MAM.
3) Al igual que se hizo con el bloque MAJ, se procede a configurar el bloque
MAS, el cual también debe tener su contacto normalmente abierto para su
activación del bloque.

Para esto en el contacto abierto, se pondrá un tag con el nombre


“HMI_Stop_EjeRotatorio”, el cual, como su nombre lo indica, se encarga de activar
el bloque MAS para detener el eje rotatorio en su totalidad.

67
Ahora bien, se procede a configurar el bloque MAS. En el apartado de Axis (eje), se
da click y aparecen 2 opciones de ejes, en este caso el que se desea activar es el
eje rotacional.

En el apartado de tipo de paro (Stop Type) se selecciona la opción de “Jog”, ya que


el programa se esta realizando con comandos de tipo Jog. Mientras que para el
apartado cambio de desaceleración, se selección la opción de si (Yes), esto quiere
decir que cuando se active el paro del eje rotacional lo hará de forma gradual poco
a poco.

Para el apartado de unidades de desaceleración, se selecciona la opcion de


unidades por segundo al cuadrado (Units per sec2). Para el apartado de Change
Decel Jerk se selecciona la opción de si (Yes). Además, en el apartado Jerk Units
se selecciona la opcion de unidades por segundo al cubo (Units per sec3).

En el apartado de ritmo de desaceleración (Decel Rate) se da click y se despliega


una venta con diversas opciones de los tags previamente hechos, en este caso se
selecciona el tag “Decel_EjeRotatorio”.

68
Así mismo, para el apartado de “Decel Jerk” se selecciona el tag previamente
generado dando click, se despliega una ventana con los tags generados y se
selecciona el correspondiente, en este caso “DecelJerk_EjeRotatorio”.

Finalmente, se genera el tag en el apartado de control de movimiento (Motion


Control), el cual tendrá el nombre de “MAS_Stop_EjeRotatorio”. Esta instrucción es
de tipo de dato de movimiento y al igual que los anteriores, debe pertenecer a la
carpeta Main Program. Con esto queda completamente configurado el bloque MAS.

69
4) Al igual que en el paso 3, se procede a poner un contacto normalmente
abierto para la activación del bloque correspondiente y un bloque MASD.

Como se vio previamente, se tiene que agregar un tag para el contacto normalmente
abierto para activar el bloque MASD. El nombre que tendrá el tag será
“HMI_ShutdownReset_EjeRotatorio”, el cual es de tipo de dato booleano y debe
estar ubicado en la carpeta Main Program.

70
En el apartado de Axis (eje) se selecciona el tag previamente creado de
“Eje_Rotatorio”, que es que hace la acción de activar el eje rotatorio de forma fisica.

Finalmente, en el apartado de control de movimiento (Motion Control) se crea el tag


con el nombre “MASD_Shutdown_EjeRotatorio”, el cual es tipo de dato de
instrucción de movimiento y se encuentra ubicado en la carpeta Main Program. Con
esto queda completo el bloque MASD.

5) Para la siguiente instrucción se coloca nuevamente un contacto


normalmente abierto y el bloque MASR.

Para el contacto normalmente abierto se le asigna su tag correspondiente, el cual


ya esta previamente creado, para asignarlo se da click en el contacto y se
selecciona su tag asignado, que en este caso es
“HMI_ShutdowReset_EjeRotatorio”.
71
De igual forma que en los bloques de instrucciones anteriores, en el apartado de
Axis (eje) se selecciona el eje a mover, en este caso se trata del eje rotacional.

Finalmente, se crea el tag correspondiente en el apartado de control de movimiento


(Motion control) con el nombre “MASR_ShutdowReset_EjeRotatorio”, el cual es tipo
de dato de instrucción de movimiento y se encuentra ubicado en la carpeta Main
Program. Con esto queda completo el bloque MASR.

72
6) En la penúltima línea de instrucción, así como en las demás, se coloca su
contacto normalmente abierto para su activación y el bloque MAFR.

Para el contacto normalmente abierto se le coloca el tag con el nombre


“HMI_FaultReset_EjeRotatorio”, el cual es tipo de dato booleano y ubica en la
carpeta Main Program.

En el bloque MAFR en el apartado de Axis (eje) se selecciona el eje a mover o


accionar, en este caso se selecciona el eje rotatorio.

Finalmente, en el apartado de control de movimiento del bloque (Motion Control) se


crea el tag con el nombre “MAFR_FaultReset_EjerRotatorio”, el cual es tipo de dato
de instrucción de movimiento y se ubica en la carpeta Main Program. Con esto
queda configurado el bloque MAFR.

73
7) En la última instrucción se coloca un contacto abierto para su activación y el
bloque MSF.

Como se hizo anteriormente, se crea el tag correspondiente para el contacto de


activación del bloque, el cual tiene como nombre “HMI_Off_EjeRotatorio”, el cual es
tipo de dato booleano y se ubica en la carpeta Main Program.

En el apartado Axis (eje) se selecciona el eje a accionar, que en este caso es el eje
rotatorio.

74
Finalmente, en el apartado de control de movimiento (Motion Control) se crea el tag
que tendrá como nombre “MSF_Off_EjeRotatorio”, el cual es tipo de dato de
instrucción de movimiento y se ubica en la carpeta Main Progrma. Con esto queda
completado el bloque MSF.

Con esto queda completado el programa para su ejecución.


8) Una vez completado el programa, se procede a realizar una nueva tendencia
para la velocidad del eje rotatorio, para esto, se da click derecho en el
apartado del árbol del proyecto “Trend” y se selecciona la opción “New
Trend”.

75
Con esto se abre un cuadro de dialogo, en el cual se le pone el nombre de
“Eje_Rotatorio_Move”, se deja el periodo de muestra preestablecido y se da click
en avanzar.

Finalmente, aparece una serie de datos, en las cuales se expande la opcion de “Eje
Rotatorio y se seleccionan las subopciónes “Eje Rotatorio Actual Velocity” y “Eje
Rotatorio Actual Position”, para agregarlo se da click en el apartado “Add” y
aparecerán en la parte inferior agregados, después se da click en terminar.

76
9) Con esto se abre una gráfica, a la cual se le da click derecho en el área de
muestreo (fondo negro) y se selecciona las propiedades de la gráfica (Chart
Properties).

Dentro de las propiedades de la gráfica, en el apartado de “Display” se modifica el


color de fondo de la gráfica, de preferencia de color blanco.

77
En el siguiente apartado de las propiedades de la gráfica, se modifica el grosor de
línea que se mostrará en la misma, en este caso se le coloca un grosor de 2 en
ambas secciones.

En el siguiente apartado correspondiente al eje “X”, se modifica el tiempo de Spam


que tiene la gráfica, en este caso se coloca un tiempo de 1 minuto, o bien, 60
segundos.

78
Finalmente, en el apartado de eje “Y” se modifica los limites superiores e inferiores
que tendrá la gráfica, para esto se selecciona la opción de personalizado (Custom)
y se coloca un valor de “-50 a 50”. Con esto queda configurada las propiedades de
la gráfica.

10) Se procede a descargar el programa en el PLC.

79
11) Una vez descargado el programa en el PLC se procede a poner en modo
“Run” la gráfica para observar su comportamiento, con esto se puede
observar una primera lectura la cual indica que está recibiendo las muestras
de prueba del programa creado.

12) Ya que se comprobó que la gráfica responde a los datos obtenidos del
programa elaborado, se procede a correr el programa con valores
establecidos por el usuario. Para esto primero se activa el bloque MAM
cerrando su contacto normalmente abierto dando click derecho sobre él y
seleccionando la opción “Toggle bit”.

80
13) En los parámetros de posición (Position) y de velocidad (Speed) se insertan
los valores que se deseen observar en la gráfica de respuesta. Un ejemplo
es dar un valor de posición de “-100” a una velocidad de 10 revoluciones por
segundo. Cada vez que se active el contacto de entrada dará una señal de
entrada que se irá incrementando, es decir, no se reinicia, se va acumulando
el valor previó más el nuevo valor que se le ponga a criterio del usuario.

Con el programa hecho y la gráfica configurada se procede a insertar diversos


valores de posición y velocidad para observar el comportamiento de la gráfica.

Con esto se comprueba que el programa funciona a la perfección y que se pueden


modificar los parámetros de posición y velocidad sin problemas, así como observar
su respuesta tanto de forma física como de forma gráfica.

81
J. En la subrutina Secuencia_MAJ, realizar el programa desde el
encendido (MSO), movimiento Jog (MAJ), paro (MAS), apagado (MSF)
shutdown (MASD), reset del shutdown (MASR) y reset de falla (MAFR).
Con la finalidad de realizar el perfil de movimiento de velocidad,
mediante la ejecución del comando de movimiento Jog (MAJ), en donde
se progaman “n” MAJ deacuerdo al perfil del anexo 1. MAJ eje rotatorio.

Antes de comenzar con el desarrollo del programa, se debe anexar su salto a


subrutina desde la rutina MainRoutine en el árbol del proyecto. Para esto, se agrega
un contacto normalmente abierto con el tag “Salto_Secuencia_Jog” y un bloque JSR
que contiene la dirección de la subrutina a activar, en este caso el tag de la rutina
es “Secuencia_Jog”.

Una vez pues su salto a subrutina se procede a analizar el perfil de movimiento que
se desea realizar.

En el perfil de movimiento propuesto se presenta la gráfica resultante que se debe


obtener al variar los parámetros de velocidad y aceleración de cada bloque a realizar
en el programa correspondiente.
El programa correspondiente para poder llevar a cabo el perfil de movimiento es
idéntico al realizado previamente en el punto H, sin embargo, a diferencia del
programa hecho en el punto H, en esta ocasión se darán valores especificos para
obtener la gráfica de respuesta propuesta.

82
1) Una vez creada la subrutina denominada “Secuencia_MAJ”, se procede a
realizar el programa correspondiente. Para esto, se copia y se pega el
programa previamente hecho para la subrutina “EjeRotacional_MAJ”
cambiando etiquetas. Para el contacto normalmente abierto tendrá el tag
“HMI_On_EjeRotatorio”, lo cual indica el accionamiento del bloque MSO,
mientras que, en el bloque de encendido MSO tendrá como tags en el
apartado Axis “MAJ_1” y en el apartado Motion Control
“MSO_On_EjeRotatorio”, con esto se energiza el eje del tag asignado.

2) De igual forma, se agrega un contacto normalmente abierto con su


respectivo bloque, el cual en este caso es el bloque de movimiento (MAJ).

Para el contacto abierto se le pondrá el tag correspondiente, el cual es “Jog_1”,


además, se asegura que el tipo de dato sea booleano y se encuentre ubicado en la
carpeta Main Program.

Ahora bien, para configurar el bloque MAJ, en el apartado de Axis, lo que se va a


activar sigue siendo, el eje rotatorio, por ende, en el apartado previamente
mencionado, se da click en la flecha que aparece en un costado, con esto se

83
despliega las opciones que se tienen generadas, en este caso se selecciona la
opción etiquetada como “Eje_Rotatorio” y se da enter.

En el apartado Motion Control del bloque MAJ, se le agrega un nuevo tag, el cual
tendrá como nombre “MAJ_1”. En este bloque a diferencia del anterior, es de tipo
de dato de movimiento, es decir, va a ejecutar un movimiento.

En el apartado de dirección (Direction), se le pone directamente el valor de 0, esto


indica que el movimiento será en el sentido horario.

84
En el apartado de velocidad (Speed), se le agrega directamente el primer valor
indicado en la imagen de la gráfica esperada, el cual es un valor de 3.8.

En el apartado de unidades de velocidad, se da click en la flecha que aparece en


un costado y se selecciona la opción de unidades por segundo (units per sec).

85
Para el apartado de aceleración (Accel Rate) y desaceleración se le ponen el valor
directamente de 10.5 a cada uno.

Así mismo, para los apartados de unidades de aceleración y de desaceleración, las


unidades que manejarán serán unidades por segundo al cuadrado (Units per sec2).

Para el apartado de “Jerk Units” será de tipo unidades por segundo al cubo (Units
per sec3) y para el apartado margen (Marge) se elige la opción de deshabilitarlo
para esta operación.

86
En el apartado de velocidad de margen se elige la opción programada
(Programmed) y para el seguro de posición (Lock position) se le coloca un valor de
“0”. Para el apartado de seguro se dirección (Lock direction) se selecciona la opcion
de ninguno (None).

En el apartado de perfil (Profile) se le da click y se expande la flecha que aparece,


en esta se muestran 2 opciones, de las cuales se elige la opción trapezoidal.

Para el apartado del ritmo de acelearión (Accel Rate) se crea un nuevo tag, el cual
tendrá como nombre “Accel_EjeRotatorio”, el tipo de dato para este tag es de tipo
real y al igual que los demás tags creados anteriormente debe ubicarse en la carpeta
Main Program. Lo mismo se hace para el apartado de ritmo de desaceleración, con
la diferencia del nombre de tag, el cual tendrá como nombre “Decel_EjeRotatorio”.

87
Para los apartados de “Accel Jerk” y “Decel Jerk”, el tipo de dato debe ser real y que
se encuentren ubicados en la carpeta Main Program, la diferencia entre ambos es
el tag que tendrá cada uno. Para el caso del apartado “Accel Jerk” tendrá el nombre
de “AccelJerk_EjeRotatorio” y para el apartado “Decel Jerk” tendrá el nombre de
“DecelJerk_EjeRotatorio”.

Con estos tags asignados y valores en el bloque MAJ, queda completamente


configurado el primer bloque de movimiento.

88
Antes de realizar los movimientos restantes que hará el programa, se procede a
agregar un temporizador con retardo a la conexión, el cual delimitará el tiempo de
operación de cada bloque MAJ creado previamente. Para esto, el tag
correspondiente para el timmer es “TIMER_JOG”.

En el apartado de “preset” se va a ingresar el tiempo que se quiere que dure cada


segmento, al tratarse de 10 segmentos, el tiempo que se quiera que dure cada
segmento se multiplicará por 10, en este caso, se quiere un tiempo de duración de
3 segundos por segmento, por ende, la duración total es de 30 segundos, pero para
ingresarla en el temporizador, debe hacerse en milisegundos, por lo tanto, el valor
a ingresar es de 30,000 milisegundos.

89
Para su activación se requieren 2 condiciones, para esto se agregan 2 contactos,
uno será abierto y el otro cerrado.

Para el contacto cerrado tendrá la dirección del temporizador DN, para esto se da
doble click en el contacto y se despliega una serie de datos, en esta lista se expande
las opciones de “TIMER_JOG” y se selecciona la salida DN. Con esto el programa
queda de forma cíclica, es decir, una vez termina su ciclo de 30 segundos se vuelve
a iniciar nuevamente.

Mientras que para el contacto normalmente abierto se crea un nuevo tag, el cual
tendrá como nombre “ACTIVACION_TIMER”.

90
Así mismo, de forma adicional se agrega un bloque de igualdad (EQU), el cual se
coloca en paralelo al contacto “JOG_1” que activa el bloque MAJ.

Este bloque se encargará de activar el bloque MAJ si se cumplen sus 2 fuentes


(Source A, B). Para la fuente A (Source A) se selecciona la activación del
temporizador (TIMER_JOG.ACC).

Mientras que, para la fuente B (Source B) se coloca el valor de 0 directamente, ya


que este corresponde al valor del acumulado del temporizador.

91
Para la realización de los siguientes bloques MAJ, se copia y pega el renglón con el
bloque MAJ y su contacto abierto con el bloque EQU en paralelo, cambiando el tag
del contacto abierto, el tag del apartado Motion Control del bloque MAJ, el valor de
la fuente B del igualador (Source B del bloque EQU) y los valores de velocidad, así
como los de aceleración y desaceleración y en algunos casos la dirección, esto es
debido a que la gráfica presenta valores negativos, con el cambio de dirección se
pueden obtener estas respuestas negativas.
Para el movimiento 2 se tiene que:
• El tag del contacto abierto es “JOG_2” y el valor para la fuente B del bloque
EQU es de 3000 milisegundos, ya que esto equivale a 3 segundos de
duración del bloque.

92
• En el apartado Motion Control el nuevo tag es “MAJ_2”.

• Para el apartado de velocidad se tiene un valor de 7.2

• Para el apartado de aceleración y desaceleración se tiene un valor de 15.

93
• La dirección se conserva en 0 (sentido horario).

Para el movimiento 3 se tiene que:


• El tag del contacto abierto es “JOG_3” y el valor para la fuente B del bloque
EQU aumenta su valor de 3000 a 6000 milisegundos.

94
• En el apartado Motion Control el nuevo tag es “MAJ_3”.

• Para el apartado de velocidad se tiene un valor de 13.6.

95
• Para el apartado de aceleración y desaceleración se tiene un valor de

• La dirección se conserva en 0 (sentido horario).

96
Para el movimiento 4 se tiene que:
• El tag del contacto abierto es “JOG_4” y el valor para la fuente B del bloque
EQU aumenta su valor de 6000 a 9000 milisegundos.

• En el apartado Motion Control el nuevo tag es “MAJ_4”.

• Para el apartado de velocidad se tiene un valor de 31.2.

97
• Para el apartado de aceleración y desaceleración se tiene un valor de 25

• La dirección se conserva en 0 (sentido horario).

98
Para el movimiento 5 se tiene que:
• El tag del contacto abierto es “JOG_5” y el valor para la fuente B del bloque
EQU aumenta su valor de 9000 a 12000 milisegundos.

• En el apartado Motion Control el nuevo tag es “MAJ_5”.

• Para el apartado de velocidad se tiene un valor de 8.

99
• Para el apartado de aceleración y desaceleración se tiene un valor de -25.

• La dirección se conserva en 0 (sentido horario).

100
Para el movimiento 6 se tiene que:
• El tag del contacto abierto es “JOG_6” y el valor para la fuente B del bloque
EQU aumenta su valor de 12000 a 15000 milisegundos.

• En el apartado Motion Control el nuevo tag es “MAJ_6”.

• Para el apartado de velocidad se tiene un valor de 2.5.

101
• Para el apartado de aceleración y desaceleración se tiene un valor de -5.

• La dirección se conserva en 0 (sentido horario).

102
Para el movimiento 7 se tiene que:
• El tag del contacto abierto es “JOG_7” y el valor para la fuente B del bloque
EQU aumenta su valor de 15000 a 18000 milisegundos.

• En el apartado Motion Control el nuevo tag es “MAJ_7”.

• Para el apartado de velocidad se tiene un valor de -12.5

103
• Para el apartado de aceleración y desaceleración se tiene un valor de -20.

• La dirección se cambia de 0 a 1 (sentido antihorario), esto debido al signo


negativo de la velocidad que con la que se quiere operar.

104
Para el movimiento 8 se tiene que:
• El tag del contacto abierto es “JOG_8” y el valor para la fuente B del bloque
EQU aumenta su valor de 18000 a 21000 milisegundos.

• En el apartado Motion Control el nuevo tag es “MAJ_8”.

• Para el apartado de velocidad se tiene un valor de -24.3.

105
• Para el apartado de aceleración y desaceleración se tiene un valor de -14.

• La dirección se conserva en 1 (sentido antihorario).

Para el movimiento 9 se tiene que:


• El tag del contacto abierto es “JOG_9” y el valor para la fuente B del bloque
EQU aumenta su valor de 21000 a 24000 milisegundos.

• En el apartado Motion Control el nuevo tag es “MAJ_9”.

106
• Para el apartado de velocidad se tiene un valor de 0.

• Para el apartado de aceleración y desaceleración se tiene un valor de 16.

107
• La dirección se conserva en 1 (sentido antihorario).

Con esto queda completo el programa para la obtención de la gráfica propuesta.


3) Al igual que se hizo con el bloque MAJ, se procede a configurar el bloque
MAS, el cual también debe tener su contacto normalmente abierto para su
activación del bloque.

Para esto en el contacto abierto, se pondrá un tag con el nombre


“HMI_Stop_EjeRotatorio”, el cual, como su nombre lo indica, se encarga de activar
el bloque MAS para detener el eje rotatorio en su totalidad.

108
Ahora bien, se procede a configurar el bloque MAS. En el apartado de Axis (eje), se
da click y aparecen 2 opciones de ejes, en este caso el que se desea activar es el
eje rotacional.

En el apartado de tipo de paro (Stop Type) se selecciona la opción de “Jog”, ya que


el programa se esta realizando con comandos de tipo Jog. Mientras que para el
apartado cambio de desaceleración, se selección la opción de si (Yes), esto quiere
decir que cuando se active el paro del eje rotacional lo hará de forma gradual poco
a poco.

109
Para el apartado de unidades de desaceleración, se selecciona la opcion de
unidades por segundo al cuadrado (Units per sec2). Para el apartado de Change
Decel Jerk se selecciona la opción de si (Yes). Además, en el apartado Jerk Units
se selecciona la opcion de unidades por segundo al cubo (Units per sec3).

En el apartado de ritmo de desaceleración (Decel Rate) se da click y se despliega


una venta con diversas opciones de los tags previamente hechos, en este caso se
selecciona el tag “Decel_EjeRotatorio”.

Así mismo, para el apartado de “Decel Jerk” se selecciona el tag previamente


generado dando click, se despliega una ventana con los tags generados y se
selecciona el correspondiente, en este caso “DecelJerk_EjeRotatorio”.

110
Finalmente, se genera el tag en el apartado de control de movimiento (Motion
Control), el cual tendrá el nombre de “MAS_Stop_EjeRotatorio”. Esta instrucción es
de tipo de dato de movimiento y al igual que los anteriores, debe pertenecer a la
carpeta Main Program. Con esto queda completamente configurado el bloque MAS.

4) Al igual que en el paso 3, se procede a poner un contacto normalmente


abierto para la activación del bloque correspondiente y un bloque MASD.

Como se vio previamente, se tiene que agregar un tag para el contacto normalmente
abierto para activar el bloque MASD. El nombre que tendrá el tag será
“HMI_ShutdownReset_EjeRotatorio”, el cual es de tipo de dato booleano y debe
estar ubicado en la carpeta Main Program.

111
En el apartado de Axis (eje) se selecciona el tag previamente creado de
“Eje_Rotatorio”, que es que hace la acción de activar el eje rotatorio de forma fisica.

Finalmente, en el apartado de control de movimiento (Motion Control) se crea el tag


con el nombre “MASD_Shutdown_EjeRotatorio”, el cual es tipo de dato de
instrucción de movimiento y se encuentra ubicado en la carpeta Main Program. Con
esto queda completo el bloque MASD.

112
5) Para la siguiente instrucción se coloca nuevamente un contacto
normalmente abierto y el bloque MASR.

Para el contacto normalmente abierto se le asigna su tag correspondiente, el cual


ya esta previamente creado, para asignarlo se da click en el contacto y se
selecciona su tag asignado, que en este caso es
“HMI_ShutdowReset_EjeRotatorio”.

De igual forma que en los bloques de instrucciones anteriores, en el apartado de


Axis (eje) se selecciona el eje a mover, en este caso se trata del eje rotacional.

113
Finalmente, se crea el tag correspondiente en el apartado de control de movimiento
(Motion control) con el nombre “MASR_ShutdowReset_EjeRotatorio”, el cual es tipo
de dato de instrucción de movimiento y se encuentra ubicado en la carpeta Main
Program. Con esto queda completo el bloque MASR.

6) En la penúltima línea de instrucción, así como en las demás, se coloca su


contacto normalmente abierto para su activación y el bloque MAFR.

Para el contacto normalmente abierto se le coloca el tag con el nombre


“HMI_FaultReset_EjeRotatorio”, el cual es tipo de dato booleano y ubica en la
carpeta Main Program.

114
En el bloque MAFR en el apartado de Axis (eje) se selecciona el eje a mover o
accionar, en este caso se selecciona el eje rotatorio.

Finalmente, en el apartado de control de movimiento del bloque (Motion Control) se


crea el tag con el nombre “MAFR_FaultReset_EjerRotatorio”, el cual es tipo de dato
de instrucción de movimiento y se ubica en la carpeta Main Program. Con esto
queda configurado el bloque MAFR.

115
7) En la última instrucción se coloca un contacto abierto para su activación y el
bloque MSF.

Como se hizo anteriormente, se crea el tag correspondiente para el contacto de


activación del bloque, el cual tiene como nombre “HMI_Off_EjeRotatorio”, el cual es
tipo de dato booleano y se ubica en la carpeta Main Program.

En el apartado Axis (eje) se selecciona el eje a accionar, que en este caso es el eje
rotatorio.

Finalmente, en el apartado de control de movimiento (Motion Control) se crea el tag


que tendrá como nombre “MSF_Off_EjeRotatorio”, el cual es tipo de dato de
instrucción de movimiento y se ubica en la carpeta Main Progrma. Con esto queda
completado el bloque MSF.

116
Con esto queda completado el programa para su ejecución.
8) Con el programa completo se procede a cargarlo al PAC.

9) Una vez se tiene cargado el programa en el PAC, se procede a activar la


subrutina, para esto se da click derecho en el contacto normalmente abierto
y seleccionando la opción “Toggle bit” que activa el bloque JSR de la
subrutina “Secuencia_Jog”.

117
10) Así mismo, una vez activada la subrutina, se procede a activar el programa
creado en la misma, dando click derecho en el contacto abierto y
seleccionando la opcion “Toggle bit” para habilitar el bloque MSO.

11) Con el programa activado, se procede a activar el temporizador (TON), que


es el encargo de hacer que el programa se haga cíclico, para esto se da click
derecho en el contacto abierto y seleccionando la opcion “Toggle bit” para
habilitar el bloque TON.

118
Con esto se puede observar como el eje rotatorio funciona de forma física con ayuda
de la cámara.

12) Con la tendencia previamente realizada en el punto H, se abre la gráfica y


se puede observar el comportamiento del programa que coincide con el
comportamiento esperado.

K. En la subrutina Secuencia_MAM, realizar el programa desde el


encendido (MSO), movimiento Move (MAM), paro (MAS), apagado
(MSF), shutdown (MASD), reset del shutdown (MASR) y reset de falla
(MAFR). Con la finalidad de realizar el perfil de movimiento de posición
y velocidad mediante la ejecución del comando de movimiento de move
(MAM) en donde se programan “n” MAM de acerudo al perfil del anexo
2. MAM eje rotatorio.

119
Antes de comenzar con el desarrollo del programa, se debe anexar su salto a
subrutina desde la rutina MainRoutine en el árbol del proyecto. Para esto, se agrega
un contacto normalmente abierto con el tag “Salto_Secuencia_MAM” y un bloque
JSR que contiene la dirección de la subrutina a activar, en este caso el tag de la
rutina es “Secuencia_MAM”.

Para la realización del programa se requiere obtener una gráfica de respuesta


como la que se muestra a continuación:

Para esto, al igual que el programa anterior, se hace uso de valores especificos en
los parámetros del bloque MAM para poder llevar a cabo esta respuesta especifica
que se desea obtener, por consiguiente, se tiene que los valores para obtener dicha
gráfica son:

120
Una vez conocidos los criterios que se deben tomar en cuenta para la obtención de
la gráfica requerida se procede a desarrollar el programa.

121
1) Una vez creada la subrutina denominada “Secuencia_MAM”, se procede a
realizar el programa correspondiente. Para esto, primero se agrega un
contacto normalmente abierto y un bloque MSO, para el tag del contacto
abierto será “HMI_On_EjeRotacional”, lo cual indica el accionamiento del
bloque MSO, mientras que, en el bloque de encendido MSO tendrá como
tags en el apartado Axis “Eje_Rotatorio” y en el apartado Motion Control
“MSO_On_EjeRotatorio”, con esto se energiza el eje del tag asignado.

2) A diferencia del punto “I”, se hará uso de un bloque MAM en lugar de uno
MAJ, igual forma que en el punto anterior, se agrega un contacto
normalmente abierto con su respectivo bloque, el cual en este caso es el
bloque de movimiento (MAM).

Para el contacto abierto se le pondrá el tag correspondiente, el cual es “Move_1”,


además, se asegura que el tipo de dato sea booleano y se encuentre ubicado en la
carpeta Servo Controlador 1.

122
Ahora bien, para configurar el bloque MAM, en el apartado de Axis, lo que se va
activar sigue siendo el eje rotatorio, por ende, en el apartado previamente
mencionado, se da click en la flecha que aparece en un costado, con esto se
despliega las opciones que se tienen generadas, en este caso se selecciona la
opción etiquetada como “Eje_Rotatorio” y se da enter.

En el apartado Motion Control del bloque MAM, se le agrega un nuevo tag, el cual
tendrá como nombre “MAM_1”. En este bloque a diferencia del anterior, es de tipo
de dato de movimiento, es decir, va a ejecutar un movimiento.

123
En el apartado de tipo de movimiento (Move Type), se le pone directamente el valor
de 1, ya que indica que es un movimiento de tipo incremental, si se lo pone el valor
de 0 se indica que es un valor de tipo absoluto.

En el apartado de unidades de velocidad (Speed Units), se selecciona la opción de


unidades por segundo (Units per sec), mientras que, para los apartados de unidades
de aceleración y desaceleración se selecciona la opción de unidades por segundo
al cuadrado (Units per sec2).

124
Para el apartado de perfil (Profile), se selecciona la opción trapezoidal, mientras
que, para el apartado de “Jerk Units” se selecciona la opción de unidades por
segundo al cubo (Units per sec3).

En el apartado de margen (Marge) se selecciona la opción de deshabilitar (Disable),


mientras que para para el apartado de unidades de margen (Marge Units) se
selecciona la opción de programado (Programmed).

125
Para el apartado de seguro de posición (Lock Position) se le pone directamente el
valor de 0, mientras que para el apartado de seguro de dirección (Lock Direction)
se selecciona la opción de ninguno (None).

En el apartado de distancia de evento (Event Distance) se le pone directamente el


valor de 0. Así mismo, para el apartado de datos calculados (Calculated data) se le
pone de igual forma el valor de 0 directamente.

126
Para ambos valores tanto de aceleración (Rate y Jerk) como de desaceleración
(Rate y Jerk) se coloca directamente un valor de 50 en los 4 segmentos.

127
En el apartado de posición (Position) se coloca directamente el valor de 3.2 para
poder iniciar con el comportamiento de la gráfica propuesta.

Para el apartado de velocidad, se coloca directamente el valor de 2, ya que este


valor es el requerido para el primer movimiento de la gráfica.

Finalmente, para los parámetros faltantes del bloque MAM, se mandan a llamar los
tags correspondientes, ya que, son los mismos que se utilizaron para la elaboración
del bloque de movimiento MAJ.

128
129
Con esto queda completamente configurado el bloque de movimiento MAM para el
primer movimiento, para el resto de los bloques MAM se conservarán la mayoria de
sus parámetros iguales, lo que se cambia en cada uno es el Tag del contacto abierto
que los activa, así como el Tag del apartado Motion Control y los valores de posición
y velocidad de cada uno respectivamente.
• Para el Tag del contacto abierto que activará al bloque MAM número 2, se
tiene que elegir la opción “MAM_1.PC”, el bit PC hace referencia el fin del
movimiento anterior, es decir, una vez completado el movimiento previo se
acciona su bit PC activando el siguiente, que en este caso es el bloque
MAM_2.

130
• Así mismo, el segundo bloque MAM se tiene que el Tag del apartado Motion
Control es MAM_2.

• El valor en el apartado de la posición para el segundo bloque corresponde al


valor de 5.8.

131
• Mientras que el valor para el apartado de la velocidad para el segundo bloque
corresponde a un valor de 4.35.

Con esto queda completamente configurado el segundo bloque de movimiento


MAM.
• Para el Tag del contacto abierto que activará al bloque MAM número 3, se
tiene que elegir la opción “MAM_2.PC”.

132
• Así mismo, el tercer bloque MAM se tiene que el Tag del apartado Motion
Control es MAM_3.

• El valor en el apartado de la posición para el tercer bloque corresponde al


valor de 15.

133
• Mientras que el valor para el apartado de la velocidad para el tercer bloque
corresponde a un valor de 11.25.

Con esto queda completamente configurado el tercer bloque de movimiento MAM.

• Para el Tag del contacto abierto que activará al bloque MAM número 3, se
tiene que elegir la opción “MAM_3.PC”.

134
• Así mismo, el cuarto bloque MAM se tiene que el Tag del apartado Motion
Control es MAM_4.

• El valor en el apartado de la posición para el cuarto bloque corresponde al


valor de 30.

• Mientras que el valor para el apartado de la velocidad para el cuarto bloque


corresponde a un valor de 9.

135
Con esto queda completamente configurado el cuarto bloque de movimiento MAM.
• Para el Tag del contacto abierto que activará al bloque MAM número 3, se
tiene que elegir la opción “MAM_4.PC”.

• Así mismo, el tercer bloque MAM se tiene que el Tag del apartado Motion
Control es MAM_5.

136
• El valor en el apartado de la posición para el quinto bloque corresponde al
valor de -10.

• Mientras que el valor para el apartado de la velocidad para el quinto bloque


corresponde a un valor de 15.

137
Con esto queda completamente configurado el quinto bloque de movimiento MAM.
• Para el Tag del contacto abierto que activará al bloque MAM número 3, se
tiene que elegir la opción “MAM_5.PC”.

• Así mismo, el tercer bloque MAM se tiene que el Tag del apartado Motion
Control es MAM_6.

138
• El valor en el apartado de la posición para el sexto bloque corresponde al
valor de -20.

• Mientras que el valor para el apartado de la velocidad para el sexto bloque


corresponde a un valor de 15.

139
Con esto queda completamente configurado el sexto bloque de movimiento MAM.
• Para el Tag del contacto abierto que activará al bloque MAM número 3, se
tiene que elegir la opción “MAM_6.PC”.

• Así mismo, el tercer bloque MAM se tiene que el Tag del apartado Motion
Control es MAM_7.

140
• El valor en el apartado de la posición para el séptimo bloque corresponde al
valor de -14.

• Mientras que el valor para el apartado de la velocidad para el séptimo bloque


corresponde a un valor de 7.

141
Con esto queda completamente configurado el séptimo bloque de movimiento MAM.
Para finalizar el programa al igual que se hizo en el programa MAJ, se agrega un
contacto en paralelo con el contacto “Move_1” ubicado en el primer bloque de
movimiento MAM, con direccion “MAM_7.PC”, con esto, una vez se finaliza el
séptimo y ultimo movimiento, vuelve a activar el primero, quedando este de forma
cíclica.

Con esto queda completado los movimientos requeridos para la obtención de la


gráfica requerida.

3) Al igual que se hizo con el bloque MAJ, se procede a configurar el bloque


MAS, el cual también debe tener su contacto normalmente abierto para su
activación del bloque.

142
Para esto en el contacto abierto, se pondrá un tag con el nombre
“HMI_Stop_EjeRotatorio”, el cual, como su nombre lo indica, se encarga de activar
el bloque MAS para detener el eje rotatorio en su totalidad.

Ahora bien, se procede a configurar el bloque MAS. En el apartado de Axis (eje), se


da click y aparecen 2 opciones de ejes, en este caso el que se desea activar es el
eje rotacional.

En el apartado de tipo de paro (Stop Type) se selecciona la opción de “Jog”, ya que


el programa se esta realizando con comandos de tipo Jog. Mientras que para el
apartado cambio de desaceleración, se selección la opción de si (Yes), esto quiere
decir que cuando se active el paro del eje rotacional lo hará de forma gradual poco
a poco.

143
Para el apartado de unidades de desaceleración, se selecciona la opcion de
unidades por segundo al cuadrado (Units per sec2). Para el apartado de Change
Decel Jerk se selecciona la opción de si (Yes). Además, en el apartado Jerk Units
se selecciona la opcion de unidades por segundo al cubo (Units per sec3).

En el apartado de ritmo de desaceleración (Decel Rate) se da click y se despliega


una venta con diversas opciones de los tags previamente hechos, en este caso se
selecciona el tag “Decel_EjeRotatorio”.

Así mismo, para el apartado de “Decel Jerk” se selecciona el tag previamente


generado dando click, se despliega una ventana con los tags generados y se
selecciona el correspondiente, en este caso “DecelJerk_EjeRotatorio”.

144
Finalmente, se genera el tag en el apartado de control de movimiento (Motion
Control), el cual tendrá el nombre de “MAS_Stop_EjeRotatorio”. Esta instrucción es
de tipo de dato de movimiento y al igual que los anteriores, debe pertenecer a la
carpeta Main Program. Con esto queda completamente configurado el bloque MAS.

4) Al igual que en el paso 3, se procede a poner un contacto normalmente


abierto para la activación del bloque correspondiente y un bloque MASD.

Como se vio previamente, se tiene que agregar un tag para el contacto normalmente
abierto para activar el bloque MASD. El nombre que tendrá el tag será

145
“HMI_ShutdownReset_EjeRotatorio”, el cual es de tipo de dato booleano y debe
estar ubicado en la carpeta Main Program.

En el apartado de Axis (eje) se selecciona el tag previamente creado de


“Eje_Rotatorio”, que es que hace la acción de activar el eje rotatorio de forma fisica.

Finalmente, en el apartado de control de movimiento (Motion Control) se crea el tag


con el nombre “MASD_Shutdown_EjeRotatorio”, el cual es tipo de dato de
instrucción de movimiento y se encuentra ubicado en la carpeta Main Program. Con
esto queda completo el bloque MASD.

146
5) Para la siguiente instrucción se coloca nuevamente un contacto
normalmente abierto y el bloque MASR.

Para el contacto normalmente abierto se le asigna su tag correspondiente, el cual


ya esta previamente creado, para asignarlo se da click en el contacto y se
selecciona su tag asignado, que en este caso es
“HMI_ShutdowReset_EjeRotatorio”.

De igual forma que en los bloques de instrucciones anteriores, en el apartado de


Axis (eje) se selecciona el eje a mover, en este caso se trata del eje rotacional.

147
Finalmente, se crea el tag correspondiente en el apartado de control de movimiento
(Motion control) con el nombre “MASR_ShutdowReset_EjeRotatorio”, el cual es tipo
de dato de instrucción de movimiento y se encuentra ubicado en la carpeta Main
Program. Con esto queda completo el bloque MASR.

6) En la penúltima línea de instrucción, así como en las demás, se coloca su


contacto normalmente abierto para su activación y el bloque MAFR.

Para el contacto normalmente abierto se le coloca el tag con el nombre


“HMI_FaultReset_EjeRotatorio”, el cual es tipo de dato booleano y ubica en la
carpeta Main Program.

148
En el bloque MAFR en el apartado de Axis (eje) se selecciona el eje a mover o
accionar, en este caso se selecciona el eje rotatorio.

Finalmente, en el apartado de control de movimiento del bloque (Motion Control) se


crea el tag con el nombre “MAFR_FaultReset_EjerRotatorio”, el cual es tipo de dato
de instrucción de movimiento y se ubica en la carpeta Main Program. Con esto
queda configurado el bloque MAFR.

149
7) En la última instrucción se coloca un contacto abierto para su activación y el
bloque MSF.

Como se hizo anteriormente, se crea el tag correspondiente para el contacto de


activación del bloque, el cual tiene como nombre “HMI_Off_EjeRotatorio”, el cual es
tipo de dato booleano y se ubica en la carpeta Main Program.

En el apartado Axis (eje) se selecciona el eje a accionar, que en este caso es el eje
rotatorio.

Finalmente, en el apartado de control de movimiento (Motion Control) se crea el tag


que tendrá como nombre “MSF_Off_EjeRotatorio”, el cual es tipo de dato de
instrucción de movimiento y se ubica en la carpeta Main Progrma. Con esto queda
completado el bloque MSF.

150
Con esto queda completado el programa para su ejecución.
8) Con el programa completo se procede a cargarlo al PAC.

9) Una vez se tiene cargado el programa en el PAC, se procede a activar la


subrutina, para esto se da click derecho en el contacto normalmente abierto
y seleccionando la opción “Toggle bit” que activa el bloque JSR de la
subrutina “Secuencia_MAM”.

151
10) Así mismo, una vez activada la subrutina, se procede a activar el programa
creado en la misma, dando click derecho en el contacto abierto y
seleccionando la opcion “Toggle bit” para habilitar el bloque MSO.

152
11) Así mismo, se abre la gráfica previamente realizada para la secuencia MAM
y se activa el contacto Move_1 para iniciar el programa de movimientos
preestablecidos por el usuario.

Con esto se puede observar el comportamiento del programa, tanto de forma gráfica
como de forma física mediante el uso de una cámara remota, con lo cual se concluye
que el programa cumple con la gráfica propuesta.

153
L. Los resultados de cada subrutina documentarlos con las tendencias de
posición y velocidad del eje rotacional.
Para la tendencia de la secuencia MAJ se tiene la siguiente respuesta:

Mientras que para la secuencia MAM la respuesta que se obtuvo es la siguiente:

154
RESULTADOS
En esta práctica se obtuvieron 4 resultados, 2 resultados tanto para el movimiento
MAJ y 2 para el movimiento MAM, cada uno presentó sus respuestas dependiendo
de los valores insertados por el usuario.
En la primera respuesta del programa MAJ se obtuvo como respuesta una gráfica,
en la cual solo se ve representado el valor de un solo bloque MAJ para entender el
movimiento que realiza de pulsos que manda al eje rotatorio.

Mientras que, en el segundo programa denominado “Secuencia Jog”, la cantidad de


bloques MAJ fueron más, esto con la finalidad de establecer un patrón de
movimientos fijos para poder obtener una gráfica de respuesta deseada como se
muestra a continuación.

Con esto se pudo entender el comportamiento del bloque MAJ de forma concreta y
como es que funciona un conjunto de bloques MAJ para el movimiento de un eje
rotatorio.

155
Mientras que, para el primer programa MAM, la respuesta que se obtuvo fue de
igual forma de un solo bloque MAM para entender su funcionamiento y como opera.

Finalmente, al igual que se realizó una secuencia específica para el movimiento


MAJ, se realizó una secuencia específica a seguir para el bloque MAM y observar
su comportamiento, tanto de forma gráfica como de forma física.

Con esto se puede observar que la respuesta del bloque MAJ es de pulsos, mientras
que la respuesta por parte del bloque MAM de igual forma es de pulsos, sin
embargo, su respuesta se observa de forma incremental.

156
CONCLUSIONES
Casimiro Ortiz Michael Steven: Después de haber realizado la practica
correspondiente y el presente reporte se logró realizar un enlace multipunto
mediante una red Ethernet/IP entre la computadora el PAC y los servodrives, con
los cuales se cumplió el objetivo de realizar el escalamiento y la sintonización de los
lazos de control, además de que con ayuda de las subrutinas se logró hacer uso de
manera directa y mediante programación en escalera activar los motion move en
especial las funciones de los comando MAJ y MAM, los cuales sirvieron para
generar los perfiles de movimiento del eje rotacional, y también se programaron y
se usaron las funciones como MSO para encender el drive, MAJ para tener
movimiento por jogeo, algunas funciones para resetear, detener el drive entre otras.
De la misma manera se realizó una subrutina en la cual se hizo uso de la función
Trends para lograr verificar que la secuencia de MAJ eje Rotatorio y MAM eje
rotatorio, cumplieran con las gráficas mostradas por el profesor y al asignarle a la
función la velocidad, posición aceleración y desaceleración los valores
correspondiente se logró obtener dichas gráficas, con lo cual se verificaba que la
conexión era correcta, la programación en lenguaje escalera era correcto y los
valores ingresados fueron los correctos ya que la gráfica fue similar y por ende el
escalamiento y la sintonización también fueron correctos, con lo anterior
mencionado se logra concluir que se cumplieron los objetivos y se obtuvieron los
resultados deseados.
Hernández Chepe Karla Damaris: En la realización de esta práctica se realizó la
configuración del Driver de comunicación Ethernet /IP con el software RSLinx, del
cual posteriormente logramos dar de altas las tarjetas o módulos de entradas y
salidas analógicas y digitales. De igual forma, establecimos un limite de recorrido a
una cierta de velocidad, que pudimos observar de forma correcta en la cámara del
equipo. Aunado a estos pasos, realizamos igual subrutinas de MAJ y MAM que
están relacionadas con el Eje Rotatorio. Con esto, logramos observar los cambios
de velocidad en el Eje mediante los parámetros que se tenían. Además, hicimos uso
de una gráfica parecida a la pantalla de un osciloscopio, para visualizar las señales
de acuerdo con los valores que fuimos ingresando. Cada elemento o bloque tenia
una cierta secuencia de movimiento, dentro del programa. Además de la subrutina
MAJ y MAM, se tenia diferencias como en el total de movimientos, ya que en el caso
de MAJ realizamos un total de 9 que mismos pudimos visualizar con las gráficas, y
en el caso de MAM visualizamos 7. También tenemos que considerar que había
valores negativos, los cuales se debían verificar en qué ocasiones se tenían que
ingresar de esa forma o cambiarse a valores positivos. También, dentro del
programa se tuvo la consideración de crear una secuencia que fuera cíclica.
Personalmente, al principio fue un poco confuso debido a la gran cantidad de
bloques y tags que se debían utilizar, considerando el tipo de dato pero que después
de estar practicando ya era mas clara la información e instrucción.

157
López Contreras Andrés: Con esta práctica se pudo realizar y comprobar el
comportamiento de los bloques MAJ y MAM, con la finalidad y observar cómo es
que se comportan con el cambio de diferentes valores de velocidad, posición y en
algunos casos de aceleración. Asimismo, se pudo observar el comportamiento de
cada bloque de forma individual, es decir, el comportamiento de cada bloque al
variar sus parámetros previamente mencionados, y mediante el uso de una
tendencia (gráfica) se pudo observar cómo es que reacciona la gráfica ante los
valores insertados por el usuario, tanto para el bloque MAJ como para él MAM.
Posteriormente se realizó la secuencia de movimientos para cada bloque, está
utilizando diversos bloques del mismo tipo para poder realizar una gráfica de
respuesta con valores de posición, velocidad y aceleración propuestos por el
usuario, cabe mencionar que la cantidad de bloques utilizados en ambos programas
la cantidad de movimientos que se requiere que haga cada programa, para el caso
del programa de bloques MAJ se tuvo un total de 9 movimientos, mientras que para
el programa de bloques MAM se tuvo un total de 7 movimientos. Además de ser los
movimientos, se hizo uso de un contacto auxiliar en paralelo en el primer movimiento
de cada programa para que así pudiera ser de forma cíclica cada secuencia una
vez que éste terminaba su último movimiento.

BIBLIOGRAFIA

• Antony García González. (Diciembre 2, 2016). ¿Qué es y cómo funciona un


servomotor?. 18 de Marzo de 2021, de PANAMHITEK
Sitio web: http://panamahitek.com/que-es-y-como-funciona-un-servomotor/
• https://instrumentacionycontrol.net/wp-
content/uploads/2017/11/IyCnet_Instrucciones_control_movimiento_Logix5
550-min.pdf

158

También podría gustarte