LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Comparison of a previous thermocouple signal output to the current value

Note: I am self taught in LabView VI programming, please explain any ideas with basic functions.  : )

My goal is this: Hold a temperature steady over a specified length of time.  With my setup there is a certain lag between turning on the heating element and seeing the temperature of my solution increase.  Currently the heating element turns on if the temperature of the solution drops under a value, then cuts off when it rises above that same value.  Problem: because of the lag, even when the heating element is turned off the temperature continues to rise 3 or 4 degrees Celsius until plateauing.

Programming Idea:  Instead of turning the heat on and off at a certain temperature, I want to turn on the heating element when the temperature drops under a certain value, then turn it off AS SOON AS the temperature shows any sign of increasing (current temperature > previous temperature).  I wanted to know if there was a easier way to program this other than synchronizing my data acquisition time with a loop to keep the previous value (implementing this idea hurts my head).  Other aspects of my program are time sensitive and rely on rapid temperature readings, or are already in timed loops.  If there is no quick easy way to do this, guidance to an example or tutorial would be much appreciated.

I am using a CompactDaq with the Thermocouple Module for temperature reading.  My setup also uses a 120mm Fan for cooling and a 120V heating strip for heating, all operated through the Daq device.

Thanks!






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

do you have the PID toolkit or are familar with PID/ control theory?  To hole previous values, shift registers are the way to go.

 

Paul

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
0 Kudos
Message 2 of 4
(2,830 Views)
Anfu, NI makes a PID Control Toolset available for purchase and download on the website.  I believe it is 50 USD.  It will have PID control VIs (http://en.wikipedia.org/wiki/PID_control) that will be able to acomplish what you need much more effeciently with a little tuning.  The main PID VI will take in a setpoint and process variable, along with a cluster of parameters for P, I, and D values.  It comes with other VIs that help with tuning, creating a setpoint profile, etc.

If purchasing this is not an option, you might look into using a collector instead of an explicit loop to do what you asked about.  I don't have much time to consider the question in detail right now.
0 Kudos
Message 3 of 4
(2,828 Views)
If you do not have the PID toolkit, here is a link to a simple PID VI you may be able to modify to suit your needs.

Paul
0 Kudos
Message 4 of 4
(2,822 Views)