This article is about the use of move instruction with the help of TIA PORTAL.
MOVE instruction plays a huge role in analog programming from changing the speed of the motor to changing temperature intervals, etc.
The “Move value” instruction to transfer the content of the operand at input IN to the operand at output OUT1. So the instruction copies the content of operand “TagIn_Value” to operand “TagOut_Value”.
The parameters on the input and output must be of the same data type. The parameters can also be structured tags (PLC data types). It Copies complete arrays and structures.
Do follow the below steps to learn how to work with the MOVE instruction.
Open TIA PORTAL. Enter in the programming environment. On the left-hand side from the basic instructions menu, you can find a MOVE instruction.
I have added a MOVE instruction as you can see in the below window.
On the Input side, I can use a number, or I can use a variable (like MW, MD) which we want to move to the destination.
So, the input value will go to “OUT1” where you have to define a data type like word, double word, or real.
Here, I have used the word data type.
Say we have a value of “10” at the input side, a value of “10” then moves to the destination address at “OUT1”.
Let’s consider an example where I have to turn ON 8 valves by pressing the start button. In actual programming, this only happens based on conditions like pushing a button.
At first, you may think the logic as shown in the below window. Here, when you press the START switch then all 8 outputs are going to energize.
As a PLC programmer what you need is to make the logic simple, not lengthy, and complicated.
As you can see in the below window that I have added move instruction to perform the same task as above.
In the network, you can see that I have used w#16#ff.
w#16 is a format you have to add to work with MOVE instruction. The “ff is a hexadecimal number, which represents eight 1’s (11111111) in binary.
When I energize the input, “ff” moved to QBO which holds eight outputs (1 byte = 8 bit). So, all 8 outputs will be turned ON as we sent logic “1” to all.
To reset all the outputs, in the second-line of logic, I have added NOT instruction to inverse the logic.
When NOT is active it will move zero to QBO, which then turns OFF all the outputs.
Here, you can see the result in the simulator.
when I0.0 is active, then MOVE instruction will move data from “IN” to “OUT1” which in result turning ON all the outputs at the same time.
When I0.0 is false, It will move a value of zero from IN to destination location “OUT1” which result in turning OFF all the outputs. (second move instruction block)
Author: Suhel Patel
- One-Shot Rising PLC Logic
- Digital Logic Functions
- ON Delay PLC Timer
- PLC Sequencer Instruction
- PID in Siemens TIA Portal