Una función en el lenguaje de programación LabVIEW, es conocida con el nombre de SubVI (sub instrumento virtual). Veamos a continuación, cómo se construye una SubVI y lo fácil que resulta utilizarla. Para ello, se utilizará el ejercicio propuesto Calculadora.vi del módulo anterior y se guardará como Calculadora1.vi. En primer lugar se crea el código con el que se quiere hacer el SubVI, a continuación se marca esa porción o bloque de código con el ratón y se ejecuta CreateSubVI, desde el menú Edit, con lo que el código marcado queda asociado al nuevo SubVI con el icono standard de LabVIEW, figura 2. Para cambiar este icono, se hace doble click sobre él, donde se abre el archivo del SubVI y se ejecuta Ctrl+T para ver tanto el panel como el diagrama de esta función. Tanto en el panel como en el diagrama, las salidas aparecen nombradas por defecto con Numeric (izda), cuando lo que interesa es nombrarlas según su función (dcha), ya que de lo contrario cuando vayamos a utilizar esta función no sabremos qué proporciona en cada una de las salidas, figura 3.
A continuación, se pulsa el botón derecho de ratón sobre el símbolo del icono (arriba a la derecha del diagrama) y se ejecuta Edit Icon, tras lo cual aparece la ventana de definición del icono del SubVI, figura 4. Este editor de iconos es muy fácil de utilizar, ya que es muy intuitivo. Para eliminar el contenido del icono por defecto, se marca todo el contenido del mismo con la herramienta selección, habiéndo seleccionado previamente en la paleta de herramientas, y pulsando Supr. A partir de ahí, se puede escribir desde el teclado, para lo cual ha de seleccionarse la herramienta texto , o también se puede dibujar, utilizando la herramienta lápiz, figura 5.
Para el caso que nos sigue, se utiliza la herramienta lápiz, con el que se dibujan los símbolos de las cuatro operaciones aritméticas, figura 6. Tras ello se pulsa OK, donde se puede observar que el icono que aparece ahora tanto en esta función como en la aplicación donde la hemos creado (Calculadora1.vi) es el definido por nosotros. A continuación, se guarda el archivo SubVI con el nombre Calc4 (SubVI).vi. Notar que el sufijo SubVI que aparece entre paréntesis, en el nombre de la función, es insertado por la herramienta LabVIEW de forma automática.
El aspecto final que mostraría la aplicación utilizando el SubVI Calc4 sería el que aparece en la figura 7 izquierda. Conviene comentar que esta función ha sido creada desde la aplicación Calculadora1.vi, pero a partir de ahora, cuando es insertada para ser utilizada en alguna otra aplicación, habrá que identificar cada una de las entradas y salidas, por lo que tendrá que ser expandida desactivando su opción View As Icon, figura 7 derecha. Ésto también es válido para las funciones de librería de LabVIEW.
A partir de ahora, cada vez que se desee insertar cualquier SubVI previamente definido en cualquier aplicación que tengamos abierta en ese momento, basta con ejecutar Select a VI, del menú flotante de Functions del diagrama, figura 8. En realidad, esta forma sirve para introducir tanto SubVIs como VIs, en la aplicación abierta. Es conveniente comentar, que en este caso concreto, en un principio podríamos pensar que se podía haber introducido el VI Calculadora1.vi directamente, el ejercicio propuesto en el módulo anterior. Lo que ocurre es que tal y como se planteó, éste se ejecuta dentro de una sentencia while, por lo que a nosostros nos sobra esta sentencia y por ello no nos sirve incluir este proyecto directamete. En el caso de que ese proyecto no incluyera la sentencia while, entonces sí hubiese servido de SubVI.
Hay que añadir, que la generación de iconos personalizados no está restringida solamente a SubVIs, también es posible hacerlo en cuanquier VI.
De esta manera, utilzando las SubVIs, es posible establecer varios niveles de llamadas entre SubVIs, al igual que ocurre con las funciones en los lenguajes de programación estructurada: una función es llamada desde una aplicación, y ésta a su vez llama a otra y así sucesivamente. Ejecutando View/VI Hierarchy es posible visualizar la jerarquía de llamadas entre SubVIs de una palicación dada. La figura 9 muestra la jerarquía del ejemplo que nos ocupa. Notar que el nivel superior es el entorno de desarrollo LabVIEW de la aplicación Calculadora1.vi, y el inferior Calc4.vi.