<< Chapter < Page Chapter >> Page >

Clusters

Los clusters son tipos de datos compuestos por varios elementos de distintos tipos. Son los equivalentes a las estructuras de datos del lenguaje de programación C y similares, o a las clases, en los lenguajes de Programación Orientados a Objetos , como el C++, Java , etc. En LabVIEW , cuando interesa unir varios tipos de datos bajo el mismo nombre, entonces se crea un cluster con ese nombre. Esto, suele ser muy práctico para que en el diagrama, aparezcan muchas menos líneas de conexiones yéstas estén agrupadas según un criterio dado. En el ejemplo que viene a continuación, se muestra cómo tres tipos de datos distintos (número real, número entero y cadena de caracteres) que se encuentran en los controles de la izquierda son llevados a la parte derecha del diagrama como unaúnica unidad, derecha. Para aguparlos, se utiliza el objeto Bundle , izda., que se encuentra en Functions/Programming/Cluster, Class&Variants . En cambio, en el lado derecho, tanto del diagrama como del panel, se encuentran los indicadores que permiten visualizar los valores enviados desde los controles antes mencionados. Para ello, se utiliza el objeto Unbundle , dcha., cuya misión es obtener los elementos individuales del grupo que llega a su entrada.

Otra interesante aplicación de los clusters es la de crear aplicaciones con menús de botones y máquinas de estados. Para crear un menúde botones se inserta un objeto cluster desde el panel, desde Controls/Classic/Cluster/Classic Array, Matriz&Cluster . A continuación se insertan dos botones de tipo OK a los que se les elimina la etiqueta externa, en el cluster . Se edita cada uno de ellos con el botón derecho del ratón y ejecutando Properties y en la ficha Appearance , en Off text , se elimina OK y se escribe“+”en un caso y“-“en el otro.

En el diagrama, se introduce una sentencia while para controlar la ejecución de la aplicación, donde el cluster anterior es introducido en ella, . A la salida del cluster se conecta un conversor de tipo Cluster to Array , que se encuentra en Functions/Programming/Array . A su vez, la salida de este conversor es llevado a la entrada superior del Search 1D Array , donde su entrada inferior estáconectada a una constante booleana de valor true . Asi, este objeto proporciona elíndice del array cuyo elemento ha proporcionado un true , es decir, en este caso, cuyo botón ha sido pulsado. De este modo, si se pulsa el primer botón, la función Search 1D Array devuelve un 0, si se pulsa el segundo, devuelve un 1, y asísi hubiera más botones. En cambio, si no se pulsa ningún botón, la función devuelve–1.

En este sentido, si a la salida de esta función conectamos una sentencia de selección múltiple, entonces se puede colocar en cada sentencia el código asociado al botón o función que se quiera realizar. Así, tendriamos una sentencia o estado de reposo para cuando no se pulsa ningún pulsador (-1), otro para la suma de los dos operandos (0), y finalmente para le resta de los operandos (1). Además del código asociado a cada estado o función, se colocaráuna constante de tipo cadena o string, que iráconectado a la salida de la sentencia para que en el panel se pueda ver el estado en el que se encuentra la aplicación en todo momento. Dendro de la sentencia while , se añadiráun temporizador de 1 segundo para que se puedan ver los resultados en tiempo de ejecución de la aplicación.

La aplicación anterior vuelve automáticamente al estado de reposo. Otra forma de hacer la misma aplicación es introduciendo el código del cluster y la Search 1D Array en la sentencia asociada al reposo, pero añadiendo también un registro de desplazamiento a la sentencia while , . Así, tal y como se puede ver, el estado inicial es el de reposo (-1), y al pulsar alguno de los dos pulsadores, la salida de la Search 1D Array proporciona el código asociado y vía registro de desplazamiento vuelve por la entrada de la sentencia múltiple para ejecutar el correspondiente caso. Pero cada uno de estos casos lleva el valor del código del estado que se quiere ejecutar tras su ejecución, que en nuestro caso es–1, el de reposo (ver los dos casos de ).

Esto muestra claramente que estos códigos no tienen por quéser el de reposo, si no otros que el programador desee. De esta forma se pueden definir ciclos de máquinas de estados, aunque LabVIEW ya posee objetos específicos para realizar máquinas de estados.

Ejercicios propuestos

Construye un instrumento virtual que genere un array unidimensional con los valores de dos ciclos completos de la función trigonométrica seno.

Construye un instrumento virtual que genere un array bidimensional con los valores de dos ciclos completos de las funciones trigonométricas seno (1ªfila), coseno (2ªfila), tangente (3ªfila) y cotangente (4ªfila).

Construye un instrumento virtual que genere un array bidimensional con los valores de 4 fechas en el formato: día mes año (p.e 23 de septiembre de 2008: 23 09 2008).

Construye un VI con un menúde botones que realiza exactamente las mismas operaciones que la aplicación Calculadora2.vi , es decir, con los dos operandos, las operaciones artméticas +, -, * y división. Con el operando 1 tomando como elángulo en grados, las operaciones trigonométricas sin, cos, tan y cotan, y con el operando 2, la raíz cuadrada y la inversa. Todos los resultados se muestran en el mismo indicador.

Realiza un VI que implementa la máquina de estados de . Los estados son los círculos, y las letras, las acciones para pasar de un estado a otro (pulsadores).

Realiza un VI con un menúde botones que realiza varias operaciones con dos arrays cuadrados de 3x3, A y B. Elige el modo de iniciaización más cómodo para los arrays. Las operaciones son: para los dos arrays: +, -, * , para el array A: determinante, inversa, transpuesta.

Questions & Answers

what is variations in raman spectra for nanomaterials
Jyoti Reply
I only see partial conversation and what's the question here!
Crow Reply
what about nanotechnology for water purification
RAW Reply
please someone correct me if I'm wrong but I think one can use nanoparticles, specially silver nanoparticles for water treatment.
Damian
yes that's correct
Professor
I think
Professor
what is the stm
Brian Reply
is there industrial application of fullrenes. What is the method to prepare fullrene on large scale.?
Rafiq
industrial application...? mmm I think on the medical side as drug carrier, but you should go deeper on your research, I may be wrong
Damian
How we are making nano material?
LITNING Reply
what is a peer
LITNING Reply
What is meant by 'nano scale'?
LITNING Reply
What is STMs full form?
LITNING
scanning tunneling microscope
Sahil
how nano science is used for hydrophobicity
Santosh
Do u think that Graphene and Fullrene fiber can be used to make Air Plane body structure the lightest and strongest. Rafiq
Rafiq
what is differents between GO and RGO?
Mahi
what is simplest way to understand the applications of nano robots used to detect the cancer affected cell of human body.? How this robot is carried to required site of body cell.? what will be the carrier material and how can be detected that correct delivery of drug is done Rafiq
Rafiq
what is Nano technology ?
Bob Reply
write examples of Nano molecule?
Bob
The nanotechnology is as new science, to scale nanometric
brayan
nanotechnology is the study, desing, synthesis, manipulation and application of materials and functional systems through control of matter at nanoscale
Damian
Is there any normative that regulates the use of silver nanoparticles?
Damian Reply
what king of growth are you checking .?
Renato
What fields keep nano created devices from performing or assimulating ? Magnetic fields ? Are do they assimilate ?
Stoney Reply
why we need to study biomolecules, molecular biology in nanotechnology?
Adin Reply
?
Kyle
yes I'm doing my masters in nanotechnology, we are being studying all these domains as well..
Adin
why?
Adin
what school?
Kyle
biomolecules are e building blocks of every organics and inorganic materials.
Joe
anyone know any internet site where one can find nanotechnology papers?
Damian Reply
research.net
kanaga
sciencedirect big data base
Ernesto
Introduction about quantum dots in nanotechnology
Praveena Reply
what does nano mean?
Anassong Reply
nano basically means 10^(-9). nanometer is a unit to measure length.
Bharti
do you think it's worthwhile in the long term to study the effects and possibilities of nanotechnology on viral treatment?
Damian Reply
absolutely yes
Daniel
how did you get the value of 2000N.What calculations are needed to arrive at it
Smarajit Reply
Privacy Information Security Software Version 1.1a
Good
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get the best Algebra and trigonometry course in your pocket!





Source:  OpenStax, Primeros pasos con labview. OpenStax CNX. Oct 29, 2008 Download for free at http://cnx.org/content/col10592/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Primeros pasos con labview' conversation and receive update notifications?

Ask