Generate a different width pulse using pxi-6542

Hello I want to use the board of PXI-6542 to generate a waveform, and the waveform has different width, but the width is a integer which is less than ten  is multiplied by 0.1ms,and the multiply is random. The waveform is output through PXI-6542.Thank you for your help.  bless vivian

Duplicate Post.

Similar Messages

  • How to generate a delayed retriggerable pulse using only one counter with PXI 6070E card

    Hi
    I have a problem in generating a retriggerable delayed pulse with a single counter(triggered through a signal at gate) using PXI 6070E card. VI was developed in NI LabVIEW traditional DAQ Ver.7.1. I have used the "delayed pulse generator config" VI and a "Start counter" & "Stop counter" VIs for the purpose. But there is no output seen at the out terminal of counter. So I introduced a "wait" VI and set it to 1 sec. Now the pulse output appears but some pulses are missing mometarily after every 1 sec interval. (any solution for this)
    I have gone through a few similar requests in the forum but they suggest either to use two counters or to generate a finite pulse train which does'nt fit my application. Moreover PXI 6070E has only 2 counter timers. I am already using one counter to measure the frequency of a pulse train(signal 1). The application requires to generate a delayed retriggerable pulse for every pulse in signal 1. So I have only one counter left.
    Can I measure the frequency of signal 1 by analog means.? so that I can use two counters for pulse generation. (Signal 1 is a TTL signal).
    Request some help.
    Thanks in Advance
    Regards

    A finite pulse train (N_Pulses >= 2) does require the use of 2 counters on most of our older hardware including your 6070E.  If you're just talking about generating a single retriggerable pulse, you would only need one counter.
    Here's an example in Traditional DAQ that shows you how to set a retriggerable pulse generation (it also allows you to adjust the characteristics of the pulse on-the-fly).
    If you're writing a new program, you might consider switching to DAQmx as it supports NI's latest hardware and recent OSes should you ever need to upgrade.  Traditional NI DAQ is no longer in active development.  Here's an example of how to implement a retriggerable pulse generation in DAQmx.  You should take note that you can't use the two drivers to simultaneously talk to the same piece of hardware, although you should be able to go back and forth by resetting the Traditional DAQ driver before switching to DAQmx.
    Best Regards,
    John Passiak

  • Use hardware to generate a certain number of pulses using PXI-5652

    Is it possible to generate a certain number of periods (turn on the output for a predetermined amount of time using hardware with micro-second resolution) using the PXI-5652.

    Hello Matt,
    If you had a Vector Signal Generator, this would be more controllable using something similar to this forum.
    Otherwise, the only way to control time on the 565x would be to use OOK modulation scheme. This will allow you to turn on the signal for a little time On and Off.
    There is a shipped example called "565x Digital Modulation.vi" (on versions 1.3 and later of the RFSG driver) that can perform this task. Basically it uses the function named "niRFSG Configure Digital Modulation User Defined Waveform.vi" to write the user bit sequence and with property nodes you will configure the OOK scheme and the symbol rate (refer to specifications of your card for the possible values).
    Hope this helps,
    Gerardo O.
    RF Systems Engineering
    National Instruments

  • Measure pulsewidths and amplitudes of 3-phase pulse using PXI-5122

    Hello,
    I am trying to measure the pulsewidth and amplitude of each of the three sections of the attached pulse.  Basically there will be two negative sections and a positive section in between.  Each may have a different amplitude and/or pulsewidth.  Is there any fairly easy way to do this on the 5122 (using CVI)?  I was thinking perhaps there's a way to only capture each of the three segments separately, and let the digitizer do the relatively simple analysis.  Please see the attachment for a picture of what I'm trying to measure. 
    Thanks!
    P.S. If you can figure out a method for measuring the deadtime in between the 3 sections, and a method for determining whether the pulse is fairly square, you get extra points.  
    Attachments:
    measure pulse.JPG ‏4 KB

    determining whether the pulse is fairly square ....
    Using a Histogram of all pulse values? If it is a pure pulse all values will be in two bins .... 
    You didn't provide a coarse  time scale. Is it  p/n/µ/m seconds? 
    So my approach out of the cristal ball:
    Set up the 5122 to absolute timescale , set up trigger to 5% pretrigger with multiple shots , each shot long enough to hold one tripple pulse
    fetch one shot , seperate the pulses (find slopes seperate inbetween) , make histogram.... do analysis (hope you have the time for it)
    time between tripple pulse is the difference in the trigger timestamp
    (In LabVIEW I would use multiple loops in parrallel with queues... )
    Greetings from Germany
    Henrik
    LV since v3.1
    “ground” is a convenient fantasy
    '˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'

  • High speed variable width pulse generation

    I searched NI's website the best I could but could not find anything relating specifically to my question.
    I want to produce a pulse of variable width every 10 ms.  It seems
    the ideal way to do this is to specify a counter to count a certain
    number of ticks and then go negative when it's reached that
    number.  It's pretty easy to get the counter to do that, however
    the speed is an issue.  Is there any way to have the counter
    generate a different width pulse specified by an input number of ticks
    that can update every 10 ms.  Any resources to help me figure this
    out that you can suggest would help greatly.
    I have PCI 6229 card and if I can figure this out, I'll submit a real nice stepper motor control VI as an example.
    Thanks,
    Phil
    Message Edited by flip518 on 07-19-2005 12:10 PM

    Phil,
    It isn't possible to do deterministic pulse width modulation with you
    board, however, I can think of a couple ways to try to get close. 
    If you set your board up to do a continous pulse train generation, you
    have the ability through a DAQmx Channel Property Node to
    programmatically set the count registers to a different value.  In
    the loop that waits for the Stop button, you can set the Wait For Next
    Millisecond Multiple to be 10, and thus approximately every 10 ms you
    would change the count register.  You can change the frequency of
    the pulse three ways, by frequency and duty cycle, actual pulse high
    time and low time, or actual clock ticks for the high and low parts of
    the cycle.  The problem with this method is that since Windows
    isn't deterministic, plus you are writing over the PCI bus to the
    hardware, you are not guaranteed the accuracy of the 10ms loop.
    Attached is a VI that shows this -- it is modified from the Gen Dig
    Pulse Train-Continuous.vi example that ships with the NI-DAQmx driver.
    Doug M
    Applications Engineer
    National Instruments
    For those unfamiliar with NBC's The Office, my icon is NOT a picture of me
    Attachments:
    Software timed Pulse Width Modulation .vi ‏65 KB

  • Generating 2 clocks with different phase using PXIe-6674T ??

    Hi,
    is it possible to generate 2 clocks (same frequency) with different phase using PXIe-6674T ?
    regards,
    Yan.

    hi,
    somehow i cant use the daqmx digital counter to generate nice 10MHz pulse train with my pxi 6733.
    The option now I can use my timing module pxie 6674T to have base clock 40MHz, and then using divisor 1 and 2  I can generate 2 synchronized clock in PFI0 and PFI1.
    Then I use function connect terminal to connect Oscillator and PXI_Clock_10 to get my pxi chassis synchronized with my timing module.
    Then I use pxi clock as reference to generate my digital signal with pxie 6544.
    Somehow, my generated signals; clock from timing module, pxi clock from backplane and digital signal from pxie 6544 are not synchronized. The phase difference keeps changing.
    I dont see any Init.vi while working with pxie 6674T. I'm assuming I can simply connecting clocks and triggers through RTSI bus, then generate my digital signal with 6544.
    I need help to have 10Mhz from 6674T and another 10Mhz from 6544 with 1/4 phase difference between them, which should be stable all the time.

  • How do I configure a counter to generate pulses using DAQmx?

    How do I configure a counter to generate pulses using DAQmx?
    Is says in the DAQmx C reference help
    "CtrnInternalOutput—The signal at this internal terminal is where the pulsed or toggled output of the counter appears. The output of a counter pulses or toggles when the counter reaches terminal count. When counting down, the counter reaches terminal count when the count reaches zero. When counting up, the counter reaches terminal count when the counter rolls over. To configure the counter to toggle or generate pulses, use the Export Signal function/VI with Counter Output Event as the signal name."
    I've tried this but can't get it to work, I may have the parameters wrong or something. The DAQmxExportSignal() function is very unintuitive to me. Here is my counter config code...
    int ret = 0;
    ret = DAQmxCreateTask("",&task_);
    errorMsg(ret);
    if (ret != 0)
    throw ret;
    // Configure the counter
    ret = DAQmxCreateCOPulseChanTicks( task_, "Dev1/ctr0", "", "/Dev1/PFI8", DAQmx_Val_Low, 0, divider, divider );
    errorMsg(ret);
    ret = DAQmxCfgImplicitTiming( task_, DAQmx_Val_ContSamps, 1000 );
    errorMsg(ret);
    // Change to pulse mode
    ret = DAQmxExportSignal( task_, DAQmx_Val_CounterOutputEvent, "/Dev1/Ctr0InternalOutput" );
    errorMsg(ret);
    // Start the counter
    ret = DAQmxStartTask(task_);
    errorMsg(ret);
    The above code works fine, in toggle mode, if I just comment out the DAQmxExportSignal() part.
    HELP!!!
    Stefan

    The problem is due to the DAQmxExportSignal call.  By default, when you create a counter output pulse train task, the driver will automatically set the output of the counter to toggle when the count for each high ticks and low ticks expire.  The driver also automatically routes the signal present at Ctr0InternalOutput terminal (the output of the counter internal to the device) to the Ctr0Out terminal (the I/O pin available externally).  Using the line
     ret = DAQmxExportSignal( task_, DAQmx_Val_CounterOutputEvent, "/Dev1/Ctr0InternalOutput" );
    will tell the driver to tristate the Ctr0Out terminal and not output the signal to the external I/O pin.  Using the DAQmxExportSignal function is generally only useful if you want to route the signal to some other terminal internal to the board without having the output show up on the external connector, route the signal to some other external pin other than the default pin, or if you want to have the output show up at multiple locations. 
    If you want to change the output behavior from toggle to pulse, you need to use the DAQmxSetExportedCtrOutEventOutputBehavior function.  However, this is generally only useful if all you care about are edges (not the duty cycle of the pulse train), and you want to generate higher frequency signals.  For example, with a 20 MHz timebase as the source of your counter, you can only generate a 5 MHz pulse train by default.  This is because the minimum value for the low and high ticks parameter is 2 (20 MHz / 4 = 5 MHz).  By changing the output behavior form toggle to pulse, you can generate a pulse train at 10 MHz since the output is now pulsing instead of toggling.  However, the width of each pulse is not programmable so you will no longer have a 50% duty cycle signal.  I don't remember exactly what the width of each pulse is, but I believe it's in the neighborhood of 50 - 100 nanoseconds in width.  I hope this information helps.

  • Generating a sine wave using PXI 5441

    How to generate a sine wave using PXI 5441 (Arbitrary Waveform Generator)?
    Can anybody post a vi that generates a sine wave with frequency at a user defined frequencies.
    Thanks in advance.

    Hi Venki,
     When using an arbitrary waveform or user-defined
    waveform, you provide the actual waveform you want to generate to
    the device, so it is easy to also just connect a graph to the waveform
    and see what it looks like. Unfortunately, when using standard function generation (which is the method used in this example), you are not providing a signal that is created in software. Because the standard function
    generation is happening on the FGEN and not in software, there is
    really no way to display the exact signal without measuring
    it on a scope or some device. You can, however, simulate the signal in
    software such that the parameters which are given to the FGEN functions
    are the same parameters that you use to generate a simulated wave. This
    would be somewhat complex since you can change parameters such as
    frequency and amplitude on-the-fly, and also you would need separate
    functions for each of the different signal types available for the
    FGEN. You would need to place the software waveform generator in your
    inner loop and have a waveform graph connected to it in the loop as
    well to display the signal. The main thing to keep in mind is that this
    will only be a simulated signal and so it may not exactly match what is
    being generated (this also depends on how you program the simulation to
    work). Hope this helps,
    Daniel S.
    National Instruments

  • When using Appleworks database for printing labels can I have columns of different widths?

    When using Appleworks database for printing labels can I have a column of different width?
    Case in point, the supplied avery labels in Appleworks does not have 8195. When I build one using custom design  I need a small column between column 2 and 3 to line up the info in columns 3 and 4. All the labels are 1.3/4 inch wide but I need to insert a column 1/4 wide to match up with the avery page....
    Any ideas???    
    Thanks......
    ---warren

    Well, the issue is that when you creat a custom width of 1.3/4 from the edge of the first label to the edge of label 2 all is good. The right and left margins were also set correct in AW. The Avery page, for some reason, has a small 1/4 inch column between the columns of label 2 and 3 therefore making the distance between the left edge of the label in column 2 and the right edge of the label in column 3 - a width of 2 inches and not 1.3/4.
    I guess Avery wanted the page to look even.
    I did this work around.....
    I created a custom lay out of 2 columns (not 4) with the correct width of 1.3/4 from label edge to label edge and the correct left side margin. After printing the first page I just turned the sheet 180 degress and printed the 2nd page to use all the labels on the Avery sheet. Since the upper and lower margin were the same it worked great....
    "Great minds think alike"...   thanks for your suggetion

  • How to use PXIe-5673e to continously generate dual-tone waveform?

    Hi, everyone!
     I want to use PXIe-5673e to continously generate dual-tone waveform, and I have see some examples of RFSG, but I still don't know which one to use, can someone help me? 
    Thank you very much!!

    See if this example VI helps
    Ches this one too

  • How to generate pwm pulse using NI DAQ in MATLAB

    hi everyone. please tell me how to generate pwm pulses using Ni DAQ card in MATLAB Simulink. if through coding is possible then post the corresponding code.....reply me 

    Make sure you have installed the Measurement studio support for VB 6.0 then you will be able to find examples in the folder below on win7 and 8.
    C:\Users\Public\Documents\National Instruments\NI-DAQ\Examples
    Narrow down to Analog Output and choose update voltage example for measurement studio.
    You also have the possibility to use DAQ assistant if you have measurement studio installed. This function is a configuration type programming. After going through the configuration Wizard code is automatically scripted for you so that you can output the voltage you need. Read more about DAQ assistant in the blow link.
    http://www.ni.com/white-paper/4652/en/
    Best Regards
    Jonas Mäki
    Applications Engineering
    National Instruments

  • Measuring digital signals coming from the HSDIO (PXI-6542) with the DMM (PXI-4070)

    Hello,
    in attachment you can find the program I'm using for my measurement: I'm generating and acquiring digital signals with the PXI-6542 and at some trigger point of one of those digital signals I'd like to capture the measured values on a plot with the Digital MultiMeter (PXI-4070).
    It does work if you configure the generation repeat mode as continuous, but if you do have a finite repetition (repeat count is 1) it doesn't react on the trigger, as if it can't find a trigger. On the other hand, if you have a finite repeat count of 30 or more it does react and triggers correctly again.
    First I though it had something to do with autocalibration before the measurement takes place, but If you do a highlight execution (stepping through the program) it looks like it measures before the generation session is initialized.
    Is there a way to measure correctly when the repeat count is only 1?
    Thanks in advance,
    Jürgen

    Hey Jürgen.  I apologize that you haven't gotten an answer yet to your post.  I looked at your code and had some questions.  What is the source of your trigger to your DMM?  I see that you're exporting the data active event to PFI1, and your comments indicate that PFI1 and PFI2 are connected to give you a start trigger for your digital acquisition.  Exporting the data active event with a finite or continuous pulse should only give you a single edge per run, though - you wouldn't get a pulse each time.  Is your trigger coming from a data line?  I didn't see any line in your included data that would indicate a single pulse.
    The other thing that I noticed is that you've got no timing dependency between your HSDIO code and your DMM code - they're in parallel with each other.  Thus you could get different results run-to-run, since it's not deterministic as to which parallel "thread" that LV will start on first.  LV may switch back and forth several times, but let's say that LV reaches the HSDIO Start command before reaching the DMM Start command - in that case, the HSDIO device may finish it's entire operation before the DMM ever starts looking for a trigger, and thus never get the trigger at all.  I'm not sure why this would explain why you're seeing the finite case work and the continuous case not, but I wanted to point it out because it could bite you down the road.
    I hope some of this this helps get you going in the right direction.  I'd also suggest posting HW-centric questions in the appropriate form.  There are Digital forums and DMM forums that might help you reach people that will be more familiar with your particular hardware.
    Chris

  • How can I Generate two different reports from single execution of Test cases in NI teststand

    Hi,
    My requirement is to generate two different reports from NI teststand. One for the Logging of error descriptions and the other report is by default generated by the Teststand. How can i generate a txt file that contains error descriptions other than that mentioned in the default report?
    Solved!
    Go to Solution.

    Do you need to do that just for these two sequences but not for other sequences? I don't see a problem to use SequenceFilePostStepRuntimeError. Create this callback in both sequence files and configure them to log into the same file. SequenceFilePostStepRuntimeError callback is called after each step of the sequence file if it has runtime error. You can access the calling step error information via RunState.Caller.Step.Result.Error property. Take a look to attached example.
    The "other way" is useful if you need to log errors not for every step of the sequence file, but for some of them. This is more complex, because you need to create a custom step types for these steps. For the custom step you can create substeps (post-step in your case) which will be executed every time after step of this type executed. Then, this is you job to determine if error happened in the step, acces to step's error information is via Step.Result.Error property. 
    Also, be aware that step's post-expression is not executed in case of error in the step.
    Sergey Kolbunov
    CLA, CTD
    Attachments:
    SequenceFilePostStepRuntimeError_Demo.seq ‏7 KB

  • How Can I generate 2 different WaveForm in the same time

    Hello,
    I use a NI 6733 card and measurement studio 8 with MFC class.
    I would like to generate 2 different waveform in the same time on 2 diffrent analog output channel.
    I would like to know how can i do that bescause I succeed to generate one wafeform on one channel but not the second.
    I would like to create 2 task one per analog output channel and waveform and launch the task in the same time.
    I use the buffer FIFO and I think I have a probleme to share the buffer between the to different channel.
    thank you for your attention.

    Hello,
    This corresponds of the third case detailed in this KnowledgeBase. You have to use one task with two channel, and feed it with your two independant waveforms (at the same sampling rate).
    Cordially,
    .mrLeft{float:left} .mrInfo{border-left:solid 1px #989898;font-size:x-small;color:#989898}
    Mathieu R.  
      CTD - Certified TestStand Developer / Développeur TestStand Certifié  
      CLAD - Certified LabVIEW Associate Developer  

  • How to count number of edges using PXIe-6363 Counters

    Hello,
    I am trying to count number of edges in a test signal in a 50 ms duration. I am using PXIe-6363 card and connecting the test signal to CTR 0 SRC (PFI 8). Is it a correct connection? What else do I need hardware-wise to make a correct set up for this application?
    Thanks
    Jeet
    Solved!
    Go to Solution.

    Hi Jeet,
    When you say interrupt signal, do you mean a pulse that will pause your counter task? If that is the case, and you want to pause your task with a digital pulse, you need to use the DAQmx Trigger Property Node and set that to Pause, Trigger Type. As you said, you can connect that signal coming from the chip to any PFI line and then set that line as the source of the property node.
    There is an example that you can use that does exactly what I just described. This example is called Count Digital Events-Pause Trig.vi, and you can find it by going to Help>Find Examples..., then on the NI Example Finder window go to the Browse tab and navigate in the folders to Hardware Input and Outpout\DAQmx\Counter Measurements\Count Digital Events.
    Regards.
    Jorge
    Applications Engineer
    National Instruments
    Certified LabVIEW Associate Developer (CLAD)

Maybe you are looking for