Temperature Control Program
Page by: Andrew Sampino. Logbook
The temperature control program is a LabView VI, which checks and regulates the temperature of the Fiber Heating Box. Once the program is initiated it will turn on the hotplate in the heating box and regulate the temperature until either the box gets dangerously hot or a user indicated stop condition has been met. The program outputs commands to a netbooter, which is the hotplate's voltage source, and reads inputs from thermistors through a DAQ.
The front panel displays a waveform chart, which will display each temperature measurement, digital temperature and time displays, and various controls to set parameters.
Instructions for a Heating Run
Before setting the program to run as desired, the physical setup must first be appropriately configured. To set the hotplate temperature, plug it into a regular wall outlet and turn the knob until the temperature display reads 140 degrees Celsius, then unplug it. Next, plug the hotplate into outlet one on the correct netbooter (usually the top netbooter) as the state of this outlet will be controlled by the program. Finally, plug all fans in and look to see that they are actually spinning.
In order to perform a heating run there are a number of parameters, which can be found on the front panel that must be set properly. The conditions for a normal run are listed below:
- Samples/Channel: 1 is sufficient here, increase for more data points.
- Rate: 1 is sufficient here, increase for more data points.
- Sample Mode: FiniteSamples
- Save your file?: Pressed if you want to save the run, unpressed if you don't.
- STOP: Must be unpressed at program start.
- Control Manually: Automatic
- Target Temperature: 175
- Timed Heater Turn off: any desired time. (in seconds)
- Start Timer: On to start timer when the program starts, off otherwise. *Can turn this on at any point during run.
Once all of these are set appropriately the run can begin. Pressing the LabView Run button on the tool bar will initiate all relevant processes and the hotplate should turn on within the first twenty seconds assuming the interior box temperature is less than 175 degrees Fahrenheit. When the netbooter is on and supplying voltage to the hotplate an indicator light on the front of the netbooter under "Power Outlet Status 1" will be on. If the program needs to be stopped in the middle of a run, the "STOP" button must be pressed; as a general rule do not end the program with the Abort Execution Labview button in the tool bar while the netbooter indicator light for outlet one is still on. If this does happen by accident, the program can be started again and the "STOP" button pressed while it is running. [ADD INSTACAL INSTRUCTIONS]
Note that the program will shut the hotplate off for the rest of the run if the highest measured temperature passes 190 degrees Fahrenheit at any time.
Program logic
The overarching logic behind the program is to turn the hotplate off when the box is too hot and on when it is too cold. All of the code is contained in a sequence structure consisting of two frames. The first frame contains nearly all of the code and is what drives all operating functions, the second frame contains a sub VI, which shuts off the netbooter's outlet one (and therefore the hotplate). A while loop contains all of the code in the first frame, which can be split up into four major groups of functional purpose: Initialization of DAQ interface, temperature conversion and storage, temperature regulation, and stop conditions.
In the initialization of the DAQ (data acquisition unit) section there is only one unique sequence of code, which is repeated six times, once for each analog input connected to a thermistor. The sequence begins (from left to right) with the specification of the desired analog channel; a drop down menu shows all available options. Then, the minimum and maximum voltages are set to -5V and 5V in accordance with DAQ parameters. Next, the sample rate and samples per channels are read from the controls on the front panel. The function "Start task" then allocates memory for interaction with the DAQ, which is used in the following function "Read". "Read" stores the voltage signals from the DAQ and outputs them to a conversion equation, which is part of the temperature conversion and storage section. Finally, the sequence ends by clearing allocated memory with "Clear task". There is also error propagation from the voltage setting through "Clear task" to a display, but this has no effect on the functionality of the sequence.
The initialization of the DAQ section leads directly into the temperature conversion and storage. Here the voltage readings are converted to temperature in Fahrenheit with an equation block. The temperature values are then all merged into one wire connected to a waveform chart, which displays the temperatures separately on a line graph on the front panel. The combined signals are also sent to a user defined VI, which stores the highest temperature out of all the signals in a variable called "Highest Temperature". Each individual temperature value in fahrenheit is converted to celsius and displayed (in both fahrenheit and celsius) on the front panel. DESCRIBE SAVE FILE CASE STRUCTURE.
The temperature regulation section serves to keep the box at a prescribed temperature.