Buffer the output AO, refresh rate is different from the sample clock frequency

Hello

I am an AO output in the buffer using a single channel. I have a stamp with a ripple of 200000 points with a triangular waves of a 1000pts each repeated 200 times. If I want a frequency of 1 Hz, I simply update this waveform 1000pts and if I wanted to 5 Hz, then 5000pts and so on. But there is some frequency that I won't be able to use like the refresh rate (the number of samples that I ask to update) is different from the sample clock frequency, which makes synchronization with the other difficult to trigger (incomplete cycle).  Frequency 3 Hz (update 3000pts), as (update 7000pts) 7, 6 Hz (update 6000pts), 9 (update 9000pts)... 11Hz at 15 Hz and is not valid in the sense that the refresh rate is different from the sample clock frequency. That makes a whole lot of inaccessible CONFIGURED!  Can someone tell me what determines the banned frequency?  Is this something to do with the material?

concerning

One thing you can try is to change the number of samples per cycle. This cannot give the precise frequency accurately, but can reduce the average error.

120 Hz, the error is currently about 400 parts per million (ppm). The accuracy of the time base is 50 ppm, then this error is less than 10 times the inherent error due to the time base.

Consider this configuration: the closest nominal sampling you rate, you can get is 120048 Hz (1000 samples per cycle at 120 Hz). If your buffer contains 1200 samples per cycle, 100 copies of it would produce 1 second of data to 120,048 Hz. But if the buffer contained an average of 1200,48 useful Samper by cycle, you get the exact frequency.  Of course getting 0.48 of a sample is delicate. But the kind of feasible. If you use 48 cycles in the 1201 samples per cycle and the cycles of 52 to 1,200 samples per cycle, the total number of samples per second = 120048. Average frequency will be exactly what you want. Instantly, the frequency is slightly higher or lower than the exact value.  By an alternation of 1200, 1201, 1200, 1201... 1201, 1200 100 cycles that the Jig is fast.  If you group all 1200s whole and all 1201 s frequency hopping may be more sensitive.  If this kind of jitter is acceptable depends strongly on what you do with the release.

This technique is used in some systems of frequency synthesizer.

Lynn

Tags: NI Hardware

Similar Questions

  • Problems of synchronization of the sample clock with a frequency of a PXI-6229 counter!

    Hi all, I'm having some problems with the synchronization of a frequency meter connected to a liquid flow meter (sensor only have 1 open collector output) with the sample of a PXI-6229 map clock. Someone there willing to give me a little help here would be appreciated?

    The problem is that the reading of the meter in the whole loop blocks until the time-out period.

    Suggestions for an alternative approach would be too good...

    Source code attached.

    BR,

    / Roger

    It sorted another way!

  • Digital filter on the sample clock 6601/6250

    Hello

    I use a PCI-6601 (Dev1) and the card PCI-6250 (Dev2) connected via a cable RTSI.

    I apply a PWM signal to the 6601 ctr0 (Dev1 / / PFI38) and activate the digital filtering (100 ns) on the respective task (measure of the period).

    I apply an analogue signal to AI0 map of 6250. As I am interested in a sample of analog measurement when the PWM signal changes from low to high, I put the clock sample of the AI task source ' Dev1 / / PFI38 "and the side assets of clock sample"Insurrection. "

    Everything works fine, but I have a question:

    The sample for the AI clock is the task the filtered PWM signal or not filtered PWM signal?

    Kind regards

    Udo

    Hi Udo,

    Great question!  Digital filters are actually not part of the subsystem of counter, but rather the line itself PFI.  So, if you have activated the digital filter for a specific line of the PFI, the signal that you route to any subsystem of the PFI line will have already crossed the filter.

    It's actually the workaround to the PFI filters on M-series / TIO DAQ devices when you are not using meter (materials of filtering on each PFI line but the DAQmx driver allows only the filtering part of duties of counter on these devices).

    I also wanted to emphasize that the 6250 itself has 2 onboard counters, then you could do the same thing using just the 6250 (unless you use more than 2 meters).  I hope this helps!

    Best regards

    John

  • 6259 analog integrated Output error with the sample clock

    I run into some problems outputing a sinusoid of analog output with my acquisition of data using the sampleclock aboard. At one point, I was able to get the vi works pretty good and repeatable. When revisited however, I started to see error that the driver could not provide the unit with the points quickly. I was running at 250 k 1 k sampling rate a tone to one, but it seems only to be able to get about 20 k, sampling frequency. This creates a pretty rough signal, expecially when the rate fell to 8 k. I produce only 1 second of data.

    See attached bmp. The I/O moved references aren't channels of tasks. Could be the problem? I'm a little frustrated because he has to be a very simple to create vi and I'm having all sorts of problems with it.

    Hi klessm1,

    I want to stress that the behavior you're seeing is atypical - under normal circumstances, DMA transfers must take place fast enough to keep the data in the FIFO embedded permanently until at least the max (2.86 MHz single channel) sampling rate.  After saying that the error you receive indicates that we get no data for the 6259 fast enough for some reason - there are a few options at this point, it should get you operational:

    Remove the need to transfer data to the device.  As Sarah suggested, you can do so by regenerating the on-board FIFO.  The FIFO output on the 6259 is 8 191 samples (shared between the channels), so if you build a periodic signal and this is a sufficient number of samples to characterize a period then this should be a viable option.

    Try using interrupts instead of DMA.  This may seem paradoxical since DMA is generally the fastest method of data transfer on our DAQ hardware, but something rings the Bell with the DMA transfer from your computer to the 6259.  I imagine that you will actually have a faster rate using interrupts if that is the case.

    You can configure the appliance to use only the quantity of memory onboard or interruptions using a channel property node DAQmx (Analog Output > General Properties > advanced > memory and data transfer)

    Implement a delay between the start of the task and the first sample.  If the problem is with the first DMA transfer latency (and not the total throughput on the PCI bus), then adding a delay before attempting to write the first sample should solve the problem.  Some motherboards have been found to have a latency higher than the others (so the question of Sarah #3).

    You can configure the delay with the property node Trigger DAQmx (start > more > Delay / delay units).  This applies even if you do not explicitly have a configured start trigger.

    I think the three above are good ideas to try depending on what you need exactly.  I would also check for updates to the BIOS available for your motherboard that could address the issue (but it would be something that the manufacturer would be more known).  I hope this help - made - know us how it goes!

    -John

  • LabVIEW USB-6366 sample 2 AI and encoder value triggered with X 1-Encoder (not with the sample clock) - need help, please

    Hello world

    After 10 years of LabVIEW experience I'm totally lost.

    It's my first project with DAQmx and I do not know how to handle.

    My configuration: Windows7. LabVIEW 2012 DevSuite; X Series USB-6366

    My goal: trigger value encoder and 2 inputs analog

    I would get a result for the value of the encoder and each of the two analog inputs for each change of the value of the encoder (not more! I do not want to sort a huge amount of data afterwards)

    I was able to configure it with the measurement and Automation Explorer, but have no idea how to do that in a LabVIEW configuration.

    Read all of the examples I could find the analog inputs and the encoder with SampleClock. This isn't what I'm looking for.

    I would be very happy if someone could guide me to my solution.

    I have attached the confiuration exported from the measurement and Automation Explorer.

    Thanks in advance, best regards,.

    Balze

    P.S.: Sorry I got COMPRESS the *.nce file, because NEITHER allows you to attach files *.nce

    You'll get there, but yes, the first exhibition to DAQmx is probably a little overwhelming.  A few other tips based on your screenshot (I'm on LV2010 & can't open the code).

    1. "allow buffer overwrites" is that a functional but description is not text.  It lies under the Read DAQmx property node and must be configured before starting the task.  Here is an excerpt:

    2. it is usually (but not always) an available timing system to be used for all HAVE channels in a task just by the material.  As a result, all channels to HAVE should be included in a single task.   You can do this easily in chaining your call 'DAQmx create Virtual Channel' twice the job output and input/output error.  Because the second call will receive a task refnum as input, it will configure the 2nd channel of AI to be part of the same task.

    (It is possible to specify just several channels in a single call, but separate calls gives you the ability to configure different setting on the scale or range of entry).

    3. the 'random', which IA task gave you the error is due to the lack of sequencing in your attempts to start tasks.  The question which is the fortunate success that happens to run first can (and does) vary from run to run.  By combining the two channels to HAVE in a single task, this problem will disappear, but you want to be sure that the tasks of the AI and the counter are started * before * any clock signals come to PFI8.

    4. "change detection" will be available for digital input assignments, not tasks of meter.  And it is also generally supported only for a digital port a-bit value.  Other ports then that support data acq clocked by the software on demand.  I guess one of these questions is the source of your error.

    On the boards of the M series that I used, change detection has been supported only on port 0 - I think that the same thing will be true for the X-series cards.  The following took place without error for me using a simulated X series device.  By selecting another port gave an error.

  • How do you use the freqout as the sample clock to write data on the of 6224 PCI

    Using PCI-6224, I try currently to export data using the freqout as a reference clock sample to a digital output channel. I plug the scope to see the clock on the freqout PIN. However, the data seem to be missing. How can I output the data correctly using the reference for timing? What am I missing that connects the two signals together? Any help would be greatly appreciated. I am writing this code in MS VS C++ and here's what I've done so far:

            int32       error=0;
            TaskHandle  taskHandle=0;
            TaskHandle  taskHandleFRQ=0;
            char        errBuff[2048]={'\0'};
        uInt8       data[8]={1,0,1,1,1,0,1,0};
    
        /*********************************************/
        // DAQmx Configure Clock
        /*********************************************/
        DAQmxErrChk (DAQmxCreateTask("",&taskHandleFRQ));
        DAQmxErrChk (DAQmxCreateCOPulseChanFreq(taskHandleFRQ,"Dev2/freqout","",DAQmx_Val_Hz/*Units*/,DAQmx_Val_Low/*IdleState*/,0/*Delay*/,10000/*Freq*/,0.5/*DutyCycle*/));
        DAQmxErrChk (DAQmxCfgImplicitTiming(taskHandleFRQ,DAQmx_Val_ContSamps,8));
    
        /*********************************************/
        // DAQmx Configure Digital Output
        /*********************************************/
        DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
        DAQmxErrChk (DAQmxCreateDOChan(taskHandle,"Dev2/port0/line0","",DAQmx_Val_ChanPerLine));
        DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"/Dev2/PFI14",10000,DAQmx_Val_Rising,DAQmx_Val_FiniteSamps,8));
    
        /*********************************************/
        // DAQmx Write Code
        /*********************************************/
        DAQmxErrChk (DAQmxWriteDigitalLines(taskHandle,8,0,10.0,DAQmx_Val_GroupByChannel,data,NULL,NULL));
    
        /*********************************************/
        // DAQmx Start Code
        /*********************************************/
        DAQmxErrChk (DAQmxStartTask(taskHandleFRQ));
        DAQmxErrChk (DAQmxStartTask(taskHandle));
    

    I think that the original code was operational. However, given that the data transmission has been set to finished, I had a hard time to visualize the data on my scope. By changing the value of DAQmx_Val_FiniteSamps to DAQmx_Val_ContSamps, I could easily see the data.

    My mistake. I'm still learning here. Thanks for the time.

  • Relationship between the samples through the second rate and sampling

    I was wondering if someone could clarify the relationship between the samples through second rate and sampling.

    I have USB6008 and USB6363 of the tips that I work with in Measurement Studio.

    For the nec USB6008 entry differential (up to four channels of HAVE), if I put a sampling frequency to 8192 samples per second, and I updated 2048 samples per channel with:

    Task.Timing.ConfigureSampleClock ("", 8192, SampleClockActiveEdge.Rising, SampleQuantityMode.ContinuousSamples, 2048)

    Am I right in assuming that:

    • through the 4 analog inputs 8192 samples will be collected every second
    • 2048 samples will be taken by way of analog input for each scan
    • The time between two successive data points is 1/2048 seconds (about 0.5 ms)

    Hi DKIMZEY,

    The help page for the "Timing.ConfigureSampleClock method" should have a hypertext link to the page "Sample clock" in NOR-DAQmx help, that contains this text: "this sample clock sets the interval of time between samples. Each tick of the clock starts the acquisition or the generation of one sample per channel. "When the sample clock frequency is 8192, then the time between two successive data for a single channel is 1/8192 seconds. The time between the data points on two adjacent channels is controlled by the clock to convert, which can be controlled independently on most devices (up to a point).

    Brad

  • generation of buffer desired waveform ╔chantillonnage clock and clock frequency sample resulting

    Hello, I'm trying to generate a square wave on an ongoing basis for NI6221 DAQ to 2 kHz. I use the example of Cont Gen tension Wfm - Int Clk.vi, which works great for my needs. However, the synchronization frequency setting is sometimes different frequency resulting, according to the choice of the samples and the Cycles / buffer. Tracking dozn the origin of these variables, all come from the nodes property of the moment-DAQmx in Buffere waveform generation (multi) .vi, where the input and output frequencies are not the same. Now, why is it so? What is the way the rate is calculated? I guess it's related to an internal approximation of the Council divided by sweep sampling frequency, clock but how exactly?

    I found some notes in the help (see figure), with a few diagrams of the oscillators according to the DAQ (M type) card, but then I'm lost.

    Thank you very much

    Virgilio

    The AO sample clock is generated by dividing down the time base.  If you select a clock frequency sample that can not be achieved by dividing the time by an integer base, the sampling clock frequency will be rounded up to the available sample rate nearest (it might be interesting to note that tasks HAVE always round the frequency rather than rounding to the nearest available).

    For example, the maximum time available for AO internal base is 20 MHz.  If you select a sampling frequency of 300 kHz, this wouldn't be possible (20 MHz / 66.66666...).  Instead, ~298.5 kHz will be used (20 MHz / 67).

    Best regards

  • Synchronization of analog and digital output with the external sample clock

    Hello

    First of all sorry for my English, I will try to explain what I want to do.

    I want my PCIe-6321 to send two custom signals (modification sawtooths) on a mirror controller. I would also like to generate output with my card at the beginning of each tooth of saw. Everything must be synchronized with an external k-clock signal of 100 kHz. The idea is that whenever the PCI receives a trigger to external clock, it sends two analog output voltages and when he received 1024 clock ticks it will also send a pic of triggering TTL. What I do is first prepare the map and after that in a loop sending and modifing the output values of the two signals and at the same time send a digital signal Boolean in each arch, so when's done it 1024 iterations of the loop I send an event to the digital port. Attached you can see.

    The problem is that I don't know how to synchronize both. Can I use the sample clock just to the analog output? I can use sample for the two outputs clock, or do I need to use the output of the meter? If don't know how to use it here.

    If I do nothing else bad/wrong, I would be grateful for feedback.

    Thanks in advance,
    Pablo

    I don't know how but I find the solution. I'm generating more than a positive value (as I was triggered maybe very fast the oscilloscope has been absent there). If I put the sample clock of digital output to use the sampling/ao/Dev1 clock that it doesn't, but if I put to use the same source as the OD (terminal where my external clock is connected), but the trigger to start the DO to be Dev1/ao/StartTrigger this works. I don't really know why, but it does.

    Thank you for your patience and your help. I put here the final code.

  • Reading and samples the sampling frequency using a fast external clock

    Hello

    I use an NI USB-6212 box to launch a search engine for combustion. I have a pressure sensor in the head and a wheel on the crankshaft. I use the beats A Quad channel of the rotary encoder as a sample external to the pressure with the sample clock. The idea is that I want almost the same number of points in each trace of pressure so that it is easy to average together. I seem to be able to do this at low speed, but I'm having issues at high speed.

    Can someone tell me what I should have my sampling rate and samples to read together and how it effects my sampling when using an external clock? Samples per channel will affect the size of buffer and that matters? When I was high (10-100 kHz and about 1/10 * rate for samples to read) it barely read but as I put the lowest and lowest he read faster. Play with the settings a bit seem to affect how well it samples at different speeds. The engine is running at 3600 rpm and my encoder puts out 2500 pulses per turn on one channel, I'm looking at a frequency of 150 kHz effective sampling. However I didn't sample program with the engine operating at full throttle. I hung on the output of the encoder up to a scope and reads very well.

    Are there opportunities the filter counter that I see in the manual of 621 x is enabled inadvertently?

    Thank you

    Xander

    Xander18,

    I suggest you move your screws initialization outside the while loop, as well as your narrow DAQmx VI.  On my side, it looks like a new task is performed for each loop, which takes time.  That a try and let me know how it goes.

  • Create a waveform using PCI-6723 AO with various time intervals on the trailing edge of the sample of 200 Hz clock and 0.1% duty cycle

    I use the PCI-6723 card and I am trying to produce a model of waveform using the analog output channel. The wave consists of 5 different voltage levels. The main problem is that the first 4 voltage levels are supposed to have 926 microseconds time intervals and the time interval the last voltage level is supposed to be 1,296 milliseconds. In addition, the waveform must be triggered on the trailing edge of a sample clock of 200 Hz with a 0.1% Duty Cycle. Is it still possible? If so, any help would be greatly appreciated. Thanks in advance!

    Here is what I currently have, but it does not fulfill my purpose.

     int32   written;
        float64 data[5] = {-0.23, 0.38, 1.12, 1.78, 0.10};  //volts
        //long  time[5] = {  926,  926,  926,  926, 1296};  //microseconds
    
        // DAQmx Configure Clock
        DAQmxErrChk (DAQmxCreateTask("",&taskHandleFRQ));
        DAQmxErrChk (DAQmxCreateCOPulseChanFreq(taskHandleFRQ,"Dev3/ctr0","",DAQmx_Val_Hz,DAQmx_Val_Low,0,200,0.001));
        DAQmxErrChk (DAQmxCfgImplicitTiming(taskHandleFRQ,DAQmx_Val_ContSamps,1));
    
        // DAQmx Start Code
        DAQmxErrChk (DAQmxStartTask(taskHandleFRQ));
    
        // DAQmx Configure Code
        DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
        DAQmxErrChk (DAQmxCreateAOVoltageChan(taskHandle,"Dev3/ao0","",-10.0,10.0,DAQmx_Val_Volts,NULL));
        DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"/Dev3/Ctr0Out",1000.0,DAQmx_Val_Falling,DAQmx_Val_ContSamps,5));
    
        // DAQmx Write Code
        DAQmxErrChk (DAQmxWriteAnalogF64(taskHandle,5,0,10.0,DAQmx_Val_GroupByChannel,data,&written,NULL));
    
        // DAQmx Start Code
        DAQmxErrChk (DAQmxStartTask(taskHandle));
    

    Bingo. This code seems to work much better. Looks like I had to reduce my number of samples per 1 to fit the waveform desired in 5 milliseconds of the sample clock delay.

    However, if someone knows a better way to achieve these results, I am open to all ideas.

    void CDevDlg::OnRdr1e1()
    {
        float64     data[4000];
        float64     volt[5] = {-0.23, 0.38, 1.12, 1.78, 0.10};  //volts
        int x=0,d;
    
        for(int v=0; v<4; v++)
        {
            for(d=0; d<741; d++)
            {
                data[x++] = volt[v];
            }
        }
        for(d=0; d<1036; d++)
        {
            data[x++] = volt[4];
        }
    
        // DAQmx Configure Clock
        DAQmxErrChk (DAQmxCreateTask("",&taskHandleFRQ));
        DAQmxErrChk (DAQmxCreateCOPulseChanFreq(taskHandleFRQ,"Dev3/ctr0","",DAQmx_Val_Hz,DAQmx_Val_Low,0,200,0.001));
        DAQmxErrChk (DAQmxCfgImplicitTiming(taskHandleFRQ,DAQmx_Val_ContSamps,800000));
    
        // DAQmx Start Code
        DAQmxErrChk (DAQmxStartTask(taskHandleFRQ));
    
        // DAQmx Configure Code
        DAQmxErrChk (DAQmxCreateTask("",&taskHandle));
        DAQmxErrChk (DAQmxCreateAOVoltageChan(taskHandle,"Dev3/ao0","",-0.5,2.0,DAQmx_Val_Volts,NULL));
        DAQmxErrChk (DAQmxCfgSampClkTiming(taskHandle,"",800000,DAQmx_Val_Rising,DAQmx_Val_ContSamps,4000));
        DAQmxErrChk (DAQmxCfgDigEdgeStartTrig(taskHandle,"/Dev3/Ctr0Out",DAQmx_Val_Falling));
    
        // DAQmx Write Code
        DAQmxErrChk (DAQmxWriteAnalogF64(taskHandle,4000,1,10.0,DAQmx_Val_GroupByChannel,data,NULL,NULL));
    }
    
  • How to read multiple channels based on the external clock

    Hello

    Normal 0 false false false MicrosoftInternetExplorer4 / * Style Definitions * / table. MsoNormalTable {mso-style-name: "Table Normal" "; mso-knew-rowband-size: 0; mso-knew-colband-size: 0; mso-style - noshow:yes; mso-style-parent:" ";" mso-padding-alt: 0 to 5.4pt 0 to 5.4pt; mso-para-margin: 0; mso-para-margin-bottom: .0001pt; mso-pagination: widow-orphan; do-size: 10.0pt; do-family: "Times New Roman"; mso-ansi-language: #0400; mso-fareast-language: #0400; mso-bidi-language: #0400 ;} "}

    I use 6254 multifunction for playback of tension with VC ++ 6 as the development tool.

    Based on the documentation NOR I created tasks like this.

    DAQmxCreateTask (_T ("Voltagetask"), & taskHandle);

    DAQmxCreateAIVoltageChan(taskHandle,sChannels,,DAQmx_Val_NRSE,0,10,DAQmx_Val_Volts,);

    DAQmxCfgDigEdgeStartTrig (taskHandle, "PFI2", DAQmx_Val_Rising);

    DAQmxCfgSampClkTiming(taskHandle,"PFI2",303000,DAQmx_Val_Falling,DAQmx_Val_FiniteSamps,nSamples);

    DAQmxStartTask (taskHandle);

    After the generation of clock finished thanks to the DAQmxReadAnalogF64 function, I tried to read samples of each channel.

    DAQmxReadAnalogF64 (taskHandle, DAQmx_Val_Auto, 10, DAQmx_Val_GroupByScanNumber, read, m_nStates & sampsPerChanRead, NULL);

    Total number of samples (nSamples) available in the buffer when the task is created with a single channel and several channels are still to come as even. In several modes of channel returns total sample by channel, which is equal to the total number of samples divided by the number of channels at once.

    For example, if a total number of clock 8000

    With single channel, it reads all the 8000 samples (m_nStates = 8000, sampsPerChanRead = 8000)

    When two tracks he read 4000 samples per channel and so on. (m_nStates = 8000, sampsPerChanRead = 4000)

    If any body know, on every clock how to take samples of all of the configured channels.

    Thanks in advance,

    Renjith.

    Renjith,

    Please note that the behavior, I explained is in line with the provisions should only if you use your clock as I convert clock. You can find information about the different types of synchronization of the analog inputs using NOR-DAQmx; the element to search for is "clocks".

    Since you do not set the clock to convert MY (should be DAQmxSetAIConvSrc()), the fact that I mentioned above is only informative for you, but does not apply to your question.  Sorry for responding too quickly without looking in your code between quotes...

    In order to answer your question, we take a look at the approach to programming DAQmx:

    If you configure your task to be "finished", the task will stop running if the number of samples per channel is acquired. In the case of an external clock (not configured as I convert clock), served it in the sampling interval. The sample clock will automatically receive a sample for all channels with a single clock pulse. From this point of view, the installation program you have in your program seems correct.

    If you do not get the number of samples that await, the fault must be somewhere in your playback function. Do you get any error messages?

    DAQmxReadAnalogF64 (taskHandle, DAQmx_Val_Auto, 10, DAQmx_Val_GroupByScanNumber, read, m_nStates & sampsPerChanRead, NULL)

    If you set m_nStates set to 8000, it's here. You say the Read function to retrieve 8000 samples. None. So if you have two channels, DAQmx acquires 2 x 8000 samples, but read you only 8000 samples... Please change m_nStates to

    m_nStates = #channels x #samples by channel

    This should solve your problem.

    hope this helps,

    Norbert

  • Error on wait the next sample clock

    Hello

    I need measure the speed using an encoder for a control application. I installed a sample external clock on CNTR0 (in another vi) and I wired CTR0_OUT to CTR1_GATE. I start the vi, then the measure of the clock vi speed sample and Labview displays the following error. I don't know what is happening, my measure is established for the sample clock and timing type single-point sample clocked by material and the error says that I do not have this? What's funny, is that the same app works if I am using the DAQ Assistant.

    Thank you

    David

    Hey David,

    I believe that the document I linked can be a problem, and I'll go ahead and make the necessary changes to be made to this document on my side.

    The next issue I can see uses HWTSP on a windows machine. HWTSP is usually reserved for computers running real-time operating systems. These operating systems can ensure deterministic operations. On windows XP, windows may decide to treat another thread / process that can cause you to miss a sample (if you miss a sample that the default behavior is to throw an error).

    With HWTSP, you will be difficult to get one without a real-time system faster sampling rate.  Stamped acquisition will also have a large amount of latency for a control application.

    Looking at your code, I recommend trying a task of sampling frequency CI On Demand.  Currently, your code is the edges and conversion of frequency/RPM.  In addition, because of the lag phase with your sample clock, your current configuration has an error of ±1 count.  This translates to error ±1KHz (on behalf of 9 to 1 ms it would be 9 kHz, 10 would be 10 kHz, etc.).  Based on mathematics in your example, you introduce ±120 rpm of error.  By a frequency on the task on demand, you can ensure that whenever you call the DAQmx Read, you get the last frequency within a tick of time base error ±1.  Not only it gives a better accuracy, but as long as you keep the rate of fast loop, you will ensure you get the last frequency to the fastest rate possible.

    Ensure that your loop rate remains fast is to remove the loop of your acquisition processing and placing him in a parallel while loop.  This is possible through the use of reporters.  Local loop in Windows rates are usually in milliseconds.  To get faster line rates, you might want to consider a real time operating system.

    Please let me know what you think of this, and if you have any other questions, I can go into this more in detail.

  • Satellite A200-10W: refresh rate on television issue while using the AC adapter / CC

    Hello!

    I have a question on the A200 - 10W Video Out feature. In my case there is no problem with video output, it works flawlesly. But there is a minor problem.

    If I connect my laptop to the TV, it seems to be some refresh rate or analysis of the problems of line on TV, pretty boring, in other words, if I have the laptop connected to the power line. If it is running on battery power, the image is good.
    Someone knows a solution to this problem?

    Best regards
    Haiku ;)

    Hello

    I guess that's the same problem if you have an annoying Hum on audio, if you connect the audio output to an amplifier.
    Believe it or not, sometimes it really helps if you just turn around the CA plug into the wall socket.
    When this does not work, you can try to connect it to a wall outlet that is connected to another circuit in your home.
    It helped in my case.
    There may be several causes for this problem - when I google for it - in German for "Brummschleife" - the next step would be
    be buying an adapter power strip wirh a special filter.
    It also does not help if the problem is somehow caused by a connection of the antenna, there is also (expensive) solutions
    for this.

    Please report and experience!

    Welcome, Matz.

  • Satellite U200 - questions on the screen refresh rate

    Satellite U200-148 WINXPHOMESP2
    Card video Mobile Intel (R) Express Chipset Family 945GM
    Amount of video memory 128
    Accelerated Graphics Port - it's inaccessible
    The screen 60 hertz frequency
    Questions
    (1) accelerated Graphics Port - it is enabled if so that it is necessary to make it became accessible.
    (2) the question whether with 60 hertz frequency can be increased up to 75.

    Hello

    I noticed that on some computers laptops Toshiba, the screen refresh rate is fixed on 60 Hz.
    The screen refresh rate is not important on laptop screens.
    Matrix TFT is not such a thing as the refresh rate. It is not blinking.
    TFT as all other LCD screens do not refresh rate setting, only the reaction time.
    Your eyes are sure ;)

    PS: as much as I know AGP port is not available.

Maybe you are looking for