LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

digital input and digital output at the same time

Hi all
I have a PCI-6503 board. I have done 2 task that run simultaneously: the first one is port0_16 output and the second one is port2 input.
I get sometimes (not every times...this is strange...) error-200587 saying:

'Requested operation could not be performed, because the specified digital lines are either reserved or the device is not present in NI-DAQmx.

It is possible that these lines are reserved by another task, the device is being used through the Traditional NI-DAQ interface, or the device is being reset. You might also get the error if the specified resource is currently in use by LabVIEW network variables bound to the DAQ Channel, or if the DAQ Channel is being used in any OPC Client software.

If you are using these lines with another task, wait for the task to complete.  If you are using the device through the Traditional NI-DAQ interface, and you want to use it with NI-DAQmx, reset (initialize) the device using the Traditional NI-DAQ interface. If you are resetting the device, wait for the reset to finish.'

In the attached VI i have recreated the basic structure of my real VI (the error is present even here of course...).

How can i do?
I want to have both digital input and digital output with the same PCI-6503 every single cycle... Is it possible?
Please help me!!!

Kind regards.
I love the smell of napalm in the morning
0 Kudos
Message 1 of 8
(4,471 Views)
Hi all again
... Nobody can help me?
I'll wait for some suggestions in pain...   🙂

Kind regards



I love the smell of napalm in the morning
0 Kudos
Message 2 of 8
(4,442 Views)
If I had to guess, there is nothing inside your loop preventing the write task from occurring at the same time as your read task.  Whichever task gets hit first locks out the port until it is done and causes an error on the other.
 
I would recommend wiring the error lines in series so one can't execute until the other is done like I am showing in the attachment.
0 Kudos
Message 3 of 8
(4,441 Views)
Hi
Thanks for your suggestions. Unfortunately i still use LV 8.0... can you save the attached VI in 8.0 version so i can see what you have done?
Thanks a lot

Best regards
I love the smell of napalm in the morning
0 Kudos
Message 4 of 8
(4,430 Views)

Hello Maverick,

Here it is in LV 8.0.

0 Kudos
Message 5 of 8
(4,416 Views)
Hello Maverick,
 
Did you have any luck with the example Raven sent you?
 
In Raven's example, it properly passes the DAQmx task from one SubVI to another to avoid having to open the task again. These errors are likely to occur when you have multiple DAQmx calls in a VI that call the same task again without clearing the previously opened task. If at any given time you try to open a task that already is being used, you might receive an error "resource is reserved"... similar to your original example.
 
If you are interested, here is an awesome link that gives a detailed explanation of the LabVIEW dataflow paradigm
 
 
Thanks and good luck!
Jordan Randall
National Instruments Italy
0 Kudos
Message 6 of 8
(4,403 Views)
Hi Jordan
The solution given to me still present the same error!!
Why? I thought it would run properly but it wasn't like that...
What's the problem? Any reserved resources? Any ideas?
Please help me...
 
kind regards
 
 
 
 
 
 
 
I love the smell of napalm in the morning
0 Kudos
Message 7 of 8
(4,392 Views)
Hmm.. this sounds interesting. Have you tried the same operation in MAX using the test panels? You should also verify which operation mode you are using, simple I/O, strobed I/O, or bidirection I/O. Take a look at the manual to verify these settings.
 
Regards and good luck!
Jordan Randall
National Instruments Italy
0 Kudos
Message 8 of 8
(4,387 Views)