SPLS |
Top |
Instrucción dedicada al posicionamiento (a lazo abierto), de ejecución condicional. Despacha una cantidad definida de pulsos (PulN)(2) a una frecuencia definida (MaxF), con rampa de aceleración y desaceleración (Tms). Disponible en CP121 BIOS 2.63, CP122 BIOS 2.12, CP123(1) BIOS 2.22, CP124 BIOS 1.10, CP125 BIOS 1.12 Salvo otra indicación, la salida es la 1ª (q0.0). (1) A partir del la versión 3.00 ya no está disponible. Reemplazar con PLS. (2) Variantes 16bit (tabla 1) y 32bit (tabla 2). Puls_Out del área SM define 16 o 32 bit. El
rango de frecuencia va desde 1Hz hasta 20KHz (0Hz es apagado). La
cantidad de pulsos va desde 1 hasta 32000(2).
Tms admite valores de 1 a 100. Ejemplo: LD 1
;Permiso de ejecución
La instrucción requiere un espacio de 12(2) variables contiguas. Este es el bloque de variables. Como argumento de la instrucción se le pasa la primera (MaxF), y ésta tomará el control de las 11 restantes. Los primeros 3 valores (MaxF, PulN y Tms) determinan el comportamiento, y la restantes serán usadas por las funciones internas de la instrucción. Variables Estas son las variables requeridas:
Tabla 1 - 16 bit
Tabla 2 - 32 bit 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 (impide/estorba el uso de ésta por otra función).
Uso
Figura 1 Primero se deben declarar las variables en el orden y tipo indicados en la tabla 1 (o 2, según talla de Puls_Out ). Los nombres quedan a gusto del usuario. Los parámetros contiguos p_Use1 al p_Use8(2) son usados internamente por la instrucción. El objetivo de declararlos es asegurar esa área solo para la instrucción. Es necesario que se ejecute permanentemente la instrucción para que se refresque el valor de salida acorde a la aceleración o desaceleración. Cuando todos los pulsos hayan sido despachados (tarea concluida) la variable Freq_Out_En (área SM) volverá a cero. El doble de Tms debe ser menor al tiempo total en que se despachan los pulsos para evitar cruce de rampas. Ejemplo: si se envían 1000 pulsos a 1KHz, Tms debe ser menor que medio segundo. Para recuperar el control de la salida que se le haya asignado, simplemente hay que dejar de ejecutar la instrucción. Midiendo la frecuencia a la salida el resultado es:
Comportamiento de SPLS
Ejemplo
en instrucciones
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||