Bloques funcionales |
|
|
|
|
Una secuencia siempre comienza con un bloque funcional de arranque.
Si falta este bloque funcional al principio, no se procesa la secuencia.
Si un proyecto contiene varias secuencias, cada una de
estas secuencias debe incluir un bloque funcional de arranque. En este caso
arrancan al mismo tiempo las diferentes secuencias.
Para finalizar una secuencia, se conecta la salida del último bloque funcional con el bloque funcional FIN.
Una secuencia también puede terminar en diferentes puntos
con un bloque funcional FIN. También existe la posibilidad de conectar varias
salidas a un solo bloque funcional FIN.
En muchas aplicaciones una secuencia es ejecutada
como bucle sin fin. En este caso no se
necesita ningún bloque funcional FIN.
Con el bloque funcional SALIDA se conmuta una de las salidas M1-M4 del interfaz (M1-M8, en caso de dos interfaces). A una salida del interfaz puede ir conectado un motor, una lámpara o un electroimán.
Al insertar el bloque funcional, se llama el siguiente cuadro de diálogo:
En lista desplegable "Tipo" puede elegirse entre los tres
tipos: motor, lámpara y electroimán. Además, en el cuadro de diálogo se ajusta
el estado deseado de la salida:
En un motor: izquierda, derecha o desconectar.
El estado ajustado también aparece representado en el símbolo del bloque funcional.
Los estados de las salidas se guardan en una de las entradas digitales E1-E38 y E41-E48. E31-E38 representan el sentido de giro a la izquierda de los motores M1-M8, y E41-E48 el sentido de giro a la derecha de M1-M8. En lámparas e electroimanes puede interrogarse a través de las entradas E41-E48, si éstos están conectados.
El bloque funcional PITIDO emite una señal sonora a través del altavoz del PC.
Al insertar el bloque funcional, se llama el siguiente cuadro de diálogo:
En el cuadro de diálogo pueden ajustarse la altura tonal y la duración del tono. La altura tonal puede introducirse como frecuencia (50-10000 Hz) o como nota para los músicos (do-si en 6 octavas). La duración del tono puede oscilar entre 0-5 segundos.
Con el bloque funcional ESPERAR puede programarse un tiempo de espera en una secuencia.
El tiempo de espera comienza al llegar al bloque funcional en la secuencia. Una vez transcurrido el tiempo de espera introducido, continúa la secuencia con el siguiente bloque funcional.
En el cuadro de diálogo del bloque funcional se introduce
el tiempo de espera deseado en segundos. Además, puede elegirse entre
"definido" y "aleatorio". En caso de seleccionar "definido", el
bloque funcional espera exactamente el tiempo introducido
antes de que continúe la secuencia. En el otro caso espera un intervalo de una
longitud aleatoria, pero que tiene la misma
longitud máxima que el tiempo introducido. Este intervalo aleatorio puede
utilizarse, p.ej. para programar pruebas de reacción.
El texto introducido en este cuadro puede colocarse como comentario en una posición cualquiera del área de programación.
Además, en el cuadro de diálogo puede ajustarse el tamaño de fuente. Un texto ya insertado puede modificarse. A tal efecto, hay que hacer clic con el botón derecho del ratón en el texto, activando de este modo el cuadro de diálogo en el que pueden realizarse los cambios.
El bloque funcional ENTRADA interroga el estado de una entrada digital E1-E8 en el interfaz (E1-E16, en caso de dos interfaces). Una entrada digital sólo puede adoptar dos estados: 0 y 1.
En las entradas digitales del interfaz pueden
conectarse los siguientes sensores digitales de fischertechnik:
Pulsador: accionado – no accionado
Fototransistor: claro – oscuro
Contacto de láminas (sensor magnético): conmutado – no conmutado
Al insertar el bloque funcional, se llama el siguiente cuadro
de diálogo:
En el desplegable entrada se puede seleccionar la entrada correspondiente y en el desplegable tipo cada uno de los sensores:
Después de seleccionar el tipo de sensor, el símbolo correspondiente aparecerá en el bloque funcional. En función del estado (0 ó 1) de la entrada, la secuencia puede bifurcarse a la derecha o continuar en la conexión inferior del bloque funcional. En el cuadro de diálogo puede elegirse si la bifurcación a la derecha debe producirse con un 0 ó un 1.
Además de las entradas de interfaz E1-E16, en LLWin están
disponibles unas entradas digitales adicionales:
E17-E26:
Se trata de los interruptores y pulsadores virtuales
del bloque funcional TERMINAL, que pueden ser accionados
con el ratón. Como imagen aparece un interruptor de terminal accionado en
el bloque funcional.
E31-E38, E41-E48:
En estas entradas se guarda el sentido de giro de los motores:
Si p.ej. el motor M1 gira a la izquierda, la entrada E31
está activada (1) y E41 es 0. Si M2 gira a la derecha, E42 está activada (1) y
E32 es 0, etc.
Esto ofrece la posibilidad de bifurcar la secuencia del programa en función del
sentido de giro del motor. Como imagen aparece un motor que gira a la izquierda
o derecha en el bloque funcional.
El bloque funcional FLANCO espera
a que una entrada digital cambie de 0 a 1 ó de 1 a 0. Esta transición se
llama "Flanco". Si se ha reconocido el tipo de flanco ajustado, la secuencia
continúa con el siguiente bloque funcional.
Al insertar el bloque funcional, se llama el siguiente cuadro de diálogo:
El tipo del flanco seleccionado aparece representado en el símbolo del bloque funcional.
Este bloque se utiliza para desplazar un motor a una posición determinada.
El bloque funcional POSICIÓN cuenta
los impulsos en una entrada digital: Si se ha alcanzado el valor
final asignado, se procesa el siguiente bloque funcional. Se cuenta
cada flanco en la entrada, es decir que si se
acciona y se vuelve a soltar un pulsador, se cuentan dos flancos.
|
Al insertar el bloque funcional, se llama el siguiente
cuadro de diálogo:
|
El valor de cuenteo actual se almacena en una variable contador. Si en el cuadro de diálogo se activa la casilla "Variable de contaje estándar", automáticamente se asigna una variable contador Z1-Z16 a la entrada de cuenteo digital E1-E16 seleccionada (en E1 se asigna Z1, en E2 Z2, etc.).
Si no obstante se prefiere adjudicar las propias variables de cuenteo, se desactiva la casilla "Variable de contaje estándar" y se introduce en el campo "Variable de contaje" una de las variables Var1 hasta Var99, disponibles en LLWin.
Hay que ajustar la dirección de contaje en el cuadro de diálogo. Con "+" el valor de la variable contador es incrementado en 1 con cada flanco, y con "-" es decrementado en 1.
Finalmente hay que fijar el valor final de la variable del contador. Este puede ser una número, una variable VAR1-VAR99 o un parámetro del terminal EA-ED.
Esto implica que si la variable contador parte de
cero se contarán los flancos marcados, en este caso 40; pero si antes del bloque
esta variable contador ya tenía un valor, por ejemplo 10, se contarán
únicamente 30 flancos hasta alcanzar los 40 fijados.
Para desplazar un motor a una
determinada posición: Se conecta el motor, se cuentan los flancos a través de un
pulsador accionado por una rueda de impulsos y se desconecta el motor, una vez
alcanzado el valor final deseado.
Si se desea volver a poner a 0 una variable contador, se utiliza el bloque
funcional ASIGNACIÓN, donde se introduce p.ej. Z1=0.
Con el bloque funcional ASIGNACIÓN puede asignarse un valor a una variable VAR1 - VAR99 o a una variable de contaje Z1 -Z16.
En el cuadro de dialogo se introduce en la parte izquierda bajo "Variable" aquella variable a la que deba asignarse un valor. A la derecha bajo "Expresión", se define el valor que puede tomar la variable.
Como valor se puede asignar sencillamente una constante,
p.ej. 0., pero también existe la posibilidad de expresar el valor como fórmula
matemática, p.ej. (VAR1+3*VAR2)/5.
Todas las operaciones matemáticas disponibles (+, -, *, /) y paréntesis ()
pueden ser insertadas con un clic del ratón en la fórmula, en el Asistente de
entrada del cuadro de diálogo.
Como longitud máxima para una fórmula se admiten 34 caracteres.
Este bloque funcional permite
incrementar o decrementar en uno el valor de una variable.
Al insertar el bloque funcional, se llama el siguiente cuadro de diálogo:
En el cuadro de diálogo se indica qué variable debe editarse. Además, se elige si el valor debe incrementarse o decrementarse en uno. Esta dirección de contaje es indicada en el símbolo del bloque funcional.
En el bloque funcional COMPARACIÓN se evalúa una condición.
|
Dependiendo de si se cumple o no la condición, la secuencia se bifurca a la derecha o continúa en la salida inferior del bloque funcional. Los números 0 y 1 en las salidas, significan "Condición cumplida" (1) y "Condición no cumplida" (0).
Al insertar el bloque funcional, en el cuadro de diálogo representado a continuación se introduce una condición con un máximo de 40 caracteres.
En el cuadro de diálogo del bloque funcional puede definirse si la bifurcación a la derecha se produce con un 1 ó un 0.
Con el Asistente de entrada del cuadro de diálogo pueden insertarse los operadores de comparación, las combinaciones lógicas y los paréntesis, haciendo clic con el ratón. También puede introducirse la fórmula completa a través del teclado.
Para mas información sobre comparaciones
pulsa aqui.
Este bloque funcional visualiza mientras el programa de control se ejecuta en modo online, constantemente el valor actual de una entrada digital o analógica o de una variable. El bloque funcional se inserta sobre el área de programación sin líneas de conexión hacia otros bloques funcionales.
Al insertar el bloque funcional, se llama el siguiente
cuadro de diálogo:
En el cuadro de diálogo se introduce qué valor debe
visualizarse.
Sin interrumpir el modo online, puede visualizarse otro valor en el bloque
funcional. A tal efecto se llama el cuadro de diálogo con el botón izquierdo del
ratón y se modifica la entrada.
El bloque funcional TERMINAL sirve para indicar e introducir valores durante el modo online.
El terminal se coloca sobre el área de programación sin líneas de conexión hacia otros bloques funcionales.
Arriba del todo del bloque funcional se indica, qué
salidas de interfaz M1-M8 están conectadas y en
qué dirección giran los motores (1).
Debajo hay dos displays (2), en los que pueden visualizarse los
valores actuales de variables, valores analógicos o
constantes. A través del bloque funcional DISPLAY hay que definir qué
valores deben visualizarse. Sólo puede visualizarse la gama de valores entre
-999 y +9999.
En el campo de debajo (3) puede visualizarse un texto con una
longitud máxima de 17 caracteres. El texto se determina en el bloque funcional
MENSAJE.
Los cuatro parámetros de terminal EA-ED (4) son
comodines de valores que pueden modificarse incluso
en modo online. De este modo, por ejemplo, puede determinarse en el bloque
funcional POSICIÓN, que un motor siempre funcione hasta el valor final "EA".
Seguidamente se ajusta el valor EA en el bloque funcional TERMINAL, donde podrá
ser corregido tantas veces que se desee mientras se ejecuta el programa de
control.
Con un clic de ratón sobre el botón del terminal P. EMER. (5) pueden
desconectarse todas las salidas en modo online. El
programa de control sigue siendo ejecutado. Las salidas vuelven a
activarse, si se repone el botón P. EMER.
Con un clic de ratón sobre el botón del terminal RESET (6) pueden
desconectarse todas las salidas en modo online y el
programa de control se para.
Si se repone el botón RESET, el programa de control es
reiniciado al igual que con el comando Arranque en el menú Ejecutar.
El bloque funcional TERMINAL dispone de interruptores y pulsadores que
pueden ser interrogados como 10 entradas digitales E17-E26 adicionales en el
programa de control. Los interruptores de terminal E17-E21 (7)
pasan con cada clic del ratón al otro estado, respectivamente. Los pulsadores
de terminal E22-E26 (8) pueden ser puestos en 1 con un clic del ratón y
pasan de nuevo a 0 tras soltar el botón del ratón. Los interruptores de terminal
E17-E21 pueden ser preajustados antes de arrancar
el programa de control en el modo "Inicio"
(accionado o no accionado). Sin embargo, los pulsadores de terminal E22-E26 sólo
pueden ser accionados en modo online.
En modo "Edición", los parámetros e interruptores del
terminal pueden activarse con el botón derecho del ratón y modificarse.
El bloque funcional DISPLAY sirve
para visualizar un valor, una variable o una de las entradas EX-EY o
EA-ED en uno de los dos displays del bloque funcional
TERMINAL.
Al insertar el bloque funcional, se llama el siguiente cuadro
de diálogo:
En el cuadro de diálogo del bloque funcional se registra, cuál de ambos displays
DIS1 ó DIS2 se desea utilizar y qué valor deberá visualizarse en el mismo.
El bloque funcional "Mensaje" indica
un texto con una longitud máxima de 17 caracteres en el campo de texto
del bloque funcional TERMINAL.
Al insertar el bloque funcional, se llama
el siguiente cuadro de diálogo:
En el cuadro de diálogo se introduce
el texto deseado y se define
el color
en el que debe aparecer el mensaje.
El bloque funcional PARADA EMERG. desconecta, en cuanto se cumpla la condición asignada, todas las salidas en el interfaz. Este se coloca sobre el área de programación sin líneas de conexión hacia otros bloques funcionales.
Un proyecto solamente debe contener un bloque funcional
PARADA EMERG.
Al insertar el bloque funcional, en el cuadro de diálogo
representado a continuación se introduce una condición con un máximo de
40 caracteres, con la cual debe activarse la parada de emergencia.
Una condición de parada de emergencia sencilla puede llamarse p.ej. "E1". En este caso se desconectan todos los motores, en cuanto se cumpla esta condición, es decir cuando E1 sea 1. Mientras tanto sigue ejecutándose el programa de control. Los motores vuelven a conectarse, en cuanto ya no sea aplicable la condición, es decir cuando E1 vuelva a ser 0.
El bloque funcional RESET desconecta
todas las salidas y repone todas las secuencias de un proyecto
al bloque funcional ARRANQUE, en cuanto se cumpla
la condición asignada.
El bloque funcional RESET se coloca sobre el área de programación sin líneas de conexión hacia otros bloques funcionales.
Un proyecto solamente debe contener un bloque funcional RESET.
Al insertar el bloque funcional, en el cuadro de diálogo
representado a continuación se introduce una condición con un máximo de
40 caracteres, con la cual debe activarse el reset.
La condición de reset más sencilla puede llamarse p.ej. "E1". En este caso se activa un reset, en cuanto se cumpla esta condición, es decir cuando E1 sea 1. El programa de control vuelve a arrancar desde el principio, en cuanto ya no sea aplicable la condición, es decir cuando E1 vuelva a ser 0.
De este modo hay la posibilidad de parar y volver a
arrancar a través de una entrada digital un proyecto, que es ejecutado en el
Intelligent Interface Art. Nº 30520 en modo download (sin conexión con el PC),
sin tener que volver a cargarlo.
Estos bloques funcionales sólo están visibles en la ventana de bloques funcionales, si se está editando un suprograma. Estos constituyen el enlace entre el programa principal y el comienzo del subprograma (SubIn) o entre el final del subprograma y el programa principal (SubOut). Al insertarlos, automáticamente se sugiere un nombre para cada uno de estos bloques funcionales, el cual podrá ser modificado. El mismo nombre no debe aparecer varias veces en un subprograma, porque de lo contrario no pueden asignarse de forma inequívoca los diferentes bloques funcionales SubIn y SubOut .