Frequency response function modal analysis

After reviewing the signal analysis functions in DIAdem I have realized them to be a bit limited for modal analysis.  I have a couple hammer impact tests that I need to process a frequency response function for, and since this is brand new to me I'm not seeing anything in the embedded function list that is going to help me.  I was wondering if anyone out there has a couple of pointers on generating a FRF plot for modal hammer impact tests.  I did notice that the ChnFFT2 command allows me to generate a transfer function, coherance, and FFT Cross Spectrum channels for analysis.  Though I might be confused and this may be everything I need.  My FFT2 settings are below.
[code]
FFTIndexChn      = 0
FFTIntervUser    = "NumberStartOverl"
FFTIntervPara(1) = 1
FFTIntervPara(2) = 2500
FFTIntervPara(3) = 1
FFTIntervOverl   = 0
FFTNoV           = 0
FFTWndFct        = "Rectangle"
FFTWndPara       = 10
FFTWndChn        = "[1]/Time axis"
FFTWndCorrectTyp = "No"
FFTAverageType   = "No"
FFTAmplFirst     = "Amplitude"
FFTAmpl          = 1
FFTAmplType      = "PSD"
FFTCrossSpectr   = 1
FFTCoherence     = 1
FFTTransFctType  = "Spectrum H0"
FFTCrossPhase    = 0
FFTTransPhase    = 0
Call ChnFFT2("[1]/Time axis","'[1]/H_1' - '[1]/H_4'","'[1]/A_1' - '[1]/A_4'") '... XW,ChnNoStr1,ChnNoStr2
[/code]

Standard modal analysis has something denoted as FRF.  I have a labview application note "The Fundamentals of FFT-Based Signal Analysis..."
Frequency Response Function
The frequency response function (FRF) gives the gain and phase versus frequency of a network and is typically computed as
where A is the stimulus signal and B is the response signal.
The frequency response function is in two-sided complex form. To convert to the frequency response gain (magnitude) and the frequency response phase, use the Rectangular-To-Polar conversion function. To convert to single-sided form, simply discard the second half of the array.
You may want to take several frequency response function readings and then average them. To do so, average the cross power spectrum, SAB(f), by summing it in the complex form then dividing by the number of averages, before converting it to magnitude and phase, and so forth. The power spectrum, SAA(f), is already in real form and is averaged normally.
Refer to the Frequency Response and Network Analysis topic in the LabVIEW Help (linked below) for the most updated information about the frequency response function.
http://zone.ni.com/devzone/cda/tut/p/id/4278
So the options for FFT2 are
No
DIAdem does not calculate a transfer frequency response.
Spectrum H0
DIAdem calculates the transfer frequency response by dividing the FFT of the output signal (A) by the input signal (E): FFT(A)/FFT(E). DIAdem averages the amplitudes of the individual transfer functions.
Spectrum H1
DIAdem specifies the cross spectrum and the auto spectrum for each signal pair. DIAdem calculates the transfer frequency response by dividing the averaged spectra: Middle(cross(A,E))/middle(auto(E)). DIAdem does not average phases, because phases can delete each other.
Spectrum H2
DIAdem specifies the cross spectrum and the auto spectrum for each signal pair. DIAdem calculates the transfer frequency response by dividing the averaged spectra: Middle(auto(A))/middle(cross(E,A))
If you assign the values Spectrum H1 or Spectrum H2 to the variable FFTTransFctType, DIAdem averages and divides the cross spectra and the auto spectra and calculates the amplitudes last.
Which state auto spectrum when FRF is power spectrum. 

Similar Messages

  • Frequency response function

    Hello Everybody,
    I want to calculate a frequency response function out of a acceleration and force signal. I measured this signals with an sinus sweep function from 1- 1000 hz.
    Is there a way in diadem to solve this problem?
    Thank you for your help!
    Bye Vincent

    Hi Vincent,
    sure, you can use the FFT bloc (Analyze >> Signal Analysis >>FFT) and select the channel you want to use.
    I hope this helps.
    Marc

  • Frequency Response Function & FFT & Inverse FFT (problem of unit Volts-RMS)

    Hello everyone,
    I am currently working on a VI in order to compare two analog signals : the first one corresponds to the output signal (my reference) which is sent by my data acquisition card to a shaker and the second one corresponds to the input signal recorded by an accelerometer fixed on the same shaker. The final goal of the VI is to correct the analog output signal by using the analog input recorded signal in order to have the vibrations on the shaker which corresponds to what we really want.
    To summary, I have a problem of unit with the Volts-RMS...
    So this is my method for the VI :
    First, I have to calculate the Frequency Response Function between the two analog signals (output and input). For it, I use the " Frequency Response Function (Real-Im).vi " which returns the complex values of the FRF in Volts-RMS (but I don't want to use this unit).
    Then, I want to calculate the FFT of the analog output signal (my reference). There are two different blocs which can be used : " FFT Spectrum (Real-Im).vi " and " FFT.vi ".
    The " FFT Spectrum (Real-Im).vi " returns the FFT complex values of the signal in Volts-RMS and the " FFT.vi " returns the FFT complex values in Volts (or say me if I am wrong, thank you). I really would like to use the second one because of the unit.
    Then, I divide the FFT just calculated with the Frequency Response Function calculated just before.
    For the end, I calculate the inverse FFT of that with the " Inverse FFT.vi " which use the complex values with the same unit than for the " FFT.vi ".
    I don't want to use the Volts-RMS unit because I absolutly want to use the blocs " FFT.vi " and " Inverse FFT.vi ".
    The problem is that I don't find a bloc which use the same unit for the Frequency Response Function. The " Frequency Response Function (Real-Im).vi " returns only the complex values in Volts-RMS unit. Maybe it is possible to convert it correctly? Or maybe there is an other bloc which can be used in order to calculate the Frequency Response Function with the same init than for the FFT and Inverse FFT ? Because I can't mix everything for the moment...
    Thank you for your help,
    Best regards,
    Sebastien

    Hello Preston,
    No, I have not use the Sound and Vibration toolkit. I have only used the signal processing toolkit with the two toolboxes " Waveform measurement " and " Transforms ".
    But I think that what I have done for the moment in my VI is correct (I have finished the complete VI). But I am not sure of the units (Volts, Volts-RMS...) and I would like to understand.
    I have tried with the Sound and Vibration toolkit for the frequency response function (because you say me that it deals with all the unit conversion) and I can obtain the same results than with the " Frequency Response Function.vi " of the toolbox " Waveform measurement ".
    But I would like to understand the units (see my previous post please). For example, for the FFT (the result is a complex), why sometimes it is in Volts, sometimes it is in Volts-RMS ? Is it possible to convert it ? How ?
    If you want, I can attach on the forum my VI and that will maybe help you to explain me. Maybe it will help other people interested.
    And if someone else can give me other precisions or advices about it, do not hesitate.
    Thank you for your help,
    Sebastien

  • Frequency Response Function NxM output format

    Hi,
    When the Frequency Response Function for magnitude, phase, and coherence
    is used in the NxM "all cross pairs" polymorphism, the format of the outputs
    are still 1-D arrays of clusters instead of a 2-D NxM sized array of clusters.
    Does anyone know how the indexing of this 1-D array would correspond to
    indexing of the would be 2-D array?  Or is it just [index/M, index%M].
    Thanks,
    Kevin

    Hi Kevin,
    First, thanks for posting this request.  You've helped us find a gap in our context help.  The documentation on X-Y pairing should be improved and the VI documentation should be extended to cover all instances of this polymorphic VI.  Here is some text that should be added to the "X-Y pairing" description:
    "all cross pairs" means that the pairs are formed by matching each signal from array X with ALL signals from array Y, continuing in this fashion for each signal in X. If there are N signals in X and M signals in Y, the total number of cross pairs is N x M. The paired signal results Xchan-Ychan are returned in the order 1-1, ... 1-M, 2-1, ... 2-M, ... N-M. "
    Hope this helps,
    Mike C
    LabVIEW Math & Signal Processing
    National Instruments

  • Microphone frequency response function

    Hi all,
    I am trying to do an impact test with 3 types of sensors to investigate surface properties of a material.
    The first sensor is the sensor in the modal hammer.
    The second sensor is a geophone , whilst the last sensor is an air-coupled sensor in the form of a microphone.
    Aside from the microphone which is directly connected to the laptop by USB, the instrumented hammer and the geophone is connected to the NI 9233 which is connected to the NI USB-9162 which finally connects to the laptop.
    This hardware doesn't support analog triggering therefore software triggering is used.
    I am using a vi example from http://www.ni.com/example/28438/en/ 
    I have successfuly setup the LabVIEW VI to read the raw data coming in from all the sensors and to obtain the frequency response of the geophone due to stimulus signal created by the impact hammer.
    I have tried to obtain the frequency response of the microphone due to the modal hammer however no results show up in the graph for the frequency response of the microphone.
    My question is this, what is going on and how do I fix this so that I may obtain the frequency response of the microphone?
    I have attached my vi for your consideration.
    Solved!
    Go to Solution.
    Attachments:
    Y2014M01D28 IRnMicFRFRecAll .vi ‏190 KB

    I cannot fix your VI because I do not have DAQmx or the SVFA toolkit. What I have attached is a simulation which shows some of the concepts.
    The left side simulates acquisition of two channels (hammer and geophone) via the DAQ device and one channel of sound (microphone).  Don't worry too much about the details. I just threw this together quickly. The hammer signal is a square pulse, the geophone signal is one cycle of a sine wave with noise, and the microphone signal is one cycle of a triangle wave plus noise. Each of the pulses is dleayed from the start of the acquisition by different amounts to represent the trasmission delays of the sound and vibration.  The values chosen are arbitrary and do not simulate any physics.
    I used the sampling rate, block size, and duration controls from your VI, so the numbers of samples and the sampling rates should be the defaults from your VI. The three graphs one the left show the three signals as generated. Note that the Microphone graph has X-axis autoscaling turned off. Also the data is all in waveforms or arrays. I avoid the use of the Dynamic Data Type produced by Express VIs because it effectively obscures the data structure.
    The right side shows one way to do the triggering. I used Basic Trigger Level Detection.vi from the Waveform Monitoring palette and the Get Waveform Subset.vi from the Waveform palette. Note that there are separate trigger VIs for the DAQ channels and the sound channel. Because they are not started at the exact same time and they do not have the same dt (= 1/sample rate), the waveforms cannot be combined to use a single trigger. The geophone signal is synchronized with the hammer signal so one trigger from the hammer can be used to get both subsets.
    Note that with the default delays the microphone pulse occurs 30 ms after the geophone pulse but in the subsets it occurs about 4 ms before the geophone. This is due to the independent triggering.
    Since you do not have a common signal or trigger for both devices (DAQ and sound), you cannot know exactly what the timing relationship is between them. On every run the differences in the start times will vary. So you will need to do some kind of calibration to determine the time delays.  I am thinking of some kind of periodic stimulus which will produce several pulses to both the geophone and microphone. The first pulses will have indeterminate delays but subsequent pulses should have reproducible delays. The relative spacing and directions during the calibration runs should be the same as the hammer position for the real experiment.
    Lynn
    Attachments:
    Sound and hammer sim.vi ‏28 KB

  • Multichannel Frequency Response Function Block?

    We are currently using the FRF block to evaluate our DUT with two
    channels (X and Y). However our DUT has 8 output channels. Ideally I
    would like to be able to wire up the existing FRF block with
    multi-channel support (ie 1x X Signal, n x Y Signal) and get the new
    block to correctly perform averaging. Currently if I wire up the FRF
    block in a loop it averages CH1, CH2, CH3 etc which obviously is the
    wrong result.
    One solution was to have 8 FRF blocks - but this seemed a bit of an
    overkill. Is there a n Channel FRF block anywhere - or has someone
    modified it for n Channels? (if not, I suppose I will have to do the
    modifications!).
    Many thanks,
    Marc

    Hi Marc,
    You asked if there was an N channel FRF block anywhere.  LabVIEW 8.0 added multichannel support for the FRF.  Modes include 1xN,
    Nx1, and NxM, where NxM can be interpreted as a pairwise FRF (first
    element of X with first element of Y, ...) or as all the combinations
    of X and Y array elements.
    Barring an upgrade to LabVIEW 8.0, the simplest solution is
    probably your
    approach of placing N FRF VIs on a diagram.  This ensures that the averaging is the same as the 1x1 case with little programming effort. 
    For the 1XN case it should be fairly simple to export the averaging
    state and manage that yourself.  If you use one of the other
    measurement VIs as a starting point (e.g. FFT Spectrum (mag-phase).vi)
    please note that the state cluster that is used is intended to cover the
    general case where each "channel" could have a different number of
    points, different sampling rate,  different timestamp...  This is the
    reason for the array-of-clusters-of-arrays approach.  If you make a
    simplifying assumption that each channel will have the same number of
    points, same timestamp, etc. then you could utilize a much simpler state cluster
    that contains some 2-D arrays to hold the multi-channel averaging information. 
    Hope this helps.
    -Jim

  • Frequency Response Analyser or Impedance Spectroscopy

    Hi
    I am looking for a Labview program to allow the freq. response of say a
    tuned circuit.
    I will be using a GPIB Function Gen. From 1Hz to 10MHz and measuring the
    peak-peak value across a shunt resistor that is in series with the tuned
    circuit.
    Thus as the frequency increases then the tuned circuit will respond
    accordingly. If we take samples every 100Hz then we can produce a spectra
    of the tune circuit.
    I actually going to use this for measuring the char. of an electrochemical
    cell.
    Any Suggestions
    Wayne

    Thanks Carlos
    The latter method I did not think of but will try it.
    Cheers
    Wayne
    "JuanCarlos" wrote in message
    news:[email protected]..
    > Wayne,
    >
    > Looks like a sweep sine analysis should give you a good idea about the
    > frequency response. Make sure that you measure the input and output
    > signals of the circuit; this way you can just compeir RMS values and
    > get the frequency response.
    >
    > Another method that you may want to look into is a broad band
    > frequency response. Basically you send white noise to the circuit;
    > then you acquire the input noise and the output noise; the you
    > calculate the FFTs of this data and compair it; after some averaging
    > you get the frequency response graph of your dev
    ice. LabVIEW has a VI
    > called Frequency Response Function that does a large part of the job;
    > together with the "Frequency Analysis of a Filted Design.vi" example
    > you can get a good idea on how to perform this test.
    >
    > I hope this helps.
    >
    > Regards,
    >
    > Juan Carlos
    > N.I.

  • I am looking for Modal Analysis Labview VI lib or example?

    I am looking for Modal Analysis Labview VI lib? specifically, I conducted Frequency Response Measurements, I managed to construct the experimental frequency response function. Now, I am looking for modal extraction from the experimentally determined frequency response function.
    I appreciate if someone knows about Labview VI or example to perform the curve fitting in the frequency domain to extract the modal parameters.
    Thank you in advance.
    Atef T. Massoud

    Atef,
    I found the following paragraph in the on-line description of the Advanced Signal Processing Toolset for LabVIEW:
    <>
    "You can also construct your own custom applications in LabVIEW with a VI library of the most efficient and common algorithms such as covariance, principle component auto-regression (PCAR), Prony's method, and the matrix-pencil method. Some of these methods have not been commercially available before the release of this toolset. Using these VIs, you can perform both super-resolution analysis and modal-analysis. Moreover, VIs provided can easily be tailored for many other signal analysis applications, such as system identification and linear prediction."
    It seems as if this set of tools might
    help you with your application.
    I hope this suggestion gets you pointed in the right direction. Have a pleasant weekend.
    Sincerely,
    Darren Nattinger
    Applications Engineer
    National Instruments
    Darren Nattinger, CLA
    LabVIEW Artisan and Nugget Penman

  • Microphone's frequency response

    Hi,
    Is it possible to plot a microphone's frequency response using sound and vibration? If it's possible, can anyone tell me how?
    Thanks

    Hi popcorn,
    If you have the Sound and Vibration Assistant with SignalExpress, there is a step you can add under Analysis - Frequency Domain Measurements called, Frequency Response.
    Here's a link to an article that discusses various functions, Sound and Vibration provides.  Although the article discusses LabView, many of the same functions are found in SignalExpress as well.  The Frequency Response Function can be found at the bottom.
    http://zone.ni.com/devzone/cda/tut/p/id/3030
    Aki T.

  • 3 Simultaneous Frequency responses using PCI-4552

    I need to obtain 3 simultaneous frequency responses (Magnitude and Phase) using a PCI-4552 board. Ch 1 is the reference for the 3 FR's. I succeded in obtaining independent FR's, but I cannot configure the vi with the 3 FR's together. I attach my best try, please take a look at it.
    Attachments:
    zoom4.vi ‏378 KB

    I took a look at your VI. It looks like you have two issues.
    First, you are using a single stop button's input to stop several loops. The problem is that the output of the button will not allow the consecutive while loops to execute until the first one has finished (they are waiting for the prior loop to finish to get the final value of the button). If you want to read the value of a single button simultaneously in several while loops, you need to use local/global variables.
    You should have an example:
    Stopping Parallel While Loops with Reset.vi
    ... included with LabVIEW which will demonstrate how to properly do this.
    Your second issue is that the base analyzer can only do two simultaneous channels. If you really need to do more, you'll need to grab al
    l the channel's raw data using the DAQ API instead of the DSA API, and feed the individual captures into the "Frequency Response Function (Mag-Phase)" vi. This should give you the same results, but you'll be using the host computer to do the analysis instead of the board.

  • Make frequency response analyser using frequency generator and counter

    Hello
    Can we make a frequency response analyser using a Frequency generator and frequency counter?
    How to add modulation with it? Modulation frequency is to be varied as per the input to given to the carrier!
    The outputs are Frequency, magnitude, and the phase as like solartron FRA.
    somebody have an Idea for this
    awaiting for the solution 
    thank you 
    "Thanks with regards "
    by
    ..........Gireesh..........

    Hello Gireesh,
    You can use a function generator to generate frequencies and use the modulation tollkit and other tools availabe with LabVIEW to do the modulation part . Or you can use the analog output ports on the daq card to generate different frequency signals for the same purpose .This should pretty much serve your purpose.
    http://zone.ni.com/devzone/cda/epd/p/id/5646
    http://digital.ni.com/manuals.nsf/websearch/AF3615F31CE9656C862576070020B8F7

  • Frequency Response Analyser: Error -1802 occurred

    Hi,
    I'm fairly new to Labview but feel I know most of the fundamentals.
    I've been trying to convert the following bit of code from Matlab to Labview (I am aware 8.20 has a math script function but I don't have access to it). Please could someone have a look at my VI and possibly tell me why I am getting the 1802 error. It suggests that "(Hex 0xFFFFF8F6) Waveforms have different dt values." but I'm not sure what this means or how to fix it.
    Also, if anyone has any constructive critisism of my methods for implementing the code then I would love to hear them.
    Many thanks for your time in assisting me,
    Ian Haigh
    % routine for calculating Transfer Function
    % signal is the array containing the measured signal
    % sigs is the array containing the input sine wave
    % sigc is the array containing the input cosine wave
    clear;
    freq=11.45;
    sfreq=360*freq;
    cycs=10;
    a=0;
    b=0;
    i=1;
    for t=0:1/sfreq:cycs/freq;
    n=cycs*360+1;
    ph=60;
    signal=0.37*sin(2*pi*freq*t+ph*pi/180);
    time(i)=t;
    sigs=sin(2*pi*freq*t);
    sigc=cos(2*pi*freq*t);
    real(i)=signal.*sigs;
    r=real(i);
    comp(i)=signal.*sigc;
    c=comp(i);
    a=a+r;
    b=b+c;
    i=i+1;
    end
    a=(2*a-real(1)-real(n))/(n-1);
    b=(2*b-comp(1)-comp(n))/(n-1);
    R=sqrt(a*a+b*b)
    ang=atan(b/a)*180/pi
    Attachments:
    Frequency Response Analyser v7.vi ‏1045 KB

    Hi Ian,
    It seems that you are attempting to use different dt in the waveforms, but I founded in this link two ways to avoid having this problem. Hope you find it useful. Thanks for using the forums!
    http://digital.ni.com/public.nsf/websearch/C41966093C3D030F86256FF8007F8BF5?OpenDocument
    NorSa
    AE LATAM
    NorSa
    NI Applications Engineer Latin America
    Para Soporte entra aquí

  • Enhanced frequency domain decomposition for modal analysis

    Hi eveyone
    I can't find enhanced frequency domain decomposition algorithm for ambiant vibration of modal analysis.(Not frequency domain decomposition).
    Also ı can't find to operational modal analysis example with labview.(not experimental).
    Can you help me?
    Best Regards...
    Himmet GENCER
    Software Development Coordinator at Teknik Destek Grubu
    [email protected]

    thanks for answer.Yes I using the sound  and vibration toolkit.But Exactly I don't find what ı searched.
    ama ben tam olarak ne ı aradı bulmuyorum
    Himmet GENCER
    Software Development Coordinator at Teknik Destek Grubu
    [email protected]

  • Frequency response of a filter

    I have the filter coefficients of the filter I require in my program. I need to find the frequency response of this filter. Is there any function in LabVIEW that helps me to do this?
    I guess I need a function which is similar to the freqz function in matlab for this.
    Solved!
    Go to Solution.

    Thank you guys!  I found out what I wanted. But thanks for guiding me.
    I'll post the answer so that others can use it 
    First I found out the transfer function ( from the filter coefficients) of the filter by using:
    Digital Filter Design toolkit => Utilities => From TF ( DFD Build Filter from Transfer Function.vi)
    The output filter got from this was wired as the input filter to:
    Digital Filter Design toolkit => Filter Analysis => Freq resp ( DFD Plot Freq Response.vi)
    I got the required frequency response .
    @Sd.Kfz.10 I coudn't use the FIR filter and IIR filter where coefficients are given as inputs (in signal processing toolkit)  because I wanted the response of the filter alone. These FIR and IIR filter requires the input signal array. 
    I was using this for the linear predictive coding for speech recognition. I modelled the vocal tract as a autoregressive model (all pole filter) using a the AR modelling.vi in the ADSP toolkit. I wanted to see the frequency response of the modelled filter but I only had the filter coefficients. 

  • Frequency response correction

    I measure vibrations with an accelerometer.
    The frequency response under 10 Hz is not linear according thae calibration sheet of the sensor.I want to correct it whith labview
    Can you tell me a way to do that
    thanks

    Hello Paganini,
    As Shoneille says, you need first to found the mathematical algorithm that can correct your data and then search the corresponding VIs in LV.
    You can also try to use some LabVIEW functions that process signal. You can found these functions in "Functions Palette>>Analyse>>Signal Processing" or "Functions Palette>>Analyse>>Mathematics"
    Hope this help.
    Best Regards,
    Sanaa TAZI
    National Instruments France
    Sanaa T.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    >> http://www.nidays.fr/images/081110_ban_nidays09_468X60.gif

Maybe you are looking for

  • Can't open files on Samba mount with Emacs

    This shows up in my mini-buffer when I try to open a file: Directory-local variables error: (file-error "Opening input file" "no such file or directory" "/mnt/smbnet/MYGROUP/BRIAN-LAPTO\ P/.dir-locals.el") Loading vc-arch...done Reading directory: in

  • Alpha numeric Sorting Issue with BIP-Siebel report

    Hi All, The report contains a column called 'Site Name' which contains alpha-number values such as '111 street', '4th Cross', 'Road cross', 'North end street' etc. The sorting expected here is in the form: 111 street 412 Cross North end street Road c

  • PROBLEM RECORDING DVD

    HELLO: After installing SnowLeopard, this is the first time I am doing an Idvd project and recording it, I am not sure if my problem is related to the OS upgrade. I do my project as usual and record it and the result is that I get a DVD with Video_Ts

  • Messages are holding at QA System ?

    Hi Experts Can any body tell me how to release the hold message in QA System . i have checked smqr , smq1,smq2, all are fine . in run time work bench we have message (message are at holding state)

  • How can I alphabetize events?

    I have about 50 events that I would like to place in alphabetical order. The problem arises when I try to drag one event into a new position. If the place where I wish reposition is above or below the viewable area, as I drag the event to the top or