Subido por gaguilar58

Prácticas Motion Omron

Anuncio
Iberia F2F Training Day x
Julián Carrillo
Practicas Motion Sysmac
1
Cizalla con Marca
Cizalla con Marca
Diseña un programa para el control de ejes de una cizalla rotativa por corte por detección de marcas.
Detector
Perímetro 160mm
Out
140mm
Perímetro
110mm
El esquema representa una maquina de corte rotativa, controlaremos el eje de corte y el eje que
desplaza el material (la cinta),
Cizalla con Marca
Principio de funcionamiento: El material viene arrastrado por el eje de la cinta, cuando la marca es
vista por el detector la cizalla ha de sincronizarse con la cinta de forma que corte el material por la
marca..
Detector
Perímetro 160mm
Out
Marca
140mm
Perímetro
110mm
Secuencia: Los ejes se ponen en run. (MC_Power), Realizan la búsqueda de origen, quedando la
cizalla en la posición indicada,(MC_Home, MC_SetPosition, MC_MoveRelative…), La cinta comienza a
arrastrar el material (MC_MoveVelocity)
Cizalla con Marca
Cuando la marca es detectada, la posición del eje de la cinta ha de ser reiniciada, haciendo de esta
forma un cero real sobre el eje de arrastre (MC_TouchProbe, MC_SetPosition)
Detector
Out
Posición “0”
140mm
Perímetro
110mm
Marca detectada
Cizalla con Marca
Tras la detección de la marca, se lanza el movimiento sobre la cizalla para sincronizarlo en posición
con la cinta de arrastre (MC_Movelink)
Detector
Out
Perímetro
110mm
Cizalla con Marca
La cuchilla de la cizalla ha de realizar el corte por la marca, llegando perfectamente sincronizado en
posicion y velocidad para evitar arrugar o rasgar el material (configuración del MC_Movelink)
Perímetro 160mm
Detector
Out
Perímetro
110mm
Solución
Añadimos los esclavos a la red EtherCat.
La Democase tiene versiones
de servo V2.0
Solución
Configuramos los ejes.
Solución
Run de los ejes (MC_Power), búsqueda de origen (MC_Home, MC_SetPosition), posicionado de la
cizalla (MC_MoveRelative…)
Para el Home, configuramos la búsqueda por Z, y posteriormente avanzamos el eje a la posición de
origen de Maquina
Solución
Configuración del Homing para el eje de la cizalla (Shear)
Solución
Una vez realizado el homing y llevados los ejes a su posicion de inicio, ceros de maquina, empezamos a
arrastrar el material, por tanto ponemos en marcha el arrastre (Cinta) en control de velocidad
(MC_MoveVelocity)
Solución
Con el arrastre en marcha, se carga el registro (MC_TouchProbe) para capturar la posición de
llegada de la marca, una vez ha sido capturada se hace un cero en la posición del arrastre
(MC_SetPosition)
Solución
Por último, una vez realizado el cero del eje de arrastre lanzamos el Movelink (MC_Movelink) sobre
el eje de cizalla para sincronizar con la marca y realizar el corte
Variables
Variables del Programa
2
Etiquetadora
Cizalla con Marca
Diseña un programa para el control de ejes de una máquina etiquetadora de botellas
Detector
Bobina
Detector
Perímetro 160mm
M2
M1
Perímetro 110mm
140
Botella
El esquema representa una máquina etiquetadora, controlaremos el eje del cabezal que pone las
etiquetas y el eje que desplaza las botellas (la cinta),
Cizalla con Marca
Principio de funcionamiento: Las botellas viene arrastradas por el eje de la cinta, cuando la botella
es vista, el cabezal ha de sincronizarse con la cinta de forma que ponga la etiqueta de la forma
correcta. En esta ocasión se usan dos detectores, uno de botella y otro de etiquetas.
Detector
Bobina
Detector
Perímetro 160mm
M2
M1
Perímetro 110mm
140
Botella
El objetivo del detector de etiquetas es corregir los posibles fallos mecánicos en el cabezal de
arrastre, tales como excentricidades, deslizamientos o etiquetas no equidistantes.
Cizalla con Marca
Cuando el detector registra que una etiqueta viene retrasada (o adelantada) se corrige en el
siguiente ciclo, si no se usara este método, los errores se irían acumulando y las etiquetas al cabo de
un tiempo de funcionamiento se habrían desplazado considerablemente.
Detector
Bobina
Detector
Perímetro 160mm
M2
M1
Perímetro 110mm
140
Botella
Cizalla con Marca
Secuencia: Los ejes se ponen en Run (MC_Power), Se realiza la búsqueda de origen de los motores
(MC_Home, MC_SetPosition) y se posiciona la etiqueta en la posición correcta de salida, un poco
sacada de la cuña del aplicador (MC_MoveRelative).
Detector
Bobina
Detector
Etiqueta
M2
M1
Botella
La etiqueta se posiciona ligeramente adelantada, para asegurar que en caso de que haya
deslizamiento, siempre se detecte el entre hueco, a menos que el deslizamiento sea excesivo.
Cizalla con Marca
Se suman ejes virtuales sobre el real del cabezal que serán los que realizaran la compensación de los
errores (MC_CombineAxis), La cinta comienza a arrastrar las botellas (MC_MoveVelocity)
Detector
Bobina
Detector
M2
M1
Botella
Cizalla con Marca
Cuando la marca es detectada la posición del eje de la cinta ha de ser reiniciada haciendo de esta forma
un cero real sobre el eje de arrastre (MC_TouchProbe,MC_SetPosition)
Detector
Bobina
Detector
Botella detectada
M2
M1
Botella
Se lanza la captura de registros sobre el eje del cabezal para detectar la llegada de la próxima
etiqueta y comprobar si viene en la posición adecuada. (MC_TouchProbe).
Cizalla con Marca
Se laza el movimiento sobre uno de los ejes combinados con el cabezal para sincronizar la llegada de la
botella con el pegado de etiqueta (MC_Movelink)
Detector
Bobina
Detector
M2
M1
Botella
Al mismo tiempo se lanza sobre el otro eje combinado con el cabezal la corrección del
deslizamiento de etiquetas del ciclo anterior (MC_Movelink)
Cizalla con Marca
Una vez terminado el movimiento del cabezal se descombinan los ejes y se realiza un reset de la
posición de cabezal al nuevo cero real (MC_Stop, MC_SetPosition)
Etiqueta detectada
Detector
Bobina
Detector
M2
M1
Botella
Una vez realizado el cero, también se aprovecha el dato de la posición de llegada de la etiqueta
registrado para calcular el error cometido si existe, comparándolo con la posición teórica de llegada
Solución
Añadimos los esclavos a la red EtherCat.
La Democase tiene versiones
de servo V2.0
Solución
Configuramos los ejes. Hay que tener en cuenta que para esta aplicación, aparte de los dos ejes
reales hay que definir dos ejes adicionales para trabajar con las correcciones (MC_CombineAxis)
Virtual
Virtual
Real
Real
Solución
Run de los ejes (MC_Power), búsqueda de origen (MC_Home, MC_SetPosition), posicionado de la
etiqueta (MC_MoveRelative…)
Para el Home del cabezal de etiquetado, configuramos la búsqueda por entrada externa, y
posteriormente avanzamos el eje a la posición de origen de Maquina
Solución
Configuración del Homing para el eje del cabezal de etiquetas
Solución
Usamos la instrucción MC_CombineAxis para unir los ejes Virtuales y el Real, desde este momento
todos lo movimientos referidos al eje real del cabezal, los lanzaremos a través del eje
Cabezal_Virtual, ya que la suma de los movimientos de Cabezal_Virtual y Cabezal_Auxiliar serán los
que generen el perfil de movimiento del eje real Cabezal
Se pone en marcha el arrastre (cinta) para mover las botellas en control de velocidad
(MC_MoveVelocity)
Solución
Cargamos el registro de captura de posición (MC_ToucPrube) sobre el eje de la cinta, con ello
detectaremos la posición de llegada de botellas, esta posición la emplearemos para poner a cero la
cinta y de esta forma referenciar la posición de lanzado del Movelink que pone las etiquetas
Solución
Una vez puesto el cero, lanzamos el Movelink (MC_Movelink) sobre el cabezal de etiquetado
(Cabezal_Virtual) para sincronizar la llegada de botella con la alimentación de la etiqueta
Solución
Al mismo tiempo que se lanza el Movelink de puesta de etiqueta sobre el eje virtual de
Cabezal_virtual, se lanzará sobre el eje Cabezal_Auxiliar la corrección debida al deslizamiento, ya
que la suma de los dos será el movimiento resultante en el eje cabezal (Real)
La primera vez, el error será cero con lo que no se realizará ningún movimiento sobre este eje
Auxiliar.
Solución
Además, como al mismo tiempo se trata de calcular los errores del cabezal, se carga la instrucción
de registro de posición sobre cabezal, de esta forma tendremos la posición real de llegada de la
siguiente etiqueta
Una vez capturada la posición se hace el nuevo cero real del cabezal, pero no antes de deshacer la
relación de conexión de los ejes (MC_CombineAxis) para evitar obtener un error, y se calcula el
error cometido entre la posición teórica de llegada de la etiqueta y la llegada real.
Solución
Además, como al mismo tiempo se trata de calcular los errores del cabezal, se carga la instrucción
de registro de posición sobre cabezal, de esta forma tendremos la posición real de llegada de la
siguiente etiqueta
Una vez capturada la posición se hace el nuevo cero real del cabezal, pero no antes de deshacer la
relación de conexión de los ejes (MC_CombineAxis) para evitar obtener un error, y se calcula el
error cometido entre la posición teórica de llegada de la etiqueta y la llegada real.
Variables
Variables del Programa
Adicional
Sección de paradas, reset de errores y reset de Trigger
3
Editor Cam
Editor Cam
Diseñar una Cam para controlar la altura de la boquilla de dosificado sincronizada con el eje
maestro que mueve la cinta.
=
=
100
0
-70
-100
y
x
Filling
Approach
ready
0
100
wait
(constant Speed)
150 200
end
350
ready
500
Perfil de Posición
Perfil de Posición + Velocidad
Perfil de Velocidad + Aceleración
Ejercicio 2
Estimar el ciclo mínimo para las siguientes limitaciones mecánicas de la boquilla de dosificación de
helado
– Maxima velocidad de la boquilla 0.5 m/s
– Maxima aceleracion 3m/s²
Ejercicio 2
1. Configuramos el limite de velocidad a 500 mm/s y Aceleración a 3000 mm/s2
2. Ponemos un valor arbritario de ciclo
Ejercicio 2
3. Chequeamos el valor de la velocidad (en ambos sentidos) para el ciclo elegido, fijándonos en si
sobrepasa la línea que marca el limite de velocidad
It crosses the
500 mm/s limit
Ejercicio 2
4. Ajustamos de nuevo el ciclo tratando de encontrar cual nos permite estar por debajo de los
limites ajustándonos al mejor posible
Ejercicio 2
5. Actuamos igual para la aceleración
Habrá que aumentar de nuevo el ciclo para no sobrepasar los valores limites
Ejercicio 2
Comprobamos de nuevo la velocidad
Por tanto, el tiempo de ciclo mínimo para la Cam es de 2.3 seg, para una aceleración máxima de
3m/s² y una velocidad máxima de aproximadamente 0.4 m/s, por debajo del limite de 2
m/s.
Ejercicio 3
Usando el editor calcular la Cam del eje X donde esta instalada la boquilla que sigue al eje
maestro
En primer lugar, tendremos que fijarnos en cual es el recorrido máximo durante la sincronización:
-Podemos ver que el recorrido es de 500 mm de maestro, pero tan solo se dosifica
durante 350.
-Así, tenemos 150 mm de maestro para volver a la posición de inicio
Ejercicio 3
Por tanto:
Perfil Posición
Perfil Velocidad
Ejercicio 3
Por tanto:
Perfil Aceleración
Ejercicio 4
Añadimos los esclavos a la red EtherCat.
La Democase tiene versiones
de servo V2.0
Ejercicio 4
Configuramos los ejes.
Ejercicio 4
Programa: Se ponen en run los ejes (MC_Power), y una vez puestos en run hacemos el Home de
los ejes (MC_Home).
Ejercicio 4
Usamos la instrucción F_TRIG para usar el flanco de bajada de Busy de la instrucción de origen
(MC_Home) para lanzar la Cam (MC_CamIn) y una vez conectados movemos el eje maestro
(MC_MoveVelocity).
Variables
Variables del Programa
4
Grupo de ejes
Grupo de ejes
Realiza un programa que trace el siguiente patrón
Empezando desde (0,0) seguir las flechas, mover a velocidad constante durante todo el recorrido,
configurándolo para que las transiciones sean suaves.
Solución
Añadimos los esclavos a la red EtherCat.
La Democase tiene versiones
de servo V2.0
Solución
Configuramos los ejes.
Solución
Configuramos los ejes.
Solución
Programa: Se ponen en run los ejes (MC_Power), y una vez puestos en run hacemos el Home de
los ejes (MC_Home).
Solución
Usamos la instrucción F_TRIG para usar el flanco de bajada de Busy de la instrucción de origen
(MC_Home) para lanzar la activación del grupo (MC_GroupEnable) y utilizamos un bloque de ST
para definir los Puntos del trazado, los radios, las configuraciones de lo modos de las
interpolaciones…
Solución
Código de la línea ST
Solución
Una vez activado el Grupo, lanzamos las interpolaciones, para ello usamos la variable de salida
Done de Activar_grupo (MC_GroupEnable), como lanzamos en modo buffer, para que el
movimiento sea correcto se programan por orden descendente.
Solución
…
Solución
…
Solución
…
Ejercicio 2
Sección de Override
Variables
Variables del Programa
Adicional
Sección de parada y desactivado de Grupos
Descargar
Colecciones de estudio