LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

ULx dll error "Empty I/O task"

I have created a simple vi that controls a power supply through a DAQ board with analog outputs through the ULx interface. This works fine, but when I export the program as a dll library to call it from an external program (python in this case) I get an error.

 

The error message is:

"Lx Create Channel (AO-Voltage-Basic).vi:5870002<ERR>
Measurements: Value passed to the Task I/O In control is an empty I/O task).

 

The value must refer to a valid task."

 

 

This happens when I call the create channel VI as specified. I have tried both leaving the input blank, which should let the VI create a new task, and creating a task with a construct node.

 

As I said this error only accours when I call the vi through the dll, both versions work inside LabView. They also work when the program is run as an executable (.exe application).

 

I also receive an access violation exception in Python when calling the function. This error does not cause the program to terminate, however, and the rest of the program executes as normal.

 

The error is:

"Exception: Access violation (0xC0000005) at EIP=0x53DFA6D0"

 

I've attached the VI I'm using and an error report for the access violation if that helps.

Download All
0 Kudos
Message 1 of 4
(5,666 Views)

Hello

 

I'M HAVING ALMOST THE SAME PROBLEM!!

the problem happens using ULx lib in labview 2015

 

I´ve been trying to trace the problem and it seem that in ULx Create IOTask.vi there is a comparator: "Not num/path/refnum (the triangle with the prohibit simbol and a question mark)", the output boolean signal of that comparator needs to be false so the task value validated. If the output signal is a true, the error rutine is executed and the task isn't even taken in consideration (not wired to anything). The value used by the comparator is the one specified at the CreateChannel icon from the ULx palette. I´ve tried placing contants and controllers but nothing seems to work. What is weird is that in all the tutorials and video i've seen, no one ever wire that terminal (task in). Maybe there is a missing file in charge of placing  avalue inside that termianl, or a mis configuration.

 

I hope this prolem is solved soon.

0 Kudos
Message 2 of 4
(5,472 Views)

PIctures of a few subVI's won't help.

 

Zip up your project and post it.  Particularly the top level so we can see how things are wired together.

 

Did you wire up the task wires between all of the ULx subVi's?

0 Kudos
Message 3 of 4
(5,454 Views)
I contacted mcdaq and was able to solve this problem using a lower level library instead of ulx. I'm sure they would be interested in your findings.
0 Kudos
Message 4 of 4
(5,437 Views)