HOME PRODUCTS SOLUTIONS COMPANY CONTACT SUPPORT      
 
 

Products for Measurement and Automation

Zero Programming
Zero Schedule
Zero Risk

 
 

 

 

 

 
 

 

 

 

Home » Solutions » PrototypePWM

 
 

Prototyping firmware PWM fan driver using LabVIEW and DAQ

 
 
 
 

by Joe Spinozzi

March 24, 2005

A client was controlling a fan using Pulse-Width-Modulated (PWM) signal generated in firmware on a microcontroller, but the characteristics of that PWM signal were discovered to be causing sounds which were unacceptable to customers.  A different frequency would have to be implemented, but the designer wasn't sure what frequency would accomplish the task best.  Making this change in firmware could be time consuming, so it would be wise to choose the best signal frequency before having firmware written, compiled, installed, and tested. 

We needed to create a PWM signal which matched the original, and provide an interface for trying many different PWM signals. Additionally, we needed to take some measurements to characterize each value to see if it would meet the customer's specifications.

Thus, we would need to be able to generate a digital pulse train at any desired frequency from 5 Hz to 100 kHz, and to adjust the duty cycle of the signal from 10% to 100%. After each adjustment, we would need to measure the frequency of the fan's tachometer, and record either a sound or accelerometer to be sure the resonances were minimized.

A benchtop function generator proved the problem to management, but the process was very slow and time consuming. To move forward into solving the problem, a laptop running LabVIEW and a Data Acquisition Card were brought into the lab. Within about 1 hour a simple ad-hoc application and some wiring were ready to begin testing. The test changed frequency incrementally, and at each frequency tested several duty cycles. 

For an inexpensive, portable, flexible test, a PCMCIA board was chosen for use in a laptop. The DAQ-Card 6024E offered 2 counter/timers, which allowed for both generating the PWM and for testing the frequency of the fan's tachometer. The analog inputs allowed us to sample a microphone and extract the sound amplitude and frequency. LabVIEW 7.1 was used to write the user interface to do some testing manually, and was later used to cycle through a range of frequencies and duty cycle. For connectivity a BNC-2120 was chosen and made setup and changes quick and easy.

The complete test took just about 3 hours, and when it was complete, it was clear that several resonant frequencies were very bad choices, and allowed choosing a frequency which provided smooth fan motion and minimal noise.

Making and testing these changes in firmware might have taken weeks to finish. The engineering staff was unsure what PWM frequency would do the job, and each guess would require about a day to write, compile, upload, and try. Now, the complete solution was found before lunch, and once tested and proven out, the final implementation could possibly have been done the same day!

 

 
     

(c) 2006 Cyth Systems USA, LLC