Refer to the LabVIEW 2009 Upgrade Notes for a complete list of new features and changes, for information about upgrade and compatibility issues specific to different versions of LabVIEW, and for upgrading instructions.
Refer to the readme.html in the labview directory for known issues, a partial list of bugs fixed, additional compatibility issues, and information about late-addition features in LabVIEW 2009.
Installing LabVIEW
(Windows) With LabVIEW 2009 you can install LabVIEW and select modules and toolkits from the LabVIEW Platform DVDs. Refer to the Installing LabVIEW 2009 section of the LabVIEW Release Notes for more information.
New Example VIs
Refer to the New Examples for LabVIEW 2009 folder on the Browse tab of the NI Example Finder to view descriptions for and launch example VIs added to LabVIEW 2009.
Block Diagram Enhancements
LabVIEW 2009 includes the following enhancements to the block diagram and related functionality.
Cleaning Up Sections of the Block Diagram Automatically
You can select wires and objects on the block diagram and then select Edit»Clean Up Selection to reroute the wires and reorder the objects you selected automatically. To prevent LabVIEW from rerouting wires and reordering objects within a structure, right-click the structure and select Exclude from Diagram Cleanup from the shortcut menu.
Enabling Parallel For Loop Iterations
When you use a For Loop, LabVIEW executes the loop iterations sequentially. If a For Loop is computationally intensive, consider running the loop iterations parallel to each other to improve performance. Select Tools»Profile»Find Parallelizable Loops to analyze a VI for For Loop iterations you can parallelize. LabVIEW displays results in the Find Parallelizable Loops Results window. If you launch this window from the Project Explorer window, LabVIEW analyzes all VIs in the project.
Right-click a For Loop border and select Configure Iteration Parallelism from the shortcut menu to display the For Loop Iteration Parallelism dialog box. Use this dialog box to enable and configure parallelism on the iterations of a For Loop.
Shared Variable Enhancements
LabVIEW 2009 includes the following shared variable enhancements.
Fixed-Point Data Type Support
Shared variables, including I/O variables, support the fixed-point data type.
Programmatically Finding, Reading, and Writing Variables
LabVIEW 2009 includes new functions, classes, properties, and methods you can use to find, read and write network-published shared variables and I/O variables programmatically. Although you still can use the Datasocket VI and functions to read and write shared variables programmatically, the new shared variable API offers enhanced flexibility. Unlike the Datasocket API, the new shared variable API supports I/O variables and includes classes you can use to work with variable engines and variable containers.
Scanned I/O Support
LabVIEW 2009 includes support for scanned I/O with the NI Scan Engine and I/O variables, which previously required the LabVIEW Real-Time Module. The NI Scan Engine enables efficient single-point access to sets of data channels, such as I/O channels, using a scan that stores data in a global memory map and updates all values at a single rate, known as the scan period. An I/O variable is a type of shared variable that uses the NI Scan Engine for single-point access to I/O data. At the time of the LabVIEW 2009 release, CompactRIO, DeviceNet , EtherCAT, and Wireless Sensor Network devices offer drivers with NI Scan Engine support. However, additional I/O drivers with NI Scan Engine support might become available before the next release of LabVIEW. Refer to the specific I/O driver documentation for more information about NI Scan Engine support.
Timed Structure Timing Sources
LabVIEW 2009 includes the following built-in timing sources you can select as the timing source for a Timed Loop, Timed Loop with Frames, or Timed Sequence structure:
- 1 kHz <absolute time>
- 1 MHz <absolute time>
You can use the new 1 kHz <absolute time> and 1 MHz <absolute time> timing sources to synchronize the start of timed structures running on multiple computing devices.
Miscellaneous Block Diagram Enhancements
LabVIEW 2009 includes the following miscellaneous block diagram enhancements:
- You can right-click a Shared Variable node and select Show Variable In Project from the shortcut menu to highlight the corresponding shared variable in the Project Explorer window.
- Custom probes are available in the LabVIEW Base Package.
Front Panel Enhancements
LabVIEW 2009 includes the following enhancements to the front panel and related functionality.
2D Graph Enhancements
The Graph palette includes the following new 2D graphs:
- 2D Compass Plot
- 2D Error Plot
- 2D Feather Plot
- XY Plot Matrix
3D Graph Enhancements
The 3D Graph palette includes the following new 3D graphs:
- 3D Bar Plot
- 3D Comet Plot
- 3D Contour Plot
- 3D Mesh Plot
- 3D Pie Plot
- 3D Quiver Plot
- 3D Ribbon Plot
- 3D Scatter Plot
- 3D Stem Plot
- 3D Surface Plot
- 3D Waterfall Plot
Miscellaneous Front Panel Enhancements
LabVIEW 2009 includes the following miscellaneous front panel enhancements:
- Digital waveform graphs automatically display the line and bus names you specify for the digital signals.
- The name of the 3D Picture Control changed to 3D Picture.
- The name of the Picture indicator changed to 2D Picture. In addition, 2D Picture indicators are available in the LabVIEW Base Package.
- Subpanel controls and tree controls are available in the LabVIEW Base Package.
- You can right-click a front panel control bound to a shared variable and select Show Variable In Project from the shortcut menu to highlight the corresponding shared variable in the Project Explorer window.
- In LabVIEW 8.6 and earlier, the default range of the front panel scroll bar allows you to scroll past all visible objects by one-fourth of the window dimensions during both run time and edit time. In LabVIEW 2009, the default range of the scroll bar behaves differently during run time than during edit time. During run time the default range of the scroll bar extends 10 pixels past the bounding rectangle of all visible front panel objects.
Environment Enhancements
LabVIEW 2009 includes the following enhancements to the LabVIEW environment.
Access Scope Enhancements
Libraries, LabVIEW classes, and XControls include a community access scope. Use community access scope to allow only members of a library and any VI or library designated as a friend to access the library. Use the Item Settings page of the Project Library Properties dialog box to specify the access scope for members of a library. Use the Friends page of the Project Library Properties dialog box to specify the friends of a project library.
If you specify a VI as a friend of a library, the VI can access any member of the library that is in community scope. You also can specify a library as a friend of another library.
Use the Class Properties and XControl Properties dialog boxes to set classes and XControls to community access scope and specify friends.
Create New Instrument Driver Project Wizard Enhancements
The Create New Instrument Driver Project wizard includes the following new templates:
Domain Account Manager Enhancements (Windows)
LabVIEW 2009 includes the following enhancements to the Domain Account Manager:
- Use the Domain Account Manager to export a local domain. Then import the domain to a computer you use to deploy LabVIEW applications. When you import a domain, the Domain Account Manager checks whether a local domain already exists on the computer. If a local domain exists, the Domain Account Manager prompts you to save a copy of the existing local domain before you import the new domain. The Domain Account Manager does not allow you to import a domain if it already exists on the network.
- The Import Lookout 4.x Security File menu option is renamed to Import Lookout Security File and is no longer available in the File»New menu of the Domain Account Manager. Instead, select File»Import and Export»Import Lookout Security File or right-click the domain list and select Import and Export»Import Lookout Security File from the shortcut menu to import a Lookout account.
Getting Started Window Enhancements
LabVIEW 2009 updates the Latest from ni.com section of the Getting Started window with news, technical content, example programs, and training information from the National Instruments Web Site at ni.com. LabVIEW dynamically populates these categories with a list of articles that relate to LabVIEW and any modules and toolkits you have installed. LabVIEW notifies you of new content by displaying the number of unread articles next to the category name.
 |
Note LabVIEW disables updates from ni.com by default in localized versions of LabVIEW. Localized versions of LabVIEW do not support automatic updates from ni.com. In localized versions of LabVIEW, the links in this category display static content from ni.com in a Web browser. |
LabVIEW Class Hierarchy Window Enhancements
LabVIEW 2009 includes the following enhancements to the LabVIEW Class Hierarchy window:
- The color of the background, the lines that connect items, and the VI borders in the LabVIEW Class Hierarchy window changed to improve visibility of items in the hierarchy.
- The LabVIEW Class Hierarchy window arranges nodes in the hierarchy into groups according to the libraries to which the nodes belong. Nodes in the same library share the same border color.
- The View menu in the LabVIEW Class Hierarchy window includes the following new menu items: Always Show Labels, Zoom In, Zoom Out, Actual Size, andFit to Window.
Performance Enhancements
LabVIEW 2009 includes an upgraded version of Math Kernel Library (MKL) 10.0 software for Windows and Linux. MKL is third-party software that LabVIEW uses to improve performance of linear algebra VIs. For more information regarding MKL, refer to the Copyright topic of the LabVIEW Help.
Searching Enhancements
The Quick Drop and Search Palettes dialog boxes include a new search algorithm that searches all controls, VIs, and functions by keywords and sorts the search results by relevance, instead of alphabetically by name.
VI Hierarchy Window Enhancements
LabVIEW 2009 includes the following enhancements to the VI Hierarchy window:
- The color of the background, the lines that connect items, and the VI borders in the VI Hierarchy window changed to improve visibility of items in the hierarchy.
- The VI Hierarchy window displays shared variables.
- The VI Hierarchy window shows recursive relationships by connecting the related VIs with a dotted line.
- The VI Hierarchy window arranges nodes in the hierarchy into groups according to the libraries to which the nodes belong. Nodes in the same library share the same border color.
- The View menu in the VI Hierarchy window includes the following new menu items: Always Show Labels, Zoom In, Zoom Out, Actual Size, and Fit to Window.
Dialog Box Enhancements
LabVIEW 2009 includes the following dialog box enhancements.
Class Properties Dialog Box Enhancements
LabVIEW 2009 includes the following changes to the Class Properties dialog box:
- On the Item Settings page, place a checkmark in the Require overrides of this dynamic dispatch VI to always invoke the Call Parent Method node checkbox to require that all dynamic dispatch VIs that override the specified VI invoke the Call Parent Method node.
- On the Item Settings page, place a checkmark in the Require descendant classes to override this dynamic dispatch VI checkbox to require all child classes to define an override member VI of the VI you select.
- On the Inheritance page, place a checkmark in the Transfer all Must Override requirements to descendant classes checkbox to allow the class to transfer all override requirements to any descendant classes instead of overriding the dynamic dispatch VI itself.
- On the Inheritance page, place a checkmark in the Restrict references of this class type to member VIs of this class checkbox to allow only member VIs to create or delete data value references to a class.
- On the Inheritance page, place a checkmark in the Restrict references of descendant class types to member VIs of this class checkbox to allow only member VIs to create or delete data value references to descendant classes of a class.
Options Dialog Box Enhancements
LabVIEW 2009 includes the following enhancements to the Options dialog box:
- The pages in the Options dialog box are organized into sections to improve usability.
- The options on the Colors, Fonts, and Debugging pages moved to the Environment page.
- The options on the Alignment Grid page moved to the Front Panel page and the Block Diagram page.
- The VI Server pages are combined into one page.
- The Web Server pages are combined into one page.
- Rarely used options no longer exist in the Options dialog box. Refer to the KnowledgeBase for a list of these deprecated options and information about alternative ways to set the options.
- The Use numbers in icons of new VIs (1 through 9) checkbox on the Front Panel page allows you to specify whether LabVIEW automatically places numbers on the icons of the first nine VIs you create after you launch LabVIEW. This option does not affect VIs you create from templates.
- The Disable ni.com updates in Getting Started window checkbox on the Environment page allows you to disable the automatic check for the latest articles on the ni.com Web site.
- The default number of steps for the Maximum undo steps per VI option on the Environment page changed from 9 to 30.
- The Maximum entries in recent files lists option on the Environment page allows you to specify the number of files LabVIEW lists when you select File»Recent Files.
- The Advanced Settings section of the Web Server page allows you to enable SSL on a non-default instance of the LabVIEW Web server.
Quick Drop Dialog Box Enhancements
LabVIEW 2009 includes the following enhancements to the Quick Drop dialog box:
- The Quick Drop dialog box displays project items by name from active LabVIEW projects. You can search for project items without navigating the Project Explorer window.
- While the Quick Drop dialog box is active, you can access the following shortcuts:
- <Ctrl-D>—Creates controls and indicators for all unwired inputs and outputs of the selected block diagram object(s).
- <Ctrl-Shift-D>—Creates constants for all unwired inputs of the selected block diagram object(s).
- <Ctrl-R>—Removes the selected block diagram object(s) and any wires and constants connected to the selected object(s). This shortcut also connects wires of identical data types that were wired to the inputs and outputs of the deleted object(s).
- <Ctrl-T>—Moves the labels for all front panel control terminals to the left of the terminal on the block diagram and moves the labels for all front panel indicator terminals to the right of the terminal on the block diagram.
Miscellaneous Dialog Box Enhancements
LabVIEW 2009 includes the following miscellaneous dialog box enhancements:
- The Navigation window and the Show Buffer Allocations window are available in the LabVIEW Base Package.
- The Servers page of the Web Service Properties dialog box is renamed to the Service Settings page. The Web Service Properties dialog box configures settings for the Web Server, service aliases, and default request support.
- The Advanced page of the Web Service Properties dialog box allows you to enable remote debugging of Web service and generate log files of the Web service build.
- The Scan Engine page, which previously required the LabVIEW Real-Time Module, is available in the My Computer Properties dialog box in the LabVIEW Base Package.
- The Browse Variables dialog box displays shared variables you can use in a variable refnum control or constant when finding, reading, or writing shared variables programmatically.
- The Configuration page of the Variable Refnum Properties dialog box includes options you can set to configure the data type, access, and timestamp settings of a variable refnum control or constant.
- The Edit Events dialog box includes a new layout to improve usability.
- The Locate Distribution dialog box no longer exists. To copy all necessary components from a distribution into a permanent location on the computer, place a checkmark in the Copy selected distributions to this computer during the build checkbox on the Additional Installers page of the Installer Properties dialog box.
- The Edit Controls and Functions Palette Set dialog box supports the use of both LabVIEW (32-bit) and LabVIEW (64-bit) on the same computer. If you edit a palette set, LabVIEW 2009 saves the edits to the x\Palettes\menus directory, where x is the version of LabVIEW, in the default data directory. The version number includes either (32-bit) or (64-bit), respectively. For example, if you edit a palette set in the 32-bit version of LabVIEW 2009, LabVIEW saves the edits to the 2009\(32-bit)\Palettes\menus directory.
Controls Palette Enhancements
LabVIEW 2009 includes the following palette enhancements:
- The System palette includes the following subpalettes:
- Numeric
- Boolean
- String & Path
- Ring & Enum
- Containers
- List, Table & Tree
- Decorations
- The List & Table palette is renamed the List, Table & Tree palette.
- The Container palette includes a subpanel control.
Miscellaneous Environment Enhancements
LabVIEW 2009 includes the following miscellaneous environment enhancements:
- The View menu includes the new menu item This VI in Project.
- The Window menu includes the new menu item Show Project.
- The Tools»Instrumentation»Advanced Development»Show Icon Art Glossary menu item no longer exists. Use the Glyphs page of the Icon Editor dialog box, which includes all glyphs in the Icon Library at ni.com, instead.
- Names for image files that LabVIEW generates include the full qualified name of the VI.
LabVIEW Application Builder Enhancements
LabVIEW 2009 includes the following enhancements to the LabVIEW Application Builder, which you can access by right-clicking Build Specifications in the Project Explorer window, and selecting the type of distribution from the shortcut menu that you want to create:
- The Application Builder no longer moves VIs with conflicting filenames outside of stand-alone applications, shared libraries, or Web services for build specifications you create in LabVIEW 2009. In LabVIEW 8.6 and earlier, the Application Builder saves VIs and library files in a flat list within the application and saves VIs with conflicting filenames outside the application in separate directories.
If you build a stand-alone application or shared library using LabVIEW 2009, the Application Builder stores source files within the application using a layout similar to the directory structure of the source files on disk. For example, the following table lists the relative paths for a top-level VI, foo.vi, which calls a.vi and b.vi. C:\..\Application.exe represents the path to the application.
| Path to source files |
Path to files in application |
| C:\Source\foo.vi |
C:\..\Application.exe\foo.vi |
| C:\Source\xxx\a.vi |
C:\..\Application.exe\xxx\a.vi |
| C:\Source\yyy\b.vi |
C:\..\Application.exe\yyy\b.vi |
To use the legacy file layout, place a checkmark in the Use LabVIEW 8.x file layout checkbox on the Advanced page of the Application Properties, Shared Library Properties, and Web Service Properties dialog boxes. LabVIEW enables this option by default for build specifications you load from previous LabVIEW versions.
- (Windows) The .NET interop assembly build specification allows you to build and distribute VIs in a LabVIEW project as .NET interop assemblies. Right-click Build Specifications in the Project Explorer window and select New».NET Interop Assembly from the shortcut menu to display the .NET Interop Assembly Properties dialog box.
- The Build Application from VI dialog box allows you to build an application from the VI you are currently editing.
Application Builder Dialog Box Enhancements
LabVIEW 2009 includes the following enhancements to the LabVIEW Application Builder:
- The Generate build log file option on the Advanced page of the Application Properties, Shared Library Properties, and Web Service Properties dialog boxes allows you to create a log file that includes information about the build, such as source files, build start and end time, and any errors that occur during the build.
- The Shared Variable Deployment page of the Application Properties dialog box allows you to specify dependent libraries containing shared variables to deploy at run time.
- The Advanced page of the Source Distribution Properties dialog box allows you to generate a log file that includes information about the build, such as source files, build start and end time, and any errors that occur during the build.
- The Windows Security page of the Application Properties, Shared Library Properties, and .NET Interop Assembly Properties dialog boxes allows you to configure security settings for computers running Windows. You can use this page to apply a digital signature and embed a manifest file with the build.
LabVIEW Project Enhancements
LabVIEW 2009 includes the following enhancements to the LabVIEW project and related functionality.
Miscellaneous Project Enhancements
LabVIEW 2009 includes the following miscellaneous project enhancements:
- The Why is this item in Dependencies? dialog box allows you to find all project items not listed under dependencies that depend on the selected item.
- The Find Friends dialog box allows you to to find all friends of a specific class in the project.
- The Find Children dialog box allows you to find all children of a specific class in the project.
- The Find Callers dialog box allows you to find all VIs in the project that use a shared variable node to reference a specific shared variable.
- The linkage between shared variables and their containing project libraries has been improved, eliminating problems that might occur when you save copies of complex project libraries.
New and Changed VI, Function, and Node Enhancements
LabVIEW 2009 includes the following new and changed VIs, functions, and nodes. Refer to the VI and Function Reference book on the Contents tab of the LabVIEW Help for more information about VIs, functions, and nodes.
New VIs and Functions
LabVIEW 2009 includes the following new VIs and functions.
Advanced Curve Fitting VIs
The Advanced Curve Fitting palette includes the following new VIs:
Application Control VIs and Functions
The Application Control palette includes the new CPU Information palette with the following new functions:
Differential Equations VIs
The Differential Equations palette includes the new Partial Differential Equations palette with the following new VIs:
File I/O VIs and Functions
The File I/O palette includes the following new VIs:
Fixed-Point Functions
The Fixed-Point palette includes the following new functions:
Matrix Functions
The Array and Linear Algebra palettes include the new Matrix palette with the following new functions:
Memory Control VIs, Functions, and Nodes
The Memory Control palette includes the following new functions:
Shared Variable VI, Functions, and Node
The Shared Variable palette includes the following new functions:
The Shared Variable palette includes the new I/O Variable palette with the following new functions:
The Shared Variable palette includes the new PSP Variable palette with the following new functions:
Signal Manipulation Express VIs
The Signal Manipulation palette includes the following new Express VIs:
Utility VIs
The Utilities palette includes the following new VIs:
XML Parser VIs and Functions
The XML Parser palette includes the following new VIs:
Miscellaneous New VIs and Functions
LabVIEW 2009 includes the following miscellaneous new VIs and functions:
Changed VIs, Functions, and Nodes
The following VIs, functions, and nodes changed in LabVIEW 2009.
Advanced IIR Filtering VIs
The Advanced IIR Filtering palette includes the following changed VIs.
The following VIs include a filter structure option input, which specifies the order of the IIR cascade filter:
Connectivity VIs and Functions (Windows)
The Connectivity palette includes the following changed VIs:
- The Create Registry Key VI includes a registry view input, which specifies whether to create a 32-bit key or a 64-bit key on a 64-bit operating system.
 |
Note The following VIs are available only in the LabVIEW Full and Professional Development Systems. |
- Set ESP Variable—Includes polymorphic instances that accept string, Boolean, and numeric data types.
- Write Session Variable—Includes polymorphic instances that accept string, Boolean, and numeric data types.
Digital Waveform VIs and Functions
The Digital Waveform palette includes the following changed VIs:
- Append Digital Signals—The DWDT instance combines the names of the digital signals.
- Digital Signal Subset—The DWDT instance returns the names of the signals in the digital waveform subset if the signals in the subset have names.
File I/O VIs and Functions
The File I/O palette includes the following changed VIs:
- Close Config Data—The write configuration file? input is renamed write file if changed.
- Get Key Names—The found? output is renamed section exists?.
- Open Config Data—Includes a file created? output that returns TRUE if the configuration file operation creates a file. Also, the create file if necessary? input is renamed create file if necessary.
- Recursive File List—Includes a Continue Recursing on Error? input that specifies whether to continue recursing directories if an error occurs. This VI also includes a Folders to Exclude input that specifies folder names to exclude during the recursion.
- Remove Section—The found? output is renamed section exists?.
- Read From Measurement File—The Reopen file input is renamed Reset.
- Write Key—Includes a found? output that is TRUE if the VI found the key in the specified section.
Fitting VIs
The Fitting palette includes the following changed VIs:
- Exponential Fit—Includes a parameter bounds input that contains the upper and lower constraints for the amplitude, damping, and offset. This VI also includes an offset output that returns the offset of the fitted model. This VI no longer includes a refine? input.
- Gaussian Peak Fit—Includes a parameter bounds input that contains the upper and lower constraints for the amplitude, center, standard deviation, and offset. This VI also includes an offset output that returns the offset of the fitted model.
- General Linear Fit—Includes a tolerance input that determines when to stop the iterative adjustment of Coefficients. This VI also includes a method input that specifies the fitting method. The name of this VI also changed from General LS Linear Fit to General Linear Fit.
- General Polynomial Fit—Includes a tolerance input that determines when to stop the iterative adjustment of Polynomial Coefficients. This VI also includes a method input that specifies the fitting method.
- Linear Fit—Includes a parameter bounds input that contains the upper and lower constraints for the slope and intercept.
- Logarithm Fit—Includes a parameter bounds input that contains the upper and lower constraints for the amplitude and scale.
- Power Fit—Includes a parameter bounds input that contains the upper and lower constraints for the amplitude, power, and offset. This VI also includes an offset output that returns the offset of the fitted model.
Mathematics VIs
The Mathematics palette includes the following changed VIs:
- Integral x(t)—Includes an integration method input, which specifies the method to use to perform the numeric integration. Also, the Initial Condition and Final Condition inputs changed to specify the initial and final conditions, respectively, of X in the integration calculation based on integration method. The data types of Initial Condition and Final Condition changed from double-precision, floating-point numbers to 1D arrays of double-precision, floating-point numbers.
- Matrix Characteristic Polynomial—Is a polymorphic VI with the following instances: Real Characteristic Polynomial and Complex Characteristic Polynomial.
- Numeric Integration—The data type of the integration method input changed to a 32-bit signed integer for all three instances of the VI.
- Quadrature—Includes the following new instances: 2D Quadrature (VI), 2D Quadrature (Formula), 3D Quadrature (VI), and 3D Quadrature (Formula).
- (Riemann) Zeta Function—The x input and the z(x) output changed to complex double-precision data types.
- Test Matrix Type—Allows you to specify a Symmetric or Hermitian type in the matrix type input.
Memory Control VIs, Functions, and Nodes
The Memory Control palette includes the following changed structure.
The In Place Element structure includes an Array Split / Replace Subarrays border node and a Data Value Reference Read / Write Element border node.
Report Generation VIs
The Report Generation VIs palette includes the following changed VIs:
- Easy Text Report—The print or save? (Word/Excel) input is renamed to print or save? (Word/Excel/HTML).
- Dispose Report—The save changes? input is optional.
Signal Generation VIs
The Signal Generation palette includes the following changed VIs.
The following VIs include an initialize? input, which controls the reseeding of the noise sample generator. Also, the seed input changed to determine how to generate the internal seed state when initialize? is TRUE.
Sound VIs (Mac OS)
The VIs on the Sound palette on Mac OS include the following changes:
 |
Note LabVIEW 2009 supports the same API for Windows, Mac OS, and Linux. |
- The VIs support monophonic and stereophonic sound.
- A waveform represents sound data. You can use elements of 8-bit unsigned, 16-bit signed, or 32-bit signed integers, or single and double-precision data to represent the Y array data. Each waveform defines one channel.
- The format of the sound data is Pulse Code Modulated (PCM).
- The VIs can produce continuous sound output.
- The VIs allow for a streaming view of wave files.
- The VIs include improvements to error checking.
TDM Streaming VIs and Functions
The TDM Streaming palette includes the following changed functions:
- TDMS Open—Includes a disable buffering input that specifies whether LabVIEW opens, creates, or replaces a .tdms file without system buffering. This function also includes a byte order input that specifies the endian format of the data in a .tdms file.
This function also includes a file format version input that specifies the version of a .tdms file. The file format version 2.0 includes all features from version 1.0, as well as the following additional features:
- You can write interleaved data to a .tdms file.
- You can write .tdms data in different endian formats, or byte orders.
Use the TDMS Convert Format VI to convert the file format version of a .tdms file from 1.0 to 2.0 or vice versa.
- TDMS Write—Includes a data layout input that specifies the arrangement of the data you want to stream to a .tdms file.
Waveform Measurements VIs
The Waveform Measurements palette includes the following changed VIs:
- Extract Multiple Tone Information—Includes the following new instances: Extract Multiple Tone Information 1 Chan (CDB), Extract Multiple Tone Information N Chan (CDB), and Extract Multiple Tone Information N Channels - N Specs (CDB).
- Extract Single Tone Information—Includes the following new instances: Extract Single Tone Information 1 Chan (CDB) and Extract Single Tone Information N Chan (CDB).
Zeros VIs
The Zeros palette includes the following changed VIs:
- Find All Zeros of f(x)—Is a polymorphic VI with the following instances: Find All Zeros of f(x) (Formula) and Find All Zeros of f(x) (VI). The Find All Zeros of (fx) (Formula) instance has the same functionality as the Find All Zeros of f(x) VI in LabVIEW 8.6.
- nD Nonlinear System Single Solution—Is a polymorphic VI with the following instances: nD Nonlinear System Single Solution (Formula) and nD Nonlinear System Single Solution (VI). The nD Nonlinear System Single Solution (Formula) instance has the same functionality as the nD Nonlinear System Single Solution VI in LabVIEW 8.6.
- nD Nonlinear System Solver—Is a polymorphic VI with the following instances: nD Nonlinear System Solver (Formula) and nD Nonlinear System Solver (VI). The nD Nonlinear System Solver (Formula) instance has the same functionality as the nD Nonlinear System Solver VI in LabVIEW 8.6.
- Newton Raphson Zero Finder—Is a polymorphic VI with the following instances: Newton Raphson Zero Finder (Formula) and Newton Raphson Zero Finder (VI). The Newton Raphson Zero Finder (Formula) instance has the same functionality as the Newton Raphson Zero Finder VI in LabVIEW 8.6.
- Ridders Zero Finder—Is a polymorphic VI with the following instances: Ridders Zero Finder (Formula) and Ridders Zero Finder (VI). The Ridders Zero Finder (Formula) instance has the same functionality as the Ridders Zero Finder VI in LabVIEW 8.6.
Miscellaneous VI, Function, and Node Changes
LabVIEW 2009 includes the following miscellaneous VI, function, and node changes:
- The n or n-1 dim array input of the Insert Into Array function changed so that if n-dim array is an array of references, n or n-1 dim array must be a reference or array of references from the same child class as n-dim array.
- The 3D Graph Properties VIs, the Cursor VIs, the Graphics Formats VIs, the Picture Functions VIs, the Picture Plots VIs, and the SMTP Email VIs are available in the LabVIEW Base Package.
- The icons for the New and Close VIs changed.
- The Feedback Node includes new configuration options. You can display the node in z-transform view, specify the number of block diagram executions or loop iterations to delay the output of the node, enable or disable the node, and specify when the node initializes.
- The behavior of the Configuration File VIs and how they read data from .ini files for section and key inputs changed. The key input does not accept a semicolon as the first character of the key name, and the VIs do not accept a key input without a value input. Also, a closed bracket is not supported in the section input, and the VIs do not produce modified comments.
- The NI Scan Engine VIs, which previously installed with the LabVIEW Real-Time Module, are available in the LabVIEW Base Package.
New and Changed Classes, Properties, Methods, and Events
LabVIEW 2009 includes new VI Server classes, properties, methods, and events. Refer to the LabVIEW 2009 Features and Changes»New VI Server Objects topic on the Contents tab of the LabVIEW Help for a list of new classes, properties, methods, and events.
3DPC_SurfacePlot Properties and Methods
The 3DPC_SurfacePlot class includes the new Cursor List property.
Math Plots Properties and Methods
Refer to the Property and Method Reference»Math Plots book on the Contents tab of the LabVIEW Help for a list of new properties and methods you can use with the new 2D and 3D graphs.
Variable Properties and Methods
LabVIEW 2009 includes new Variable properties and methods you can use to find, read, and write shared variables programmatically.
VI Server Properties and Methods
LabVIEW 2009 includes the following VI Server method changes:
- Get VI Version—Returns the LabVIEW file format version of the VI. This version might be different from the version of LabVIEW in which the VI was last saved. You can use the Get VI Editor Version method to retrieve the version of LabVIEW that last saved the VI.
- Library:Get File LabVIEW Version—Returns the LabVIEW file format version of the library. This version might be different from the version of LabVIEW in which the library was saved.
- Source Scope:Set—Includes the community access scope.
XML Parser Properties and Methods
LabVIEW 2009 includes the following new XML Parser properties:
LabVIEW Object-Oriented Programming Enhancements
In LabVIEW 2009 you can deploy VIs that use LabVIEW classes or that call member VIs of a LabVIEW class to RT targets. If you deploy a VI that uses a class or calls a member VI, only the VIs and classes referenced in the application deploy to the target. If the deployed VIs reference any dynamic dispatch member VIs, all the VIs that override the dynamic dispatch member VIs in descendant classes also deploy.
LabVIEW Web Services Enhancements (Windows, Not in Base Package)
LabVIEW 2009 includes the following enhancements to Web services:
SSL Support for the LabVIEW Web Server
You can enable Secure Sockets Layer (SSL) encryption on the LabVIEW Web Server. SSL encryption allows you to create secure, encrypted connections for communication between clients and the Web Server. SSL is useful for Web server features such as Web services, remote front panels, and publishing static images and documents.
SSL uses X.509 certificates to establish encrypted connections between a client and the Web Server. You can use the default LabVIEW self-signed certificate, or using the NI Distributed System Manager, you can create custom self-signed certificates and certificate signing requests (CSR) to be digitally signed by a certificate authority (CA).
Comparing VIs Using the Command Line or a Third-Party Source Control Provider
LVCompare.exe is a command-line executable that compares two VIs you specify. You can invoke LVCompare.exe from the command line of a computer or from a third-party source control provider. Use the following command-line syntax: <absolute path to VI 1> <absolute path to VI 2> [-lvpath <path to LabVIEW>][-noattr][-nofp][-nofppos][-nobd][-nobdcosm][-nobdpos]
 |
Note LVCompare.exe is available only in the LabVIEW Professional Development System. |
Debugging with the Probe Watch Window
The Probe Watch Window replaces individual floating Probe windows as a unified tool to view and manage all probes in the current instance of LabVIEW.
Icon Editor Enhancements
In LabVIEW 8.6 and earlier, the Icon Editor dialog box includes basic editing tools with which you can create 256-color, 16-color, and black-and-white icons. You create each type of icon individually.
In LabVIEW 2009, the Icon Editor dialog box provides an enhanced set of editing tools for creating icons. The Icon Editor dialog box provides icon templates, glyphs from the Icon Library at ni.com, options for adding and formatting icon text, and support for editing with layers. The Icon Editor dialog box saves icons you create in both 256-color and black-and-white format. You also can use the Icon Editor dialog box to create and save icon templates or glyphs for later use. You can save these images as 256-color .png files.
To edit the icon for a VI or custom control, double-click the icon in the upper right corner of the front panel window, block diagram window, or Control Editor window to display the Icon Editor dialog box. You also can right-click the icon and select Edit Icon from the shortcut menu to display the Icon Editor dialog box. To edit the icon for a project library, statechart, class, or XControl, click the Edit Icon button on the General Settings page of the corresponding Properties dialog box to display the Icon Editor dialog box.
LabVIEW 2009 (64-bit)
LabVIEW 2009 introduces a 64-bit version of the LabVIEW Development System. When run on Windows Vista (64-bit version), LabVIEW 2009 (64-bit) provides access to more memory than either a 32-bit operating system or a 32-bit application can provide. LabVIEW 2009 (64-bit) includes nearly all of the development environment features of LabVIEW 2009 (32-bit), including the LabVIEW Application Builder.
Refer to the National Instruments Web site for information about obtaining a copy of LabVIEW 2009 (64-bit).
Supported Hardware
LabVIEW 2009 (64-bit) supports many hardware devices. Drivers are available for DAQ devices, VISA devices, GPIB devices, and image acquisition devices. For GPIB devices, you must use at least NI-488.2 version 2.6 for Windows. Refer to the specific hardware documentation for more information about compatibility with LabVIEW 2009 (64-bit).
Supported Modules
LabVIEW 2009 (64-bit) supports only the NI Vision Development Module. Refer to the Vision Development Module documentation for more information. LabVIEW 2009 (64-bit) does not support any additional modules, toolkits, or add-ons.
Recursion
You can use recursion in LabVIEW 2009 if all VIs in the VI hierarchy are reentrant and at least one of the VIs shares clones of itself between calls. After you configure a VI to be reentrant, you can drag the icon of the VI onto its own block diagram.
Reusing Sections of Code
You can save sections of code, or VI snippets, from the block diagram to reuse later or to share with other LabVIEW 2009 users. When you save a section of code, LabVIEW embeds the code into a .png image file. The image shows a picture of the code and also contains the actual code.
To save a section of code, select the section of code you want to save and then select Edit»Create VI Snippet from Selection. After you save the VI snippet as a .png file, you can drag the file from the directory where you saved it and drop the file onto the block diagram, or you can share the file with other LabVIEW 2009 users so they can use the code.
Using the TDM Excel Add-In (Windows)
Use the TDM Excel Add-In to load .tdm and .tdms files into Microsoft Excel. From a toolbar in Excel, choose which properties load into Excel at the file, group, and channel levels, including custom properties.