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

Similar Messages

  • 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 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 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 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?

  • How to generate 3 payment due dates& 3 posting against single invoice?

    Hello Experts,
    Kindly provides some inputs on below requirement.
    For example :- In the Utility Bill,
    Consumption months: June, July, August
    Meter Reading taken in August
    Billing Months: September, October, November
    Bill generated in August
    Consumer receives the bill on September month
    Payment Due dates: 12 Sep 2009, 12 Oct 2009 and 12 Nov 2009
    Issues-:
    1.How to generate three posting against single invoice?
    2.How to generate three payment due dates for above postings in three consecutive months since payment due date logic is incremental in nature here, e.g.
    1st due date = posting date + 15 days
    2nd due date = 1st due date + 30 days
    3rd due date = 2nd due date + 30 days
    Requirement description:-
    The utility generates bill quarterly for domestic consumers. For such consumers, the utility takes reading from the consumers premises after end of consumption period (quarterly ) and generates bill on the 1st billing month (here 1st billing month is September).
    In the bill the utility divides total consumption into three parts (considering each part for each consumption month) and calculates all charge heads separately on each part. It however, consolidates and generates a single bill having three rows, each row showing charge heads of each consumption month and also net and gross amount to be given for each consumption month.
    Moreover, three postings have to be generated in FICA against that single bill. Also, it provides three due dates to the consumer, each date falling in each billing month, to pay the above three net amounts respectively. Dunning and other activities should be triggered if the consumer fails to pay the stipulated amount by corresponding due date.
    Looking forward for valuable suggestions
    Thanks in advance
    Regards,
    Vaseem
    Moderator note - question reposted - OP notified of violation Issue on quarterly bill
    Edited by: William Eastman on Jun 3, 2010 3:25 PM
    Edited by: William Eastman on Jun 3, 2010 5:01 PM

    Hello Experts,
    Kindly provides some inputs on below requirement.
    For example :- In the Utility Bill,
    Consumption months: June, July, August
    Meter Reading taken in August
    Billing Months: September, October, November
    Bill generated in August
    Consumer receives the bill on September month
    Payment Due dates: 12 Sep 2009, 12 Oct 2009 and 12 Nov 2009
    Issues-:
    1.How to generate three posting against single invoice?
    2.How to generate three payment due dates for above postings in three consecutive months since payment due date logic is incremental in nature here, e.g.
    1st due date = posting date + 15 days
    2nd due date = 1st due date + 30 days
    3rd due date = 2nd due date + 30 days
    Requirement description:-
    The utility generates bill quarterly for domestic consumers. For such consumers, the utility takes reading from the consumers premises after end of consumption period (quarterly ) and generates bill on the 1st billing month (here 1st billing month is September).
    In the bill the utility divides total consumption into three parts (considering each part for each consumption month) and calculates all charge heads separately on each part. It however, consolidates and generates a single bill having three rows, each row showing charge heads of each consumption month and also net and gross amount to be given for each consumption month.
    Moreover, three postings have to be generated in FICA against that single bill. Also, it provides three due dates to the consumer, each date falling in each billing month, to pay the above three net amounts respectively. Dunning and other activities should be triggered if the consumer fails to pay the stipulated amount by corresponding due date.
    Looking forward for valuable suggestions
    Thanks in advance
    Regards,
    Vaseem
    Moderator note - question reposted - OP notified of violation Issue on quarterly bill
    Edited by: William Eastman on Jun 3, 2010 3:25 PM
    Edited by: William Eastman on Jun 3, 2010 5:01 PM

  • 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)

  • 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 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

  • 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 generate an (re-) synchronized pulse train

    Hello,
    using a PCI-6601
    I want to generate an endless pulse train of (e.g. 80Hz, high==low) synchronized to an external clock (ca.1Hz, ca 5ms pulse width).
    The output should _re_synchronize with the clock if there is a clock signal but if one clock-pulse is missing it should continue hoping for the next.
    It should look like this:
    Perfect:
    A1) tt________________tt________________tt_________...
    A2) ooo___ooo___ooo___ooo___ooo___ooo___ooo___ooo__...
        0__1__2__3__4__5__6__7__8__9__0__1__2__3__4__5_...
    Output is too fast:
    B1) tt_________________TT________________tt________...
    B2) ooo___ooo___ooo___oxxx___xxx___xxx___xxx___xxx_...
        0__1__2__3__4__5__6__7__8__9__0__1__2__3__4__5_...
    Output is too slow:
    C1) tt_______________PP________________tt__________...
    C2) ooo___ooo___ooo__xxx___xxx___xxx___xxx___xxx___...
        0__1__2__3__4__5__6__7__8__9__0__1__2__3__4__5_...
    Clock is missing:
    D1) tt________________._________________tt__________...
    D2) ooo___ooo___ooo___xxx___xxx___xxx___xxx____xxx__...
        0__1__2__3__4__5__6__7__8__9__0__1__2__3__4__5__...
    The external clock is assumed to be "the truth", so the pulse width for the 80Hz output is recomputed from time to time
    by measuring the clock and then setting then output pulse width.
    Until now I used register programming but this is not a must.
    The examples I've found either generate finite pulse trains or the sync only once.
    Is there a way to do what I want without software interaction?
    Thanks in advance
    Toni Schilling

    I have a possible idea for you, but my experience is with LabVIEW so I can't offer any help with register programming, interrupt callbacks, etc.  Also, the continuous syncing will have to be a software function that continuously performs cycles of measure/adjust, measure/adjust, measure/adjust...   I know of no way to set up the hardware to do this autonomously.
    The approach I would take is to add another counter task and a little extra wiring.  The other task will be for "Two Edge Separation", and you want to measure from the active (lead) edge of the master clock to the passive (trail) edge of your sync'ed pulse train.  There's a reason NOT to measure to the active (lead) edge of your pulse train and it's because counters can only measure finite times of at least 2 timebase cycles.  Whereas you would *like* to have an actual two-edge separation time of 0 between the lead edges.  That just seems like the kind of detail that's gonna burn you sooner or later.
    Let's just suppose the master clock is nominally about 1 Hz and your pulse train is nominally 100 Hz and 50% duty cycle so I can talk through details with some specifics.  Whenever the two lead edges are truly sync'ed, you'll measure a 0.005 sec two edge separation time from the master clock to your pulse train's trail edge.  If you measure slightly *less* than that, your pulse train is going just a little too fast and needs its freq slightly reduced.  If you measure slightly more, then your pulse train is too slow and needs its freq slightly increased.
    It is probably quite likely that you *cannot* expect to maintain perfect sync *without* constant monitoring and adjustment.  Fundamentally, you can only produce pulses with high and low times that are an integer multiple of the 6601's timebase of 20 MHz.  That card's oscillator won't be perfect, nor will it be utterly constant over temperature variations, etc.   So its idea of a perfect 100 Hz pulse train will in fact be very very close but not *actually* perfect.
    And your ability to adjust the frequency away from a nominal 100 Hz will only be possible in discrete steps.
    A 100 Hz pulse train takes 200000 cycles of the 20 MHz clock.  If you adjust your square wave to take 199998 or 200002 cycles, you can produce a nominal freq of 100.001 or 99.999 Hz.  Those are the smallest increments away from 100.00000000 that are possible with a 50% duty cycle. 
    Statistically, it's very unlikely that the frequency needed to perfectly match the external master clock is even *possible* to produce exactly.  I think you need to *expect* an imperfect sync with continual subtle adjustments to your pulse train.  If you watched the signals on a scope while triggering from the master clock, I think you should expect to see your pulse train oscillating back and forth by some small amount, perhaps in the microsecond realm.
    Summary (for 1 Hz master clock, 100 Hz user pulse train at 50% duty cycle):
    Measure two-edge separation from lead edge of master clock to trail edge of user pulse train.  Use units of "Ticks" with 20 MHz timebase.  Nominal expected value when sync'ed is (1/2)*(20 MHz / current user freq) = 100000.
    Subtract measured ticks from nominal to produce your "error signal". 
    Use current error signal its recent history in a control algorithm to determine the amount of adjustment to make to your pulse train.  Hint: it will probably NOT be correct to directly change the user pulse width by an amount equal to the error signal.  I suspect that you'll want to pay closest scrutiny to the derivative of the error signal.  Note also that the correct AMOUNT of adjustment will depend on the RATE at which you run your measurement / adjust loop.
    Change user pulse specs on-the-fly.
    Return to step 1.
    Caution: Let's suppose your software measurement / adjust loop runs at a nominal 10 Hz.  From the time you make an adjustment until the next time you do a measurement, your user pulse train will have generated almost 10 cycles with the recently-adjusted specs.  If you weren't careful to make your previous adjustment subtle enough, you'll find that you now have a *larger* error of the opposite sign, and you are well on your way to instability.
       You need to do an adjustment that lets you expect your *next* measurement to have an error close to 0.
    -Kevin P.

  • HT4623 I updated ios6.1.2 on my ipad2 and it is draining my battery very fast. How do I go back to 6.1.1 ios

    I Updatedios6.1.2 on my ipad2. It is draining battery very fast. How do I fix it ? Can I go back to old version of ios6.1.1 if yes how?

    Honestly this is the final nail in the coffin. Mine too has terrible battery life since the 6.1.2 update.
    What the **** has happened apple. .? You have totally ruined iOS 6 its been a shambles since day one!
    I have tried every suggestion so far and it's just the same.
    But that's it now. My ipad is goin up on ebay and I'm looking at other tablets. I haven't had one issue with my nexus 4 since I went from iPhone 4 to that. Infant the updates have made that better not worse!!

  • How to Generate Synchronized pulses across two separate cards on a PXI system

    Hey,
    I'm trying to generate three pulses from my PXI System for triggering purposes. I have two cards (PXI 6259 and PXI 6115) , each with two counter/timers on them. The 6259 has 32 bit timers, and the 6115 has 24 bit timers.
    Up until now, I only needed two pulses. One was 180us long at 20 Hz, and the other is 5us at 20 Hz, starting 150us after the beginning of the first pulse. I was able to achieve this by generating both pulses on my 6115 card by triggering the shorter pulse off of the rising digital edge of the longer pulse and giving the DAQmx Counter/Timer task an initial delay of 150us.
    The third pulse needs to be identical to the short pulse, only it needs to occur 20us early (130us after the start of the wide pulse). I tried to generate it using the same technique as I used when generating the short pulse, only generating the pulse and reading in the rising digital edge trigger on my 6259 card instead of the 6115. 
    The result was that my pulse trains were asynchronous and the pulse generated on the 6259 card was constantly shifting to the left.
    This puzzled me, so I wrote up a little dummy program to test generating triggered pulses. The results were that when I generated two pulses on the same card, they were always synchronized; however when I generated pulses on separate cards, one of the pulses always shifted.
    I was hoping somebody could suggest a reason that the pulses across cards are asynchronous even though I'm reading in a digital trigger and hopefully a way to rectify the situation and synchronize all of my pulses.  

    The problem, in a nutshell, is that the timebases on the two boards have manufacturing tolerances that will cause them to differ from one another.   The accuracy error is a small fraction of a percent, but the effect on the phasing of your pulses will be cumulative.  That's why you saw the one set of pulses "shifting to the left."
    The solution is to make sure each board derives its pulse timing from a single common timebase.  Fortunately, this is pretty easy to specify with DAQmx, just a little tricky to find.  In the chain of VI's you call to configure the counter pulses, insert a DAQmx Channel property node.   From memory, I *think* you should be looking under something similar to "Counter Output->General->Timebase->Timebase.Src"
    Right click and create a constant or control to define the timebase source.  You should get a dropdown list that includes a wide variety of choices.  Among them are each of the boards' 20 MHz clocks.  By default each task will use a timebase from its own board but this technique lets you route one board's timebase over the PXI backplane with that single property node setting.  DAQmx does most of the dirty work behind the scenes.
    -Kevin P

Maybe you are looking for