How to generate an analog pulse

Hi
I am using SignalExpress and I would like to generate a pulse to be sent to the analog output of my device but in "create signal" step I cannot see such option: how can I do that?
Thanks in advance
Francesco

It seems to me it is through Counter Output but how do I have to set to send the signal as output to the PCI-MIO16E-1?

Similar Messages

  • How to generate very fast pulses (single puls)

    Hi,
    I have a problem with generating fast pulses in LabView (2009 / 9.0, Win7-64enterprise).
    I try to explain my project:
    I have a femtosecond laser which sends pulses with a frequency of 200kHz. It mean 100fs puls 4.9999us low...100fs pulse.....
    The laser have a gate which switches the laser output on and off (optic crystal --> very fast)
    My task is to make it possible to send one single pulse out of the laser. You should have some user interface with LabView and enter
    the amount of pulses (one, two... or more) and a big "fire" button.So we can make tests with a fixed amount of pulses.
    I am very new to LabView and really dont know how to generate very short pulses. I try with a NI-USB6008 card and was possible to do some time loops
    to generate something close to 100Hz. Now I have NI PCIx-6351 card. and want to try to generate pulses of 1us. How to do??? I dont see any posibility to go below 1ms.
    Later on I want to try some syncronisation with the laser. I want to catch one pulse and sync to the next pulse.
    Anyone able to help me with this task ?
    btw: sorry for my clamsy english...
    bjoern

    bjoern,
    OK.  A gate window should be something which can be accomplished.
    The USB-6008 only uses software timing so fast pulses are not possible with that device.
    I am not familiar with the PCIx-6351 and can find no reference to it on the NI website so I do not know what its capabilities are.  Many of the NI cards with digital I/O and counters can generate pulses or pulse trains in the timing range you want.  If you have the NI DAQ drivers, look for examples of pulse generation.
    Lynn

  • How to generate an analog biphasic single pulse

    Hi Everyone,
    I am a newbie to LV. I have been just using it for the last 3 weeks for my summer research project in which I am working with a professor on artificial neural networks. For the past week, I have been asigned to code a program in LV that will act as an interface between the user and the MEA via a STIMULATOR BOARD. I have successfully done the binary addressing part of the deal, but am stuck where I have to have a user-interface that will allow a user to generate an analog (AO) output of a single biphasic pulse to stimulate the neural network.
    The user has to have a choice of the pulse width (aka the duration), and the volt (aka height) of the pulse. Also he/she should be able to produce either a mono or biphasic simple SINGLE pulse (not a continuous pulse). I have been digging in examples but my efforts have not gotten me anywhere useful.
    Therefore, to all the LV experts...can anyone help me out with a VI that produces a SINGLE BIPHASIC PULSE for a finite time?
    Any pertinent help will be appreciated.
    Thanks,
    UE

    Ok.Here is the solution to ur problem.
     What u should use is the SQUARE WAVEFORM.VI, where user can specify the peak to peak value,offset & phase as well.
    Now inorder to generate the single square wave,its very simple.Under sampling inforamtion specify the Fs as 100 times the required frequenct Fout & no. of samples #s as 100(i.e.Fs/Fout). This will result in only one square wave.
    Then while writing on to your DAQ card select mode as "FINITE SAMPLE" mode.ith no of sample may be1.
    Let me give u a simple example. Suppose u want to generate the one square wave of 10Hz with +ve magnitude 5V& -ve to be 3V.
    The
    1.Peak to peak is (5+3) = 8.
    2. Offset is (5-3)=2.
    3.Phase is 0 or 180 depending on +ve or -ve pulse o/p first respectively.
    4.Frequency is 10.
    5.Fs is 1000 & #s is 100.
    6.Select the sample mode in "DAQMX timing.vi" as finite mode & no. sample per channel as 1.
    Also disable the REGENERATION PROPERTY od DAQ & try. It should help.

  • How to generate a bipolar pulse train in LabView using USB DAQ 6211?

    Hi,
    I am setting up a system to generate either a single square pulse or a train of square pulses using LabView, with controls to adjust the frequency, amplitude, number of pulses etc. I have had a lot of help from NI tech support setting up the actual VI itself which seems to be working fine, and outputting the pulses via a USB DAQ 6211 using a square waveform generator and the AO1 channel on the DAQ.
    The problem that I now have is that I need to pulses generated in a train to be bipolar (as they are connected to electrodes so need to be bipolar o avoid salt build up on the electrodes from the voltage going in one direction only, at least that is how I understand it!).
    How can I set up my LabView VI to generate a bipolar pulse train instead of always being positive voltage? I am new to this area and so am trying to learn but there is so much to learn!
    Thanks,
    spamjam

    Hi Shalini,
    Apologies for taking a while to get back to you, I hope I can explain what it is that we need to create with the pulses. I understand what you mean about the existing pulses having a positive and negative on the graph - but we need the pulses to start from a resting voltage and the first pulse to be positive, then back to zero, then the second pulse to be negative then back to zero etc. This is to do with reversing the direction of the current between two electrodes to prevent build up of salts on one electrod from the current always passing in the same direction. 
    I have attached a .Tif file to this post to try to illustrate what I mean - the top picture shows how the pulses are currently generated, then bottom on is what we would like to produce if this is possible?
    Thanks for your help,
    Spamjam
    Attachments:
    Slide1.jpg ‏38 KB

  • How to generate sequence of pulse trains with DAQmx?

    I need to generate a sequence of pulse trains with DAQmx (the card I have is a PXI-6229 card). As an example:
    - 10'000 pulses at 20kHz every 5 seconds with an initial offset of 2 seconds (let's say 10 pulse trains in total).
    If I use the CreateVirtualChannel.vi in "CO pulse ticks" mode, I can only specificy offset, high ticks and low ticks, but not that the sequence of pulses should be repeated after some time. 
    Now I thought that I could solve this problem if it were possible to multiply two counter outputs: the first counter would generate the pulses (continuously) whereas the second one would switch between low and high on a slower timescale in order to gate the first counter, thereby providing an initial offset and the "off" phases between the pulse trains.
    Is it somehow possible to multiply two outputs with DAQmx and the card I have? Or is there another solution to the problem?
    Thanks a lot in advance for any hints!

    Hi dlanger,
    what you want to do requires a little bit more work. 
    First look at the example "Gen Dig Pulse Train-Continuous.vi" from the LV example finder.
    This example generates a continuous* pulse train. As you see, you need a sample clock VI for setting the sample mode. 
    * NOTE: Generating a finite pulse train with a M-series card requires 2 counter.
    With a pause trigger (DAQmx trigger property node) you can gate the output of that counter.
    Now you have to generate a gate-signal with the the 2nd counter. That means, only if  Ctr1-out is high Ctr0-out outputs the 20 kHz-signal. 
    Maybe you have to adjust the times in my example a bit. 
    Unfortunately there is just one "small" problem: "let's say 10 pulse trains in total" 
    This is not possible, because a 3rd counter would be necessary (*). 
    As a workaround you can modify the while-loop that both tasks are cleared after 50s. This is not brilliant, but should work fine for you. 
    A more sophisticated way is to perform a correlated DIO. So you can generate custom pattern for multiple outputs. 
    A good example can you find here: 
    Retrigger and Repeat Finite Digital Pulse Train in LabVIEW
    http://decibel.ni.com/content/docs/DOC-8473 
    or here:  
    Generating More Than 2 Pulse Trains Using CompactDAQ
    http://decibel.ni.com/content/docs/DOC-2167 
    Hope this helps.
    With best wishes,
    Ralf N. 
    Attachments:
    Gen Gated Dig Pulse Train-Continuous.vi ‏38 KB

  • How to generate 250 ns pulses at a 200 Hz rate?

    Hello,
    I am working with the NI PXI 6229.
    I will trigger the input sampling at 1kHz.
    And I want to create an output at 200Hz, which is in synchronisation with the 1kHz.
    This output at a rate of 200Hz, should exist out of 250ns long pulses.
    This should be a digital output.
    How should I implement this?
    Thanks

    Hello Boris,
    If the precise 250 ns duration is important then you'll have to use both counters to do this.
    The first counter will be used to simply divide-down the external signal.  You can change the output mode to "pulse" instead of toggle so that it will issue a pulse every N ticks of your external signal.  In your case, N would be 5.  If you're using LabVIEW then this example shows how to configure your first counter (except you would pulse after 5 ticks instead of 2).  The pulse width would be based on the timebase used and is not configurable in pulse mode, so you can't get the 250 ns pulse from this one counter alone.  You could alternatively use the default "toggle" mode and just select a number of high and low ticks that add up to 5.  Neither of these choices would give the 250 ns pulse you need though.
    The 2nd counter will be configured to issue a single 250 ns pulse every time it receives a trigger.  The source of the trigger would be the output of the first counter (can be routed internally).  This example is a good starting point, 20 ticks of the 80 MHz timebase is equal to 250 ns (you can change the instance of the create channel VI if you prefer to let the driver do this scaling for you).
    Best Regards,
    John Passiak

  • How to generate a pulse train with different pulse width and delay?

    How to generate a triggered pulse train with different pulse width. for example, after each trigger signal, let's say 2 ms, then the counter output a pulse with pulsewidth of 1 ms, and then after 3 ms delay after the first pulse, the second pulse was generated with a pulse width of 4 ms.  Next cycle when the trigger signal comes, the same two pulses will be generated and so on. Is it possible to achieve this by using 6601 counter card? and if yes, how to achieve this? Thanks!

    Unfortunately you can not create a hardware timed pulse train with different widths on each pulse from a counter. Whilst it can be changed on the fly using software, since you require a hardware triggered signal getting the software involved will not give a huge amount of accuracy when the pulse will actually change.
    So in short you can't use your 6601 card (or a counter timer) to achieve this
    There are three possible Alternative solutions
    1 You could use a high speed digital IO device such as the (6533/34) to generate your variable signal which would require setting up the pulse train as a series of states based around the burst transmission mode where the clock would give you your specific timing.
    2 A timed analogy output (for example on a MIO card with a clock (PCI-6220 / 62xx), i.e. Not the 6704 style static analogy output cards)
    3 A high speed digital waveform card such as the (, 656x , 655x, 654x, 6534, 6533 (http://www.ni.com/modularinstruments/find_right.ht​m) ) this could then be scripted to work with your triggering and also there is a digital waveform editor which will enable you to set up the pattern you wish to generate (http://sine.ni.com/nips/cds/view/p/lang/en/nid/135​55) 
    Hope that helps
    Tim Matthews
    NI (UK)

  • How do you convert a constant analog pulse to an incrementa​l frequency?

    Hello,
    I am a very new to the Labview format. I am a graduate student in chemistry trying to update an old Raman spectrometer (from the 70's) to a digital interface. 
    I have measured two analog signals from the instrument.
    One is a constant pulse signal of 100mV. This was used to drive a stepper motor on an old chart recorder. Each pulse corresponded to a single wavenumber----which, for every 5 pulses?-----would turn the chart recorder's knob one notch and allow the other signal to record the data for 5 wavenumbers.
    The other signal ranges from 0 to 250mV. This is the signal of interest. It corresponds to the y-axis on the outputted spectra. 
    What I am trying to figure out right now is how to convert these analog pulses into incremental wavenumbers which correlate, in real time, with the other 0 to 250mV signal.
    Should I use an Analog software counter program,
    And then go from there, with synching my other signal to it?
     Can anyone tell me if I'm on the right track?

    Yes,
    First I want to be able to count the analog pulses and correlate them with a specific wavenumber (so I would start at a reference wavenumber, say, 200 wavenumbers---and then every pulse thereafter would correspond to 1 more wavenumber. So the first pulse would be wavenumber 201, the second 202, and so on). 
    This would establish by x-axis for the desired spectra of a chemical sample.
    My y-axis comes from a different analog signal altogether. This signal ranges from 0 to 250 mV--and the the magnitude of this signal received, at a specific wavenumber, corresponds to data about the chemical sample in question---at that specific wavenumber.
    So, after I first establish my analog counter program, I need to correlate this program with one that detects my y-axis signal. So my y-axis intensity corresponds with the proper x-axis wavenumber.
    Does this clarify my entire project enough?

  • Generate two different pulses or more continuous​ly with a PCI -6602

    I have a PCI-6602 and Labview 8.0. I need to create a complex wavefrom output  and I don't know how to create this waveform with the 6602, I know that I can create this pulse format by using the Agilent Pulse Generator  but I would like to use the National Instruments. If somebody has an idea about how many counters and the physical connections that I need, also about how can I use labview to generate a complex waveform output.
    I've attached the waveform that I need to generate continously and I hope that I can use the PCI-6602 for this purpose.
    Attachments:
    Pulse format.doc ‏24 KB

    This is a duplicate post, for the main post please see:
    NI Discussion Forums: How to generate two diferent pulses and re-trigger such pulses continously
    Regards,
    Dan King

  • How can I specify a delay generate a counter pulse?

    Hi all,
      I have a question about using the counter to generate the pulse train. I don't have how to program it but I try the test panel in the MAX and I see it generates the pulse train at some rate and with some pulse duration. I am thinking if it is possible to generate only one pulse with given pulse duration at sometimes after I start the task? I have a code to output an analog waveform, the waveform lasting for 35ms. I wonder if it is possible to syncronize the output of the analog waveform as well as the counter such that at 12.5ms after the waveform output started, I send that single pulse from the counter port out. I have no idea how to do that, I am thinking to use a delay but it is hard to precisely control the time to exact 12.5ms.
    Solved!
    Go to Solution.

    PKIM wrote:
    Hi all,
      I have a question about using the counter to generate the pulse train. I don't have how to program it but I try the test panel in the MAX and I see it generates the pulse train at some rate and with some pulse duration. I am thinking if it is possible to generate only one pulse with given pulse duration at sometimes after I start the task? I have a code to output an analog waveform, the waveform lasting for 35ms. I wonder if it is possible to syncronize the output of the analog waveform as well as the counter such that at 12.5ms after the waveform output started, I send that single pulse from the counter port out. I have no idea how to do that, I am thinking to use a delay but it is hard to precisely control the time to exact 12.5ms.
    I found an example in the CVI show how to generate a single digital pulse
            DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
            DAQmxErrChk (DAQmxCreateCOPulseChanTime(taskHandle,chan,"",DAQ​mx_Val_Seconds,idle,initialdelay,lowtime,hightime)​);
            DAQmxErrChk (DAQmxRegisterDoneEvent(taskHandle,0,DoneCallback,​NULL));
            DAQmxErrChk (DAQmxStartTask(taskHandle));
    I have two questions. First of all, to create a pulse, does it mean we have low state for sometimes, then high state for some times and then low state again? So why there is only two time parameters (lowtime and hightime)? Is the minimum lowtime and hightime depending on the sampling rate of the card or depending on the OS? I am using 6711 card
    I see that I can specify initial delay, does it mean the time delay after the task just start?

  • 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

  • How to use counter output pulses to trigger analog input?

    Hello all,
    I hope the kind people using this forum can help me, a lowly beginner LV programmer! I have been attempting to create a VI that produces a user defined number of TTL pulses, separated by every n seconds. Each TTL would be outputted to a stimulator, which in turn generates its own TTL. Using the stimulator-generated TTL, I would like to trigger finite analog data acquisition (e.g. for every TTL, trigger the collection of a data sweep that contains 4000 samples (collected at 4000 Hz), with 1000 samples collected pre-trigger. I would like to also be able to see each data sweep as it is triggered on a chart. As I understand things (lots of online/book/forum reading), I should be using the counter output to generate my TTL pulses, and syncing each counter produced TTL with analog input, as well as using a reference trigger. Also, the AI part should be started first, so that I don' t miss any counter outputs. If it matters, I also need to use one of the AI channels to acquire the TTL, so I can see my stimulator-induced responses to the stimulator in time.
    I am able to generate the TTL pulses from the counter output, but I am having a problem with the AI part. I am unsure how to sync the counter output with AI. Also, since I need to acquire pre-trigger samples, I would be needing to acquire samples continuously, but when I set 'continuous samples' on daqmx timing, the VI doesn't work (hence why's its set to 'finite samples').
     I hope someone out there can help, as I have been at this for what seems ages, with limited success. I am using a USB-6259 and LabView v8.2. Thanks!
    Attachments:
    RC001 v_1.vi ‏49 KB

    Hello,
    Due to the fact that analog tasks themselves are not retriggerable, a
    pulse train produced by a counter is always used as the sample clock
    for the analog input task in order to recreate a retriggerable effect
    for analog input. This can be done by creating a finite pulse train set
    to retriggerable using the DAQmx Trigger Property Node, or the pulse
    train could be continuous and just be gated by another signal. Neither
    of these methods can be properly applied in hardware to create a
    retriggerable reference trigger. You can however implement something
    similar in software by just stopping and restarting your reference
    triggered analog input task within a loop. There will be some delay
    between when the task is stopped and restarted, as these events require
    software intervention, but if there is enough time between when each
    trigger signal is generated, there should not be any noticeable delay
    or missed samples.
    I have attached an example of this!
    Mark B
    ===If this fixes your problem, mark as solution!===
    Attachments:
    RC001 v_1mod.vi ‏25 KB

  • 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

  • How to generate digital pulses to run stepper motor in a sinusoidal motion profile using NI DAQ 6229 card

    Hi,
             I need to make a stepper motor undergo rotary oscillation with a sinusoidal motion profile. As it nears the extreme points it should decelerate and finally slow down to zero velocity and then it should reverse direction and accelerate until it reaches the other extremity where it should slow down and stop and reverse direction and repeat this motion.
            The hardware is NI DAQ 6229 and the stepper motor can be controlled using digital Hi-Low (1,0) pulses. For each high pulse(1's) the motor turns 1 step. I am able to generate a analog sine wave and convert it to digital data using Analog-to-Digital.vi  But i am not able to convert the digital data to a stream of 1's and 0's in the correct sequence to get the sinusoidal profile with the amplitude and frequency i require.
            The direction of rotation can be changed by giving a pulse to another input of the stepper motor. So only half cycle of sine wave needs to be generated and it can be replayed after changing the direction to get the full sinusoidal profile.
    Any ways of making this approach work or any new approaches to this problem would be helpful. Thank You.
    Regards,
    Prabu.
    Solved!
    Go to Solution.

    Hi,
             I finally figured out a way to do it. The analog sine wave is converted to digital and sampled. Consecutive values are compared and if the least significant bit(LSB) changes then a pulse is sent to the stepper motor to turn one step.
    I have included the sub-VI's that accomplish it for the particular stepper motor and connector block i have. The front panel of both sub-VI's are quite messy but the block diagrams should be much clearer. The sub-VI's get their inputs from a third VI which i have not included. So take a look at the VI connector panel to figure it out. Hope this helps. Kinda messy but worked out fine in the end for my application. 
    Thanks again for all the help. I appreciate it very much.
    Regards,
    Prabu Sellappan
    Graduate Student
    Aerospace and Mechanical Enggineering
    University of Southern California
    Attachments:
    start motor test waveform dtest.vi ‏73 KB
    sine profile generation subVI.vi ‏41 KB

  • How to generate a pulse waveform 90 deg phas shifted with respect to a pulse generated using a counter in PXI 6070E daq card ?

    Hi
    I ma using 6070E daq. I am generating a infinite pulse train using one of the counters. I want to generate another pulse train which should 90 degress phase shifted with respect to the previsously generated pulse. How to implement this using the counters in the DAQ card.

    Hi Gopal,
    1) yes the frequency generator is programmable. You have 2 timbebases (10MHz and 100kHz) and you can divide down by any integer between 1-16. Those are the only frequencies you can use.
    2) The way counters work is that you can apply a gate signal to the counter which will cutoff the output. Therefore, you can have a second counter generating a pulse train of an equivalent frequency to the frequency generator (fout) but you don't want it to start immediately. You want it to start only after a short delay (equivalent to a 90d phase). Therefore, you need to "gate" or prevent the output on this counter for that small delay period of time. The way you can do this is by using a second counter to create a delayed pulse. You would
    connect the output of that counter to the gate of your pulse train function. That way, during the delay period of the pulse, you won't be outputing your pulse train yet. When the pulse (high-time) of your pulse reaches the gate, then your pulse train will start generating its pulse train (which is consequently delayed by the amount of delay used in the single delayed pulse counter). Since you don't want your pulse to go back low, you will have to turn off or clear your pulse counter while it is high. That way the signal on the gate will remain high forever.
    Your better solution is to use a PCI-660x card to perform this action. You will have more counters which will give you a greater range of frequencies to choose from and you will have more accurate timing of the signals.
    Anyway, hope that clears things up. Have a good day.
    Ron

Maybe you are looking for

  • After upgrading to Yosemite my iPhoto won't open, update not allowed

    Recently updated to Yosemite and now my iPhoto can't be opened, I tried to update the app from the App Store but it tells me that I am not the original purchaser (I am, I've never had another Apple account).

  • Issue with emailing dynamically generated PDF (InteractiveForm UI element)

    Hi Experts , I have a requirement according to which i need to generate PDF dynamically using webdynpro java and email the dynamically generated PDF. I am facing issue while emailing the dynamically genarated pdf. It gives me an exception : nested ex

  • Function module or include for BOM explosion

    Hi, Please can any body tell me what is the function module used for exploding the BOM components. As I need this for developing a new report Regards, Kumar

  • Oracle AP match_status_flag goes to T (tested but never validated)

    Hello, We have custom triggers that are auditing ap_invoices_all and ap_invoice_distributions_all to capture who validated the invoices, who re-validated and who paid them. Based on the documentation from mos they document the following. Since I want

  • Federal tax levy tables

    Hi Guru's,              How do we update the federal tax levy table are these updates comes as a support pack from SAP or we need to go and change the values each year. Any help would be appreciated. If it has to be done through the support pack send