Connexions

You are here: Home » Content » LabVIEW Inter-VI Communication Within a Shared Memory Space
Content Actions

LabVIEW Inter-VI Communication Within a Shared Memory Space

Module by: Felix Annan

Summary: Introduces the concept of Inter VI communication in LabVIEW where all the virtual instruments are part of the same application

There is a big difference between how most procedural or event based interaction models and the dataflow model implemented in NI LabVIEW exchange data within the same memory space. This difference is mainly in the actual implementation of the data exchange methodologies. Though some concepts are represented in all, there are a few new additions in LabVIEW.
For example, in Microsoft Visual Basic or Borland Delphi a user might create multiple user interface forms, these forms are basically front panels through which the user interacts with the application. Each form would have a unique name such that variables in different forms could have the same name simply because they are active on different forms.
If a programmer desired to use a variable available from, say, FormA on FormB, and the variable was called ‘name’, the syntax to call the variable on FormB would look something like: FormA.name.
Since there is no text in the graphical programming method of NI LabVIEW (except the formula node and mathscript node), the previously described model does not directly apply. The graphical programming model used in LabVIEW calls for some new and innovative methods of exchanging data. Exchange between virtual instruments in LabVIEW that are part of the same application, meaning that they all share the same memory space, can be by any of the following methods:
  1. Global Variables
  2. Single Process Shared Variables
  3. Queues
  4. Notifiers

Comments, questions, feedback, criticisms?

Send feedback