04-24-2025 06:25 AM
I am measuring the temperature with E type thermocouple. I'm using NI USB DAQ6216 where CJC is provided by NI-USB TC01. I'm also controlling the temperature by implementing a PID control using DAQ 6216 to output 90 kHz sine wave to the heating element. I'm also attaching the VI.
Question 1: I see some weird jumps in temperature measurements. Please see the picture attached.
Question 2: The DAQ memory gets full and it throws an error and stops controlling the output voltage. Whatever output voltage it is sending, it stays untill we clicked continue or stop. How to make the output voltage to zero if any error occurs and how to avoid this buffer error?
Much thanks in anticipation.
04-24-2025 07:36 AM - edited 04-24-2025 07:37 AM
Hi qualiakbar,
@qhaliakbar wrote:
I am measuring the temperature with E type thermocouple.
I'm using NI USB DAQ6216 where CJC is provided by NI-USB TC01.
I'm also controlling the temperature by implementing a PID control using DAQ 6216 to output 90 kHz sine wave to the heating element.
@qhaliakbar wrote:
Question 1: I see some weird jumps in temperature measurements. Please see the picture attached.
What is the accuracy of your measurement setup? We are talking about "jumps" of 60mK! (I guess you use a °C scale in your graph as you forgot to write a unit on your Y axis label.)
For a TC-E the relation is ~65µV/K at 70°C - or ~4µV/60mK: does your equipment allow to measure with an accuracy of less than 4µV?
@qhaliakbar wrote:
Question 2: The DAQ memory gets full and it throws an error and stops controlling the output voltage. Whatever output voltage it is sending, it stays untill we clicked continue or stop. How to make the output voltage to zero if any error occurs and how to avoid this buffer error?
There are some weird things in your VI:
I recommend (again) to rebuild the VI with using only plain DAQmx functions instead of the DAQAssistents. Task creation belongs before the loop, task cleanup after the loop. Inside the loop you only need to read the TC and output the AO array!