Fundamentos de Flowol. El programa

 

Introducción

La mejor forma de aprender un lenguaje es programando con él. El programa más sencillo que se puede escribir con Flowol es el siguiente:

Como podemos intuir, este programa, con sólo principio (Inicio) y fin (Alto), no hace nada, pero se ejecuta correctamente y nos da una idea de que no se necesita mucho para empezar a programar en Flowol.

Un programa algo más complicado, pero que hace algo, es el siguiente:

Con él activamos durante 2 segundos una salida digital de un dispositivo (no especificado por el momento) pasado 1 segundo desde en inicio de la ejecución del programa, y anunciamos la activación de la salida mediante un sonido.

En este programa observamos algunos de los principales elementos de la programación gráfica con Flowol, mediante la sistemática de ordinograma, como son los bloques terminadores,

los bloques de realización de un proceso (por ejemplo, una espera),

los bloques que producen alguna salida,

las líneas (flechas) que conectan los distintos bloques y las etiquetas (texto en letra cursiva), que constituyen los comentarios del lenguaje.

Como se observa, un programa de Flowol es simplemente una pantalla gráfica en la que se acumulan de forma ordenada bloques de tareas que se conectan secuencialmente mediante líneas con flechas. No existe un archivo fuente "legible" en el que se encuentre de forma textual el contenido de dicho programa (las instrucciones se encuentran en un formato codificado "no legible").

Volver al principio de página

 

Elementos del lenguaje

En la siguiente tabla se recogen la nomenclatura y la representación gráfica de los distintos elementos del lenguaje Flowol:

 

Elemento Definición
Terminador (Inicio/Alto/Páralo Todo)

Bloque que marca el inicio o el fin del código de un programa o de un subprograma.
Un programa debe empezar necesariamente por un bloque Inicio y terminar con Alto.

En caso de que haya más de un bloque Inicio en el programa, de modo que existan varios procesos ejecutándose simultáneamente, el bloque Páralo Todo los detiene a todos.

Salida

Bloque que realiza una acción sobre alguna salida de control (activación, desactivación, cambio del sentido de giro de un  motor ...).
Proceso

Bloque que ejecuta una acción en el programa. Puede ser de tres clases:
Decisión

Bloque que permite bifurcar el flujo del programa en función del resultado de una expresión condicional que depende de:

En definitiva, este bloque permite realizar lo que se denomina un control de flujo en el programa.

Línea de flujo

Conecta secuencialmente dos bloques ejecutables. Puede ser de tres clases:

Las líneas SI y NO sólo se aplican a las salidas del bloque Decisión, mientras que las líneas ("siempre") se aplican a la entrada y la salida de cualquier bloque (excepto a las salidas del bloque decisión).

Etiqueta, comentario

No ejecuta ninguna acción en el programa.
Se utiliza como un texto explicativo que contribuye a clarificar el código y a recordar más tarde lo que se hizo.

Número

Designa a valores numéricos enteros que toman valores entre 0 y 9.999.999

Variable Un contenedor con nombre para un número. Son el medio para que el programa "recuerde" valores. Se pueden utilizar 8 variables distintas (nombradas como a, b, c, d, n, x, y, z)
A la variable se le puede asignar un valor entero, o el resultado de una operación entre dos variables o entre una variable y un número entero.
Operador Designa una operación matemática. Los operadores pueden ser

La estructura de un archivo de programa en Flowol consta esencialmente de un programa principal y de varios subprogramas:

Lo anterior no es todavía estrictamente general, dado que aún existe una estructura más amplia, en la que puede darse paralelismo, con varios puntos de inicio simultáneos; por así decir, varios procesos o líneas de flujo que se ejecutan simultáneamente (aparentemente en "en paralelo"):

Nota: en una estructura como la anterior existen dos o más procesos de programa (4 como máximo) que comienzan a ejecutarse a la vez, y cada uno termina (o continúa indefinidamente) independientemente de los demás. Se puede establecer un mecanismo de sincronismo entre todos ellos utilizando alguna variable "banderín" o "semáforo". El bloque Páralo Todo detiene todos los procesos que se hallan en ejecución.

El uso de uno o de varios puntos de inicio en un programa depende del problema concreto de control del que se trate y del tipo particular de solución que quiera o pueda dársele.

Volver al principio de página

Instalación

El proceso de instalación de Flowol es muy sencillo. Introduciendo en la unidad de CD el disco correspondiente, se inicia automáticamente un asistente de instalación:

que solicita la carpeta de destino:

Un detalle a tener en cuenta: si se instala bajo Windows 2000/XP, se solicita que se especifique si la instalación quedará operativa sólo para el usuario actual o para todos los registrados en el sistema operativo. La opción elegida dependerá del contexto y de la finalidad de la instalación, pero no hay ningún problema en seleccionar "Para todos los usuarios".

Tras pulsar dos veces el botón "siguiente" el proceso de instalación comienza:

y cuando finaliza (tras breves instantes, normalmente unos pocos segundos) se muestra el mensaje:

En sistemas Windows 2000/XP no es necesario, en circunstancias normales, reiniciar. Sí es necesario hacerlo en sistemas Windows 9x/ME.

Para seleccionar la interfaz de control con la que trabajará Flowol se puede consultar el apartado Selección de la interfaz.

Volver al principio de página

 

Edición de un programa

Para iniciar un nuevo programa de Flowol se utiliza la opción Nuevo del menú Archivo. Ésta limpia la ventana de edición si estaba ocupada con un programa anterior:

Para introducir un nuevo elemento en un diagrama de programa no hay más que pulsar el botón con el símbolo que identifica el bloque o elemento deseado en la barra de herramientas:

Una vez pulsado, al mover el ratón aparecerá un bloque móvil que se puede arrastrar y soltar en el lugar deseado de la ventana de edición:

Una vez colocado en el lugar adecuado, se deben establecer la características particulares del bloque o elemento seleccionado.

Por ejemplo, para insertar un bloque de inicio en un programa, no hay más que pulsar en el símbolo rectangular de esquinas redondeadas de la barra de herramientas, , y, una vez se ha soltado, aparece el siguiente cuadro de diálogo:

Si en éste se pulsa el botón Inicio, se obtiene el bloque:

que constituye el punto de arranque de un programa principal. Análogamente, si se pulsa el botón Alto se da fin al flujo de un programa.

Si, por ejemplo, el bloque insertado es de Proceso, tras soltarlo en el lugar preciso se debe indicar si se trata de establecer un temporizador (Tardar), de dar valor a una variable (Fijar) o de llamar a un subprograma (Sub):

Y tras ello, aún habría que indicar la duración de la temporización del bloque Tardar.

Tras acumular los bloques necesarios en el diagrama para conseguir los efectos deseados, hay que unirlos con las líneas pertinentes, que deciden por dónde transcurrirá el flujo o la secuencia del programa. Para introducir alguna de dichas líneas, no hay más que hacer clic en el botón correspondiente de la barra de herramientas:

y tras ello, pulsar en el bloque origen y en el bloque destino consecutivamente. Las líneas se dibujan automáticamente siguiendo un recorrido determinado por Flowol.
Si se desea dibujar las líneas siguiendo un recorrido elegido por el usuario no hay más que pulsar primeramente en el bloque origen y, seguidamente, ir haciendo clic en los distintos puntos del área de edición por donde se desea que transcurran las líneas de flujo; finalmente, hay que hacer clic n el bloque destino.

Los comentarios del programa se introducen pulsando el botón   de la barra de herramientas y escribiendo texto en la forma habitual. Cada comentario puede tener un máximo de 56 caracteres.

Las características de un bloque insertado previamente se pueden cambiar en cualquier momento. Para ello hay que seleccionarlo; ello se consigue pulsando el icono Mano:

y haciendo clic con el ratón sobre el bloque deseado (o también, haciendo directamente clic sobre el bloque deseado con el botón derecho del ratón). Se abrirá entonces un cuadro de diálogo que permitirá cambiar las propiedades del bloque. Este cuadro depende de cada bloque en particular y se trata en los distintos apartados de esta documentación.

Nota: para modificar un bloque es preciso borrar primero sus propiedades anteriores para volver a definirlas. Esto se puede hacer con el botón Borrar del cuadro de diálogo de Edición.

Si lo que se desea es eliminar completamente un bloque o una línea del diagrama de programa, se debe seleccionar primero el elemento deseado con el icono Mano y borrarlo después pulsando el botón Borrar:

Igualmente, se pueden borrar un conjunto de elementos seleccionándolos simultáneamente (pulsar primero el icono Mano y después pulsar sobre la ventana de edición arrastrando el ratón hasta que queden seleccionados todos los elementos deseados -aparece un cuadro que los engloba-) y haciendo clic sobre el botón Borrar.

Cuando el número de símbolos en un programa empieza a ser importante, éste puede superar los límites de la ventana de edición, de modo que no pueda ser observado al completo. En tal caso, es útil usar la opción Vista Zoom... del menú Ventana:

que permite ampliar/reducir el área visible de edición, según las necesidades.

Cuando se ha terminado la edición del programa, éste se puede almacenar en disco con las opciones Guardar y/o Guardar como... del menú Archivo. Una vez elegido un nombre representativo para el programa, éste se guarda en la carpeta de disco deseada con extensión .FLO. Cuando se desee acceder de nuevo a este programa, se puede abrir desde dentro de la interfaz gráfica de Flowol con la opción Abrir del menú Archivo, o haciendo directamente doble clic sobre el archivo en el disco (sin abrir antes Flowol), de modo que se inicia Flowol con el programa cargado en la ventana de edición.

Cuando se editan programas con cierto grado de complejidad, resulta de ayuda la utilización de la función de copiado y pegado de un conjunto de bloques. Supongamos que se quiere duplicar un conjunto de bloques para reutilizarlos en una sección distinta del programa. Para conseguirlo no hay más que seleccionarlos mediante el icono Mano, seguidamente arrastrarlos mientras se mantiene pulsada la tecla Shift ( Ý ), y soltarlos en el punto deseado de la ventana de edición; durante el arrastre los bloques originales seleccionados se marcan en gris y los bloques duplicados se marcan mediante su contorno, como se observa en la siguiente figura:

Nota: esta función no permite copiar un bloque o conjunto de bloques y pegarlo desde un programa a otro diferente. El copiado y pegado se realizan sólo dentro de un mismo programa. 

Volver al principio de página

 

Ejecución de un programa

Para llevar a cabo las acciones codificadas en un programa (ejecución del programa), no hay más que tenerlo cargado en la ventana de edición y pulsar el botón "Ejecución" de la barra de herramientas:

La ejecución se puede producir en dos modos:

En el modo simulación no se envía ninguna orden a la interfaz de control, de modo que se puede comprobar el funcionamiento del programa sin ningún efecto físico. Para entrar en modo simulación (el modo por defecto cuando se inicia Flowol), no hay más que marcar la opción Simular del menú Control.

 

Existe una extensión de Flowol para el modo simulación denominada Mimics. Se trata de un módulo de software que permite simular la ejecución de un programa sobre un "fondo o maqueta virtual", comprobando los efectos del programa sin necesidad de dispositivos físicos. Los detalles de este módulo se pueden ver en Simulación con Mimics.

Para ejecutar el programa enviando las órdenes a la interfaz de control (modo "en-línea" o activo), no hay más que quitar la marca de la opción Simular del menú Control.

Si se desea, no hay necesidad de ejecutar el  programa como un todo; se pueden ejecutar independientemente un conjunto de bloques seleccionado o algún subprograma en particular. Para ello, no hay más que acudir a la opción ¿Ejecutar Qué? del menú Control. El menú desplegable que aparece permite elegir entre la totalidad del programa, los bloques seleccionados y los subprogramas:

Durante la ejecución de un programa o de una sección del programa se puede observar el flujo del mismo a tiempo real puesto que se colorea de forma especial el bloque que se halla en ejecución en cada instante, así como la línea de flujo correspondiente:

En el programa de la figura anterior observamos que en el instante considerado el flujo viene de  la salida NO del bloque Decisión y que actualmente se está ejecutando un bloque de proceso Tardar (con una temporización de 0.1 segundos).

Como se acaba de decir, Flowol colorea las líneas y los bloques durante la ejecución; pero si en la ventana Control de velocidad (ir a menú Control, opción Velocidad...) se quitan las marcas de las casillas Líneas y Símbolos -que Flowol pone por defecto-:

entonces ya no se colorean líneas ni bloques; esto aumenta la velocidad de ejecución del programa. La velocidad se puede regular también con la barra deslizante de la parte superior, que por defecto está anclada en el 80% de la máxima posible, cuando se inicia Flowol.

Es posible lanzar un programa en modo paso a paso, de manera que se ejecute un solo bloque cada vez. Ello se consigue marcando la casilla Barra Espaciadora de la ventana anterior, de modo que tras ejecutar un bloque no se pasa al siguiente hasta que se pulsa la barra espaciadora del teclado.

Si se desea detener un programa en ejecución antes de que termine su secuencia lógica (es decir, antes de alcanzar un terminador Alto o Páralo todo) se puede pulsar el botón Alto:

de la barra de herramientas.

Con algunas interfaces de control, todavía se puede ejecutar un programa de un tercer modo:

Esto es cierto, en particular, con la interfaz FlowGo. Para ello, se debe pulsar el botón que aparece a tal efecto bajo el botón Ejecutar con el nombre de la interfaz:

Esto desencadenará un proceso de compilación del diagrama de flujo y de descarga en la memoria de la interfaz:

Cuando el proceso de descarga finaliza:

el programa se puede ejecutar desde la interfaz, incluso desconectado del ordenador, sin más que pulsar en el botón que a tal efecto se encuentra en la interfaz de control (en el caso de FlowGo existe un botón denominado Go).

 Volver al principio de página

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

2004 Víctor R. González

volver a Inicio