Air Heater Control System
Air Heater Control System
Faculty of Technology, Postboks 203, Kjlnes ring 56, N-3901 Porsgrunn, Norway. Tel: +47 35 57 50 00 Fax: +47 35 57 54 01
Table of Contents
Table of Contents .....................................................................................................................................ii
1
Introduction .................................................................................................................................... 4
Introduction ............................................................................................................................. 5
2.2
LabVIEW .................................................................................................................................. 6
Task 10:
Task 11:
Control System.............................................................................................................................. 21
Task 12:
iii
Task 13:
Task 14:
Task 15:
1 Introduction
In this project we will design and implement a control system for a small scale industrial process,
called Air Heater.
Below we see a sketch of the final system we will end up with. The control system shall be
implemented in LabVIEW.
Before we can start using the real air heater process, we need to create a simulator of the system.
We start by creating a mathematical model of the system which we will implement in the simulator.
We will also analyze and design the control system using MathScript. We will find the transfer
function for the process and for the feedback system (including PID controller), which we will use in
the design and analysis phase.
Based on frequency response and stability analysis, we will find proper PID parameters for the
system.
When we have found proper PID parameters, we will simulate the system and check if the
performance is as expected.
Finally, we will implement our control system for the real Air Heater process to verify the
performance and stability of the system.
]}
Where:
Heater: The air is heated by an electrical heater. The supplied power is controlled by an external
voltage signal in the range 0 - 5 V (min power, max power).
Temperature sensors: Two Pt100 temperature elements are available (some of the Air Heaters have
only one). You can use Temperature sensor 1 in this assignment. The range is 1 - 5 V, and this voltage
range corresponds to the temperature range 20 - 50oC (with a linear relation).
( ) for the Air Heater process (Pen & Paper) based on the given
differential equation.
Tip! Use Laplace transformation on the differential equation for the Air Heater and find the transfer
function from ( ) to
( ).
]}
The Air Heater process is a 1.order process with time-delay, so a transfer function on the following
general form should be expected:
( )
( )
( )
[End of Task]
2.3 LabVIEW
In the assignment we will use a USB-6008 DAQ unit in order to read data from the process ( ) to the
PC, and write data ( ) from the PC to the process.
DAQ Assistant:
In order to communicate with the USB-6008 DAQ device within LabVIEW, we can use the DAQ
Assistant. Note! The NI-DAQmx software needs to be installed.
The DAQ Assistant is located from the Functions palette: Measurement I/O NI-DAQmx DAQ
Assist.
Analog In:
Analog Out:
Task 2:
The Air Heater processes available are slightly different, so we need to do some practical
experiments in order to find the unknown model parameters (
) for your Air Heater process.
To do that we need the following equipment:
using LabVIEW.
The procedure is as follows:
Based on the transfer function found in the previous task and by plotting the step response for the
temperature
, we can find the unknown model parameters (
) directly from the plot as
illustrated above.
[End of Task]
Implement the transfer function model in MathScript and then perform a Step Response.
Implement the transfer function using the sys_order1() function or/and a Pade approximation (e.g.,
use the built-in pade() function together with the tf() function).
Use the model parameters (
You should also find the Poles and the Zeros for the transfer function in MathScript.
Do you get the same results here compared to the previous task?
Compare and discuss the results.
[End of Task]
Tip! Draw a block diagram of the system using pen and paper before you start to implement the
system in LabVIEW.
Simulate the model and show the output temperature
signal .
10
3 Frequency Response
The frequency response of a system is a frequency dependent function which expresses how a
sinusoidal signal of a given frequency on the system input is transferred through the system. Each
frequency component is a sinusoidal signal having certain amplitude and a certain frequency.
The frequency response is an important tool for analysis and design of signal filters and for analysis
and design of control systems. The frequency response can be found experimentally or from a
transfer function model.
The frequency response of a system is defined as the steady-state response of the system to a
sinusoidal input signal. When the system is in steady-state, it differs from the input signal only in
amplitude/gain (A) and phase lag ( ).
]}
In a previous task you have found the transfer function for the Air Heater on the following form:
( )
( )
( )
Use values for
Plot the Frequency Response in a Bode plot (use the bode() function in MathScript). What is the
break frequency?
Find
( ) and
( ) for the frequencies given below using MathScript code (use the bode()
function).
[
( )[
( )
11
12
Frequency Response
( ) and
( ) and
( )[
] and
( ).
( ) for the same frequencies above using the mathematical expressions for
].
Use the semilogx() function in order to plot the Bode diagram based on these values.
Compare and discuss the results.
[End of Task]
( )
( )
We will use MathScript to find the Frequency Response of the model. You may e.g., use the lsim()
function in MathScript.
The input signal is given by:
( )
The steady-state output signal will then be:
( )
13
Frequency Response
and
and
using the
and
and
and
for the
[]
14
Frequency Response
Compare (with results from previous tasks) and discuss the results.
[End of Task]
Use the Skogestads method in order to find proper PI parameters for the Air Heater system
based on the model of the system.
Skogestads method:
In this task we assume the following process:
( )
Use values for
( )
( )
The Skogestads method assumes you apply a step on the input ( ) and then observe the response
and the output ( ), as shown below:
If we have a model of the system (which we have in our case), we can use the following Skogestads
formulas for finding the PI(D) parameters directly:
15
16
and
For more details about the Skogestads method, please read this article: Model-based PID tuning
with Skogestads method.
[End of Task]
( )
( )
17
PI controller:
The PI controller is defined as:
( )
( )
( )
and
( )) in a Bode plot.
( ) using MathScript.
( )
( ) using MathScript.
( )
( )
( )
( )
( )
( ) using MathScript.
18
( )
( )
( )
( )
[End of Task]
transfer function ( ) in the same Bode diagram. Use, e.g., the bodemag() function in MathScript
(only the gain diagram is of interest in this case, not the phase diagram).
Use the values for
and
Task 10:
Stability Analysis
system ( ( )) from the Bode plot. Use the bode() function in MathScript and find the values from the
Bode plot as illustrated below:
19
Plot also Bode diagram where the crossover-frequencies, GM and PM are illustrated. Tip! Use the
margin() function in MathScript.
( ),
( ) directly.
[End of Task]
Task 11:
Plot the time response for the tracking function using, e.g., use the step() function in MathScript
for all these 3 categories. How can we use the step response to determine the stability of the
system?
Find
( ) and
and
to determine the
Find and plot the poles and zeros for the system for all the 3 categories mentioned above. How
can we use the poles to determine the stability of the system?
Simulation, Control and Analysis of an Air Heater
20
( ) in a Bode diagram for the system for all the 3 categories mentioned above.
5 Control System
Here we will create our own discrete low-pass filter and our own discrete PI controller. We will test
the low-pass filter and the discrete controller on a model of the Air Heater system created in a
previous task.
This is a typical block diagram of the system:
Task 12:
Create a discrete low-pass filter in LabVIEW using the Formula Node in LabVIEW. Create a SubVI
of the code. The user needs to be able to set the time constant of the filter
from the outside, i.e.,
it should be an input to the SubVI. The simulation Time-step
needs also to be set from the
outside.
Use the Euler Backward method:
21
22
Control System
Perform simulations to make sure the filter works as expected. Explain/Show how you do this. Why
do we use a low-pass filter?
[End of Task]
Task 13:
Discrete PI Controller
( )
( )
( )
Create a discrete PI controller in LabVIEW using the Formula Node. Create a SubVI of the code.
- Typical Inputs to the controller:
- Typical Outputs from the controller:
Use the Euler Backward method:
Task 14:
Implement a temperature control system of the Air Heater in LabVIEW using the discrete PI
controller and a discrete Low-pass filter created in previous tasks. Test the system with the PI
parameters found in a previous task. Tune the parameters if necessary. Document and discuss the
results. Use the mathematical model of the Air Heater system created in a previous task in the
simulations.
The implementation should be according to the following specifications:
23
Control System
[End of Task]
Task 15:
Now we are going to test our control system on the real Air Heater process.
For this task we will need the real Air Heater process and an USB-6008 DAQ device:
Air Heater Process
Note! You need to install the NI-DAQ-mx driver that makes it possible to use the USB-6008 device
together with LabVIEW.
Set up hardware and software according to the sketch below:
24
Control System
Extend your application from the previous task so that you can switch between the simulator and the
real process.
Use the same PI parameters that you used in the previous task. Test and document the performance
of the control system (both for changes in the set point and for disturbances).
Make sure to use your low-pass measurement filter created in a previous task.
End of Task]
E-mail: [email protected]
Blog: http://home.hit.no/~hansha/