CLPOS CLPOS

Top 

Instrucción dedicada al posicionamiento, de ejecución condicional.

Disponible en CP121 BIOS 2.63, CP122 BIOS 2.12,  CP123 BIOS 2.22

Salvo otra indicación, la salida es la 1ª (q0.0).

   

Ejemplo:

    LD 1               ;Permiso de ejecución
    CLPOS argumentos   ;1° variable del bloque de variables

La instrucción requiere un espacio de 21 variables contiguas. Este es el bloque de variables, y como argumento de la instrucción se le pasa la primera (Ps_Act).

Variables

Estas son las variables requeridas:

Nombre sugerido Tipo Descripción
Ps_Act int_32 Posición actual. Es el valor leído del encoder
Ps_Fin int_32 Posición final. Es el valor al que debe llegar el encoder
Pl_RIni int_16 Cantidad de pulsos de encoder dedicados a la rampa de aceleración
Pl_RFin int_16 Cantidad de pulsos de encoder dedicados a la rampa de desaceleración
t_PDesc int_16 Tiempo de desconexión de la instrucción expresado en décimas de segundo. Con -1 se anula.
Mx_Sal int_16 Valor máximo de salida durante la operación
Mn_Sal int_16 Valor mínimo de salida durante la operación
p_Indic int_16 Bits de indicaciones (ver tabla 2)
p_Use1 int_32 Espacio reservado para ser usado por la instrucción
p_Use2 int_32 Espacio reservado para ser usado por la instrucción
p_Use3 int_32 Espacio reservado para ser usado por la instrucción
p_Use4 int_32 Espacio reservado para ser usado por la instrucción
p_Use5 int_32 Espacio reservado para ser usado por la instrucción
p_Use6 int_16 Espacio reservado para ser usado por la instrucción

Tabla 1

La variable denominada p_Indic tiene asignada una función a cada bit:

BIT Nombre Función
0 _exe 1 = marcha; 0 = detenido
1 _xSA0 Redirigido hacia salida analógica 0
2 _xSA1 Redirigido hacia salida analógica 1
3 _avance Indica que está avanzando
7 _iniciado Ya se ha ejecutado por 1ª vez
14 _PDesc Ha transcurrido el tiempo de desconexión t_PDesc
15 _Sing 0 =antes (avanzar); 1 = después (retroceder)

Tabla 2

Características

La instrucción es condicional, es decir, se ejecuta cuando el el acumulador tiene valor 1. Pero aunque el acumulador tenga valor 0 igualmente tomará control de la salida asignada. Se le pueden asignar tres salidas:

  1. Salida de pulsos

  2. Salida analógica 0

  3. Salida analógica 1

Mediante los bits de p_Indic se hace esta selección, y es posible asignarle ambas salidas analógicas simultáneamente. Con cualquier salida analógica que se asigne, automáticamente se libera la salida de pulsos.

Es posible tener hasta tres instrucciones CLPOS en un programa asignando una salida distinta a cada una.

   

Uso

CLPOS

Figura 1

Primero se deben declarar las variables en el orden y tipo indicados en la tabla 1. Los nombres quedan a gusto del usuario.

Los parámetros Pl_RIni y Pl_RFin se hallan experimentalmente. Se comienza con valores altos y se van reduciendo hasta legrar el mejor resultado.

t_PDesc debe ser inicialmente el mas grande posible (32767), y luego ajustarlo acorde al tiempo medido. Si este tiempo es menor a lo que se tarda en llegar, entonces se detendrá antes de llegar. Para anularlo se le asigna valor -1.

Mx_Sal corresponderá a la velocidad máxima. Mn_Sal es la velocidad mínima, y no debería ser menor que 1.

Una vez que se han establecido los parámetros se da marcha seteando el bit _exe. Una vez que se ha alcanzado la posición este bit debe ser reseteado para poder asignar nueva posición o parámetros. Para detener se puede resetear este bit en cualquier momento. Lo mismo sucederá si al momento de ejecutar la instrucción el acumulador tiene 0.

El bit _Sing debe ser leído y copiado a una salida, pues es la indicación de dirección.

Es necesario que se ejecute permanentemente la instrucción para que se refresque el valor de salida acorde a la posición leída del encoder.

Para recuperar el control de la salida que se le haya asignado, simplemente hay que dejar de ejecutar la instrucción.

   

Ejemplo en instrucciones
Ejemplo en Ladder

   

PLS
PLSY
SPLS

   

   

Lista de instrucciones
Índice