6733 continuous signal output generation.

Hello

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

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

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

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

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

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

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

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

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

OutputHigh =! OutputHigh;

}

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

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

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

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

How can I set up FiFo continuous data?

370735e.PDF manual describes the following:

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

This is what I want. Is there an example?

Kind regards

Peter

Dennis,

Thanks for your reply.

I have whil post-its on the correct Board.

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

Kind regards

Peter

Tags: NI Software

Similar Questions

  • bad signal output generations

    Dear all,
    
    I want to record and output data with two separate cards (later synchronously).
    For data acquisition, I use the NI PCI-6133, for the data output, the NI PCI-6733.
    The data collection works, but there are problems with the data output. In the first ms the desired signal (eg. Sinusoidal 25kHz, 1V) is issued, but after a certain time a sinusoidal output with about twice as high frequency occurs, the actual signal occurs only sporadically on.
    The desired and undesired signal seem arbitrary to change. In addition other frequencies were tested which attain the same result.In the appendix of the current code, and some recording of the problem (with the PCI-6133 & oscilloscop measured). Can anyone explain the error?
    

    Personally, I think that the first step is to remove the Structure of sequence - it is absolutely not necessary (you use correctly the wire of the error to serialize the main steps of the data stream).  It becomes big, bulky on the block schema structure will allow you to "reduce" it to a more reasonable size.

    Here are a few questions and comments.

    • You have a current activate button, you seem to be set up a channel of AI voltage (not a current AI).
    • Why is the function AO Start Task in a "First Call" Case statement?  According to the block diagram, it is not in a loop, so it has the first appeal and the Case statement is not necessary.
    • I did not AO output waveform, so I won't comment on the loop of the AO.
    • I have done HAVE sampling.  Why you have a Stop function and clear the tasks inside the loop?  Only after acquiring the data?  [I think you have to put these two functions and the error handler, outside the while loop].
    • By putting them HAVE and AO in the same loop, you are forcing them to run at the same time.  If that's what you want to and if they have the same time 'cycle', and if there is enough "free time" for all other calculations that you have to do inside the While loop with a loop may be OK.  Especially if they are cycles at different rates, you should have them in parallel while loops.

    Looking forward to Version 2.  Try to get as much of your diagram of block on a single screen as possible.  Do not hesitate to 'hide details' in under face.

    Bob Schor

  • stop propperly generation of continuous signals (analog)

    Hello

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

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

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

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

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

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

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

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

    BS

  • Continuous signal creation (using the PFI channels?)

    Hello

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

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

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

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

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

    Best regards

    Danny.

    Howdy Danny!

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

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

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

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

    Kind regards

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

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

    Thanks in advance...

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

    Lynn

  • weak continuous signal low-pass filtering

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

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

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

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

    mdmorar,

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

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

    Hello

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

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

    Can someone help me in this regard?

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

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

    Best regards

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

    Hello

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

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

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

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

    Thank you

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

  • Continuous 5V output and signal of Stimulation at the same time

    Hello

    I'm out a constant signal to 5V to power a testbed and output a signal of stimulation (create a small magnetic field, etc.) at the same time.  I try to use DAQassistant with several output channels, but I can't fix an AO0 data set and the other set of data in AO1. Please notify; my code is up to this home.

    Thank you!

    Emily

    Many DAQ cards provides a constant voltage of + 5V output.  DAQ hardware do you use, and there a such output?  If so, use instead.  It will manage a current higher than an analog output.  The analog output lines are not designed to power no matter what, they are purely for signalling.

  • Signal output data expressed on a serial port

    Hello everyone,

    I received a task which requires me to collect several channels in express signal analog voltages before displaying these data to the serial port of the computer. My programming experience is very limited as Im working on the back of the high school before going to College, and even though I have the foundations of basic labview stowed, Im struggling to understand how to approach this problem.

    I started looking at the base read the series and write vi provided in the examples and I know how to get labview vi to intergrate with signal on purpose, but because of my lack of knowledge related to the use of channels of communications, binary, hexadecimal and asqui I don't really know where to go from here. The writing and reading of strings for example, I don't understand.

    I would like the data are ideally output on the serial port in real time and data are collected continuously at 6 kHz.

    I realize that there probably is no simple answer to this question, given my lack of knowledge, but any help would be greatly appreciated!

    Thank you!

    Harry

    Hi hcook,

    As smercurio_fc said, the strings that you send are totally dependent on what you're talking about. I haven't used a 'box of dspace' before, but a normal serial device will wait to receive specific orders.  Once it receives an order of some, she will perform a certain task.  You are right in saying that you need to establish what string commands to send to the box of dspace.

    You can find these useful:
    General concepts of Serial Communication
    Overview of Serial Communication

    I hope this helps.

  • Precise triggering voltage input and output generation in the DAQ Assistant

    Hello

    I wonder if anyone has come across a simular problem with the synchronization of input and output voltage. I use a box 11 LabView and NI USB-6259. I have been using the DAQ Assistant to configure the input and output channel. In particular, my task is to generate a single rectangular "pulse" as the output voltage to drive a coil and once the pulse went to get a signal from a sensor of magnetic field and get a power spectrum. This means that the order and the time during which the DAQ Assistant is used is extremely important. For example, the output voltage channel must be opened first for 2 seconds. Subsequently, the channel of input voltage must be open for 1 second, in which the sensor signal is obtained and post-processed. Only after these tasks are performed in this order he can can be repeated in a loop until the experiment is over. I don't know how to trigger data acquisition assistants (one for entry) and the other for the voltage output correctly. Y at - it a trick?

    See you soon

    Michael

    Hi Dave,.

    Thank you that I wired the error strings but the timing issue was unrelated to it. In the DAQ assistant, I simply had to choose the continuous aquistion of the 'samples' methods 'N-switch' for input and output voltage and all works fine now.

    Thanks again

    Michael

  • Voltage offset problems with the NO-9401 for PWM signal output

    I try to create a 20 kHz PWM signal to drive a motor control circuit uses the NI 9401 module in the chassis OR cRIO-9073. Generating the PWM signal works. For some reason, changes in shift of power as the market factor is increased. It is less effective for the engine, as you can imagine.

    The code I am using is the finder of the example, for the generation of PWM on an FPGA and is attached.

    I thought that it worked before but may have used the the NOR-9505 rather PWM output to test my circuit. It would be unreasonable for me to do this as a permanent solution.

    The problem can be summed up as: with an increase in the liability of the cycle the voltage line (offset) movement of the output signal in the negative (according to ADGE) Basic or down. The Vpp signal is correct and does not change. Against ticks from 0 to the maximum of 2000 ticks (duty cycle IN), the offset voltage shift is such that 100% the level of full voltage is 0V.

    Any ideas as to why this offset voltage shift that happens?

    Do not be dismayed, I worked on the problem. There was a connection problem - I thought I was logged in as reference Earth, but it has not been properly clipped.

  • How do I create free of glitch signals output in the buffer permanently changing?

    Hi, could you point me to the example more suitable for the following cases:

    I read and write digital and analog data at a rate of 5 kHz.  At this rate, I need read and write samples N at a time and can point single bed and wrote. I want to assure you that my output is glitchfree, then, how to grow the next N samples to the DAQ (PCI-6221) card before it has finished writing the previous samples of N?  This would ensure that at the time he was finished with the stamp of the previous, it will continue with the next buffer without missing a clock.

    I can't use a blocking writing or interrogate the task when it is at the point where I managed to write the next N samples a clock or two would have passed.

    Any ideas?

    Hi AnthonV,

    What you have described so far, I think the following example of the expedition would be a good starting point:

    Help > find examples... > input and output material > DAQmx > power >

    Gen CONT tension Wfm - Int Clk - no Regeneration.vi

    The main idea is to define the task to continue (but not to allow the regeneration of the buffer).  Data are written continuously in time loop then the task is still running, so as long as your loop may follow the generation that should do what you need.

    If you have any questions about the example do not hesitate to ask.  Thanks for posting and have a great day!

    -John

  • Large signal output capacitance measurements

    Hi all

    I'm working on a power amplifier and I want to measure the ability to output under large signal condition. I use a non-linear model of the GaN power transistor.

    Power output is about 36 dBm, f = 8.2 GHz

    I tried both methods:

    (1) I have spent under bias Vgs - 6V to 1V, Vds = 28V. I use solver C_PRC linear tab to find the parallel to the output capacity. I got a chart that changes from 0.3pF to 0.5pF. In this simulation I don't use tuner to impedance, just ports (50 ohm) and sources of bias.
    (2) amplifier is biased to 28V and 125mA. Then, I drive amplifier with of 20dBm to 30dBm input power. In this simulation, I used HBTUNERs to maximum power output (power input 25dBm at the entrance) and the output. I can see there is a change in capacity at the entrance vs input power change. However, in the output, production capacity is constant and 0.52pF. I am able the ability of the drain of transistors, tuner. I use great Solver for the parameter measuring signal Y and calculate the capacity.

    The interesting thing, I can meause entry changes easly to large signal capacity, but output capacity is constant!
    I have two questions:

    (1) why the three measures are different?

    (2) for large signal measurements, for example; 30dBm output, 30 v peak-to-peak output average 40dBm 50 v peak-to-peak. So, there is a change in capacity over a period of time. When I measure the Solver big signal, Solver uses the high peak values? If so, can I change low peak value?

    (3) can be used for important signals gamma probes?

    Thank you


  • continuous signal to discrete


    Hi Gareth,

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

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

Maybe you are looking for

  • suggestion for pH adjustment alogrithm

    Hi, here is my code to judge pH and adjust pH using state machine. I just finished the case when pH > 7.5, I did not the case for pH I understand his very inadequate because it lacks control actual alogrithm; But I really don't know how to program a

  • Windows update error 0x8007043B

    Original title: 0x8007043B error number I tried in the Run dialog box: services.msc Ok Automatic updates Properties stratup type: automatic Status: will be Ok but has not solved the problem... then again, I have tried: beginning run Regedit Go to HKE

  • Vista update last night, now I can not even do Windows or restore from safe mode.

    I have a Vista 64 bit machine. Last night my computer needed to install updates before shutting down, so I left it (as usual). This morning, when I turn my computer on it is stuck in a cycle of perpetual start-up. It restarts, concludes windows, gets

  • How to create a shortcut to Word and Excel?

    My operating system is Windows 7

  • L to L passing tunnel concentrator 3000 to ASA 5510

    Hello I'm looking in to Lan VPN configuration tunnel the Cisco VPN 3000 to ASA 5510 concentrator Lan. I noticed that this particular configuration has NAT enabled in the hub (Config-online policy management of-online traffic Mgmt-online NAT-online L