Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Edit Create Channels and Scales on Remote System

In MAX you can make virtual channels, tasks, and scales pretty easily for your local system.  And there are DAQmx functions for doing the same thing in LabVIEW.  And if you have a remote system in MAX doing the same thing is pretty straight forward for that hardware.  I happen to have a real-time cDAQ with some scales on the system which I made in MAX.  

 

I'd like to now edit these scales that are on my remote RT system from LabVIEW, from my host application.  I can write code that sits on the RT system to edit the scale, but it is clear that MAX is able to edit these scales on the remote system, and I'd like to leverage DAQmx to edit these scales from within my host application.  Is there a way to get access, and edit these remote channels, tasks, and scales?  Thanks.

0 Kudos
Message 1 of 7
(3,410 Views)

Hey Hooovahh,

 

It sounds like you are trying to programmatically edit DAQmx tasks on a remote system.  As far as I can tell, programmatically changing channels associated with tasks is usually what is done, but it sounds like you are trying to actually change task settings.  

 

I would instead just create and deply the tasks I need for an application and deploy all of them and then start them when I needed that specific task.  That way you would just, from the HMI, tell the PXI what subvi to run with whichever task you need.  How does that work for your application?

 

-Bear

Regards,

Ben Johnson
ʕง•ᴥ•ʔง
0 Kudos
Message 2 of 7
(3,371 Views)

@TheEngineeringBear wrote:

 

It sounds like you are trying to programmatically edit DAQmx tasks on a remote system.  


Not just tasks, Virtual Channels, and Scales too.  I'd like the ability to change all the aspects that MAX allows me to on the remote system.  Changing the scale, changing the Virtual Channel terminal configuration, physical pin, min and max, etc.

 


@TheEngineeringBear wrote:

 

I would instead just create and deply the tasks I need for an application and deploy all of them and then start them when I needed that specific task.  That way you would just, from the HMI, tell the PXI what subvi to run with whichever task you need.  How does that work for your application?


It is not known at run time or edit time, what physical pins a signal will be routed to.  If a technician is doing some debugging and they want to know what the voltage is on a physical pin, I'd like to provide a simple solution for them.  And if they'd like to set an arbitrary scale, or calibration to engineering units on that sigal I'd also like to provide a solution for them.  Asking them to open MAX and haveing a work instruction for that, is something that I can do, but a more elegent solution is one that fits in the application I have.

 

The VI I posted here on LAVA allows you to specify a scale, virtual channel, or task, and has a nice interface for editing it because it calls into DAQ Assistant.  What I'd want is this same functionality (the functionality already available in MAX) in my application.

 

On a semi-related note I'd also like to be able to programmatically open a test panel to remote hardware (also available in MAX), which I posted here.

0 Kudos
Message 3 of 7
(3,366 Views)

Hey Hooovahh,

 

looking into it, I think you might be able to get some of the funcitonality you are looking for in the advanced options for the DAQmx VI's.  I believe you would be able to do it, but I don't know what would happen as this seems (like you said) using the DAQmx Express VI and that is not available to be edited at run time, so something low level might go wrong.

 

There are "Create Scale.VI", "Create Task.VI", "Create Virtual Channel.VI" which I'm sure you are aware of, which you could build a custom VI that allows you to build up the functionality you see in NI MAX, but again, I haven't been able to find anything on this so my spidy senses are telling me that you aren't supposed to do this for some reason.

 

I'd try making a quick example of doing this with one of the specifications and seeing if you can change it while running the RT program on the PXI.

 

-Bear

Regards,

Ben Johnson
ʕง•ᴥ•ʔง
0 Kudos
Message 4 of 7
(3,352 Views)

@TheEngineeringBear wrote:

 

There are "Create Scale.VI", "Create Task.VI", "Create Virtual Channel.VI" which I'm sure you are aware of, which you could build a custom VI that allows you to build up the functionality you see in NI MAX,


These functions will not allow me to make a scale or channel for a remote system, from a host machine.  Yes I can write custom software that runs on the host, and I can write custom software that runs on the remote system, but MAX already has this functionality.  I mentioned this earlier when I said:

 

@Hooovahh wrote:

I can write code that sits on the RT system to edit the scale, but it is clear that MAX is able to edit these scales on the remote system, and I'd like to leverage DAQmx to edit these scales from within my host application.


I want to make and edit DAQmx settings, on a remote system, from LabVIEW, on my host system, without writing any custom code for my remote system, just like how MAX does it.  Or rephrased:

 

How does MAX edit scales on remote systems?  How can I do the same?  How does MAX open test panels to remote hardware?  How can I do the same?

0 Kudos
Message 5 of 7
(3,348 Views)

Hooovahh,

 

Apologies!  I think I realize now what you are asking.  Maybe someone more knowledgable than me knows of a way, but I've done digging and haven't been able to find anything for the Host application changing the RT's tasks/channels/scales.  Only thing I can come up with is programmatically doing it on Host, sending the setup as a string to the RT and having it take that string and edit them on the RT itself.

 

Hopefully someone can come up with something better!

 

-Bear

Regards,

Ben Johnson
ʕง•ᴥ•ʔง
0 Kudos
Message 6 of 7
(3,332 Views)

I hate bumping a thread, but I got the automated email from NI asking if my issue here was solved and it really isn't.  Is there someone at the DAQmx, MAX, or DAQ Assistant, R&D team that can point me in the right direction.  Clearly this functionality does exist, but isn't being exposed.

0 Kudos
Message 7 of 7
(3,282 Views)