Escolar Documentos
Profissional Documentos
Cultura Documentos
INTRODUCTION TO PLC
1. Programmable Logic Controller
A Programmable Logic Controller, or PLC for short, is simply a special computer device used for industrial control systems. They are used in many industries such as oil refineries, manufacturing lines, conveyor systems and so on. Where ever there is a need to control devices the PLC provides a flexible way to "software" the components together. The basic units have a CPU (a computer processor) that is dedicated to run one program that monitors a series of different inputs and logically manipulates the outputs for the desired control. They are meant to be very flexible in how they can be programmed while also providing the advantages of high reliability (no program crashes or mechanical failures), compact and economical over traditional control systems.
This is a rather simple example but in a larger system with many switches and lights (and a host of other devices) all interacting with each other this kind of flexibility is not only nice but imperative. Hopefully a light bulb has now turned on over your head.
3. WORKING OF PLC
A programmable logic controller is a specialized computer used to control machines and processes. It therefore shares common terms with typical PCs like central processing unit, memory, software and communications. Unlike a personal computer though the PLC is designed to survive in a rugged industrial atmosphere and to be very flexible in how it interfaces with inputs and outputs to the real world. The components that make a PLC work can be divided into three core areas.
The power supply and rack The central processing unit (CPU) The input/output (I/O) section
PLCs come in many shapes and sizes. They can be so small as to fit in your shirt pocket while more involved controls systems require large PLC racks. Smaller PLCs (a.k.a. bricks) are typically designed with fixed I/O points. For our consideration, well look at the more modular rack based systems. Its called modular because the rack can accept many different types of I/O modules that simply slide into the rack and plug in.
The rack is the component that holds everything together. Depending on the needs of the control system it can be ordered in different sizes to hold more modules. Like a human spine the rack has a backplane at the rear which allows the cards to communicate with the CPU. The power supply plugs into the rack as well and supplies a regulated DC power to other modules that plug into the rack. The most popular power supplies work with 120 VAC or 24 VDC sources.
programming mode it accepts the downloaded logic from a PC. The CPU is then placed in run mode so that it can execute the program and operate the process.
Since a PLC is a dedicated controller it will only process this one program over and over again. One cycle through the program is called a scan time and involves reading the inputs from the other modules, executing the logic based on these inputs and then updated the outputs accordingly. The scan time happens very quickly (in the range of 1/1000th of a second). The memory in the CPU stores the program while also holding the status of the I/O and providing a means to store values.
There are many different kinds of I/O cards which serve to condition the type of input or output so the CPU can use it for its logic. It's simply a matter of determining what inputs and outputs are needed, filling the rack with the appropriate cards and then addressing them correctly in the CPUs program.
3.3.1 Inputs
Input devices can consist of digital or analog devices. A digital input card handles discrete devices which give a signal that is either on or off such as a pushbutton, limit switch, sensors or selector switches. An analog input card converts a voltage or current (e.g. a signal that can be anywhere from 0 to 20mA) into a digitally equivalent number that can be understood by the CPU. Examples of analog devices are pressure transducers, flow meters and thermocouples for temperature readings
3.3.2 Outputs
Output devices can also consist of digital or analog types. A digital output card either turns a device on or off such as lights, LEDs, small motors, and relays. An analog output card will convert a digital number sent by the CPU to its real world voltage or current. Typical outputs signals can range from 0-10 VDC or 4-20mA and are used to drive mass flow controllers, pressure regulators and position controls.
4. PLC PROGRAMMING
4.1 Introduction to Ladder Logic
Ladder logic uses graphic symbols similar to relay schematic circuit diagrams. Ladder diagram consists of two vertical lines representing the power rails. Circuits are connected as horizontal lines between these two verticals.
The completed program is downloaded from the PC to the PLC using a special cable thats connected to the front of the CPU. The CPU is then put into run mode so that it can start scanning the logic and controlling the outputs.
5. PLC INSTRUCTIONS
5.1 Internal Relays
Auxiliary relays, markers, flags, coils, bit storage. Used to hold data, and behave like relays, being able to be switched on or off and switch other devices on or off. They do not exist as realworld switching devices but are merely bits in the storage memory.
5.5 Timers
Timer is an instruction that waits a set amount of time before doing something (control time). Timers count fractions of seconds or seconds using the internal CPU clock. The time duration for which a timer has been set is termed the preset and is set in multiples of the time base used. Most manufacturers consider timers to behave like relays with coils which when energized result in the closure or opening of contacts after some preset time. The timer is thus treated as an output for a rung with control being exercised over pairs of contacts elsewhere. Others treat a timer as a delay block which when inserted in a rung delays signals in that rung reaching the output.
5.10 Counters
A counter is set to some preset value and, when this value of input pulses has been received, it will operate its contacts. The counter accumulated value ONLY changes at the off to on transition of the pulse input. Typically counters can count from 0 to 9999, -32,768 to +32,767 or 0 to 65535.
The normal counters are typically software counters - they dont physically exist in the PLC but rather they are simulated in software. A good rule of thumb is simply to always use the normal (software) counters unless the pulses you are counting will arrive faster than 2X the scan time.
5.14 Sequencers
The sequencer is a form of counter that is used for sequential control. It replaces the mechanical drum sequencer that was used to control machines that have a stepped sequence of repeatable operations. The PLC sequencer consists of a master counter that has a range of presets counts corresponding to the different steps and so, as it progresses through the count, when each preset count is reached can be used to control outputs.
Data handling consists of operations involving moving or transferring numeric information stored in one memory word location to another word in a different location, comparing data values and carrying out simple arithmetic operations. A register is where data can be stored. Each data register can store a binary word of usually 8 or 16 bits. The number of bits determines the size of the number that can be stored (2n 1). 4-bit register can store a positive number between 0 and +15. 8-bit: 0 and +255. 16-bit: 0 and +65535.
5.19 Overflow
Typically the memory locations are 16-bit locations. If a result is greater than the value that could be stored in a memory location then we get an overflow. The PLC turns on an internal relay that tells us an overflow has happened. We get an overflow if the number is greater than 65535 (2^16=65536). Depending on the PLC, we would have different data in the destination location. Some use 32-bit math which solves the problem. If were doing division, and we divide by zero the overflow bit turns on.
6. PLC COMMUNICATION
6.1 Extension modules
PLC I/O number can be increased through certain additional modules by system extension through extension lines. Each module can contain extension both of input and output lines. Extension modules can have inputs and outputs of a different nature from those on the PLC controller. When there are many I/O located considerable distances away from the PLC an economic solution is to use I/O modules and use cables to connect these, over the long distances, to the PLC.
6.4 Cables
Twisted-pair cabling, often routed through steel conduit. Coaxial cable enables higher data rates to be transmitted and does not require the shielding of steel conduit. Fiber-optic cabling has the advantage of resistance to noise, small size and flexibility.
Parallel standards :The standard interface most commonly used for parallel communication is IEEE-488, and now termed as General Purpose Instrument Bus (GPIB). Parallel data communications can take place between listeners, talkers, and controllers. There are 24 lines: 8 data (bidirectional), 5 status & control, 3 handshaking, and 8 ground lines.
6.8 ASCII
ASCII is a human-readable to computer-readable translation code (each letter/number is translated to 1s and 0s). Its a 7-bit code, so we can translate 128 characters (2^7 is 128).
6.9 Protocols
It is necessary to exercise control of the flow of data between two devices so what constitutes the message, and how the communication is to be initiated and terminated, is defined. This is termed the protocol. One device needs to indicate to the other to start or stop sending data. Interconnecting several devices can present problems because of compatibility problems.
7. PLC NETWORKS
As control systems become more complex, they require more effective communication schemes between the system components. Some machine and process control systems require that programmable controllers be interconnected, so that data can be passed among them easily to accomplish the control task. Other systems require a plant wide communication system that centralizes functions, such as data acquisition, system monitoring, maintenance diagnostics, and management production reporting, thus providing maximum efficiency and productivity.
PLC
PC
Environment
The PLC was specifically designed for harsh conditions with electrical noise, magnetic fields, vibration, extreme temperatures or humidity.
Common PCs are not designed for harsh environments. Industrial PCs are available but cost more.
Ease of Use
By design PLCs are friendlier to technicians since they are in ladder logic and have easy connections.
Operating systems like Windows are common. Connecting I/O to the PC is not always as easy. Typical PCs are limited by the number of cards they can accommodate and are not easily expandable. PCs, by design, are meant to handle
Flexibility
PLCs in rack form are easy to exchange and add parts. They are designed for modularity and expansion.
Speed
sequential order. The have better ability to simultaneous tasks. They have handle events in real time. Reliability difficulty handling real time events.
A PLC never crashes over long periods of A PC locking up and crashing is time. ("Never" may not be the right word but its close enough to be true.) frequent.
Languages are typically fixed to ladder logic, function block or structured text. Memory is limited in its ability to store a lot of data.
A PC is very flexible and powerful in what to use for programming. This is where the PC excels because of it's hard drive. Any long term data storage, history and trending is best done on a PC.
Cost
Just too hard to compare pricing with so many variables like I/O counts, hardware needed, programming software, etc.
Consider a single output device failing to turn on though the output LED is on. If testing of the PLC output voltage indicates that it is normal then the fault might be a wiring fault or a device fault. If checking of the voltage at the device indicates the voltage there is normal then the fault is the device.
Case 2
Failure of an input LED to illuminate as required could be because: *Input device is not correctly operating, *Input device is not correctly powered, *Incorrect wiring connections to the input module, or LED or input module is defective. Many PLCs provide built-in fault analysis procedures which carry out self-testing and display fault codes, with possibly a brief message, which can be translated by looking up code in a list to give the source of the fault and possible method of recovery.
In the ideal case, a controller can have an unlimited output. The proportional band (PB) is then defined as:
This definition of proportional band is often used instead of the controller gain. The value is expressed in percent (%).
13.4 Offset
If you look at the equation for the proportional gain: CV = K*error = K*(SP - PV) you will notice that there has to be an error to produce a controller output. This means that with proportional control only, there will always be a small offset between the setpoint and the measured variable. To remove this offset, integral control has to be used.
Integral action gives the controller a large gain at low frequencies that results in eliminating offset. Integrals give information concerning the past. That is why integrals are always late. Integrals provide stability but have a tendency to get stuck in the past. In most controllers the proportional and integral action are combined. The output of the combined proportional and integral action (in s-domain) is then:
where the parameter Td is called derivative time. Derivative control is mathematically the opposite of integral action, but while we might have an integral-only controller, we would never have a derivative-only controller. The reason for this is that derivative control only knows the error is changing. It does not know what the setpoint actually is.
Derivative action has the potential to improve performance when sudden changes in measured variable occur, but is should be used with care. It is mostly a matter of using enough, not too much.
To prevent this unwanted effect, the derivative action can be filtered by a first-order system with time constant Td/N.
This approximation acts as a derivative for low-frequency signal components. The gain, however, is limited to K*N. This means that high-frequency measurement noise is amplified at most by a factor KN. This is why the parameter N is called the derivative gain limitation. Typical values of N are 8 to 20.Sometimes the reciprocal value of N is used, mostly with the name beta (beta = 1/N).
P = KPE+KPKD(dE/dt)+Po.
Where
19.2 Application
You can use the controller as a PID fixed set point controller or in multi-loop controls as a cascade, blending or ratio controller. The functions of the controller are based on the PID control algorithm of the sampling controller with an analog signal, if necessary extended by including a pulse generator stage to generate pulse duration modulated output signals for two or three step controllers with proportional actuators.
Note
The calculation of the values in the control blocks is only correct if the block is called at regular intervals. For this reason, you should call the control blocks in a cyclic interrupt OB(OB30 to OB38). Enter the sampling time in the CYCLE parameter.
19.3 Description
Apart from the functions in the set point and process value branches, the SFB/FB implements a complete PID controller with continuous manipulated variable output and the option of influencing the manipulated value manually. In the following, you will find a detailed description of the sub-functions:
LMN = (output of LMNLIMIT) * LMN_FAC + LMN_OFF LMN_FAC has the default 1 and LMN_OFF the default 0. The manipulated value is also available in the peripheral format. The CPR_OUT function converts the floating-point value LMN to a peripheral value according to the following formula: LMN_PER = LMN * (27648/100)
19.3.8 Initialization
SFB 41 "CONT_C" has an initialization routine that is run through when the input parameter COM_RST = TRUE is set. During initialization, the integrator is set internally to the initialization value I_ITVAL. When it is called in a cyclic interrupt priority class, it then continues to work starting at this value.
The following table contains the description of the input parameters for SFB 41/FB 41 "CONT_C."
Parameter
Data Type
Range of Values
Default
Description
COM_RST
BOOL
FALSE
COMPLETE RESTART
The block has an initialization routine that is processed when the input COM_RST is set. MAN_ON BOOL TRUE MANUAL VALUE ON
If the input "manual value on" is set, the control loop is interrupted. A manual value is set as the manipulated value. PVPER_ON BOOL FALSE PROCESS VARIABLE PERIPHERAL ON
If the process variable is read from the I/Os, the input PV_PER must be connected to the I/Os and the input "process variable peripheral on" must be set.
P_SEL
BOOL
TRUE
PROPORTIONAL ACTION ON
The PID actions can be activated or deactivated individually in the PID algorithm. The P action is on when the input "proportional action on" is set. I_SEL BOOL TRUE INTEGRAL ACTION ON
The PID actions can be activated or deactivated individually in the PID algorithm. The I action is on when the input "integral action on" is set. INT_HOLD BOOL FALSE INTEGRAL ACTION HOLD The output of the integrator can be "frozen" by setting the input "integral action hold". I_ITL_ON BOOL FALSE INITIALIZATION OF THE INTEGRAL ACTION ON
D_SEL
BOOL
FALSE
DERIVATIVE ACTION ON The PID actions can be activated or deactivated individually in the PID algorithm. The D action is on when the input "derivative action on" is set.
CYCLE
TIME
>= 1 ms
T#1s
SAMPLING TIME
The time between the block calls must be constant. The "sampling time" input specifies the time between block calls.
SP_INT
REAL
INTERNAL SETPOINT
PV_IN
PROCESS VARIABLE IN
An initialization value can be set at the "process variable in" input or an external process variable in floating point format can be connected.
Value 1
PROCESS VARIABLE PERIPHERAL PV_PER WORLD W#16#00 00 The process variable in the I/O format is connected to the controller at the "process variable peripheral" input.
MANUAL VALUE
MAN
REAL
0.0
The "manual value" input is used to set a manual value using the operator interface functions.
PROPORTIONAL GAIN
GAIN
REAL
functions. The "proportional value" input 2.0 specifies the controller gain.
RESET TIME
TI
TIME
>= CYCLE
T#20s
The "reset time" input determines the time response of the integrator.
DERIVATIVE TIME
TD
TIME
>= CYCLE
T#10s
The "derivative time" input determines the time response of the derivative unit.
TM_LAG
The algorithm of the D action includes a time lag that can be assigned at the "time lag of the derivative action" input.
A dead band is applied to the error. The "dead band width" input determines the size of the dead band.
Value 1
MANIPULATED VALUE HIGH LIMIT LMN_LLM LMN_HLM REAL ...100.0 (%) or phys. Value 2) 100.0 The manipulated value is always limited by an upper and lower limit. The "manipulated value high limit" input specifies the upper limit.
MANIPULATED VALUE LOW LIMIT 0.0 The manipulated value is always LMN_LLM REAL -100.0 to +100.0 (%) or phys. limited by an upper and lower limit. The "manipulated value low limit" input specifies the lower limit.
Value 2
The "process variable factor" PV_FAC REAL 1.0 input is multiplied by the process variable. The input is used to adapt the process variable range.
The "process variable offset" input is added to the process variable. The input is used to adapt the process variable range.
The output of the integrator can I_ITLVAL REAL -100.0 to +100.0 0.0 (%) or phys. be set at input I_ITL_ON. The initialization value is applied to the input "initialization value of the integral action."
Value 2
DISTURBANCE VARIABLE
For feed forward control, the disturbance variable is connected DISV REAL -100.0 to +100.0 0.0 (%) or phys. to input "disturbance variable."
Value 2
1) Parameters in the setpoint and process variable branches with the same unit. 2) Parameters in the manipulated value branch with the same unit.
Parameter
Data Type
Description
MANIPULATED VALUE
LMN
REAL
0.0
The effective manipulated value is output in floating point format at the "manipulated value" output. MANIPULATED VALUE PERIPHERAL
LMN_PER
WORD
W#16#0000
The manipulated value in the I/O format is connected to the controller at the "manipulated value peripheral" output. HIGH LIMIT OF MANIPULATED VALUE REACHED
BOOL QLMN_HLM BOOL FALSE The manipulated value is always limited to an upper and lower limit. The output "high limit of manipulated value reached" indicates that the upper limit has been exceeded.
The manipulated value is always limited to an upper and lower limit. The output "low limit of manipulated value reached" indicates that the lower limit has been exceeded. PROPORTIONAL COMPONENT
LMN_P
REAL
0.0 The "proportional component" output contains the proportional component of the manipulated variable.
INTEGRAL COMPONENT
LMN_I
REAL
0.0
The "integral component" output contains the integral component of the manipulated value.
DERIVATIVE COMPONENT
LMN_D
REAL
0.0
The "derivative component" output contains the derivative component of the manipulated value. PROCESS VARIABLE
PV
REAL
0.0
The effective process variable is output at the "process variable" output. ERROR SIGNAL
ER
REAL
0.0
PID control. A number of special methods that are tailor made for PID control have also been developed, these methods are often called tuning methods. The most well known tuning methods are those that are stated by Ziegler and Nichols. These methods do not need any mathematical calculation to find PID parameters. In this, Ziegler-Nichols process reaction method (PRM) is used to determine PID controller parameters; Kc, Ti and Td. The Ziegler-Nichols process reaction method works well in a large variety of industrial systems. However, this method rarely can find insufficient PID parameters, and system response makes high overshoots or oscillations before entering in steady state. Because of this, an adaptive controller algorithm is also given to work with Ziegler-Nichols methods parameters more effectively.
Industrial systems are controlled by microcontroller based systems in recent years and widely used microcontroller based systems are programmable logic controllers (PLCs). These controllers are more capable than the other micro controller based ones at the design phase of automation systems so the time consumption over the project decreases. Also the elasticity at hardware level and software level let the modifications be done very easily. At the other side nowadays most of PLCs support the popular communication protocols like Profibus, Modbus, Industrial Ethernet, etc. Within this, the integration to SCADA systems gets easy. In this, an adaptive PID controller is given using Ziegler Nicholas based self-tuning methods parameters as initial parameters for programmable logic controllers.
Applications:
When designing adaptive control systems, special consideration is necessary of convergence and robustness issues. Typical applications of adaptive control are (in general):
Self-tuning of subsequently fixed linear controllers during the implementation phase for one operating point;
Self-tuning of subsequently fixed robust controllers during the implementation phase for whole range of operating points;
Self-tuning of fixed controllers on request if the process behavior changes due to ageing, drift, wear etc;
Adaptive control of linear controllers for nonlinear or time-varying processes; Adaptive control or self-tuning control of nonlinear controllers for nonlinear processes; Adaptive control or self-tuning control of multivariable controllers for multivariable processes (MIMO systems);
Usually these methods adapt the controllers to both the process statics and dynamics. In special cases the adaptation can be limited to the static behavior alone, leading to adaptive control based on characteristic curves for the steady-states or to extreme value control, optimizing the steady state. Hence, there are several ways to apply adaptive control algorithms. The Ziegler Nichols process reaction method gave three constant parameters of PID controller; Kc, Ti and Td. However, some system responses can be unpredictable, and these PID parameters can not work efficiently. Also, adaptive control can help deliver both stability and good response. The approach changes the control algorithm coefficients in real time to compensate for variations in the system itself. In general, the controller periodically monitors the system transfer function and then modifies the control algorithm. It does so by simultaneously learning about the process while controlling its behavior.
Advantages
Disadvantages experienced
ZieglerNichols
Proven method.
Online Process upset, some trial-anderror, very aggressive tuning. cost and training
Software Tools
offline method. May include involved. valve and sensor analysis. Allow simulation before
downloading. Cohen-Coon Good process models. Some math. Offline method. Only good for first-order
processes.
Ziegler-Nichols PRM
KC =
1.2 L. N MAX
TI = 2.L
TD =
L 2
------ (4)
First a step signal is applied to the system and program starts to search the dead time. The dead time is the time when system gives no response to reference signal. In program, a tolerance is given for measuring the dead time (Figure 4), because there are always some high frequencies measuring noises at system output. As shown in Figure 4, these signals and distributions change in an interval defined tolerance. After the dynamic system starts to follow reference and reaches outside the tolerance border, dead time is calculated by PLC program.
Tolerance Limit If the dead time is finished or calculated, the program starts to search maximum slope. It collects all slopes and after collecting them, it selects the biggest slope. Every slope is calculated with equation.
N=
Y (k) Y (k 1) Ts
It memorizes the output value of previous period and takes the output value of the recent period and divides their difference by sampling period (3), (5). Then the program constitutes data of all slopes and selects the biggest slope. When the maximum slope is calculated, the program waits steady state because the parameters of system are stable in steady state. Finally, the program calculates PID parameters. To sum up, to calculate PID parameters using Ziegler-Nichols PRM; first gather data from open-loop plant response to unit step input, then examine data set to find the maximum slope (Figure 3), after then determine the parameters needed for Ziegler Nichols PRM, finally, use tuning relations to generate PID constants. The diagram of this process is given in Figure 5.
To clarify, necessary steps are given in a sequence below: Run the system in open-loop mode Wait until the system output becomes stable Record system input and output Apply a step input to system (larger than %10 of recent input) Wait until the system output becomes stable Calculate PID parameters and work with PID controller.
PROGRAM CONTROL
New Parameters
NO
YES
Steady State Ok ?
NO
Calculate PID Parameters
YES
Record System Input and Output
Self-Tuning Program
23.7 Adaptive Algorithm for Proportional (Kc) and Integral (Ti) ..parameters of the PID:
The gain (proportional) and integral terms of PID is directly effect system response. In other words, the integral term is closely related with systems error which is the difference between system reference and system output; and the gain term is directly effect systems time constant and overshoot. Of course derivative term is important, but in this paper Ziegler-Nichols derivative term is directly used in PID controller. Because it is adequate for most industrial systems. On the other hand, gain and integral terms used in PID is adaptive. Because of this, the PID controller becomes, PI-Adaptive Self Tune Based and D-Self Tune Based Controller; PI-D. The algorithm for PI terms is given in figure 9, and the equation is given in equation (9).
TiADAPT =
TiS .TUNE (a 1) ( RESPONSE LADAPT ) + TiS .TUNE U ADAPT LADAPT KcS .TUNE (b 1) ( RESPONSE LADAPT ) + KcS .TUNE U ADAPT LADAPT
-----------(9)
a >1 1> b 0
Kc ADAPT =
In figure 9, initial Kc (gain) and initial Ti (integral time) is the coefficients which found in Ziegler-Nichols process reaction method. a coefficient is related with integrals upper border and b coefficient is related with gains lower border. It is clear to say that a is bigger than 1 and b is between 1 and 0. System response symbolizes system output (voltage, degrees, speed, moment etc.). For example, when the system response is speed for a motor, lower adaption response is lower adaption speed in rpm and upper adaption response is upper adaption speed in rpm. The algorithm works between upper and lower adaption borders. In the lower adaption border, the algorithm starts to work with increasing integral and decreasing gain. The reason to increase integral is to make error smaller and smaller before reaching the steady state, and the reason to decrease gain is not to make overshoot or not to make higher overshoot in the response of the system.
Self Tune parameters, Adaptive algorithm and PID controller are related with each other like in figure 10. As said before, derivative parameter directly goes to PID controller, gain and integral terms firstly go adaptive algorithm and then PID controller.
4L / T
SET
4L / T
SET
ratio.
4L / T
SET
0.5 ,
23.9.1 Simulation 1: Second Order System with 0.4 sec Dead Time, 32% OS, and 8.2 sec Settling Time:
First simulation result is given in figure 11. First response (1) in figure represents the response with only self-tuning PID and second response (2) represents response with adaptive self-tuning PI-D response. Second order systems original settling time is 7.4 second and overshoot is 32%, first curves settling time is 6.2 second and 9.2% overshoot, and second adaptive curves settling time is 6.0 seconds and this controlled system has no overshoot. The best response is the Adaptive PI-D controlled response. As said before, is 0.23 and it is not as robust as other systems which has 0.5
4L / T
SET
4L / T
SET
23.9.2 Simulation 2: Second Order System with 0.7 sec Dead Time, 85% OS, and 2.4 sec Settling Time:
Second simulation is applied to a second order system which has a very high overshoot and approximately fast settling time. But the important point is system has 1.03 system is near the non-robustness border which is 1.07
4L / T
SET
4L / T
SET
ratio. This
very efficient to this system, and self-tuning methods response is given in figure 12, in curve (1). This response does not have a good response, but the 85% overshoot is decreased to 6.5% overshoot. Settling time for this answer is 7.1 seconds. Second curve in figure 12 represents the response with Adaptive PI-D controller. This response has no overshoot, 2.9 seconds of settling time, and is robust more than curve 1.
The goal using adaptive PID controller to this system is to make the controller robust to a point where the performance of the complete system is as insensitive as possible to modeling errors and changes in the environment. Simulation results shows that adaptive PID controller obtains this specialties.
Conclusion
In this report Adaptive PID controller - using Ziegler Nichols based Self Tuning methods parameters- is presented and its application on a programmable logic controller is given. For this purpose first of all at the implementation part industrial PID algorithm is used where PIDs derivative input is taken from system output and filtered, so high-frequency signals effect is minimized. Then, integral term is confirmed to obtain a more robust PID structure and finally the output of PID is limited due to PLCs maximum and minimum range. Secondly, Ziegler-Nichols method is given and together within robustness definition is defined. It can be seen that most industrial systems are in the group of this robustness limit. Adjusting adaptive algorithm to SelfTuning PID Controller in section 4, the robustness limit is increased. For implementing the developed algorithm a Siemens S7-400 CPU 412-2 DP PLC is selected as a controller due to its good performance and its developed structure. Afterwards the developed PLC algorithm is simulated on two second order systems. The results showed that Adaptive PI-D controller has a good performance on a large scale of L / ratio of industrial systems. As a result in this work, PID application and system simulation blocks are obtained for a general use in other industrial systems.