Manejo de las entradas/salidas de control

 

 

Introducción

Para comunicarse con los actuadores (salidas) y sensores (entradas) mediante una interfaz de control, Flowol cuenta con los bloques "Decisión" y "Salida".

El bloque "Decisión" permite consultar el estado de las entradas, sensores digitales y analógicos, mediante las funciones Entrada, Val y Margen, que incorpora.

Lo relativo a este bloque se trata con profundidad en el apartado Control de flujo.

Para enviar instrucciones a los actuadores externos, Flowol proporciona el bloque "Salida"

que permite modificar el estado de las salidas que proporciona la interfaz de control seleccionada.

Para insertar este bloque en un punto del programa, no hay más que pulsar sobre el símbolo indicado en la figura adjunta de la barra de herramientas, arrastrarlo y hacer click en el punto seleccionado. En este momento se abre el cuadro de diálogo Editar salida que permite introducir los datos necesarios para manejar las salidas.

El botón E/S permite el control de las:

  • salidas digitales, con dos estados: on/off, encendido/apagado;

  • salidas de motor, con tres estados: encendido y girando en sentido antihorario, encendido y girando en sentido horario y apagado.

El botón Sonido da lugar a la emisión de señales acústicas.

Volver al principio de página

 

Control de las salidas digitales

Si en el cuadro de diálogo Editar salida se pulsa el botón E/S, se tiene acceso al siguiente cuadro:

Si, a su vez, se pulsa el botón Salida, se obtiene una lista de tantas salidas digitales como las que dispone la interfaz en uso:

Al pulsa en una de ellas, por ejemplo, la nº 1, ésta puede ser activada/desactivada sin más que pulsar los botones activa/desact:

Este bloque facilita el control de hasta cuatro salidas simultáneamente, de modo que se pueden seguir activando/desactivando otras salidas. Si, por ejemplo, se pulsa el botón 3:

se desactiva esta salida mediante desact:

y finalmente se pulsa Aceptar se obtiene el bloque:

cuyo resultado consiste en activar la salida digital nº 1 y desactivar la nº 3.

Volver al principio de página

 

Control de los motores

Si en el cuadro de diálogo Editar salida se pulsa el botón E/S se tiene acceso al siguiente cuadro:

Análogamente al control de las salidas digitales, se pueden controlar los motores sin más que pulsar el botón Motor, de modo que se obtiene un cuadro con la lista de motores disponibles para la interfaz en uso:

Cada motor se identifica con una letra del alfabeto: a, b, c, d (ojo, no confundir esta nomenclatura con la de las variables del lenguaje).

Si, por ejemplo, se selecciona el motor a, se obtiene un cuadro que permite activarlo en sentido directo (adel), inverso (atrás, reverse) o detenerlo (desact):

Si, por ejemplo, se pulsa adel, se obtiene:

Nota: girar hacia adelante significa aquí girar en sentido horario (negativo); girar atrás significa girar en sentido antihorario.
Cuando se utilizan los modelos de montaje de Fischertechnik (gama Computing) hay que tener en cuenta que el lenguaje LLWin -propio de Fischetechnik- y Flowol interpretan los giros en sentido opuesto, de modo que una misma orden de giro en ambos lenguajes produce giro en sentidos opuestos. Si se quiere que el resultado sea el mismo hay que compensar este efecto con una permutación de los dos cables del motor.

Los botones numéricos de la parte inferior permiten introducir números entre 0 y 100 (realmente, hasta 999, pero se interpretan como 100) cuyo significado es el de establecer la potencia a la que se alimentará el motor en porcentaje de la potencia máxima disponible). Si, por ejemplo, se introduce el valor 80, y se pulsa Aceptar se obtiene:

En caso de que no se especifique la potencia que regula la velocidad, en esta misma instrucción se puede manejar simultáneamente otro motor, de modo que si se selecciona el b y se detiene con desact, se obtiene el bloque:

Caso de que el interfaz en uso no disponga de regulación de velocidad para las salidas de motor, las únicas acciones disponibles para un motor son el giro directo, el inverso y la parada.

La regulación de velocidad se puede llevar a cabo también en función del valor de una variable. Es decir, se puede dar un valor entre 0 y 100 a una variable (por ejemplo, la x) y luego utilizarla para establecer la velocidad de giro:

Esto se hace sin más que usar los botones de variable en lugar de los botones numéricos en el cuadro Editar salida:

Nota: en la versión 2.91 de Flowol esta función no se halla disponible directamente para la interfaz FlowGo, debido a lo que parece ser un "olvido" en la programación interna de Flowol. Sin embargo, es posible con FlowGo utilizar variables en la regulación seleccionando primero una interfaz distinta, como la Contact Controller Plus, editando después el bloque Salida  escogiendo la variable deseada y, finalmente, cambiando de nuevo la interfaz a FlowGo.

Volver al principio de página

 

Emisión de señales acústicas

Si en el cuadro Editar salida se pulsa el botón Sonido:

se obtiene el cuadro de diálogo Sonidos:

que permite asignar para posterior uso 10 archivos de sonido que se encuentren en el ordenador. Por ejemplo, pulsando el botón Examinar y explorando el disco en la forma habitual de Windows se pueden establecer los sonidos 0 y 1:

y cuando se cierra la anterior ventana (haciendo clic en el aspa) se obtiene:

de modo que pulsando 0 y Aceptar aparece finalmente el bloque:

cuyo resultado es emitir el sonido deseado.

Es conveniente decir que el sonido lo emite el sistema de sonido (o el altavoz)  del ordenador y no la interfaz (aunque hay algunas interfaces que incorporan un pequeño altavoz).

Nota:

Para asegurarse de que el sonido se reproduce en su integridad es conveniente añadir tras el bloque de sonido un bloque de espera por un tiempo igual a la duración del sonido (esta la podemos obtener desde el reproductor de Windows). Para introducir un retardo (temporización) no hay más que introducir un bloque de Proceso:

pulsar el botón Tardar y fijar una espera mediante los botones numéricos:

Si, por ejemplo, pulsamos 2, . , 5 y Aceptar, consecutivamente, obtenemos el bloque:

Por supuesto, este bloque no se aplica solamente a la reproducción de sonidos sino a cualquier proceso que necesite la aplicación de una temporización.
Flowol no permite más de 16 valores diferentes de retardo. Por ejemplo, si se usa Tardar 2.5 cinco veces en el programa esto se cuenta como un solo valor de retardo. Si por ejemplo se usa Tardar 1, Tardar 2, Tardar 3, esto se contabiliza como tres valores de retardo.

Así pues, la programación de la emisión de un sonido queda, por ejemplo:

El segundo bloque asegura que el programa no ejecutará otras acciones hasta que el sonido se haya reproducido completamente (si es eso lo que deseamos).

Volver al principio de página

Ir al índice de "El lenguaje de control Flowol"

2004 Víctor R. González

volver a Inicio