Image

Counting Down The Top 10 New Features In LabVIEW 2009

Aug. 12, 2009
The latest version of National Instruments' LabVIEW includes a number of improvements. Key enhancements include its 3D Math Plots, Verification and Validation support, Partial Block Cleanup, Icon Editor, MathScriptRT Module, FPGA Compile Window, Statechar

Everyone likes a top 10 list, and it was easy to find 10 improvements in National Instruments’ latest incarnation of LabVIEW. Developers who use the package will likely have their own favorites since the latest features span a range of facilities.

Some of the newest additions like 3D Math Plots have been on the wish list for a while. Developers will now have 11 types of graphs to choose from. Also, the interactive window used for presentation allows users to rotate the plots for improved viewing.

The Verification and Validation support deliver unit and system test support. The unit test system is linked to an automated report generation system. System test is now under the auspices of NI VeriStand, which incorporates test automation and requirement management for larger projects and organizations.

Clean and Tidy

LabVIEW is a graphical programming language, and well-laid-out programs are easier to understand. Unfortunately, a rat’s nest of links can result when laying out a new program. That’s why an automatic cleanup feature was added to the prior release.

However, developers often want to fix up only a fraction of the visible application—hence, the new Partial Block Cleanup feature. A number of methods can be used to specify the area subset to clean up.

The Icon Editor is another wish list feature. It lets developers create icons for virtual instruments (VI) from within LabVIEW instead of resorting to a third-party tool.

The LabVIEW MathScriptRT Module brings the text-based MathScript programming support into LabVIEW Realtime. MathScript was available only in the desktop version of LabVIEW, forcing developers to recode embedded applications into graphical LabVIEW code or to C/C++. Neither chore is much fun, and translation is prone to errors. Now, the original code works on either target.

While LabVIEW can target FPGAs, it uses the FPGA tools that tend to be rather verbose when compiling. The new LabVIEW FPGA Compile Window is designed to summarize results and present information sooner in the process in case problems occur. This is more important than it might seem because adding or changing a VI in an FPGA design can cause major changes in size and layout.

These changes can significantly increase the compilation time when the target FPGA will be filled because of the optimizations that need to be applied. Likewise, a new design may exceed the capabilities of the target. This addition enables developers to find this information out well before the process completes, allowing premature termination.

Done with Documentation

Documentation usually isn’t high on a developer’s list of favorite chores, so anything that can improve the situation is a good thing. The StatechartAutoDocs feature takes a LabVIEW state chart and generates a readable facsimile of its operation.

It helps to use names and constants that are representative of the actions and conditions, but it does come in handy, especially when changes are made. Unfortunately, the feature is limited to statecharts.

VI Snippets is designed to bring the Internet to the LabVIEW development environment, so pasting LabVIEW code from a Web page is a one-step process. Keep in mind, though, that LabVIEW VIs are graphical programs.

As a result, typical cut-and-paste does not work too well. Also, having to download an archived file, extract the code, and then use it tends to be a royal pain. Only Web sites that service LabVIEW developers will need this feature, but it should make experimenting and learning about VIs much easier.

The Real-Time Hypervisor is a highlight of things to come. It brings virtual machine (VM) support to LabVIEW targets capable of handling a hypervisor. The hypervisor supports a pair of VMs. One is a real-time version of the LabVIEW runtime designed to run embedded LabVIEW applications.

The second VM runs Windows and any Windows-based application. This can include LabVIEW as well, permitting a real-time LabVIEW application to be segregated from its desktop or user-interface component. This typical approach is used with applications written in other languages, but this is the first time that it could be applied to real-time LabVIEW applications. It makes sense given the multicore, multiprocessor platforms available as embedded targets.

This is probably the most interesting new feature. Demand will drive support for additional VMs and client operating systems such as Linux.

Last but not least, LabVIEW versioning has undergone a numbering change. Drivers will retain their versioning system, but LabVIEW will now be linked to the year of release for its major version. The new features may not be as impressive as the multicore support added in recent years, but every one was worth the wait.

National Instruments

www.ni.com

Related Articles

Take The Guesswork Out Of Debugging

Software Opens LabVIEW FPGA To C Programmers

Visual Debugging Hooks Into Your Applications

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!