Part real and imaginary FFT in Labview

Hi all

I have a very quick question after performing a FFT in LabView, I want to isolate the real part of the FFT of her imaginary part for further processing. Should what VI I use? Could you please direct me step by step for it?

Is this possible?

Thanks a lot for your help.

Israel

In the digital > range complex, you will find the complex to Real Re / Im primitive.  This works with berries such as those that generates the FFT VI.

Lynn

Tags: NI Software

Similar Questions

  • Difference between FFT LabVIEW and Matlab FFT

    Anyone know why there is a lag in the absolute levels of the results of the function in LabVIEW and Matlab FFT?

    See the VI attached for an example of my code to LV.

    Also attached is the plot generated in Matlab, which seems to be compensated by ~ 37dB.

    This was generated by using the command "plot (10 * log10 (abs (fft (x))))", where x is the same as in the VI input array.

    Thank you very much

    Dan

    I see you are using the VI of spectrum FFT which returns a unique range of face.  To convert a transformation both sides (IE FFT) in one spectrum sided with RMS units there is a standardization of sqrt (2) / n, where N is the number of points in x (t).  You can prémultiplier your x (t) by N/sqrt (2) and get the same results as Matlab.  Or, you can use the FFT.vi so you compare transform to transform instead of spectrum to transform.

  • request to help build a vi to acquire a signal of pc6251 for the acquisition of data and perform fft it can u people please help me? Thanks in advance

    Hi all... I learn LabVIEW since few days.i want to acquire a signal of pc6251 of acquisition of data and perform fft it can u people please help me? Thanks in advance

    If you do only use LabVIEW for a few days, you should get familiar with it first by looking at some of the resources available here. After that, you can watch heredata acquisition.

    After reviewing these documents, you can post back with any specific questions.

  • When you watch a video on Facebook, etc., the video part freezes and the sound continues to play until I have spend on them... Same video works fine on Chrome?

    When you watch a video on Facebook, etc., the video part freezes and the sound continues to play until I have to go over it. I use Wuindows 7. The video will restart when I pass this pointer/mouse.
    The same video (s) works correctly when you use Chrome?

    This issue may be caused by malicious software.

    Make a check of malware with several malware scanning of programs on the Windows computer.
    Please scan with all programs, because each program detects a different malicious program.
    All of these programs have free versions.

    Make sure that you update each program to get the latest version of their databases before scanning.

    Alternatively, you can write a check for an infection rootkit TDSSKiller.

    See also:

  • How will I know which bat is real and not fake?

    How to know that fighting is real and not fake?

    http://www.beatsbydre.com/on/Demandware.store/sites-beats-site/en_US/link-page?c id = safe - buying guide

    more

    detect the false beats by dre

  • Impossible to find the field read and write VI in labview 2009

    where is the field point to read and write VI in labview 2009

    According to the version of LV, BT pallets can be sensitive to the context. Try to create a project and add a fieldpoint target to the project.  Right-click on the target of FP in your project and select new > vi.  Now FP functions should appear

  • Opening Word, Excel and PowerPoint files in LabVIEW with digital signature of files

    Hello

    I try to open Word, Excel and PowerPoint documents in LabVIEW (or were then converted into a format that can be opened). After the opening, to fill out checklists can insert a digital signature preset (possibly through an authorisation of user name and password) and save the file while preventing further edit or print a pdf of this report.

    I have a good experience with LabVIEW, but not in this kind of a system.

    I appreciate if someone can point me in the direction to start.

    Thank you very much

    Al

    Regarding (1): there is no ActiveX control to view the Microsoft Word/Excel/PowerPoint files. If you want to display these on a front of LabVIEW, so the simplest solution is to use a web browser on the front panel control. This will allow you to provide the path to the file in the URL of the web browser control navigation and the file will be embedded in the browser control. It would be no different than the consultation within Internet Explorer.

    Regarding (2): assuming that you view the document on the front panel, this looks like the basis of LabVIEW programming, so I don't know what you're asking for here, or that you are having problems with.

    With regard to the (3): I must admit that I'm not quite clear on what will be signed. It also seems that the signing and printing of PDF are two distinct objectives here.

  • InDesign CS6 link real and effective Panel missed ppi PhothShop eps

    InDesign CS6 link real and effective Panel missed ppi PhothShop eps

    ohmnath wrote:

    Hi Lapiz,

    This is an expected behavior. You will get information ppi for raster as JPEG images, not for the vector images based as EPS.

    Kind regards

    OM

    Hello Om,

    in place of the image files EPS PhotoShop, InDesign is able to calculate the effective PPI.

    Not in the links Panel, but with its preflight feature.

    Here is an example for some parameters with a preflight profile.

    Note: The values are examples. Insert values that correspond to your needs.

    Set your minimum values high enough and you will be reported on each value effective ppi for every PhotoShop image placed in your document.

    In my view, an expected behavior would be to calculate the effective ppi for PhotoShop EPS images in the links Panel.

    Like preflight display, it can be done.

    Kind regards
    Uwe

  • file 2/3 with Indesign States"file archive is missing... "we have already downloaded part 1 and 3. Help?  what it means

    Archive file InDesign States"is missing... "we have already downloaded part 1 and 3. Help?  what it means

    File 2 of 3 is important.

    http://trials2.adobe.com/AdobeProducts/IDSN/8/Win32/InDesign_8_LS16.exe

    Access denied error?

    Click on the link below and open the page and just keep it open.

    Once again click on the link above.

    https://helpx.Adobe.com/Photoshop-elements/KB/Photoshop-elements-10-11-downloads.html

  • Create a data streaming from C++ stream and read it in LabView

    Hi all.

    I'm working on a project that is to connect to a tracker of movement and reading data of position and orientation of this in real time. The code to get the data is in c ++, so I decided that the best way to do it would be to create a c++ DLL that contains all the functions necessary to first connect to the device and it reads the data and use the node to call a library function to power the Labview data.

    I have a problem, because, ideally, I would like a continuous flow of data from the code c ++ in Labview, and I don't know how to do this. Put the node function of library call for a while loop seems like an obvious solution, but if I do it this way I'd have to reconnect to the device whenever I get the data, which is quite a bit too slow.

    So my question is, if I created c ++ function that creates a data stream, could I read that in Labview without continually having to call a function? I would rather have only to call a function once, and then read the data stream until a stop command is given.

    I'm using Labview 2010, version 10.0.

    Apologies if the question is badly worded, thank you very much for your help.

    Dave

    dr8086 wrote:

    This method resembles an excellent suggestion, but I have a few questions where I don't think I understood fully.

    I understand the basic principle is to use a call library function node to access a DLL that creates an instance of the device object and passes a pointer too in labview. Then a separate call library function node would pass this pointer to another DLL that could access the device object, update and read the data. This part could be in a while loop, then continue on reading the data until a stop command is given.

    That's all. I'm including some skeleton for example code. I am also including the code because I don't know how you experience multi threading so I show how you can use critical sections to avoid interactions between threads so that they do not lead to questions.

    // exported function to access the devices
    extern "C"  __declspec(dllexport) int __stdcall init(uintptr_t *ptrOut)
    {
        *ptrOut= (uintptr_t)new CDevice();
        return 0;
    }
    
    extern "C"  __declspec(dllexport) int __stdcall get_data(uintptr_t ptr, double vals[], int size)
    {
        return ((CDevice*)ptr)->get_data(vals, size);
    }
    
    extern "C"  __declspec(dllexport) int __stdcall close(uintptr_t ptr, double last_vals[], int size)
    {
        int r= ((CDevice*)ptr)->close();
        ((CDevice*)ptr)->get_data(last_vals, size);
        delete (CDevice*)ptr;
        return r;
    }
    
    // h file
    // Represents a device
    class CDevice
    {
    public:
        virtual ~CDevice();
        int init();
        int get_data(double vals[], int size);
        int close();
    
        // only called by new thread
        int ThreadProc();
    
    private:
        CRITICAL_SECTION    rBufferSafe;    // Needed for thread saftey
        vhtTrackerEmulator *tracker;
        HANDLE              hThread;
        double              buffer[500];
        int                 buffer_used;
        bool                done;       // this HAS to be protected by critical section since 2 threads access it. Use a get/set method with critical sections inside
    }
    
    //cpp file
    
    DWORD WINAPI DeviceProc(LPVOID lpParam)
    {
        ((CDevice*)lpParam)->ThreadProc();      // Call the function to do the work
        return 0;
    }
    
    CDevice::~CDevice()
    {
        DeleteCriticalSection(&rBufferSafe);
    }
    
    int CDevice::init()
    {
        tracker = new vhtTrackerEmulator();
        InitializeCriticalSection(&rBufferSafe);
        buffer_used= 0;
        done= false;
        hThread = CreateThread(NULL, 0, DeviceProc, this, 0, NULL); // this thread will now be saving data to an internal buffer
        return 0;
    }
    
    int CDevice::get_data(double vals[], int size)
    {
        EnterCriticalSection(&rBufferSafe);
        if (vals)   // provides a way to get the current used buffer size
        {
            memcpy(vals, buffer, min(size, buffer_used));
            int len= min(size, buffer_used);
            buffer_used= 0;                 // Whatever wasn't read is erased
        } else  // just return the buffer size
            int len= buffer_used;
        LeaveCriticalSection(&rBufferSafe);
        return len;
    }
    
    int CDevice::close()
    {
        done= true;
        WaitForSingleObject(hThread, INFINITE); // handle timeouts etc.
        delete tracker;
        tracker= NULL;
        return 0;
    }
    
    int CDevice::ThreadProc()
    {
        while (!bdone)
        {
            tracker->update();
            EnterCriticalSection(&rBufferSafe);
            if (buffer_used<500)
                buffer[buffer_used++]= tracker->getRawData(0);
            LeaveCriticalSection(&rBufferSafe);
            Sleep(100);
        }
        return 0;
    }
    

    dr8086 wrote:

    My main concern is that the object can get out of memory or be deallocated since it would not take place to any namespace or whatever it is.

    As you create the object with the new, the object expire not until the dll is unloaded or the process (LabVIEW) closes. If the object will remain valid between condition LabVIEW dll calls not a not unload the dll (who does if the screws are closed). When that happens, I don't know exactly what happens to the active objects (that is, if you forgot to call close), I guess the system recovers the memory, but the device could still be opened.

    What to do to make sure that everything is closed when the dll before I could call unloads close and remove the object is whenever I create a new object in the dll that I add to a list when the dll is unloaded, if the object is still on the list, that I'm deleting it.

    dr8086 wrote:

    I also have a more general question of programming on the purpose of the buffer. The buffer would essentially be a large table of position values, which are stored until they can be read in the rest of the VI?

    Yes, see the code example.

    However, according to the frequency with which you need to collect data from the device you have this buffer at all. That is, if take you a sample on every 100ms, then you can remove all threads and buffer related functions and instead to read data from the read feature itself like this:

    double CDevice::get_data()
    {
        tracker->update();
        return tracker->getRawData(0);
    }
    

    Because you need only a buffer and a separate if thread you collect data at a high frequency and you can not lose any data.

    Matt

  • Synchronization and optimization of keithley-Labview with GPIB-USB

    I started an old thread on this subject, but I have some new problems. My vi is to control a Keithley sourceMeter to read measurements every 5 ms for 6 to 10 hours, using GPIB-USB. The vi simply sends the commands under a full script to the instrument and then bed measures (voltage and current) in a loop using the visa and saves the data and displays them in a second loop using a queue. I decided to use a queue and a second loop due to the delay caused by reading data, save them in a file + display, all in a single loop! I want to be able to see all the data with real time axis, so I used a xy chart.

    Having a shorter time in the upper loop isn't a bad idea.  Using the wait until the next ms multiple rather than just the Dequeue wait time can cause the occasional time jumps.

    I have no LV open now, so I'll try to remember your VI.  I think you picked up 3 data values and a timestamp of each 5 ms.  It is 800 items every second. If you want to save all the data but only write to the file every 5 seconds, you will have to accumulate 4000 items. Because file entries are not always made exactly when you ask them because of the behaviour of the OS, you must allocate a bit more wide open spaces.  You can initialize an array 2D as 1200 X 4 (1200 lines of 4 columns) of NaN. Place this table into a shift register.  Every time you Dequeue data, replace the next line with the data.  When you write to produce, use the subset of the array to get the part that was replaced with real data and write the part in the file.  Return the initialized array of NaN in the registry to offset and continue to replace the data.

    Lynn

  • Touble with update channel in time real and unique switching changes of Agilent 34790 channel has example

    I'm trying to control via LabVIEW 34790 has Agilent. I made two sets of adjustments to the example of Advanced Scan I killed the driver but I can't make them work together.

    The first adjustment is to update channels selected in real time as opposed to having to stop the operation of VI to the entry of new. The second change that I've done is to make sure that the instrument is not switch when only one channel is selected. The unit will switch the channel to initialize once at the beginning, but because it is not cycling between different channels does not need to initialize.

    The two changes work fine on their own (each was built off the coast of the Advanced Scan example with some indicators for readings added identically both) but putting them together is a challenge. I know it was stupid to do separately; It started as a mistake, with that I ran. I thought I could just make a change in the VI on the other, but this is not the case.

    I have attached two independent changes would appreciate some advice.

    Thank you

    Yusif

    Kira,

    In the original VI that I posted, the string inside the loop indicator which contained all the subVIs provided in the example (not counting the first track set up) would not display the list of the channels updated. In fact, I solved the problem yesterday and would be happy to share with anyone who is interested:

    The problem is that I was initially put in the conditional of the change of a single channel, based on the number of iterations of the while loop. If there was only one channel, that the structure of the case returned to the son through all right, it was possible to circumvent the two subVIs in the case of 0 and therefore no change. The key was to spend the conditional of the structure of matter to be a true/false, that contains the same objects as the original. The real deal would be dependent on the input being 3 characters long, not empty string and the same as it was in the previous iteration thus implemented the exact state where one lane has not changed. The VI works exactly as I wanted at least some messy shows I will be clean today.

    If my solution is not clear or someone would see the VI me message please.

    Thank you for the help,

    Yusif

  • 2 data columns of the worksheet in the indicator and a FFT

    Description of the problem:

    I have ben far from labview for many years. Now I am taking 2 data worksheet columns, read them in the 'read delimited spreadsheet vi', and view the two columns on the façade of my
    VI. I can get only one column to display.

    so I want to draw the power spectrum of these data without having to use additional
    loops, arrays, etc.

    LabVIEW is an example vi that is half of what I want to do

    (Amplitude of the spectrum (sim) .vi).  The spectrum analysis is performed using the entries from a signal generator vi instead of reading of a worksheet.  Also the (Amplitude of the spectrum (sim) .vi uses a real world vi which produces an index of time for the x axis.  It also adds noise to the data, to which I do not.

    I see the problem.

    Your delimiter for the file playback.  You show a comma, but it is actually a comma and tab in there.

    Right-click, then set it to \codes see of display style.

    Delete the content of this constant and re-enter the comma.

  • NI Elvis and Multisim interactive without labview

    If a circuit is implemented and tested with the help of Elvis, the results of an output displayed in Multisim and Labview?  If I want to change my Multisim simulation to match the output of the circuit set up as Elvis, is possible in real time?      I know that TINA can do with their hardware/software.     Thank you

    jweaver-

    You can display the measurements in Multisim and LabVIEW.  With NI ELVIS, you can use 12 instruments of autonomous software by installing the driver (FGEN, Noculars, DMM, ect).  The instruments are built using LabVIEW.  You can access these same instruments in Multisim environment and compare the Multisim circuit simulation commensurate with live material in real time.  I included a tutorial describing how to do it using equipment OR myDAQ.  The steps are the same for NI ELVIS.

    If you want to create a custom beyond the 12 instruments application, you can program the instruments in the LabVIEW programming environment.

    " Use myDAQ with NI Multisim Circuit Design software

  • Original parts, equipment and devices

    I am an essential when it comes to this.  For example: I have reason to believe that my computer has been tampered with.  After picking up from where I used to live, which was a process of 2 weeks, I noticed a few differences.  It seems that I had to update my SM Bus controller.   Having something to do with my sound, video, game controllers.   Known as DVB-T/ATSC hybrid minicards, when I choose to back the driver for this hybrid mini map it shows me an ATI... of cards that once completed, my screen freezes almost instantly.   Whereas now, I have little video game and can't play any video game.   My computer was made for games and video.  XPS 420, intel core 2 duo, 4 GB of ram, Windows Vista, SP2, 32-bit.     I don't know what else to say about the computer for help, but my main Question is this. : How can I find the actual original parts of my computer that I had ordered.  How can I verify that all the real parts of the system are in the right place, audio, video cards, all Pci slots, cables, connections for what and where.    I seems my video performance has been reduced so that computer, except I don't really videos, seems to work half decent.  A track is damaged or someone had something physical inside.       Please send me email Wavec questions or anything like that.   If no response (s), thanks in advance.  I dunno how to explain it.   Thanks again, * address email is removed from the privacy *.

    Run one of these inventory programs free system to see what is inside your computer. Since you have a Dell, you would only get the drivers (which seem to be wrong or missing) of the Dell Web site.

    http://www.belarc.com/free_download.html - Belarc Advisor
    http://www.gtopala.com/ - System Information for Windows

    Dell Support & drivers - go to the site Web and download/install the drivers and utilities for your operating system from Dell. Be sure to choose the drivers 32 or 64-bit according to the case. Enter your Service tag to get the drivers for your specific model computer.
    http://support.Dell.com/support/downloads/index.aspx?c=us&l=en&s=Gen

    In my view, that Dell can also have a utility on their website to check the configuration of your computer.

    MS - MVP - Elephant Boy computers - don't panic!

Maybe you are looking for

  • A1278 overheating problem

    Hey all,. I have an A1278(MacBookPro8,1) and its pretty bad overheating. I reapplied thermal paste, reinstalled OS X, but it will overheat after a few hours of running. The location of the heat is more towards the left, then it shows in the photo abo

  • Download from iTunes store files damaged

    I bought a song which apparently have not downloaded correctly. iTunes does not let me play. The program stresses the fact that my computer Apple id should be my wife. Seems that the rest of the music plays very well. How can I fix it. iTunes for Win

  • my hotmail account is blocked. Please advise me what to do

    Please TELL me WHAT to DO. I CAN'T LOGIN MY HOTMAIL ACCOUNT

  • I need to upgrade my xp home to xp pro.

    I need to run a file transfer program, but the two computers must be running the same operating system.

  • Security Scan Pop Ups

    I get RegWork pop ups (every two minutes or more) and I never installed it.  I tried to delete the associated files (I think that PC Max) and it always happens.  What can I do?