continuous signal to discrete


Hi Gareth,

The output of this VI is a waveform, which is a cluster with an initial time (to the), sampling period (dt) and a table 1 d for the values there.  To extract the table 1 d of values, you can go to-> get wfm comp waveform and use this feature.

You can use the-> build wfm waveform to change the dt and table 1 d.  For the 1 d array, you just need a few manipilation table to get your range properly and feed the new wfm generation function table.

Tags: NI Software

Similar Questions

  • 6733 continuous signal output generation.

    Hello

    I want to use an NI PCI-6733 map for generation of continuous signal output.

    I downloaded the modules OR measure small DDK OR 671 x & 673 x examples (PCI & PXI) and run the samples.

    Our goal is to put a few samples in the FIFO buffer and use the external update (on PFI5) to send the samples to the exit.

    Essentially a combination of AOEX4.cpp and AOEX6.cpp example should work.

    However, example 6 uses board-> DACDirectData0.writeRegister (.) to set an output value.

    To update the output, I use the following code to generate a wave of block.

    Sub
    NIPCI6733Card:nPoll_Test_T6() / / function called at 5 kHz
    {
    t67xx * Council const = & GetNI();
    Support * const theSTC = & GetSTC();

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    theSTC-> Joint_Reset.writeAO_Configuration_Start (1);
    theSTC-> Joint_Reset.setAO_Configuration_Start (0);
    theSTC-> Joint_Reset.setAO_Configuration_End (1);
    theSTC-> Joint_Reset.flush ();
    ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    Board-> DACDirectData0.writeRegister ((OutputHigh). 0400:0 x 0 x 0);
    Board-> DACDirectData1.writeRegister ((OutputHigh). 0400:0 x 0 x 0);
    Board-> DACDirectData3.writeRegister ((OutputHigh)? 0100:0 x 0 x 0);

    OutputHigh =! OutputHigh;

    }

    My frequency of update of application (the election) is 5 kHz. The output should run on 15, which means that each update I need to resolve before the 3 samples. I want to use FiFo for this.

    (Note: the output is triggered by PFI5 at 15 kHz)

    My idea is to 3 samples in the FiFo buffer each update of the application and leave the external trigger update of the output.

    Example 4 uses the FiFo. However, this example stops after 5 running running the same fifo data.

    How can I set up FiFo continuous data?

    370735e.PDF manual describes the following:

    With non-regeneration, old data will not be repeated. New data should be
    continuously written to the buffer. If the program don't write new data to
    the buffer at a speed fast enough to deal with the generation, the buffer
    will be negative and cause an error.

    This is what I want. Is there an example?

    Kind regards

    Peter

    Dennis,

    Thanks for your reply.

    I have whil post-its on the correct Board.

    I implement for IN-Time. It is a time real OS for Windows.

    Kind regards

    Peter

  • Amplitude measurement of a continuous signal in a given time window

    I'm working on an acquisition system that acquires a continuous signal of 250 kHz. My goal is to measure the amplitude peak-peak of the first reaction of signal, the problem with my setup, this is the first part of the signal is always higher than the part of the signal that I'm interested. If I try to use the measure of max from Ridge to ridge of signal VI then responds with the measure of Ridge Crest of the initial part of the signal. See the attachment for a better understanding, I would still like to view the raw signal as is, but I would like to measure the peak voltage at peak of the signal between the yellow sliders.

    Thanks in advance...

    If transient initial always occurs in the first 12 microseconds, you can use any subset of table or similar wave function to retrieve the last part of the wave. Then use the measurement from Ridge to Ridge on this subset.

    Lynn

  • weak continuous signal low-pass filtering

    I get continuous signals to the NI USB-6259 of multifunction DAQ device is acquiring its signals to 1000 Hz. The rate of data acquisition can be changed through the GUI, but that

    is for later analysis. The main issue here is labwindows offers many options for filtering. I was wondering if someone could recommend the best option for a LP

    Filter on a frequency of 50 or 60 Hz. are there - it implemented an easy way to put this. Basically, I want to filter the data acquired and then store it in the file that is currently present.

    I was also wondering if material 6259 filtering, if it's a better road then should I use the filter material to clean noise signals?

    mdmorar,

    The reason why you get this error is the low-pass filter property is is not supported on the USB-6259. You will need to use a filter software for your application, because there is no low-pass filter in the material. If you look under the range of libraries in CVI and select Signal Processing > IIR digital filters > features of filtering in a single step, it will give you options for different low-pass filters. They have some low-pass filters here that should help you.

  • I want to do simultaneous 180 continuous signal phase (square) to 2 analog outputs

    Hello

    I would like to use a meter to trigger (internally) 2 outputs analog, such as the continuous AC signal to each output is shifted 180 degrees.

    I hoped to do with no external connection in addition to the ao0 and ao1 was to use a timer as a trigger counter and have a trigger analogOutput on the front and the other trigger on the falling edge to get the required result.

    However, it doesn't matter how I get there.   An absolute requirement is that two continuous AC signals are present to ao0 ao1 outputs and they are out of phase by 180 degrees and all trigger occurs on the PXI bus with no other connections external that is frequency of 25 Hz.  My card is an SMU-6363.

    I was hoping to get the hardware to do all the work of relaxation but if there is a trigger of software approach that would be

    Thank you

    That's what I ended up doing.   microseconds is quite good enough.

  • stop propperly generation of continuous signals (analog)

    Hello

    I want to generate a continuous wave-output analog (sine, for example) using NI-Daqmx. The example program in http://www.ni.com/example/29872/en/ works very well and does everything I want, but there are two problems:

    (1) I want to count the number of waveform periods that are executed.

    (2) if I press the stop button (or another event occurs), the program should not interrupt the generation of signals anywhere. It should complete the last period and than stop running.

    I tried to solve this problem in timing the loop while I have exactly one period per loop. It works very well for small frequencies, but for higher frequencies (for example 100 Hz - 1000 Hz) not more

    A second method used ends generation (always generate a period in a loop). But with this method there is an another serious proplem: if I make higher frequencies (for example 100 Hz or more) the loop requires too much time and the signal isn't continuous more because there is a short break between each period.

    I am new to LabVIEW, could find a solution so far and would be very happy if someone could help me with this :-)

    The key step is to make sure that the stop button is not connected to stop your loop.  In a 'simple' control system, there is a single loop, and the stop button (and everything else!) lives inside the loop.  When you press Stop, if it is connected to the loop Stop, everything stops.

    What you want is for the Stop button to report a condition, namely 'Stop at the end of the current cycle'.  If you generate data of a point at a time, you should be able to tell (by looking at the phase of the signal) when you are at the end.  One thing you could do would be to ask (for each iteration of the loop) "I am the end cycle, i.e. the Phase 0?  If this is true, and the Stop button is pressed, Stop.

    BS

  • Continuous signal creation (using the PFI channels?)

    Hello

    I am new to the use of OR and its interfaces. I use the USB-6221, with its C API.

    I need to create multiple channels of continuous digital output with the cycle of the frequency and the duty.

    I used DAQmxCreateCOPulseChanFreq for the crt0 and crt1 channels and it works fine, but I need a few lines.

    Can I use the channels of the PFI (PFI0-4 for example) for this purpose?

    With the help of the DAQmxCreateDOChan I can set the PFI desired channels as DO, but how can I create the signal desired on these channels?

    Best regards

    Danny.

    Howdy Danny!

    If you try to build a train of digital pulses with a frequency cycle and specified duty then using counters shipped from the USB-6221 is certainly the way to go.  Unfortunately, as you have discovered there are only two meters of material available on the USB-6221 (Ctr0 and Ctr1).

    Fortunately, you can also use the digital output lines to efficiently create a train of pulses with a frequency cycle and specified duty.  You will need create a table of examples which, when released at the specified sampling rate, looks like a period of your waveform.  For example, if my sampling rate is 1 MHz and I want to create a square wave of 100 kHz and a cycle of operation of 20% low high/80% I would generate the following examples:

    {1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}

    Please let me know if this description is clear or if there is anything I need to explain more in detail.

    Kind regards

  • Time for registration of a continuous signal offset

    Hello

    I just started learning about LabVIEW and you need to complete this vi.

    I need to display the data of shift in continuous time, but I don't know how to translate it into an acceptable.

    Attachment 1 is the vi.

    Attachment 2 shows where the problem is.

    Thank you

    L/H

    How can I make the result becomes a number of contiunous?

    I don't know what you mean by "continuous number.

  • How to read a signal of temperature continuous of a pyrometer via RS - 232

    I am currently reading and chart of a pyrometer Pyrofiber Lab that arrives via an RS - 232, a continuous signal cable. As much as I know there is no device driver for this instrument (or any other pyrometers).

    If I the pyrometer measures alone I can get these in LabView using the Assistant Instrument i/o, but only as a string reading ABC ' 'value emmisivity' "" "corrected for the temperature" "and not as individual numbers or data that I can use/chart. If I have the pyrometer in high mode baud rate (which is the mode in which I need), I can't read the signal at all. How can I get LabView to read continuous (and save or graphic) of the input signal? And is it possible to analyze the signal when it comes as a string with ""time""emissivity""temperature""fixed temperature "?

    I am very new to LabView (and programming in general), so that advice on a good place to start would be appreciated.

    You should start by reading the manual of programming. Instruments of series such as this one are unique in how the communication interface is implemented it is quite difficult to give any kind of specific help. I suggest that you start to read/control from a program of emulation of terminal as Hypertermina, Procomm, etc before attempting to write code. Then, you can view examples of shipping communication series to see how you could write the program. Personally, I have never used the Instrument i/o Assistant.

    p.s. attaching the manual would go a long way to get more help.

  • 5922 phase coherent continuous acq

    Hello

    I have several 5922 scanners that I need to configure for consistent continuous signal phase acquisition, but so far I've succumbed. Their example clocks are synchronized, but the best that I got is with the "synchronizationtart Trigger (Acq.» "ARM): Source property" set to VAL_SW_TRIG_FUNC and using a filer (delayed first level VI) to send a software trigger. Each digitizer that I control executes the code snippet (part of the Subvi) which is attached. The timestamps of the first samples are always slightly off between each of the scanners and I need them to be the same. (or 3 antenna elements used for purposes of DF). I am trying to use an input source trigger 1PPS each of the 5922, but there is no way to set the "synchronizationtart Trigger (Acq.» "ARM): Source property" at VAL_EXTERNAL that I need. If I was able to do that, then I think that all my scanners would be synchronized (I know I know there could be a slight tilt to the 1PPS through different scanners). If someone has the help of information would be great because it is time sensitive. In addition, I studied TClk but I didn't understand how to implement the way my code is written as well as all the examples of TClk only acquire data on the trigger that passes. I want to be able to wait the first trigger and then continuously acquire data later without worrying future triggers.

    -Tim

    Hi Tim,.

    To use the trigger to start, a
    Digital advantage. You indicated that you are tripping off a 1 PPS signal,
    He satisfied the requirements for the PFI input line trigger
    (HIV = 2V VILE = 0.8V)? If so, you can set source command start PFI 0 or 1 and connect the trigger of this line (on the connector DIN 9-pin).
    You should then be able to configure the master to use that begin
    source of relaxation and use a software for the reference trigger trigger
    (you will never send this trigger, so it will go get the samples before
    Forever). You can then perform a continuous acquisition on the boards in this way.

    I changed one of the fast shipping real examples to show the basic features of what I think you need to accomplish and attached it below. It can at least be used as a starting point for you to get your job application. You may need to improve the retrieval/display of the data that provides the examples present. I hope this helps!

  • Time signal

    Hello world.

    I am a beginner on Labview. I would like to ask questions about my problem described below:

    I do a signal waveform and I want to have another signal that has that 1 min delay time (amplitude does not change). So, I want to compare the magnitude of the two signals at the same time. In fact, I only find how to make a signal by discrete values (table), but I do not know how to find an amplitude in a defined time.

    Hello

    It is expected to see the difference as 0, since you compare item 'i' on channel 1 with the 'i' of the channel 2 element.

    you're not comapring them according to their time instant.

    Thus, instead of calculating the difference of two arrays Y like that, you should do the following:

    option 1: since the dt = 1 minute, you remove the first element of the array Y channel 1 and then compare it with the table Y channel 2. (do not change the table Y channel 2). Then you would compare the elements Y which are at the same time instant.

    option 2: use a loop For, with shift registers and compare the present value of the channel 2 with the value of the channel 1 of the previous iteration.

    Edit: try the attached code

  • Synchronize the analog continuous entry and continuous analog output using the unique PCI6024E data acquisition card

    Hello

    I want to generate the continuous signal and at the same time I want to read that signal that I generate using a single card DAQ. I want to generate signal and the received signal is synchronized and in phase.

    I looked at several samples on the sync, but it quiet confusing. One using the same clock of entry while the other use a trigger to start. I use the PCI-6024E DAQ card.

    Can someone help me in this regard?

    In two of these screenshots, the task to HAVE started first (that's what you want, because it is the task of the slave).

    Typically for AO, you can simply write a unique period of your waveform, and then regenerate again and again.  Your waveform would be preset before the task starts.  If you need to update the waveform on the fly according to enter programming during execution of the task, you would disable the regeneration.  In addition, if the wave form is such that it cannot be easily represented by a predefined buffer (for example, it is a strange frequency which is not a same ditch at the bottom of the sample clock), then non-regeneration is the way to go.

    Best regards

  • How can I integrate signals between t0 and T1

    My problem is: I use USB6251 to receive signal Y permanently, including proportional to t dX/d. I have to calculate the X signal in the interval between t0 and t1. I've known who can use integralx (t) to integrate this signal continuously, but I do not know how to calculate this integration in the given interval (t0 and t1).

    Help, please

    I thank in advance.

    Rostov

    What I understand here, you calculate X (the integral of your signal) from the moment you start to acquire until you stop. If you have a continuous signal of data? Can not only cut you the early data prior to t (0) and chop the data beyond t (1), and what remains is the signal X of the t (0) to the t (1).

    By "chop off", I hear using the subset of the table and determine what clues relate to these time points t (0) and t (1).

  • SystemBuild SuperBlocks

    Hello

    Why only discrete SuperBlocks (and why not continuous for example) can have an enable signal? Is it possible to enable or disable a continuous superblock?

    Thank you
    Yevgeni

    Because continuous models cannot have discontinuities in the model. Integrators need continuous signals.

    It is not possible to turn a continuous superblock.

    Dirk Mol

    MATRIXx R & D

  • Slider with integer values only?

    I want to create the slider which accepts integer values only.

    For example: 1.0 to 5.0, step: 1.0

    How to do this?

    In a Word, DIY there is no entire cursor in Cascades.

    Wrap the cursor (ongoing) standard floating point in your own class.
    Listen to the signal valueChanged (float) and immediateValueChanged (float).
    Make your own signals when the cursor moves to one discrete value to another.
    Fix the position of the cursor continues to nearest discrete value in the signal valueChanged (float) handler.

    For each continuous cursor position you will need to find the nearest discrete value.

Maybe you are looking for