LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Hardware timed DIO pattern generation and AI triggering with 6071e board

I am attempting to use 4-6 DIO lines to continuously generate a hardware timed patterned waveform that cycles a device and triggers a simultaneous analog input capture on 10-15 channels using a single PCI6071e card. Is this physically possible or just wishful thinking?
 
I found an DIO example vi for the 6534 card (DAQmx-6534_Cont_Gen_Onboard_Mem.vi) that I thought I could modify to work with the 6071 card that I have installed, but I get a timing error with the Sample Clock. Apparently I am restricted to On Demand timing which enable simutaneous AO, which I do not need but can live with if I could get past the error. Also the DAQmx timing vi does not even have the On Demand option available in the polymorphic vi selection. I tried adding a timing property node to select On Demand which also failed. Any enlightenment in the area of hardware-timed DIO and Simultaneous AI capture would be greatly appreciated.
 
 
Another viable option is to use a >2 AO card in addition to the 6071 for AI. I would then need to have a single clock control both the AO and AI to maintain synchronization between both cards. Any experience here?
 
 
Kindest Regards,
Bill Wilbanks
0 Kudos
Message 1 of 10
(3,504 Views)
Hello Bill,

The NI PCI-653x Digital I/O boards are a special line of products that have the ability to perform hardware timed digital I/O.  Unfortunately, your NI PCI-6071 E-Series card is limited to software timed digital I/O operations, and does not have the ability to perform any kind of hardware timed digital I/O.  The 'On Demand' timing parameter is synonymous with software timed digital I/O.  Software timed digital I/O operations are programmed in NI-DAQmx by not using the DAQmx Timing VI.  You simply create your digital task, start it, and then read or write to digital lines through software commands.  This explains the lack of an 'On Demand' option for the DAQmx Timing VI.

What I would best recommend for your application is one of our M-Series devices (NI PCI-62xx).  This new line of Multifunction DAQ devices maintain the ability to acquire analog input signals, and include the functionality of correlated digital I/O operations on port 0.  A correlated digital I/O operation enables the coupling of buffered digital I/O operations with the analog, counter/timer, or an external clock.  Here is a good overview of digital I/O applications, and also an example program showing how correlated digital I/O is performed with M-Series devices.

Developer Zone Tutorial: Digital I/O Applications

Developer Zone Example: Performing Correlated Digital IO with an M Series Device in LabVIEW

I hope this helps!

Regards,
Travis G.
Applications Engineering
National Instruments
www.ni.com/support

0 Kudos
Message 2 of 10
(3,488 Views)

Thanks, Travis,

I will have a look at the information that you included in your response for future reference and knowledge. I have another PCI Card with 8 AO's (6713) that I will use for this project in conjunction witht the 6071 for the AI's. I plan to utilize the RTSI cable to synchronize the AI  with the AO signals. I would like to have a rising edge of one AO trigger the AI capture, but I believe that with analog triggering I would have to stop the task after the acquisition and rearm for the next AO rising edge. Are there any "got ya's" that I need to know with this approach? Are the other methods for analog triggering that would start and stop on rising and falling edges, respectively?

 

Kindest Regards,

Bill Wilbanks

0 Kudos
Message 3 of 10
(3,472 Views)
Bill,
 
There may be an better way to synchronize your input/output tasks. A great resource for LabVIEW code is the NI Example Finder (Help>Find Examples in LabVIEW). In the Example Finder, under "Hardware Input and Output">>"DAQmx", there is a folder of synchronization examples. Under the Multi-Function folder, there is an example named Multi-Function-Synch AI-AO.vi that demonstrates how to continuously acquire and generate data at the same time, synchronized with one another. Take a look at this and other synchronization examples to see what best fits your application. Then, it's as simple as saving a copy of the example code and modifying it to fit your needs.
--
Michael P
National Instruments
0 Kudos
Message 4 of 10
(3,459 Views)
Michael P.,
I have looked at the examples earlier and will attempt to utilize the same approach to use the RTSI signals between the two boards that I have available. I have ordered the RTSI cables yesterday and will proceed with developing the code. I plan to have the one (or possibly 2) AO's trigger the AI capture. My test has two states in which I need to capture data. My concern is that I will trigger one analog capture with the first rising edge of the analog output and loose hardware timing due to the software STOP of the analog input rather than a falling edge(hardware timed) STOP. In the event that two AO's are necessary, will I be able to specify different PFI lines to trigger the analog capture for each state. The problem with the analog trigger (and reason for considering Digital I/O) is stopping the acquisition after triggering. The 6071 allows analog triggering, but requires the stop task command in order to terminate the acquisition. However, D I/O ( I believe) allows start and stop on rising and falling edges, respectively. Correct me if my understanding is incorrect. I am also looking into the PCI-62xx product that Travis mentioned in his response. I hope this clearly explains what I am attempting to program. Any additional insight is very welcome. I want to better understand the capabilities and limitations of the cards and DAQmx so that I can develop routines more quickly instead of fighting for every step forward.
 
Kindest Regards,
Bill
0 Kudos
Message 5 of 10
(3,455 Views)

Bill,

Take a look at the example named Acq&Graph Voltage-Int Clk-HW Trig Restarts.vi (under Hardware Input & Output>DAQmx>Analog Measurements). This example demonstrates how to acquire a finite amount of data (waveform) using the DAQ device's internal clock, each time an analog trigger condition is met.  Additionally, the example shows how to efficiently restart the task therefore running at optimal speed. So, you can retrigger an acquisition based on an analog trigger. Integrate this capability into your application to get the desired operation.

--
Michael P
National Instruments
0 Kudos
Message 6 of 10
(3,453 Views)

Michael,

I cannot find the example in Hardware Input and Output/DAQmx/Analog Measurement with HW trigger in the name. Is this available in Labview 7.1?

Regards,

Bill

0 Kudos
Message 7 of 10
(3,448 Views)
If you have DAQmx 8 installed, Acq&Graph Voltage-Int Clk-HW Trig Restarts.vi is located in Hardware Input & Output>DAQmx>Analog Measurements>Voltage.
--
Michael P
National Instruments
0 Kudos
Message 8 of 10
(3,446 Views)

Michael,

I am using DAQmx 7.4. I will download version 8 and have a look.

Regards,

Bill

0 Kudos
Message 9 of 10
(3,440 Views)

Dear sir,

        I have Thermocouple data acquisition system. In which there are 2 chassis, (1) PXI 1002 with

PXI8176 controller with RT, PXI 6071E DAQ card (2) SCXI 1001 with  SCXI 1125 card  and SCXI1327 block.

 

PXI 6071E  connected to SCXI 1125 with SH1006868 cable and adapter SCXI1349.

 

I am using Labview 8.6 , DAQmx9.0

 

 

I have develop program for continuous thermocouple acquisition. Now i want to make program on trigger based data acquisition.  When trigger pulse comes system starts to acquire data ( and log in file) for userdefine time and stop acquisition. Again when trigger pulse comes   system again starts to acquire and stop at define time.

 

Can you guide me how i can develop such system.

 

Thank you.

 

--Vishnu

0 Kudos
Message 10 of 10
(2,830 Views)