LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple measurements using NI9207 and NI9217 RTD module

Hi All,

 

Any help with the following query would be greatly appreciated. I am new to LabVIEW and have a program that has been developed by a previous LabVIEW programmer and I have the task of using the program, no contact can be made with them. All in all the program is used to take in various measurements, perform a variety of calculations and automatically plot graphs and document the evidence from a test.

 

The problem I am having appears to be in the reading of the measurment signals and my misunderstanding in the programming.

 

The program would have been fine in it's initial configuration but have since had to change the program to take in both current and voltage readings whereas before it was just current readings. This is where my problems seem to begin, now I have been looking at some similar posts but still cannot seem to link to my program a solution. I have attached the VI where I am having the problem, this is the VI where I should be taking in the readings from the DAQ device and it doesn't seem to be even getting to the stage of taking in any readings. When run the 'name to assign' and 'physical channels' definitions seem to skip to #11, is this an issue with my thought process in taking in the readings?

 

If there is anything else you may need to know to help or anything you feel I have missed out please ask.

 

Thanks in advacne for your help.

0 Kudos
Message 1 of 4
(2,821 Views)

Should have mentioned that the problem is in the 'Measured Data' case of the outer case structure.

0 Kudos
Message 2 of 4
(2,817 Views)

Hi Steven,

 

I hope you are well. I wanted to send a couple of suggestions if you are still having issues with this problem.

I can see there may be some potential problems due to the way to the physical channels are selected. Initially, two arrays of 11 elements are wired into index array, one of the name of the input (e.g. cDAQ1Mod2/ai0), and the second for the name of the input (e.g. Temperature). Both index array functions are used to pull out the 9th element (cDAQ1Mod1/ai5) and (Frequency) which is fed into all three DAQmx create channel.

 

Each DAQmx create channel requires its own channel.

 

To read more about setting up multiple channels on a single DAQ task, you may find this KB useful:

 

Using Different Types of DAQmx Global Channels in the Same Task

 

Looking through the code, there appears to be some obsolete code that does not actually influence the program. For example, the case structure placed in the first while loop will always execute the True case as the first call is placed on the outside of the while loop and is only read in the first instance.

The code also does not stop the task as the second case structure will always execute the false case due to the False constant wired into the case selector, and hence the task is not stopped.

I wanted to send you some tutorials which you may find useful.

 

http://www.ni.com/white-paper/5467/en/

http://www.ni.com/white-paper/5468/en/

http://www.ni.com/white-paper/2744/en/

 

I look forward to hearing how you get on,

 

Kind Regards,

__________________________
Aidan H

Applications Engineer
National Instruments UK & Ireland
0 Kudos
Message 3 of 4
(2,698 Views)

Hi Aiden,

 

Hope all is well, thanks for your help. I have basically re-done that whole section of code based on the links you sent me which I have found interesting. Thanks again.

 

I can put the section of code up to review if you wish as I know there is still sections of the code that could be better, although I have still yet to test the full program again, currently awaiting another test to go ahead.

 

Cheers Steven.

0 Kudos
Message 4 of 4
(2,580 Views)