From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

2 AI channels on one DAQ, with different sensitivity range

Solved!
Go to solution

This vi is based on the State Machine from "new project" on the splash screen at LV startup.

 

A while loop is in parallel to the main while loop of the state machine, shown in picture. 

It runs continuously until the Exit button is pressed.

 

The problem seems to be in the ..............start>read>stop..........start>read>stop.......... part along the error line. 

 

The reason for this clunky start/stop arrangement is that the voltages measured are in two different sensitivity ranges. 

The shunt voltage is small and needs the -.2 to .2 V range. The load voltage is larger and -10 to 10 V range is good. 

In the initialize state, two separate "create channel" vi's were used to specify the voltage range for the physical channel. The corresponding tasks are sent over via local variables.

 

The DAQmx errors happen randomly, sometimes the first iteration, sometimes the 50th. 

I tried disabling one or the other    start>read>stop    for the shunt or load voltage. 

I tried replacing them with DAQ assistant. 

I tried various DAQmx vi's:   "wait" and  "control task with unreserve resource selected". 

 

But error -50103 "specified resource is reserved" keeps popping up. 

 

Is it possible to create two tasks on the same device when they are not used simultaneously? 

The only reason is to measure in two voltage ranges. 

 

Win 7 Pro, 64 bit

LV 2014 Base

 

DAQ hardware: USB 6210

 

Thank you.

 

 

0 Kudos
Message 1 of 3
(2,902 Views)
Solution
Accepted by topic author Carmen92126
This has been discussed numerous times. Do NOT use separate tasks. You can use different ranges for different channels with one single task. Just wire the task out of one create channel to the task in of another create channel.

You are also using local variables where they are almost certainly not needed.
0 Kudos
Message 2 of 3
(2,892 Views)

Hi Dennis,

Thanks. Now I get it. 

Best regards,

Carmen

0 Kudos
Message 3 of 3
(2,852 Views)