Home / Labview

Modular Programming In Labview

Rating: 5.0Blog-star
Views: 4503
by Ruchitha Geebu
Last modified: February 11th 2021

Modular programming

Modular programming refers to the idea that programs are easier to read, write, debug, and maintain if they are divided into smaller sub-programs. The benefits of modular programming are several. First of all, it makes our programs easier to write because individual components can be independently written and tested. Second, it makes the “main’’ part of the code easier to read since long code sections are replaced with simple functions (whose internal code is hidden in another file). This also makes our programs simpler to modify. Third, individual components can be reused in other programs. For example, suppose you write a program that accepts data from the keyboard and calculates the average, standard deviation, and so on. If the part of the program that calculates the standard deviation is contained inside a separate function, you could reuse that function in another program that needed to calculate the standard deviation.

If you would like to Enrich your career with an Android certified professional, then visit Mindmajix - A Global online training platform: “LabVIEW training” Course.This course will help you to achieve excellence in this domain.

Even though the simple program structure works well for a simple example, it is counter-productive for longer programs, leading to a lack of clarity and slowing code maintenance and modification. Each well-defined task in a program should be placed in its own program unit. Here you will execute the tasks in program units called subroutines. The main program simply acts as an outline or driver, triggering the execution of the program units that accomplish the tasks. Figure 3.1 shows the modular programming approach. This chapter describes the modular programming approach in LabVIEW software.
Modular Programming

 Power of LabVIEW

The power of LabVIEW lies in the hierarchical nature of the VI. After you create a VI, you can use it on the block diagram of another VI. There is no limit on the number of layers in the hierarchy. Modular programming helps manage changes and debug the block diagram quickly. Modularity defines the degree to which your VI is composed of discrete components such that a change to one component has minimal impact on other components. These components are called modules or subVIs. Modularity increases the readability and reusability of your VIs. As you create VIs, you might find that you perform a certain operation frequently. Consider using subVIs or loops to perform that operation repetitively. In Figure 3.2 the block diagram contains two identical operations to convert temperature in Celsius to Fahrenheit inside and outside the loop. You can create a subVI that performs that operation and call the subVI twice. The example in Figure 3.3 calls this temperature VI as a subVI twice on its block diagram and functions the same as the previous block diagram. You also can reuse the subVI in other VIs.

Frequently Asked LabVIEW Interview Questions & Answers

Block diagram with two identical operations

Temperature VI as as a subVI called twice on its block diagram
A VI within another VI is called a subVI. A subVI corresponds to a subroutine in text-based programming languages. You can reuse a subVI in other VIs. If you use a VI as a subVI, the icon identifies the subVI when it is called from the block diagram of another VI. Windows Explorer also uses the icon to identify the .vi file if you enable this feature. The steps to create a subVI is, first build a VI front panel and block diagram, next build the icon and the connector pane and then you can use the VI as a subVI.

Check Out LabVIEW Tutorials


About Author

NameRuchitha Geebu
Author Bio

I am Ruchitha, working as a content writer for MindMajix technologies. My writings focus on the latest technical software, tutorials, and innovations. I am also into research about AI and Neuromarketing. I am a media post-graduate from BCU – Birmingham, UK. Before, my writings focused on business articles on digital marketing and social media. You can connect with me on LinkedIn.