Multifunction DAQ

Showing results for 
Search instead for 
Did you mean: 

Does built-in cjc supported by daqmx 7.4?


I am using pci6251 and 6221 with bnc2120 accessory with built-in cold junction compensation enabled in MAX device properties.
Some time ago we have used DAQmx 7.3 and everything was fine. After upgrade to DAQmx 7.4 in MAX it is possible to select built-in cjc source, but trying test the task results in error like: "property value unsupported", supported only "channel" and "constant".
Is that intended behaviour? If so, why the built-in is in the list of the possible values in MAX?

I understand that it is easy to setup a new channel for CJC only (with voltage*100 degrees C linear scale), but is it possble to use just builtin value of the CJC source with this driver release?
Thanks in advance!
0 Kudos
Message 1 of 8
Hello Baturin. This looks like it might be an issue with NI-DAQ 7.4. If you need to use the CJC functionality of the BNC 2120 you might want to use NI-DAQ 7.3. Have a great day!

Marni S.
0 Kudos
Message 2 of 8
Of course, it is possible to use 7.3 but there are some nice features in 7.4 like simulated devices 🙂
0 Kudos
Message 3 of 8
Hello Baturin. To use the Built In functionality of the BNC 2120 you will need to create a global channel for the CJC and add that to your task with "channel" as your CJC source. Do the following:

1. Create a voltage global channel. Set the scale as m = 100 and b = 0 for celcius or m = 180 and b = 32 for fahrenheit.

2. Create a temperature task. Set the CJC Source to channel and specify the global channel above.

This way you can use the simulated devices. Please let me know if you have any questions. Have a great day!

Marni S.
National Instruments
0 Kudos
Message 4 of 8
Thank you!

I already have done it and everything is fine. I just wonder why builtin option is existing in the list, but not working.

Ivan Baturin
0 Kudos
Message 5 of 8
I am interested to build my own cold junction but I don't understand your explanation :
"Create a voltage global channel. Set the scale as m = 100 and b = 0 for celcius "...
I try to do this and I obtain a negative temperature ...
For information I connect a thermocouple on the channel I use for the CJC
Thank you for your answer.
0 Kudos
Message 6 of 8

Roughly speaking, CJC channel should contain the temperature of the place where thermocouple wires are connected to copper. Various way exist to do it. NI uses the semiconductor temperature sensor which voltage output is 10 mV/oC (it is practically standard among such sensors). (It is very easy and cheap to by yourself such thing if you don't have).
So, you need two channels - one for measuring the thermocouple voltage and second for the sensor output. Then you need to convert both to degrees C and sum them (i.e. sum the thermocouple temperature referenced to cold junction temperature and cold junction temperature itself).
Create one channel on which you will measure temperature of cold junction, add scale to it (offset=0, scale=100) to have results in oC.
Create second channel on which the thermocouple will be connected (sure that it is another channel than CJC :-). Specify the first channel name in the "CJC Channel". It should work.

If your are using the BNC2120 with builtin junction compensation sensor and thermocouple connector, be sure to set the corresponding switches to measure temperature and CJC on the block instead of the BNC.

Hope this will help.
If not, try to search through NI website. There are some appnotes or knowledge base articles describing CJC and thermocouples in details.
0 Kudos
Message 7 of 8
Thank you for your answer, I will buy the semiconductor temperature sensor to make my CJC and to replace my thermocouple :).
0 Kudos
Message 8 of 8