19. Ejemplos
Programa de movimientos:
:
Vel(dynCart, 200)
posFrente := posSeguridadChapa
WHILE TRUE DO
Lin(posSeguridadChapa)
Wait pilaNoVacía.State
Lin(posFrente)
Vel(dynCart, 200)
Lin(posRecogida)
Wait señalAvanceSensor.State
StopMove()
// Fijar la posición real sobre la pila
ReadActualPos(posFrente)
// Calcular la distancia de seguridad sobre la pila
posFrente.z := posFrente.z + 10
Gripper.Set()
Vel(dynCart, 1000)
Lin(posSeguridadChapa)
Lin(posSeguridadVía)
Lin(posPosado)
Gripper.Reset()
END_WHILE
:
Funcionamiento
El robot avanza hasta la posición de recogida hasta que la pinza se encuentra sobre la pila
de chapa y el sensor de detección de avance emite la señal correspondiente. Esto se efectúa
a velocidad lenta para impedir que se produzcan daños en el sistema.
Para alcanzar una posición lo más aproximada posible sobre la pila en el ciclo siguiente,
se guarda la posición real sobre la pila. Esta posición se complementa con una distancia
de seguridad. Así, en el ciclo siguiente puede avanzarse a mayor velocidad sobre la pila.
A continuación se conmuta a una velocidad lenta hasta hacer contacto con la pieza.
Festo GDCP-CMXR-SW-ES es 0805NH
// Velocidad lenta
// Comprobar si las piezas
están sobre la pila
// Velocidad lenta
// Esperar a la señal de
avance del sensor
// Detener el movimiento
// Cerrar pinza
// Velocidad rápida
// Abrir pinza
173