PLC Instruction List Example for Level Control of Tank

Level control of a tank is the most commonly used system in an automation application. PLC programmers use different types of languages according to their feasibility. One of the languages which is used very less is the instruction list. We can use this language for our purpose here of writing the program for level control. In this post, we will control the level of the tank by using instruction list language and continue from our earlier post where we saw basic instructions like timers and counters written in this language.

Example for Level Control of Tank

  1. Let us look at the case scenario first. We have a tank which has a level transmitter installed in it, for controlling the valves. There are two valves – one at inlet and one at outlet. The inlet valve is used to fill the tank proportionally, and the outlet valve is used to drain the tank proportionally. Both these proportionate actions take place through the level transmitter. Instead of PID, we will use some simple mathematical formulae for controlling the valves.
  2. For this application, we will use Machine Expert Basic software and write the coding in instruction list language. Following are the PLC inputs – level transmitter. Following are the PLC outputs – filling valve and draining valve.
  3. Refer to the below image. The green lines inside the tank are used for control of the filling valve and the blue lines inside the tank are used for control of the drain valve. When the water is below the green line in the bottom of the tank, the filling valve opens at it’s maximum position. When the water is above the green line in the top of the tank, the filling valve opens at it’s minimum position. When the water is below the blue line in the bottom of the tank, the drain valve opens at it’s minimum position. When the water is above the blue line in the top of the tank, the drain valve opens at it’s maximum position. So, as the water level increases, the drain valve will open and vice-versa for inverse action. When the water level decreases, the filling valve will open and vice-versa for inverse action. In between the lines, three internals level setpoints will be present in the PLC program. When any interval is crossed for the particular valve, that valve will open or close by 20%.
PLC Instruction List Example for Level Control of Tank
  1. See the first rung below. We will control the filling valve first. We created five cases for this valve. Here, the case refers to the level of the tank. In all the five cases, five different values are moved to the valve. For the five cases, we will create parallel branches to operate the valve. For branches, MPS denotes start of the branch, MRD denotes branch extension and MPP denotes end of the branch. As a branch is created, we use a true variable which continuously supplies power to the rung. In the first branch, if the level is less than 50, then a value of 90 is moved to the valve.  In the second branch, if the level is more than equal to 50 and less than 400, then a value of 70 is moved to the valve. In the third branch, if the level is more than equal to 400 and less than 650, then a value of 50 is moved to the valve. In the fourth branch, if the level is more than equal to 650 and less than 950, then a value of 30 is moved to the valve. In the fifth branch, if the level is more than 950, then a value of 10 is moved to the valve. So, as branches work in OR condition, if any of the branch conditions is true, then the operation will take place.
how to control the level of a tank using instruction list language
  1. See the second rung below. We will control the drain valve here. We created five cases for this valve. Here, the case refers to the level of the tank. In all the five cases, five different values are moved to the valve. For the five cases, we will create parallel branches to operate the valve. As a branch is created, we use a true variable which continuously supplies power to the rung. In the first branch, if the level is less than 100, then a value of 10 is moved to the valve.  In the second branch, if the level is more than equal to 100 and less than 450, then a value of 30 is moved to the valve. In the third branch, if the level is more than equal to 450 and less than 700, then a value of 50 is moved to the valve. In the fourth branch, if the level is more than equal to 700 and less than 1000, then a value of 70 is moved to the valve. In the fifth branch, if the level is more than 1000, then a value of 90 is moved to the valve. So, as branches work in OR condition, if any of the branch conditions are true, then the operation will take place.
PLC Instruction List Example

In this way, we saw how to control the level of a tank using instruction list language.

Read Next:

Don't Miss Our Updates
Be the first to get exclusive content straight to your email.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address

Leave a Comment

Share via
Follow us and never miss an update!