Analysing sine wave

Dear members. First I want to say I've learned alot on this forum. There are a lot of members with good knowledge about Labview. I like this forum very much and want to thank you for your help you are giving members. Please keep up the good work!
My problem is as follows. I want to analyse a sine which is brought in through the audio line in on mijn soundcard. I've written a labview program which opens the audio line in and I can view the input "realtime" from the "si read.vi" VI.
My signal consists of a single sine which stabilizes to zero in a period of time (say, 10ms). I would like to acquire this sine in a waveform chart so i can scroll left and right to view the sine. Next thing I would like to determine the maximum amplitude and at which X coordination it's happening. Next I would like to determine the first zero cross time of the first half period of this sine. Is there someone who can help me or give me a push in the right direction? I appreciate it alot, thanks in advance!
I've added a picture for illustration.

If you are analyzing your data after it is collected, the Array MAX&Min vi gives you the max value and the index position in the array. Then you could use the Search 1D array vi or Threshold 1D array to find the first zero value. Another possibility would be to use the Zero crossing ptbypt vi inside a for lop or while loop to analyze the source data.

Similar Messages

  • Measuring Superimposed Frequencies on a Sine Wave

    Hi,
    Just looking for advise on the best way to measure superimposed frequencies on my raw data. The raw data (voltage versus time) is ultimately a noisy sine wave with a frequency of 1Hz. I need to determine where the noise is coming from, i.e. is it vibrational, electrical or surrounding noise, hence requiring the frequency of the noise if possible.
    Any advise on the best way of filtering the data would be appreciated. Currently I am using a butterworth filter with a cutoff setting of 1.5Hz. The original data was sampled at 1.5KHz so the noise was measured and so could be filtered during postprocessing.
    Also when filtering I don't want to loose important data i.e. sudden peaks or drops.
    Regards,
    John.

    John,
    Have you tried spectrum analysis of your data? That will give you the frequency content of the signal plus noise. One peak will be at the 1 Hz sine signal and other peaks will correspond with the supeimposed signals. With a 1.5 kHz sampling rate you would get information on frequency content up to the Nyquist frequency of 750 Hz. A peak at 50 or 60 Hz will likely be power line frequency interference. Gears, bearings, and motor armature slots produce characteristic frequencies which are related to the rotational speed.
    Lynn

  • How to measure relative phase of several sine wave inputs

    I'm using a USB-6229 to acquire 10 sine waves, and I would like to output their rms amplitudes and relative phases.  The rms amplitude is not a problem, but I wasn't sure how to go about determining the phase of one signal relative to another.  Do I need to use the Frequency Response analysis step?  Thanks.

    Hi,
    There are some functions you can use to measure the relative phase. You can either measure the phase of every signal related to another one using like you said: a frequency response function step. Using one of these to functions might do the job: “Frequency Response, Express VI” or “Frequency Response Function (Mag-Phase).vi, if you are working in LabVIEW. The first one of these functions "Frequency Response" is also found in signal express and is the one I think you are refering to.
    Although this functions is use for a stimulus response approach they will give you the relative phase of Y with respect to X, “Typically, time signal X is the stimulus, and time signal Y is the response of the system.  in signal express your options is the frequency response step.
    I would also like to point you to some references that might serve you as reference when doing spectrum analysis: An Overview of Frequency-Domain Measurements and FFT Analysis.
    Message Edited by Jaime F on 02-06-2008 11:42 AM
    Jaime Hoffiz
    National Instruments
    Product Expert
    Digital Multimeters and LCR Meters
    Attachments:
    frf.png ‏37 KB

  • Unable to read the frequency from this output sine wave of amplitude VS time

    my programe reads through a labjack programe works up until the LJ stream graph process reads to "scaled data v's seconds" graph.where it outputs a sine wave (amplitude vs time)
    for some reason the "freq. amp." analyser won't read the frequency correctly. when i run the programme it outputs a frequency of zero.
    note: the amplitude is reading correctly
    see both programmes attached..................
    Attachments:
    problem.vi ‏77 KB
    LJstream_graph_processing.vi ‏46 KB

    I don't really see the utility of this VI, however, the variable "scan rate", of the "LJstream graph processing", it's an arbitrary value, why?...
    What is the idea with these VIs?, tell me more, please.
    Bye.

  • USB-6009 Sine Wave

    Hi,
    I am new to LabView and am having some trouble. I need to input two sine waves into a USB-6009. I have a voltmeter that should read the output. Two of the problems that I have had thus far: I can only use "On Demand" in DAQ Assistant and even when I throw the DAQ Assistant into a while loop I still do not get a readout on my voltmeter. Any suggestions? Thanks for the help.

    That is confusing. You say you need to input 2 sine waves into a 6009 and that to me implies that you are doing a DAQmx Read. Then you say you have a voltmeter to read the output. That implies you are doing a DAQmx Write. If you are really doing a write from the 6009, then on demand is, of course your only choice. As the specs clearly indicate, the output of the 6009 is strictly software timed so you would need to pass a sine wave point by point and then you would have very little control over the frequency. And, again as the specs clearly state, the fastest output rate you could expect is 150Samples/sec.

  • Simultaneous analog output 1k sine wave and data acquisition

    Although many topics of simultaneous analog output and input can be found in NI Developer Zone, I have not found a case similar to my project. I'm trying to generate a 1kHz sine wave by using the analog output of NI DAQPad-6070E, and acquire one channel input signal simultaneously. I found most of the examples can not work properly above 100Hz. Any suggestions are welcome. Thank you.
    Jian

    I have sucessfully solve the problem when I observed the increase of
    scan backlog number. Simply increase the buffer size of AI/AO and you
    can make the 1kHz sine wave output and data acquired properly.
    On Tue, 3 Feb 2004 09:03:07 -0600 (CST), jujian wrote:
    >Although many topics of simultaneous analog output and input can be
    >found in NI Developer Zone, I have not found a case similar to my
    >project. I'm trying to generate a 1kHz sine wave by using the analog
    >output of NI DAQPad-6070E, and acquire one channel input signal
    >simultaneously. I found most of the examples can not work properly
    >above 100Hz. Any suggestions are welcome. Thank you.
    >
    >Jian

  • Unable to generate sine wave

    Hello everyone!
    I am currently working on my Bachelor project at a company. i am stuck with a problem.
    I have designed a labview program for vibration test system. I have used cRIO 9076 as the controller with NI 9263(as D/A) and NI 9234(as A/D).
    The loop works as follows. the input is given from the labview program. it is then sent to the cRIO. the output of CRIO(that is output from NI 9263) is given to the amplifier. the vibration shaker vibrates based on the input from aamplifier. then the accelerometer detects the vibration and sends it to the NI 9234 and loop repeats iteratively. since i have designed a sweep sine vibration system, the output of cRIO is a square wave. it should be sine wave.
    the probelm is i am getting a square wave as output from my NI 9263 which should be a sine wave output. I have two subVI where i use nominal to binary convertor(for NI 9234) and binary to nominal (for NI 9263) as calibration mechanism. 
    the question is where have i went wrong? what should I do to get a sine wave? 
    PS: on searching NI i found out some formulas (to generate sine wave) and designed a FPGA and LabVIEW program to generate a simple sine wave and got a sine wave. if that formulas is to be included where should i include that?
    Thanks in advance.
    Regards,
    Vishal.

    Without seeing your current code, there is no way we can even uess as to why you are creating a square wave instead of a sine wave.

  • How to measure time difference between zero crossing of a sine wave and rise time of a pulse on a same graph?

    I have a 50Hz sine wave and a pulse signal on a same graph. The phase difference between two is between 0-90 degrees.
    Now I need to calculate the time difference between (when the sine wave crosses zero volts) and (when the pulse rises). The frequency will stay approximately same for both signals.
    The application is for a three phase generator. In simple words, when the time difference between the zero-crossing of sine wave and the pulse rises increases, that means that the load on the generator has increases.
    I am a beginner user of LabView (version 9, 2009), maybe it is a very simple problem but I've been pulling my hair out for the last few days and coudln't figure anything out. Any help would be greatly appreciated. I am using DAQ USB-6008 to measure these voltages and pulse from the generator and a sensor
    I have attached a jpg (a graph that i just made with excel to explain). The time 't' is what I am trying to measure
    Cheers
    Awais 
    Message Edited by awais.h on 03-30-2010 11:20 PM
    Message Edited by awais.h on 03-30-2010 11:21 PM
    Solved!
    Go to Solution.

    Hi
    Thanks for the code but I'm afraid it won't work. Like you said the probability of choosing a value that is on both graphs may not happen. This is something that I would like the code to do automatically.
    But I did use the previous code posted and made some modifications to it and it seems to work perfectly. Now the next thing is to be able to get just that one value that tells you the first time difference.
    Here is what I get using that code.
    As you can see from the t Values. I only need the one that is highlighted. If there is a way to filter out the rest it would be great.
    I was thinking of a while loop and as soon as the value is higher than 3E-5 it would store the number and stop the loop, but I'm not too familiar with arrays in labview.
    Here is the the code modified.
    As you can see, it wasn't that big of a modification and it still is your code.
    I will keep trying.
    Thanks for the help
    Attachments:
    FinalShockSpeed.vi ‏55 KB

  • Question on the result of using Wavelet transform on sine wave

    Dear all,
    I have apply the Wavelet transform on a 50Hz sine wave. The result is shown below. But I don't understand the result of Wavelet transform. Anyone can help me? Thanks.
    Victor

    You seem to have something against the FFT, yet continually compare other transforms to the "sweet spot" for the FFT, ie. sinusoidal and periodic functions.  Without trying to write a treatise on the subject (there are many fine books), a few observations.
    The primary purpose of any transform pair is to perform a rotation in function space, for the FFT we are familiar with the time domain and frequency domain.  The wavelet domain is not so simple.  The FFT is very effective for sinusoidal and periodic functions, ie. those that have no localization in the time domain.  If you have a sinusoidal input, the infinite signal in the time domain can be reduced to a pair of numbers (one if you take the power spectrum).  That is very efficient, other periodic signals can usually be approximated by a small number of terms.  
    Wavelets on the other hand are chosen to be localized in both the time domain and the wavelet domain.  If you look at a periodic signal like your sine wave, you see a mess, and to recreate the input signal you will need to keep an awful lot of the points around for the inverse transform.  You may be able to set the last 1/3 to zero, but that's it.  To see an effective application, you should be looking at localized functions, like an impulse.  Put an impulse into the wavelet transform and you get something that is still a bit complex, but pretty simple.  The FFT of an impulse contains components at all frequencies and the wavelet clearly wins in this case.  
    On paper, there is usually a clear choice, and the FFT almost always wins for spectral estimation.  On the other hand, if you are trying to compress "real world" data, for instance an image, then there is a choice to be made.  Standard JPEGs are FFT based, you take the FFT and try to keep just the largest frequency components.  As you probably notice, edge contrast usually suffers, especially at higher compression.  With wavelets, it is typical to have slightly better contrast leading to better preservation of details for a given compression.
    In short, my opinion is that transforms are useful when they simplify the problem.  Wavelets do not simplify the representation of a sine wave. 

  • How do I make a sine wave in illustrator?

    Hi,
    I started a thread earlier this evening but I think that I accidentally flagged it as "solved" or something like that (I'm new to this forum). So I'm trying this again. I want to know if there's a way of creating a sine wave in illustrator. I've managed to create a cosine wave by using the zig zag effect on a line and choosing "smooth". But I can't seem to find a good way to make a sine wave.
    This is the difference for anyone wondering:
    I want a sine wave just like the picture above.
    Thanks for the help!
    ekmanch

    ekmanch,
    As I (mis)understand it, to create a single full sine wave, you may:
    1) Create a horizontal line 2.5 times the length of the desired full sine wave (or you may adapt the length later);
    2) Effect>Distort & Transform>Zig Zag with 4 Ridges per segment and Smmoths Points and the desired height as the Size (or you may adapt later);
    3) Object>Expand Appearance;
    4) Object>Path>Add Anchor Points;
    5) With the Scissors Tool cut where the sine wave starts and ends;
    6) Ungroup if needed and delete the end bits (and adapt the length/height if needed).

  • How can i measure only the valley voltages of a sine wave in labview 7 express evaluation version?

    I am trying to convince my company to send me to purchase labview and send me to classes for labview.
    I am trying to put together a small demo for them using the Labview 7 express evaluatin copy that I recieved.
    What I am wondering is how can filter out everything besides the valley peaks on a sine wave.
    What I am trying to accomplish, is create an example showing that Labview can sameple from a sine wave, read about 5 "valley" points of the wave, evaluate these based on a value that i can define, and signal pass or fail.
    attached is a picture of what i have so far
    Ryan
    LV 7.1
    Attachments:
    progress.bmp ‏3841 KB

    Hi,
    I built a VI using LabVIEW 7.0 that detects the valleys in a sine wave. It uses the 'Peak detector' VI that I believe is available in the evaluation version.
    (Functions palette >> All Functions >> Analyze >> Signal Processing >> Time Domain >> Peak Detector)
    I have attached a VI as well as the screen shots its front panel and block diagram.
    I hope this helps.
    Sincerely,
    Feroz
    Attachments:
    valley_detector_bd.jpg ‏36 KB
    valley_detector_fp.jpg ‏72 KB
    valley_detector.vi ‏29 KB

  • How can I Write a sine wave in an Access-fil​e?

    I measure a sine wave in LabView 6i. How can I write the datas automatically to an Acces-file, at the same time?
    In my program, I managed it with Execute SQL.vi, I change a number in a SQL statement(String) -> after this I push start and then it writes the statement in the Access-file.
    The problem is, it writes only one data per measurement in the file. How can I write all datas in the Access-file and measure the wave at the same time?
    Thanks for help!
    Attachments:
    getwave.vi ‏49 KB

    On the waveform palette, you will find a "to components" vi that you can break out the array of the waveform. You can then, using a for loop write all of the values from the waveform.
    Better yet, there are examples in the database toolkit manual on pages 3-13 to 3-15 that deal with reading arrays (and even has a waveform example).
    Good luck!

  • Sine wave on startup

    I searched for this all over and can only find references to start up sounds like 5 beeps or breaking glass.
    A couple of times I have started up my PowerBook G4 to have it make a single mid-ranged sine wave sound for a second or so. Then it waits for a few seconds and makes the normal startup sound. Everything seems to be running fine, except that hard drive access has become pretty slow. I tried running repair disk and it did nothing. What does the sine wave sound signify? Like I said this has only happened a couple of times, and is the only unusual error I've gotten.
    Thank you,
    Andrew
    PowerBook G4 17"   Mac OS X (10.4.8)  

    sometimes slow drive access means failing hard drive.
    all kinds of noises could be made by failing drives also.

  • How can I calculate the frequency of a 2-4Hz three phase sine wave in 50msec?

    I want to calculate the frequency of a sine wave using either all three phases or just one, but I want to know the frequency after 50 msec, I don't want to have to wait for a full period.

    I have a mathematically sound suggestion but I do not know how well it will work in application. Most period measurements measure the time between a full period or several periods to eliminate the error introduced by the measuring device. Essentially the device error is made insignificant.
    Mathematically you can do much more but there is a tradeoff between recording less information and knowing (or assuming) some values. For instance, if one knew the amplitude and could calculate the derivative of the signal, one could calculate the frequency. A sine wave can be represented by the function: A sin (BX)=C , where A is the amplitude, B is the frequency, C is the present measured value. If the equation is solved for X, we get: X=(sin^(-1)(C/A))/B. The d
    erivative of the first equation is AB cos(BX)=C. If the equation for X is now substituted into the second equation, we get, AB cos(B (sin^(-1)(C/A))/B)=C. Solving for B we get B=C/(A cos(sin^(-1)(C/A))). Remember, we already know A and C, so we are done.
    Practically every step and assumption in the above argument introduces possible error which will affect the accuracy of the frequency. Unfortunately it is a trade off and that is why at least a whole period needs to be measured to get an accurate frequency.
    Jeremy Braden
    National Instruments

  • My Sine Wave File sounds different in Logic than iTunes

    I am working on creating musical compositions with embedded sine wave patterns (which I am generating in a foriegn application). These sine waves are designed to entrain the brain to different frequencies to facilitate in stimulating meditative states of consciousness in the listener.
    Unfortunately, when I import my sine wave audio file (in .wav format) Logic changes it and the rhythm is frequency is twice as fast! When I play the file in iTunes it sounds just the way I generated it, but when I import it into Logic through the audio bin or simply drag and drop onto the arrange window, it sounds different and cannot work for the precise control I require for my compositions.
    Does any one have any idea why this is happening or what I can do to import my audio file without changing it?
    Thank you so much for any ideas/assistance,
    Devlin Dewitt Donnelly

    Hi DD Smooth,
    you should check sample rate settings on your original audio files and make them match the sample rate settings on your logic project prior to importing them. Sounds like you are generating 48khz .wav files in your foreign app and Logic must be set to 44.1khz by default. Or the other way around
    Message was edited by: Imol

Maybe you are looking for

  • Upgrade screen and memory

    1. Hi. I just purchased a macbook pro 15 inch from amazon (2.2Ghz quad-core, 4GB memory and so on). The screen is just normal resolution 1440*900.. I really want to upgrade this screen to 1680*1050 because I am going to do lots of work on images and

  • TS3899 how do I add more email message to my Iphone 5s?

    I just purchased an Iphone 5s to replace my 4.  I have a setting on my 4 that allows me to keep up to 1000 messages in each of my email boxes.  The setting is under Settings, Mail, and then show.  My new phone doesnt have this setting.  Am I missing

  • Upgrade question for ISE 1.1.1 to 1.1.2 patch 8

    Hi everyone, I need some advise on upgrading from ISE 1.1.1 patch 3 to 1.1.2 patch 8... I have read the upgrade document on the Cisco website http://www.cisco.com/en/US/docs/security/ise/1.1.1/upgrade_guide/upgrade.html and tried to understand it pro

  • HT1212 my ipad is locked how can i unlock it

    my ipad is locked and apears ( some thing can you ask me ) how can i resolve it

  • Multi-master access from separate DSCC views

    Hi, I have two DS6.2 installations - one in test, one in production. They are both multi-master (two masters) environments. In test I can run DSCC on both masters, and can manage both from each DSCC. However, in production I can only access both mast