Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Document Type: Instrumentation Newsletter
NI Supported: No
Publish Date: Feb 26, 2007


Feedback


Yes No

Related Categories

Related Links - Developer Zone

Related Links - Products and Services

Special Focus: Interactively Design Digital Filters with LabVIEW

0 ratings | 0.00 out of 5
Print

Overview

Learn how you can interactively design and deploy digital filters using LabVIEW and the Digital Filter Design Toolkit for LabVIEW.

Overview

Digital filter design and implementation is as much an art as a science. Whereas the filter design process is defined by a variety of tried-and-true techniques, it is also characterized by a highly iterative nature that often requires significant rework before you reach and implement a final design. To design a digital filter, engineers rely on a variety of software tools throughout the process -- interactive tools to view filters in real time as they adjust parameters, programmatic tools to help optimize proposed filters with real-world measurements and parameter sweeps, and code-generation tools to ensure a smooth transition from theory to implementation. This year, NI is introducing a new digital filter design tool built on the National Instruments LabVIEW graphical development platform -- the LabVIEW Digital Filter Design Toolkit.

NI LabVIEW has traditionally been recognized as a programming language for creating custom automated test and measurement systems. The May 2003 release of LabVIEW 7 Express introduced Express technology, a new suite of tools that brings a more interactive experience to the industry-standard graphical development platform. Since then, NI has delivered three new interactive tools for defining advanced control algorithms, complex plant system models, and benchtop measurements: the LabVIEW Control Design Toolkit, the LabVIEW System Identification Toolkit, and NI SignalExpress. Because these tools are based on LabVIEW, you can develop your design interactively and automatically generate LabVIEW code for the final implementation. This marriage of intuitive and interactive tools with the flexible programming language in one platform drives productivity. The latest arrival in this family of tools is the LabVIEW Digital Filter Design Toolkit Version 7.5, a suite of software tools for modeling and creating software-based digital filters, as well as LabVIEW FPGA and C code-generation capabilities for chip-level implementation, to ensure a seamless design process from conception to completion.

See Also:
NI LabVIEW Digital Filter Design Toolkit
NI LabVIEW
LabVIEW FPGA
NI LabVIEW System Identification Toolkit
NI SignalExpress

Designing Digital Filters with LabVIEW


One of the most common design tasks today is digital filter modeling and design. Digital filters eliminate a number of problems associated with their classical analog counterparts. Unlike analog filters, digital filters have the following advantages:

  • Digital filters are software reconfigurable
  • Digital filters do not drift with temperature or humidity
  • Digital filters do not require precision components


With these filters, you can attenuate unwanted signal elements such as noise caused by electrical components and environmental effects, apply antialiasing algorithms to test data, reduce sample sets with decimation, and more. You can use digital filters in a wide variety of applications ranging from machine condition monitoring and animal vocalization detection to seismic signal decomposition and audio special effects. The digital filter design and implementation process consists of three primary steps requiring efficient software tools -- design, optimization, and implementation. LabVIEW and the Digital Filter Design Toolkit provide unique value at each of these stages.

See Also:
Measurement Encyclopedia: Digital Filters

Interactive Design


In the initial design phase intended to produce filter coefficients, live visual representations of both frequency and phase response as you adjust parameters are very helpful. The Digital Filter Design Toolkit includes four new configuration-based Express VIs that provide a fully interactive experience for fine-tuning filter specifications. Using drag-and-drop development, you can interactively manipulate the filter design for lowpass, highpass, and bandpass filters, as well as bandstop filters (see Figure 1).


[+] Enlarge Image


 

Figure 1. With new Express technology, you can conduct interactive filter development in the LabVIEW graphical environment.

Filter Optimization

The second stage of filter design entails programmatic parameter sweeps, the incorporation of real-world measurements, and even algorithm swapping to ensure the design is appropriate for the final application. The toolkit includes a set of Filter Analysis VIs to evaluate characteristics including frequency response, group delay, phase response, impulse response, step response, and zero/pole placement. To evaluate the filter design effectively, you need to examine these characteristics as you sweep other parameters -- the LabVIEW graphical programming language is particularly suited to this task. Taking advantage of the intuitive graphical nature of the LabVIEW language, you can design sweeps quickly and evaluate a designed filter efficiently. Additionally, the open LabVIEW environment and connectivity to thousands of instrumentation devices ensure that you can incorporate whatever type of real-world I/O you need in optimization routines.

With Version 7.5 of the toolkit, you can create highly efficient and compact filters with the best algorithms, including state-of-the-art algorithms such as the generalized Remez method and the least Pth norm method, in which you can specify arbitrary magnitude and phase response for a digital filter. This toolkit offers automatic order-estimation VIs to assist you with estimating the filter order. If you need to develop special digital filters, use the Special Filter Design VIs that the toolkit contains to help you design IIR notch/peak filters, IIR comb filters, maximally flat filters, narrowband filters, and group delay compensators. The Digital Filter Design Toolkit also includes the Multirate Filter Design VIs to help you design, analyze, and implement single-stage multirate filters, multistage multirate filters, halfband filters, Nyquist filters, raised cosine filters, and cascaded integrator comb (CIC) filters. This comprehensive set of standard filter design algorithms ensures that you have the necessary tools for an application.

Filter Implementation


The final stage of filter design focuses on implementation, often at the embedded level. Unlike many packages available for filter design today, the Digital Filter Design Toolkit includes the necessary tools for taking a newly designed filter and implementing it on a variety of both floating- and fixed-point targets. With the toolkit, you can automatically generate C and LabVIEW FPGA code for deployment to DSPs and NI FPGA devices, respectively. You can implement all floating-point filters you develop with the toolkit on your desktop and LabVIEW Real-Time systems. Additionally, the Fixed-Point Tools VIs provide quantization, modeling, simulation, and a simulation report. Save the fixed-point filter information in C for implementation on DSP chips or in LabVIEW FPGA code for implementation on NI FPGA devices including PXI devices, PCI plug-in boards, and National Instruments CompactRIO (see Figure 2).


[+] Enlarge Image


 

Figure 2. Generate optimized LabVIEW FPGA code for implementation of your custom filters on NI reconfigurable I/O devices including CompactRIO.


You can select from 23 possible digital filter structures ranging from the direct form and cascaded form to the lattice MA (Moving Average) and lattice ARMA (Auto-Regressive and Moving Average). Although all filter structures are effectively equivalent if the numerical precision is high, different structures can have different performance in fixed-point implementations and can have different computational complexity and memory usage in fixed-point or floating-point implementations. Selecting an appropriate filter structure is critical for digital filter design, especially for fixed-point digital filters in which the resolution of filter coefficients and filtering operations is more limited than floating-point digital filters. With its interactive development tools and automatic code generation, the Digital Filter Design Toolkit delivers productivity
and timesaving features critical to embedded system development.

See Also:
LabVIEW Realtime
Compact RIO

Use Interactive Design tools for Efficient Implementation


In addition to offering effective tools for each filter design stage, the Digital Filter Design Toolkit also includes more than 80 example VIs that illustrate filter design techniques and provide starting points for real-world applications. With the Digital Filter Design Toolkit combination of comprehensive filter design tools, easy-to-use Express technology, and the ability to go from theory to implementation with a single tool, you can design software-based filters quickly and accurately.

For More Info


Sam Shearman
Senior Product Manager
LabVIEW Signal Processing and Analysis
sam.shearman@ni.com

Nicole McGarry
LabVIEW Product Manager
nicole.mcgarry@ni.com

This article first ran in the Q2 2005 issue of Instrumentation Newsletter.

See Also:
Instrumentation Newsletter
Obtain additional technical information


Related Links:
NI LabVIEW Digital Filter Design Toolkit
LabVIEW FPGA

0 ratings | 0.00 out of 5
Print

Reader Comments | Submit a comment »

 

Legal
This material is protected under the copyright laws of the U.S. and other countries and any uses not in conformity with the copyright laws are prohibited, including but not limited to reproduction, DOWNLOADING, duplication, adaptation and transmission or broadcast by any media, devices or processes.