looping analog input to analog output
I'm trying to take the analog input and stream it directly to analog output using an old keithley pci board (PCI-3108).
I can stream in for some interval but the output comes out as a discontinuous stream of packets with silence between during the same interval. The incoming signals are ~800/s (of a biological origin). The output packets contain about 50 impulses. Has this problem been solved?
...Analog Input value more than analog output
I am using DAQ 6014 card. I have made a differential connection. In
the SCB 68 connector block, i have shorted the input and the output to
check the values.
But the analog input value i am reading in is always higher than my
outut, why is this? say i give o/p s 4 volts, the i/p I read is 4.2
volts.. How to make both exactly same.. Thank you
You need to connect in following way:
For connecting Different input channel 0 to DAC output channel 0 -
Ch(0) - DAC0out
Ch(8) - Aognd
Are u connecting in above manner ?
Still if you are facing problems, try connecting combination of
differen...Cont Analog input and Analog output in waveform
I am using PCI 6229 card to cont analog input a signal measured from a microphone, and phase-shifted, and cont output this shifted signal to drive a loudspeaker.
I am using the example of 'Con Gen Voltage Wfm-Int Clk', which is combined with Con Acq Voltage Wfm-Int Clk'.
Sampling rate is 10000 samples/second.
Samples per channel is 1000.
is Analog 2D waveform is better than 2D DBL?
When I try to run this program more than 2 minutes, the analog output signal has some 'spikes' (it should be a smooth sine wave, since the analog input signal is purely a sine wave.). There is no error shown up and so, I don't think this is a buffer problem. why the spikes happened (please see the attached picture)?
Thanks very much for your post. I have had a look at it and I was wondering if it would be possible for you to post the VI that you are using, on the forum so that I can take a closer look at the problem. I was wondering, have you modified the example?
Please could you also tell me the number of cycles per buffer that you are using and also which version of LabVIEW that you have and what type computer and operating system you are ru...Problem with analog input, processing the signal, and analog output
I'm trying to read a signal continuously, process it by applying a bandpass filter (and in the future, a delay) and converting to a square wave, and using analog output to send it to an instrument. My hardware is a PCI-6031E for input and a PCI-6733 for output. I am reading at 5k samples per second, trying to filter out a 60 Hz component to generate a 60 Hz square wave. I am reading 5000 samples each time the VI is called, so that displays are updated every second.
However, when writing out, the data is crammed in the first half second, with the rest of it stuck either at the high or low point of the square wave. Thus, the output frequency of the signal is 120 Hz instead of 60 Hz.
What could be the issue? I tried to use shift registers to correct the problem, but that does not happen. When checking the waveforms, they are made of 5000 points with a dt of 0.0002, which should translate to 1 second of data.
I attach the diagram of the code, and images of the signal before output and the measured ouput.
The digital output ...simple analog input and analog output loop gets buffer overflow- WHY??
I have a USB-6211 DAQ and Labview 8.5, and NIDAQmx version 8.71 (the latest one?), running on windows XP
The attached VI exits after about 4 seconds of execution with the overflow error: Error -200279 occurred at DAQmx Read (Analog 1D Wfm NChan NSamp).vi:1
The example is very simple, involving a single loop containing a single channel AI (continuous sampling at 40 samples at rate of 4000 samples/sec), in parallel with a single channel AO, writing a DC value at 10 samples at 1000 samples/sec.
Thus, both read and write should take about 100 mSec per iteration- still the AI buffer gets overflow after just 4 seconds. It is the same phenomenon even if I lower the AO write samples (from 10 to 5 for example)
Could the problem arise from the use of the DAQ assistants instead of the more primitive read/write functions? Shouldn't this also work with the DAQ assistants?
Any help would be greatly appreciated!
PS the problem persists when I changed the AO write rate to 4000 to equal the AI rate
PPS the problem disappears if I disconnect the wire between the simulate signal and the AO daq assistant - meaning the problem resides in the daq assistant or its workings
PPPS moving the read and write to different loops would probably work, but why doesn't this work with my single loop??
http://forums.ni.com/attachments/ni/170/312213/1/data_aq_test3_onech_40_4000_...How can I use DAQmx to route analog output 0 to an analog input?
I'm using an E series DAQ card - PCI-MIO-16XE-10. I'm converting my Traditional DAQ (Legacy) software over to DAQmx.
Previously I've used analog inputs 21230 and 21240 to route my analog outputs to the analog to digital converter (see article: <a href="http://digital.ni.com/public.nsf/allkb/6C77B1884F5BBEE8862569E3005BE30E" target="_blank">http://digital.ni.com/public.nsf/allkb/6C77B1884F5BBEE8862569E3005BE30E</a>), and it has always worked fine. Now that I'm using DAQmx, however, I can't seem to read off of channels 21230 and 21240. The DAQmx vi that I wrote can read off of other analog input channels (ai0, ai1, etc), but not off ai21230 or ai21240. Does anyone know how to fix this?
...synchronize delayed digital output with analog input
we are students studying biology and have been working with Labview 8.2
for the last 2 month. Now, we have been assigned a more difficult task,
for which we would like to hear your advice. We apologize in advance
for our bad english.
We are going to acquirie analog data from 16 different channels, using
a pci-6143 card. In addition, we want to activate our external
stimulation device using a digital output 24bit 1D boolean array. This
action is supposed to happen after a certain amount of analog
measurements, e.g. 2000 time steps. To receive the most exact data, we
want to avoid LabViews clock functions and only use the clocks of the
So, the question is: Is there a way to tell the PCI-Card to do
different things after a certain amount of time steps? Like saying: For
the first 2000 time steps, you send a 24 bit binary array containing
only FALSEs, in that particular step you send an array containing only
TRUEs and afterwards again only FALSEs.
The way we assume this could work is the following:
We create a CO-Pulse channel, use the "Get Terminal Name with Device
Prefix.vi" and use this as a source for our sample clock with which we
are going to get our analog samples. In addition, we create another
CO-Pulse channel with a specified delay and another "*Device Prefix.vi"
to use as a source for our second sample clock which is wired to our
digital output channel. This way, the time difference between the start
of the a...synchronizing analog input and counter input
Hi, I have a VI where I am acquiring samples from multiple sensors every one second. For these I am using analog input terminals. I have another sensor that is a voltage transducer that outputs a PWM, and I want to get the average duty cylce of that signal. I use a CI semi period measurement to do this. Is there a way to synchronize this so that when I acquire the AI samples, I also get the average duty cycle over that one second of sampling?When the fianl VI is done, I want to be sampling continuously for a long time, but I can't figure out this part. Thanks for the help.
AI Master test.vi:
http://forums.ni.com/attachments/ni/170/334641/1/AI Master test.vi
1. You could try to use the same trigger as a acquisition start for both measurements.2. At this moment there is no data flow dependency between the two acquisitions. (You could use the error cluster to split from the upper acquisition and enter both acquisition start VIs, this would add a dependency that the acquisition start is sort of synchronised at start.I have made some changes to point it out more clearly.Message Edited by andre.buurman@carya on 06-25-2008 08:47 AM
AI Master test.vi:
http://forums.ni.com/attachments/ni/170/334700/1/AI Master test.vi
Hey andre Thanks for the help. Could you save the file to version 8.2?
I don't have the time to do this, but here's a screenshot of the modification. Main modifications are in the square decorations (not to be added :smileywink:).<img sr...Re: CPU usage on buffered analog input and output #3
My problems are almost solved :) I attach a little example of my solution. I don't use FIFO at the moment.
Residual Problem: Prefilled AO buffer is written twice. I have no idea why!
example simul AIAO.zip:
http://forums.ni.com/attachments/ni/170/190798/1/example simul AIAO.zip
I am glad to hear you are making progress. I have taken a look at your VI and I do not see anything that should be keeping the buffer from updating. However, I can't run the VI because the subVIs in your ramp VI are missing. Can you post them?
T...analog output over labview?
Kindly tell if it is possible to give analog output over labview? if yes, then how?
If not, then do i need a network interface using parallel port along with the dimmer for the controlling the load of generator
I want to do load control of a camping gasoline generator (Rating 1kW) using a dimmer which is not RS-232 compliant.
> Kindly tell if it is possible to give analog output over labview? if yes, then how?
yes of course, you can... but it depend on your hardware: a normal pc
bus protocol like rs232 parallel...Continuous Analog Input and Output with USB-6009: timing output
I have a USB-6009 and want to set it up to continuously log Analog Input data and also to output a continuous Analog Output signal (such as a sine wave or ramp which I give through a spreadsheet with 1000 data points). Please see attached the VI that I have worked out so far for this purpose.
1. When I run the above VI, my analog output signal (that I am logging with time) appears to not have a constant time interval between two points. For example, running the VI with a Software Loop Time of 20ms, at times the time interval between two AO points is 0.015s and at others it's 0.032s. I need this time interval to be constant. How can I do this?
2. When I stop running the VI the USB-6009 is still giving me a voltage (at the value it was at when I stopped the programme). Is this voltage going to be at the rate it was last running at, i.e. say if it was giving me 4V at 150S/s when I stopped the programme will it continue to give me 4V at 150S/s?
Any suggestions on improving my VI are much appreciated as well.
Thank you in advance,
Thank you very much for your suggestions. I tried changing the priority and the first time it ran with a more constant time interval between Analog Output values, but when I re-ran (having changed nothing at all and ensuring the high priority was still on and no other applications r...Analog Output and Counter Synchronization
I have used the same PCI 6711 card to generate both an Analog Output square wave and a Counter square wave at 1228 Hz. From the scope the two trains of pulses are indeed at 1228 Hz, but they are not syncrhonizing. Attached is my VI. What could possibly the problem?Larry
The simplest solution will be to configure the AO and CTR to start when an external trigger occurs (like another counter output).
Also see <a href="http://forums.ni.com/ni/board/message?board.id=40&message.id=246&query.id=274342#M246" target="_blank">this post</a>
...Can I change the voltage range of an analog input (FP-AI-102 Input Module) in LabView?
in my application I use a FieldPoint AI-102 analog input module which
is controlled by LabView. Is it possible to change the voltage range
of the inputs in Labview or can I only change them in the "Measurement
and Automation Explorer"?
Look at the high and low limit controls at the analog input functions.
You can recieve help using 'cntrl + H'
...How to synchronize counters and analog input
Hello! This is my first post and I am still trying to familiarize myself Labview. I have an application in which I am reading the velocity of two rotating shafts and an analog input simultaneously. The intent is to execute this VI in a test vehicle. The users will be able to view the waveform chart data and can then choose to record the data. I am using a DaqCard 6036E PCMCIA card with a SC-2345 signal conditioning board.
All three channels are declared in MAX as NI-DAQmx globals. The two counter channels will display and update correctly, but I cannot seem to get the an...DC pulse output analog input
I am using a 6221 PCI DAQ card and attempting to put out a DC level for a several different times. During the output of each DC level I need to sample two DC inputs via the analog input. Most of my DC levels last for 100s of seconds each and a sample rate of 1S/s on the analog inputs is OK.
My problem arises when I attempt to place a 30ms pulse into the analog output. During this 30ms I need to increase the data rate of the analog input.
I have attempted to use a while loop to control the time between changes but can not get the sampling rates correct to allow for the correct number of samples.
On suggestion has been to take all data at a fast rate. The test will last in excess of 3000 seconds and I get way too much data at a fast rate.
I need to be able to change data rates on the fly as I change the DC levels.
Does any one have any ideas?
It sounds like "we" detect an event - the end of pulse - and only then know how fast we should have been sampling(?) The advice to always sample fast is right - it's not necessary save the all the data. If sampling at 65536 samples/sec, you could configure your input buffer for 4-seconds - 262144 samples. Read 65536 samples per read. Save every sampl...digital input to switch on and off analog output
I want to use a digital input to switch on and off a defined voltage at the analog output. The voltage should only be on as long a high signal is at the digital input. I need this relatively fast so I wonder if this could be controlled just by hardware.
Any help would be appreciated.
I?ve attached a screenshot of a program that does something very close to what you?re asking. A pause trigger is used on one of the counter lines, which clocks the analog output. The digital input is what triggers the pause. However, the analog output will not return to a known voltage ? you would have to add this yourself.
On the other hand, this program would be very easy to create if you could just use software timing for the digital trigger. You could just read a Boolean, and then use a case structure to switch the different analog output voltages.
Lastly, I would ultimately recommend using one of the USB relay modules. These are designed specifically for tasks like the one you?ve described.
I hope this helps!
If you really want it to work fast, you'd better try to use a MOSFET. Switch it on and off using the signal you want to apply to the input. Keep the voltag...input/output error kde 3.4
System is recent 2005.0 gentoo install with 2.6.11 kernel.
About 2-3 months ago my kde was promoted to 3.4 and has been very
I think a log message prompted me to poke around in /usr/kde/3.4/share
where when I do 'ls'
I see 'fonts' subdirectory.
when I do 'ls -la'
I do not see it....
If I do 'ls' on /usr/kde/3.4/share/fonts I get the 'input/output
I know that most problems delivering this message are file corruptions.
However this system is not exhibiting any other signs of problem.
When fsck is run the file system seems fine ie flags nothing.
Could this be related to my one and only freeze up?
Or might it be some quirk of kde 3.4.
Any help appreciated.
> System is recent 2005.0 gentoo install with 2.6.11 kernel.
> About 2-3 months ago my kde was promoted to 3.4 and has been
> very stable.
> I think a log message prompted me to poke around in
> /usr/kde/3.4/share where when I do 'ls'
> I see 'fonts' subdirectory.
> when I do 'ls -la'
> I do not see it....
> If I do 'ls' on /usr/kde/3.4/share/fonts I get the 'input/output
> I know that most problems delivering this message are file
> However this system is not exhibiting any other signs of
> problem. When fsck is run the file system seems fine ie flags
> nothing. Could this be related to my one and only freeze up?
> Or ...reading analog input and synchronize it with digital data
HelloI have to output 5 digital outputs to derive 32 LEDs in sequence. That is already taken care of. The sequence is tested and its working fine with a delay of 0.5s between the sequence.The LEDs will be attached to 32 plastic optical fibre (POF) deformation sensor. The other end of the 32 POF will be connected to transimpedance amplifier and then to an optical meter. The optical meter has a BNC analogue output that to be taken to DAQ card.Now what I need is to read the analogue input from the optical meter (one channel only), display the value and store it in a file.The analogue input should read 32 reading corresponding to the 32 LEDs, then store the data to a measurement or excel file, and rpeat the process again.I.e. once the LED1 is flashed, I need to read its corresponding analogue value, then the 2nd and so on till the 32, and then store the 32 values in a file. And repeat the process gain after the 0.5s delay.I have done a basic labview to do this. I think I can put the two programs in one and run themHowever, I am not sure how to do the synchronization between each LED (light time) and the analogue reading value of it. Can you offer any help?Attached is the labview program done in version 7.1.
5 digital output lines for the LEDs.vi:
http://forums.ni.com/attachments/ni/170/264539/1/5 digital output lines for the LEDs.vi
I'd just like to cl...Error 50103 during Analog Input acquisition in Labview
I could use some assistance tracking down the source of this error in Labview. I'm trying to sample some thermocouples using the DAQmx Read VIs inside of a loop, and every few iterations, I get an error 50103 out of the VI and no data is returned. Is there something wrong with the timing or sequence of the read requests?
I've attached a copy of the code I am working from. It is code I inherited from a previous employee, written in Labview 4. I am trying to bring it up to speed in version 8.2.1 using the new DAQmx drivers. As I have not worked with Labview since version 4 either, any advice would be appreciated.Message Edited by shaschke on 04-23-2007 09:53 AM
Here is what your subvi might look like. Notice that it now has input and output for error cluster. Create channel, stop task and delete task have been removed and it now has "task in" and "task out".
I have to say I would consider rewriting a lot of this to clean it up.
<a href="http://zone.ni.com/devzone/cda/tut/p/id/5560" target="_blank"></a>
...CPU usage on buffered analog input and output
I'm developing two separate applications in LabVIEW: one that uses
continuous buffered analog input and another that uses continuous
buffered analog output.
In the continuous input application, I've noticed that by placing a
delay in the loop that contains the AI READ VI, the CPU usage
decreases to almost nothing once the delay approaches the time it
takes for a buffer to be filled--example: delay time of 500 msec for a
buffer of 1000 samples at a sample rate of 2000 samples/sec. This
makes sense because, when the AI READ is called, the buffer is almost
already filled by the time the...At 184.108.40.206 installing bos.adt.include 220.127.116.11 wants 18.104.22.168 !
I posted this before but the replies were not helpful so here goes again...
I currently have AIX 4.3.3 ML 11 installed with no bos.adt.include fileset
I want to install Visual Age 4 but it requires bos.adt.include 22.214.171.124
I tried to install a current version, 126.96.36.199 (I think), but it requires
I extracted 188.8.131.52 from IBM's Web site but it depends on 184.108.40.206 (which is
Is there some way out of this never-ending quest?
> I posted this before but the replies were not helpful so here goes again...
> I extracted 220.127.116.11 from IBM's Web site but it depends on 18.104.22.168 (which is
> not available).
IBM does not offer (for the very most times) so called baselevel
filesets. What you've got is only an update.
The baselevel *set* is "bos.adt" which is on your installation media.
Mine has a base level of 22.214.171.124 *and* a dummy 126.96.36.199 for satisfying
older dependencies. You can find them on the 4 CD Operating System kits
showing up regularly on ebay, if you have only a mksysb.
Go to "smit" -> "Software Installation and ..." -> "Install Software
Bundle" and then select you're CD-ROM and the bundle for SW Development.
These opinions are mine. All found typos are yours.
...Is there any difference of g++ 3.4.3 and g++ 3.3.4 ?
HI, my source code was compiled ok in g++ 3.3.4 . But when I try to
use 3.4.3 to compile, I get the following error:
Utility.h: In constructor `Buffer<size>::Buffer(const char*)':
Utility.h:174: error: `buffer' undeclared (first use this function)
Utility.h:174: error: (Each undeclared identifier is reported only
once for each function it appears in.)
Utility.h:176: error: no matching function for call to `strchr(<type
/usr/include/iso/string_iso.h:130: note: candidates are: char* strchr
(const char*, int)
/usr/sfw/lib/gcc/sparc-sun-solaris2.10/3.4.3/.....How to acquire analog input switched from digital output? NI-6251
Congratulations for the forum!
Excuse me for the bad english. I little use Google translate
My task is to program with Matlab this National Instrument module http://sine.ni.com/nips/cds/view/p/lang/en/nid/202597 (using the "Data Acquisition Toolbox").
It have to download data from the accelerometer sensor ADXL330, which generally earns 3 offset voltages in the middle of its supply voltage and measure the acceleration in the range + / - 3g
At this stage of the project, my problem is as follows:
I have two boards ready: the first is the accelerometer with three issues A...analog output
I want to get a clock pulse of 40 Hz for 15 seconds from the A/D board. I am using analog output in matlab with the following code:
AO = analogoutput('ueidaq','pwrdaq://dev0');
chan = addchannel(AO,0);
Fs = 1000; % Sampling frequency
t = (0:1/Fs:5); % Time vector for 5 seconds
x = sin(2*pi*40*t);
z=5*(x>0); % 5 volt output
I have also used 'pulstran' for this purpose. But the problem is the the total number of samples is limited by "MaxsampleQued". I tried putting the code in a for loop but that is creating problem ( sometime matlab is crashing). I am unable to make the pulsewidth smaller ( say 1 microsecond) as it increases the sample size. Hope anyone can suggest any way out. My primary requirement is to generate a 40 Hz clock pulse for 15 seconds in matlab and get the output from A/D board.It will be also helpful if anyone can suggest any other means to do that.