Design and Implementation of A Temperature Control System
Design and Implementation of A Temperature Control System
Abstract – This paper, which features an automatic The second chapter is called "Definition,
temperature control system, demonstrates the utility of characterization of the automatic control system and
the controller where no high precision is required, the control algorithm used in the process" and it
allowing variations between two fixed limits. The describes the elements used in the process, the type
temperature control is made in an enclosure made of and functioning of the controller and its actuator, as
plexiglas plates thermally insulated with polystyrene to well as the classification of the measuring devices.
keep the temperature constant over a longer period of
time using the Peltier element for the cooling process In the third chapter, "Virtual Instrumentation and
and thermal resistance for heating. Elements have been Data Acquisition Systems", there are presented both
purchased based on their price, their efficiency in the LabVIEW development platform and its use in
relation to enclosure dimensions, thermal power, power order to build the application and the Arduino IDE
and supply voltage. The control system also has a user programming environment.
interface where all process parameters can be observed
and modified. This is done using the serial connection The last chapter, "The proposed application for
via USB cable within the LabVIEW development simulating the automatic temperature control system
platform. using the LabVIEW and Arduino programming
languages" aims to characterize each element used for
Keywords-component; automatic control system, system design, process data, and experimental results
bidirectional controller, on off actuator, labview, arduino with screenshots during system testing.
-controller (R) - generates commands to achieve The width of the hysteresis can be easily changed
the control objective (Arduino UNO) from the front panel of LabVIEW as shown in the next
chapter.
-actuators (EE) - apply the command received
from the controller (Peltier element with fan pallet III. VIRTUAL INSTRUMENTATION (VI) AND
parallel-linked and thermal resistance)
DATA ACQUISTION SYSTEMS
Both actuators are controlled via 2 relays.
A. LabView environment
The transducer used in this project is suitable to
work with Arduino UNO. LabVIEW is a graphical programming language
that allows application development using icons.
The automatic controller is usually an electronic Different from the textual program languages, where
device, having the role of processing the signal using a the instructions are the ones that determine the
control algorithm. This algorithm is chosen according execution of the program, LabVIEW uses in their
to the technological characteristics or the required place the data stream aided by a suitable graphical
performance. The control objective is maintaining the presentation [8].
current state of the controlled system as close to the
desired state. On the other hand, like the other programming
languages, LabVIEW contains extensive libraries of
The controller used to make the automatic functions and subroutines that can be used in many
temperature control system is an on off controller. applications, such as data acquisition, processing,
They are often used in control systems where high analysis, presentation and storage. With the help of
precision for the controlled variable is not required, acquisition equipment for measuring various physical
allowing variations between two fixed limits. quantities, as well as control of certain processes [8].
The accuracy of the SRA with on off controller is In LabVIEW, a VI is constituted by the following
higher if the width of the hysteresis band is smaller, three components:
but an excessive reduction of this leads to a high
frequency of switching with negative influences on the - the front panel, which acts as a user interface;
reliability of the controller [2]. - the block diagram, which graphically contains
The on off controller generates a command signal the source codes that perform the VI
that can have only two distinct values, conventionally operation;
denoted by 0 and 1. These controllers are nonlinear - the icon and the connector panel, through
control elements, which have the hysteresis relay static which the VI is identified and the
characteristic [3]. interconnection within the other VI is ensured,
If the control signal is 0, and the error rises to h/2, constitutes a subVI [8].
then the command becomes 1, and if the command
Design and Implementation of a Temperature Control System 7
LabView has many tools that ensure easy Through these, the interactive user interface is
configuration of a certain type of VI. It includes provided, the controls simulate the inputs to the VI and
hundreds of examples of VIs corresponding to variants inputs data into the block diagram, and the indicators
of application domains, which the user can use and simulate the VI outputs and display the data provided
incorporate into VIs of greater complexity for the by the block diagram resulting from the execution of
intended purpose, or modify them to adapt them to the the program [8].
particularities of the application. [8]
2) Block diagram
The window showing the block diagram
corresponding to the controlled process, the front
panel of which was previously displayed, is shown in
figure 7.
1) Front panel
It is considered the example of the system
presented with LabVIEW environment. Figure 5
shows the window displaying the front panel of the
controlled process, which consists of three analogue
temperature indicators, room temperature LEDs
(indicating the status of all the ON / OFF elements), Figure 7. Block diagram of the controlled process.
the system response in graphical form and manual
start/stop buttons of the main actuators. These buttons The block diagram comprises, in the workspace,
have been designed to interfere with the system or to the graphical representation of the functions
change the temperature in case of an emergency state corresponding to the objects on the front panel, and
without taking into account algorithms. illustrates how the data stream and its processing
operations circulate. Within the block diagram, the
front panel objects appear as terminals, which
constitute input and output ports for exchanging
information with the front panel [8].
The objects in the block diagram, which highlight
the operations performed by the VI program, are
called nodes. Data transfer between objects in the
block diagram is provided by connection links
between them having different colors, styles, and
thicknesses, depending on the types of data they are
driving. Any connection starts from a single data
Figure 5. The front panel of the adjustment process.
source, but can be connected to one or more receivers.
Also in the block diagram are so-called structures,
The use of the system's response in time in the which are graphic representations of loops and control
form of graphically highlights the system behaviour in instructions from textual programming languages.
a more suggestive way. Viewing the real-time output In the figure above, the stop button in the front
response is accomplished by connecting the controller panel corresponds to a "or" logic gate, which has
to the PC via serial communication. This allows both inputs, the TF input terminal having the Stop label and
parameter values to be viewed and modified. On the the system error. The two figures, the front panel and
graphic one can see the different parameters of the the block diagram were presented separately to
system, such as: the upper and lower limit of the highlight the objects in the two workspaces.
system (set by the operator), the adjusted size, and the
command of each actuator (figure 6).
8 Mihai Tudor, Sanda Florentina Mihalache
The response of on-off controller can be observed IV. THE PROPOSED APPLICATION FOR SIMULATING
by following the temperature evolution according to THE AUTOMATIC TEMPERATURE CONTROL SYSTEM
the set limits and control of the actuators. USING THE LABVIEW AND ARDUINO PROGRAMMING
Through the interface components placed in the LANGUAGES
front panel, it is possible to view graphic
representations. The indicators are given numerical A. Physical components
values necessary for the graphical representation, In the example shown, in order to keep the room
following the processing in the block diagram. temperature as stable as possible, with small variations
in the presence of various disturbances (e.g. ambient
The controls are used in place of the indicators if temperature) - the following elements are used: Peltier
the values required to achieve the graphical element, electrical resistance, fan pallet engine,
representation are received as input parameters for temperature sensor, Arduino UNO development
current VI, used as a subroutine (under VI). platform, relay module,
The interface components, dedicated to graphic 1) • Peltier element
representations, are divided into two general The Peltier effect consists in the heat release or
categories: absorption at the junction between two different
• diagram (chart); conductors, whereby an electric current flows through
it. It has the role of cooling the enclosure by the effect
• graph. outlined above, functioning as a small heat pump.
Charts are graphical representations of a size that Applying a low voltage to the terminals of such a
changes over a period of time. Charts represent the device, we can extract the heat from a junction and
variation of two sizes: y depending on x. In the system transfer it to the other junction based on the Peltier
presented for the user interface were used 3 graphs for effect. Referring to the thermoelectric module (figure
temperatures and humidity. 9), one of the faces of the module is cooled while the
In the front panel there (first page) is only one opposite face is warming up. The heat flow through
graph showing the temperature evolution over time. In the module can be easily changed by simply reversing
page 2, there are two other graphs, which illustrate the sense of the supply current [7].
relative humidity depending on time and current
temperature depending on time.
C. Arduino platform
Arduino(figure 8) is one of the simplest to use
platforms with microcontroller. We can think of it as a
minicalculator (it has the power of computing a
regular computer 15 years ago), being able to collect
and react to environmental information.
It has 14 digital inputs / outputs and 6 analog
inputs. Of the 14 digital pins on the board, 6 can also
be used as PWM (Pulse-Width Modulation) outputs
and the 6 analog inputs can also be used as digital pins Figure 9. The deployed diagram of a Peltier cooling module [6].
[5].
The module (figure 10) is powered by a voltage of
12V, consuming a current of 3.8A. The maximum
temperature difference between the cold and the hot
part is 60 °C, the refrigeration power is 60 W and the
module dimensions are: 40 x 40 x 3.8 mm. The use of
this module it is justified by its main benefits: no
moving parts, no noise, no maintenance and its
uninterrupted operation can reach up to 30 years
2) Electrical resistance
The heating system is made of a 220V heat-
resistant heat exchanger with a power of 75W, which
provides heating when the room temperature is below
the set limit
3) Fan Pallet Engine
In order to save electricity, an engine is used which
simultaneously engages two fan pallets through a
single shaft.
The one on the outside (hot side) is designed to
keep the temperature as low as possible so that the
temperature on the inner side (cold side) is as small as Figure 12. Arduino UNO Development Platform.
possible to achieve the quickest cooling, and more
efficient. The one on the inside has the function of 6) Relay module
venting cold air inside the enclosure to speed up the The relay module (figure 13) is an automatic
cooling process. device that allows switching of an electrical circuit
4) Temperature Sensor with a command signal.
The DHT11 temperature sensor (figure 11) is a
component used in the process, which senses the
temperature level in the environment. This element is
pre-calibrated and the output is provided as a digital
signal. It connects to the programmed Arduino
microcontroller. It measures the temperature between
0°C and 60°C. The DHT11 temperature and humidity
sensor is suitable to our application, providing good
precision, simplicity in use, and small size at a low
price. It operates at a voltage between 3.3V - 5V, a Figure 13. Relay module [8].
maximum current of 2.5mA and does not work below
0°C. 7) Connection wires, power supply, radiators,
breadboard, enclosure
The components that make up the automatic
temperature control system were connected by means
of male-father and father-to-male wires, as well as by
a breadboard. The other sources are supplied at 12V
with the 12V / 5A stabilizer and the relay.
The Peltier element is located between the two
radiators in the enclosure. The panel is made of
Figure 11. DHT11 sensor [7].
Plexiglas and has a length of 30cm, a width of 20cm
and a height of 15cm.
5) Arduino UNO Development Platform
The development platform (figure 12) used to B. Technical data
build the system is accessible, open-source, easy to use The closing of the contacts corresponding to the
both in hardware and relatively small software. All buzzer and the secondary fan is manually reset by
devices used in the project are linked to this placing the button corresponding to the actuator in the
microcontroller: READY state (figure 14 and 15).
• the digital sensor 2 is connected to the Starting the main actuators of the process is done
temperature sensor; manually by pressing the button corresponding to the
element to be started.
• the digital pointer 3 is connected to the buzzer;
• the cooler for outdoor cooler is connected to
the digital pin 4;
• the digital pin 6 is connected to the Peltier
element and a blue LED;
• the thermal resistance and red LED are
connected to the digital terminal 7;
• a green LED is connected to the digital pin 8.
b) Example 2 (Figure 17): that temperature after 2 minutes and 48 seconds after
Starting temperature: 31 °C; the Peltier element has started manually.
Exterior radiator temperature before start: 32.4 °C; The outside radiator temperature after reaching the
temperature of 27 °C is 36.2 °C, at 26 °C the
Ambient temperature: 28.2 °C; temperature on the radiator reaches 40.4 °C and when
the room temperature stabilizes at 25 °C, value of 43.6
Setpoint temperature: 26 °C;
°C on the outside heat sink.
Heat exchanger temperature at 26 °C: 35.1 °C;
d) Example 4 (Figure 19):
Cooling time: 03:02 minutes. Starting temperature: 30 °C;
Exterior radiator temperature before start: 31.8 °C;
Ambient temperature: 28 °C;
Setpoint temperature: 25 °C;
External radiator temperature: 47.1 °C;
Cooling time: 04:00 minutes.