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...DAQmx example "Multi-Device Synch-Analog Input-Finite Acquisition.vi"
I'd like to sync 72-channels across nine 6123 cards. The example quoted above demonstrates how to sync 2 individual channels on 2-cards.
Other cards e.g. 6561, niHSDIO VIs have examples for Multi-Device that include FOR loop initialisation for Multi-Device synchronisation. Is there equivalent example code for Multi-Device synchronisation of the 6123 cards ?
Hi bmann2000, Can you attach the specific example (containing the For loop initialisations) that you are looking at - it may be that a relatively simple modification is all that is needed to use it with your card.Regards,Dan - NIUK
Is the hardware on the 6561 significantly different from the 6123 ? Can TClk be used with the 6123 ?
Attached are screendumps of the example code shipped with LabVIEW 8.5.1. At a glance it would appear several channels for the 6123 could be initialised by wrapping a FOR loop around the first VI, but it's not that straight forward. I want to expand the example for 6123 for 72-channels, or find a cleaner alternative, e.g. like the code for the attached 6561.
This link answers the some of my questions on TClk <a href="http://zone.ni.com/reference/en-XX/help/370592G-01/nitclk/nitclk_over...synchronize 3 analog outputs and 4 analog inputs
i have an NI PCI-6259 M series DAQ card and need to somehow generate 3 AO voltage waveforms of different frequencies (about MHz- 100KHz frequencies) which are synchronised and then also aquire the waveform, after undergoing some kind of intereference, through 4 voltage AIs.i also need to start the AI data aquisition clock in synchronisation with the AOs.does anyone have any vi's that could help?i have managed to synchronise 1 AI and 1 AO, but when i try 1 AI and 2 AO's, an error comes up because i am using the write waveform function for both A...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 ...simulated device: Change the Frequency of the noisy sine in a simulated device analog input channel
Changing from LV8.0 to LV 8.20 the behavior of simulated devices suddenly are different (sad).
The frequency of the simulated signal is a lot slower with LV 8.20 (about 1Hz).
Is there a way to get a higher frequency like in LV 8.0 ?
with the note:
Figure 8. You can test NI-DAQmx tasks for NI-DAQmx simulated devices for errors and view simulated data.
Note: NI-DAQmx simulated devices create a noisy sine wave for all analog input channels. Configuration of other simulated data is not available at this time.
thanks a lot
&am...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...i have a problem with daq- analog input
I have a small problem with the ‘Data acquisition’ toolbox.
I am trying to get an input from a generator with a 5volt
pulse. Unfortunately, matlab is identifying it as a 10.6
volt, even when I don’t generate the power, which means that
by using the analog input toolbox I get always the same
voltage all the time, accept when I play with the voltage,
then I can see that there is a change in the voltage, and
then it goes hack to 10.6V. The weird thing is that when I
try the ‘daqscope’ demo, it shows me the true voltage.
This is all done af...a problem with analog input in matlab
I have a small problem with the ‘Data acquisition’ toolbox. I am trying to get an input from a generator with a 5volt pulse. Unfortunately, matlab is identifying it as a 10.6 volt, even when I don’t generate the power, which means that by using the analog input toolbox I get always the same voltage all the time, accept when I play with the voltage, then I can see that there is a change in the voltage, and then it goes hack to 10.6V. The weird thing is that when I try the ‘daqscope’ demo, it shows me the true voltage.
This is all done after I defined the ‘nidaq’ device and the right channel.
I can’t understand what’s wrong with it.
If anyone could help me, I’d be really thankful!
still can't do it.. any ideas? anyone?
...Multi-input file XSLT problem
I have a list of files like this in a file called docs.xml:
<root href="file:///C:/doc_source/aaa.xml" />
<root href="file:///C:/doc_source/bbb.xml" />
<root href="file:///C:/doc_source/ccc.xml" />
I pass in docs.xml and parse it like this, outputting an xml file:
<xsl:apply-templates select="document(docroot/root/@href, .)/
<xsl:sort select="@name" lang="en"/>
There are a lot of repeated items in these external files and I get a
result doc like this:
<?xml version="1.0" encoding="UTF-8"?>
<...Labview and commerial analog acquisition devices
i'd like to acquire an analog image and then analyse it using labview.
Because the lack of money, typical of the italian university, i'm
thinking to use a commercial analog interface, like the pinnacle dc10+
or the same by terratec, just i dont know if then i can pilote this
device directly from labview (we have the license of labview 7)
There is here someone who can tell me if its possible to do this
or if there is however a cheap device that i can use for this goal?
thank you very much for the attention and for the answers
In article <b24297af.0310310241.2...Analog measurement WITHOUT DAQ device
I have an analog voltage which is varying between -10volts to +10volts. Is it possible to measure this analog voltage using LabVIEW software without DAQ ? If not kindly suggest the options available for DAQ device.
In the traditional interfacing techniques which uses parallel port and/or serial port. We can acquire signal using C language and inport and outport commands.And no DAQ is required.... I was hoping if LabVIEW can be used without a DAQ device.
I know that RS232 and parallel port can be used but how will the space and mark levels be used for acquiring an analog signals.
The parallel and RS-232 ports cannot be used for analog acquisition with C or any other language. I don't understand how you think these are traditional techniques. Though the voltage levels are different, both ports are essentially digital ports where on/off signals are inputs/outputs.
For your options for an analog data acquisition device, just click on the 'Products & Services' link on the top of the page. In the middle of that page, there is another link to 'Data Acquisition'. I think the lowest cost device that NI makes is the <a href="http://sine.ni.com/nips/cds/view/p/lang/en/nid/14604" target="_blank">USB_6008</a>.
Hello Miaa,from your description I can think about two things,that remind me the days when there where no sound cards
...Synchronization problems during measurements (using while loop)
I'm programming a LabVIEW code to connect to an Agilent Multimeter (model 34405A) to measure electrical continuity.
The code is very simple, but unfortunately the multimeter sends me measurements in different time periods. I guest this behavior is caused by the multimeter internal trigger, but I'm not sure... I observed that the synchronization problem is caused during the frame labed with Block 1. This block spends different periods of time to run in ms (40, 60, 80, 40, 50...). The block 2 always runs in 12 ms. The overall while seem synchronization problem too..
I'm trying to force the measurement cycles run always with the same period (greater than requests and transfer measurements). So, I'm using the Wait Until Next ms Multiple to fix the period of time of Block 1 and the period of the entire loop, but it's not working...
Could anyone send a idea?
This is my code:
Thanks in advance.Message Edited by Klein on 12-19-2007 11:02 AMMessage Edited by Klein on 12-19-2007 11:03 AM
I would recommend putti...manipulate measurements voltage from analog input
hi, i have another one problem.. i attached the vi where i work..i have a vi that take measurements of voltage with analog inputi store the measurements into an array of 1-Dbut i want to have the measurements into an array of 2-D.in one dimension i will have the measurements of voltage and to the other the time that the vi measured the voltage..can i do this??thank you..andrikos
You didn't attach your VI. Is it <a href="http://forums.ni.com/ni/board/message?board.id=250&message.id=39203#M39203" target="_blank">this one</a>? From the sounds of it, it seems that you want the Build Array function.To learn more about LabVIEW it is recommended that you go through the tutorial(s) and look over the material in the NI Developer Zone's <a href="http://zone.ni.com/devzone/cda/tut/p/id/5054" target="_blank">Learning Center</a> which provides links to other materials and other tutorials. You can also take the <a href="http://www.ni.com/academic/lv_training/how_learn_lv.htm" target="_blank">online courses</a> for free.
i think you forgot to attach your vi.You can change the read vi in this way, that the output is a waveform. There you have a 1D Array of values and an dt value. With this information you have for each element the time. Why do you need a 2D-Array? And why one dimension for the values and one for the time? I think you only need as maximum two 1D Array...Re: Labview and commerial analog acquisition devices
I am using edc1000N from electrim also but i am having problem in saving the camera. Can you tell me the procedures in saving the image that i see when i use NVESA
...21161N Ez-Kit (Analog Device) problem....
To my big comfusement "Analog Device" seem to have removed some important
project files in the digital_audio_effect.zip package :( which I've
downloaded from their FTP-site.
I'm using VisualDsp++2.0 and when I try loading one of the projects
VisualDsp complains that the files "SDRAM_initialization.asm" &
"SPORT02_TDM_Initialization.asm" do not exist. I have worked with some of
the algorithms 1� year ago where I experienced no problems????
I wonder why they trouble their customers this much :(
Does anyone have the f...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...application exe not displaying analog input measurements
i am using the compactDAQ cDAQ 9172, after building the exe all the other digital and analog output ports are working properly whereas the analog input section is displaying the value as Zero, if i read read this channel from the max, it reads the values without any errors.what might be the issues.
I have a couple suggestions first try to create your analog input application with no digital or analog output task just "analog input" and then build the executable and try it again; second if it is possible for you please try updating to the new drivers of (<a href="http://joule.ni.com/nidu/cds/fn/p/sn/n23:3478.41/lang/en" target="_blank"> NI DAQmx</a> ), and third reinstalling the last version of the ?labview <a href="http://joule.ni.com/nidu/cds/fn/p/sb/navsRel/lang/en?q=run+time+engine" target="_blank"> run time engine</a>?. Also the 9172 is the chassis so which module are you using to handle the Analog Input application? To synchronize multiple modules or chassis if this is your case these links might be able to help you so please take a look at: <a href="http://zone.ni.com/devzone/cda/epd/p/id/5259" target="_blank"> NI CompactDAQ Module Synchronization</a> , <a href="http://zone.ni.com/devzone/cda/epd/p/id/655" target="_blank"...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>
...Problem with PWM signal + analog input together !
I have attached a very simple VI where I want to :
1�) acquire a 50 hz PWM signal (I have used one of the Labview examples) to get a value once per second
2�) acquire 1 analog voltage : 100 samples at a rate of 1KHz every second and then make an average
These to things work fine on their own ! However when I create this VI it works fine for a few seconds and then I get a failure message. I then need to "initialize" the Daq-pad with MAX.
Would anybody know what the pb is and how I can get them to work together? Ideally I would need to measure another PWM signal.Once again I succeed in measuring two pwm signals (with ctr0 and ctr1) but not with the analog signal at the same time.
Am I doing something wrong or is it just perhaps not possible with this card?
Any help would be great,
I am using windows XP, Labview 8.0 and a DAQ-PAD 6015
Could you attach a screenshot of your failure message please? It should be helpful.
Thanks for your help. Here is a screen shot of the message. We can go on in French if you want ( I am French).
http://forums.ni.com/attachments/ni/170/294031/1/Failure message....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...Configuration problem with LabVIEW and Measurement & Automation
I have been trying to run the NI-DAQmx for the last couple of days but it is not working properly or actually not working at all. I am trying to acquire data using a PCI-6143 card. Everytime I am trying to open the Measurement & Automation explorer it tells me to check the configuration. It says: "Executable version (7.1.1) doesn't match resource file (7.1). Check your configuration." When I then click ok nothing happens I have to close it using the task manager. I tried to check the configuration but even that does not help or does not even work. How will I be able to get it run again. I talked to some of my colleagues and they told me that it has never been a problem before. Is there any other way then reinstalling it?
Thank you for your help
...Problem with PCI 6040 in reading multiple analog inputs.
i am using PCI-6040 in my appliation. I am required to read 8 analog inputs. I started with reading two analog inputs (A00 & A01) using two DAQs.I found that only one of them is reading the input and other just reads 0V always.
if i use single step both DAQ will work properly. Also if i use "Highlight Execution" button then both DAQ work properly. but if i try running it ( without single step and " Highlight execution" ) one of them dont work properly.
summary is, if i use two ( or more ) DAQ in same VI is one of them will not work. But if i use only one DAQ in VI, it is working properly. I checked it for both channels .( A00 and A01 )
i tried using single DAQ for both inputs. But after configuring for the same if found that DAQ is giving only one output pin.
i am new to Labview and i am in need of desparate help
please help me
thanks in advance..
gwd is right. Please attach your VI to your post and we can take a look at it. Another tip is to try to open and understand a DAQmx example from the NI Example Finder. One good example for you would be Acq&Graph Voltage-Int Clk.vi under Hardware Input and Output >> DAQmx >> Analog Measurements. Just change the Physical...Problem that Calling DLL with 2D array input in LabVIEW
I have to call a DLL which a 2D character array as an input, the DLL can't be changed any more because some odd reason. How can I call this kind of DLL in LabView?
Any help shall be appreciated.
Can you post the DLL function's prototype, or even some of the code?
Hello, Thanks for your reply.
The definition of one function(get the QTY of the loading box currently using and its ID)
Int binResLists (char *ids[ID_LENGTH + 1], int maxNum)
output: char *ids[ID_LENGTH + 1] // a array used for store the ID read back.
Input: int maxNum // specify the maxmum loading box.
how many loading box using will be returned after cal...