Вы находитесь на странице: 1из 10

A.

Communicating between parallel


loops
El paralelismo se refiere a ejecutar
multiples tareas al mismo tiempo.
Usando considerando el ejemplo de
crear y mostrar dos ondas sinuidales
en diferentes frecuencias. Usando
paralelismo, podemos colocar una
onda sinuidal en un bucle, y la
segunda en un bucle diferente.

Method 1 (incorrect)
Al colocar la terminal del boton STOP
fuera de ambos bucles o ciclos y los
conectamos a cada terminal condicional.

El control de ciclos es una coneccion de


datos para ambos ciclos, por lo tanto la
terminal del boton stop se lee una sola
vez, antes de que el ciclo while se ejecute.

Si es falso se pasa a los ciclos , el


ciclo while correra indefinidamente.
Haciendo click al boton stop no
detendra el VI por que el click del
boton no es leido durante la iteracion
de un ciclo.

Method 2 (incorrect)
Mueva la terminal del Botn de parada dentro de bucle 1 de manera que
se lee en cada iteracin de esta, como se muestra en el siguiente
diagrama de bloques.

Aunque el bucle 1 haya concluido, el bucle 2 no se ejecuta hasta que


reciba todas sus entradas de datos. El bucle 1 no pasa de datos fuera del
circuito hasta que se detiene, por lo bucle 2 debe esperar a que el valor
final del botn de parada, disponible slo despus de bucle 1 acabados.
Por lo tanto, los bucles no se ejecutan en paralelo. Tambin, bucle 2
ejecuta slo una iteracin porque su terminal condicional recibe un valor
Verdadero desde el interruptor botn de parada en bucle 1.

Method 3 (solution)
Si se puede leer el valor del control de bucle de un
archivo, ya no se tiene una dependencia de flujo de
datos entre los bucles, ya que cada lazo se puede
acceder de forma independiente el archivo. Adems, la
lectura y escritura de archivos puede llevar mucho
tiempo, por lo menos en tiempo de procesamiento.
Otra forma de realizar la tarea de comunicar entre
bucles paralelos es encontrar la ubicacin en los datos
de control de bucle que se almacena en la memoria y
se leera directamente de alli. Una variable local
permite hacer esto mediante la lectura de la misma en
el control del panel frontal en ms de un lugar en el
diagrama..

B. Writing to Controls and Reading


from Indicators
Adems de comunicar entre dos bucles se ejecutan
simultneamente, hay otros retos de flujo de datos que
se pueden superar con variables locales.
Puede utilizarse una variable local para actualizar un
indicador del panel frontal nica de ms de una ubicacin
en el diagrama de bloques. Por ejemplo, si usted tiene un
VI con dos ciclos While, puede actualizar un indicador del
panel frontal para el bucle que se est ejecutando
actualmente.
Con una variable local, se puede escribir o leer de un
control o indicador en el panel frontal. En efecto, con una
variable local se puede acceder a un objeto del panel
frontal tanto como una entrada y una salida.

C. Variables

Las variables son elementos de diagrama de bloques


que le permiten acceder o almacenar datos en otra
ubicacin. La ubicacin real de los datos vara
dependiendo del tipo de la variable.
Las variables locales almacenan datos en los controles
del panel frontal y los indicadores.
Las variables globales y de un solo proceso comparten
almacenamientos de variables de datos en depsitos
especiales que se puede acceder desde mltiples VIs.
Por esta razn, las variables son tiles no solo en
arquitecturas paralelas, sino que tambin tienen
ciertos inconvenientes, tales como las condiciones de
carrera.

Local VariablesUsing Variables ina


SingleVI
Las variables locales transferir datos dentro de una sola
VI.
En LabVIEW, se leen datos desde o escribir datos en un
objeto del panel frontal utilizando su terminal de
diagrama de bloques. Sin embargo, un objeto del panel
frontal tiene la nica terminal de diagrama de un
bloque, y su aplicacin podra tener que acceder a los
datos en ese terminal de ms de una locacion.
Se utilizan variables locales para acceder a objetos del
panel frontal desde ms de una ubicacin en un solo VI.
Utilice variables globales para acceder y pasar datos
entre varios VIs. Se usa un Nodo feedback para
almacenar datos de una ejecucin VI o bucle anterior.

Creating local variables


Para crear una variable local Hacemos clic en un
objeto del panel frontal existente o en la terminal
del diagrama de bloques y seleccionamos
Create Variable Local
en el shortcut menu para crear una variable local.
Aparece un icono de variable local para el objeto
en el diagrama de bloques.
Tambin se puede seleccionar una variable local
de la Paleta de funciones y colocarlo en el
diagrama de bloques. El nodo de variable local an
no est asociado con un control o indicador.

Para asociar una variable local con un


control o indicador, haga clic en el nodo
variable local y seleccione

select item
en el men abreviado. El men ampliado
enumera todos los objetos del panel
frontal que han sido dueos de etiquetas.

Вам также может понравиться