Instrucciones Equivalent of If, If-Else y Switch de LabVIEW

Información general

En los lenguajes basados en texto, es posible que esté familiarizado con las instrucciones If, If-Else, o Switch; las estructuras equivalentes de LabVIEW son la estructura Select para instrucciones If simples y Case Structure cuando es necesario tener más opciones de entrada como una instrucción If-Else o Switch. Como sus equivalentes basados en texto, el código de LabVIEW que se ejecuta depende del valor de una entrada. Este documento analiza cómo puede estructurar el código para que se ejecute de manera similar a las instrucciones IfIf-ElseSwitch

Contenido

Instrucciones If

Función de selección

Para condiciones y acciones simples, la función Select completa el trabajo equivalente de una instrucción If. Puede encontrar la función de selección en Functions» Programming >> Comparison >> Select. La función de selección acepta tres entradas. Esas entradas enumeradas en orden de arriba a abajo se pueden ver a continuación:

  1. La salida deseada del caso VERDADERO
  2. Un selector de VERDADERO/FALSO
  3. La salida deseada del caso FALSO
     

La entrada del selector toma datos booleanos. Dependiendo del valor de los datos del selector, la función de selección devuelve el valor conectado a la entrada verdadera o falsa. Las salidas verdaderas y falsas pueden ser de varios tipos de datos. Vea el siguiente ejemplo usando un tipo de datos de cadena de caracteres.

Diagrama - la función de selección usando el tipo de datos de cadena

GUI - entrada de usuario y salida de cadena para la función de selección

Estructura de caso

La función de selección es útil si solo necesita cambiar su salida en función de su entrada. Sin embargo, si necesita cambiar qué código se ejecuta en función de su entrada, querrá utilizar una estructura de caso.

Puede encontrar la estructura de caso en la paleta de Functions en Programming >> Structures >> Case Structure. Hay tres secciones de una estructura de caso:

  1. La etiqueta del selector
  2. Los subdiagramas o casos
  3. Selector de caso
     

La estructura de caso tiene como valor predeterminado un caso Verdadero y un caso Falso. Para cada caso, puede escribir código de LabVIEW que se ejecutará si se cumple la condición del caso.

La estructura de caso tiene una terminal de entrada de signo de interrogación verde llamada terminal del selector de caso. Para usar la estructura de caso en los casos predeterminados de Verdadero/Falso, conecte una entrada booleana a esta terminal para establecer las condiciones para las cuales se debe ejecutar el caso.

El siguiente ejemplo muestra un código similar al ejemplo de selección. La diferencia clave es que con la estructura de caso, puede ejecutar el código de forma selectiva. (Si usa una función de selección, no podrá manipular sus datos (ej. ejecutar código) de forma variable como se ve a continuación).

Diagrama - el valor booleano verdadero ejecuta el caso verdadero en la estructura de caso

Diagrama - el valor booleano falso ejecuta el caso falso en la estructura de caso

En este ejemplo simple, si la entrada del usuario es mayor que 5, el selector de caso lee un booleano verdadero y ejecuta el caso verdadero en el que la entrada del usuario se multiplica por un número aleatorio. Alternativamente, si la entrada del usuario es menor que 5, el selector de caso lee un booleano falso y ejecuta el caso falso donde la entrada se somete a una multiplicación de un número aleatorio mayor. Cada caso tiene un código distinto y salidas diferentes del caso alternativo.

Instrucciones If-Else y Switch

Las estructuras de caso en su forma predeterminada de verdadero/falso se pueden usar como una instrucción If. Sin embargo, una ventaja de usar estructuras de caso es que puede cambiar el tipo de datos de la terminal de selección y agregar casos para crear instrucciones If-Else e instrucciones Switch.

Después de haber creado una estructura de caso, puede cambiar el tipo de datos del selector de entrada a tipos de datos de cadena de caracteres, entero, enumeración o clúster de error. Cablear una entrada del tipo de datos deseado al selector de caso cambia automáticamente las opciones de etiqueta del selector para adaptarse a su nuevo tipo de datos. Por ejemplo, vea en la siguiente figura que una entrada del usuario de tipo de datos numéricos está cableada a la terminal del selector, y la etiqueta del selector ahora muestra una opción numérica.

Diagrama - entrada de usuario de tipo de datos numéricos cableada a la terminal del selector

Puede agregar subdiagramas a la estructura de caso para las otras comparaciones (o posibles estados) que le gustaría hacer.  El caso predeterminado de la estructura de caso sirve como su "else" en la instrucción If-Else o el caso "predeterminado" de la instrucción Switch. En cada caso, el código ejecutado se basa en la entrada cableada a la terminal del selector.

La arquitectura de las estructuras de caso utilizadas como instrucciones Switch ofrece flexibilidad con respecto a los tipos de datos que el usuario puede ingresar, así como la modificación para uso futuro. En lugar de una entrada numérica, la estructura de casos también puede utilizar fácilmente una entrada enumerada modificable como entrada del selector de caso.

Recursos adicionales

Para más información sobre cómo agregar, reorganizar y duplicar casos en la estructura de caso, consulte los tutoriales en Ayuda de LabVIEW de Estructura de Caso.

Consulte Case Structure - Selector Data Types VI en el directorio labview\examples\Structures\Case Structure para ver un ejemplo del uso de la estructura de caso.
(Tenga en cuenta que las diferentes versiones de LabVIEW pueden tener títulos ligeramente diferentes para sus de carpetas de ejemplo).

Se adjunta un VI de ejemplo con las tres estructuras analizadas aquí: una instrucción If con una función de selección, una instrucción If-Else con una estructura de caso y una instrucción If-Else o Switch con una estructura de caso.

Was this information helpful?

Yes

No