In this article, you will learn about PID instruction with the help of a practical example.
Here, I will consider a practical application to control a manipulate variable to maintain a set point of the process.
Nowadays it is easier to work with PID as it comes inbuilt in PLC programming software with a lot of features.
Here, I will consider an example of one process. To maintain the process variable at a set-point I will write a PLC program.
PID with Practical Example
Let’s consider a temperature control loop in which I have to control the temperature.
Here, consider a range of the transmitter from 0 to 300 °C. I have one control valve in line to control the temperature.
So at 0% opening of the valve, the temperature will remain the same process temperature as it is. Now let’s say the temperature is 100 °C and at 100% control valve opening, the temperature of the process will rise to 300 °C.
Here, the temperature will rise to 2 degrees per percentage (%) of valve opening (assumption).
Outlet temperature will be given by the following equation,
Outlet temperature = 2 * (Control Valve Position) + 100
Here “2” is a temperature increment per percentage (%) of valve opening.
“100” is a starting range of temperature. As you know the minimum temperature a transmitter can measure for a given process is 100 °C. (assumed)
As per our calculation, we have to put the same equation in the PLC programming.
I already have covered the PID instruction introduction in my previous article, to program a PID block you have to create a cyclic OB.
Because you want your process to update at a specified time interval. For cyclic OB it usually stays at 1 second.
As you can see in the below window that I added the same equation in the main OB.
In the Multiplication instruction in “IN1”, I have used the output of the PID block which is a control valve position.
Now, let’s add a parameter in the PID block which I have added to cyclic OB for continuous update of process data.
Here, In the PID block click on the configuration icon to configure parameter.
The following window will appear. Here, in “basic setting” in input/output parameter choose input “input (PER) analog”.
This is how in real processes value coming from the transmitter is converted to an engineering unit.
The same way choose an output in the “output” section.
Now, in the “process value scaling” option in low and high value choose a value from 0 to 300 °C, as this a range of a temperature we selected earlier.
Now, let’s get back to the PID instruction. As we all know that the PID requires three main parameters a set point, a process variable, and a manipulated variable.
Here, I have defined tag to the main three-parameters.
This is how actual programming is done to control a process.
You need a range of process variable, you need to know the temperature, level, pressure, flow (process variable) zero & span percentage. Create an equation and put it into the PLC programming.
I hope you may have a better idea about the PID block in Siemens PLC. If you have any doubts about it then feel free to put your question into the comment section.
Author: Suhel Patel
- PID Controller Functions
- Control Valve Characteristics
- Temperature Control System
- DCS Program Draft Furnace
- Instrumentation and Control