APACS+ Advanced Control Module (ACM) Standard Function Blocks Version 4.40 or Higher. Addendum MOVE Function Blocks
APACS+ Advanced Control Module (ACM) Standard Function Blocks Version 4.40 or Higher. Addendum MOVE Function Blocks
CG39-22A
Rev: 7
June 2000
APACS+™
Advanced Control Module (ACM)
Standard Function Blocks
Version 4.40 or Higher
TABLE OF CONTENTS
SECTION AND TITLE PAGE
June 2000 i
CONTENTS CG39-22A
TABLE OF CONTENTS
(Continued)
ii June 2000
CG39-22A CONTENTS
TABLE OF CONTENTS
(Continued)
TABLE OF CONTENTS
(Continued)
iv June 2000
CG39-22A CONTENTS
TABLE OF CONTENTS
(Continued)
LIST OF FIGURES
LIST OF TABLES
June 2000 v
CONTENTS CG39-22A
LIST OF TABLES
(Continued)
The significant changes for revision 7 of this document are listed as follows. Changes are indicated by change
bars located in the page margins adjacent to changed text.
8.0 MOVE FUNCTION BLOCKS – The descriptions of the MOVE function blocks, Data Move
(MOVE), Set Value (SET_VAL), and Set Bit (SET_BIT) blocks, have been updated.
Siemens Moore Process Automation, Inc.assumes no liability for errors or omissions in this document or for the application and
use of information included in this document. The information herein is subject to change without notice.
APACS+ and QUADLOG are trademarks of Siemens Moore Process Automation, Inc. All other trademarks are the property of
the respective owners.
8 Copyright 2000 Siemens Moore Process Automation, Inc. All rights reserved.
vi June 2000
CG39-22A MOVE FUNCTION BLOCKS
The MOVE function blocks are a subset of the standard function blocks. These blocks accept inputs of ANY
data type and have outputs of ANY data type. An ANY output takes on the data type of the variable (or
function block input) to which it is connected.
If an ANY type output of one block is connected to an ANY type input of another block, no data type is
assigned to the output. The output is defaulted to data type REAL. To change this default to the correct data
type, the output could be connected to any variable of the correct data type. After the function block network
is downloaded, the added variable can be deleted. The function block output retains the correct data type.
The mixing of data types on the ANY inputs and outputs of a block is not prevented, but may lead to
unpredictable results.
For memory consumption and ACM execution time information on all standard configuration elements, see
Appendix C in Using the 4-mation Configuration Software (document number CG39-20).
The MOVE function blocks are listed as follows. Each individual block is described in detail in the following
subsections:
C Data Move
C Set Value
C Set Bit
MOVE
BOOL EN ENO BOOL
ANY IN01 OUT01 ANY
ANY IN02 OUT02 ANY
: : : :
ANY IN15 OUT15 ANY
The symbol of the Data Move (MOVE) function block is shown above. This block assigns input values to
output values in pairs: (IN01) to (OUT01), (IN02) to (OUT02), etc. The input data types can be different, but
the paired input and output data types must match. This block is extensible, up to a maximum of 15
input/output pairings.
The enable output (ENO) is TRUE whenever the EN input value is TRUE. The enable output (ENO) is
FALSE at all other times.
When the MOVE block is enabled, it transfers each INxx value to its corresponding OUTxx. When the block
is not enabled, its outputs retain their previous values.
The MOVE block also has the unique ability to prevent other configuration language elements from accessing
its outputs when it is not enabled. This allows multiple MOVE blocks (or MOVE blocks and another data
source) to be connected to the same variable without conflict.
If a variable is connected to multiple data sources, it is updated by all enabled sources in the order that they
execute. At the end of the scan, it contains the value written by the last enabled source to run. If no source is
enabled, the variable retains its value from the previous scan.
In general, only variables should be connected to MOVE block outputs, because non-variables do not retain
their values from the previous scan. The behavior of elements, other than variables, connected directly to a
disabled MOVE block is shown in Table 8-1.
The inputs and outputs of the MOVE block are defined as follows:
EN The enable input. The block transfers data only when this input is TRUE
OUT(n) These outputs are connected to the receiving variables (IN01 to IN15) and are written to only
when EN is TRUE.
SET_VAL
BOOL EN ERROR BOOL
STRING DEST OUT ANY
ANY DATA
The symbol of the Set Value (SET_VAL) function block is shown above. This block has the following
purposes:
• Transfers data from one variable to another when the EN input value is TRUE.
• Forwards the value of the variable addressed by the DEST input value to the output.
The data types of the DATA value and OUT value, and the variable addressed by DEST value, must match.
The DEST input value must be a string constant, not a string variable. The SET_VAL block does not retain
the data values, merely transfers them.
This block is limited to transferring and reading values within one resource (ACM configuration). The DEST
input value uses the VARNAME notation. The VARNAME is a path to a variable in the form:
The path is assumed to start from the resource unless there is a leading period (.) character. The period
signifies that the destination path is relative to the sheet on which the SET_VAL block resides.
The inputs and outputs of the SET_VAL block are defined as follows:
EN The boolean enable input. The block transfers data only when this input is TRUE.
DEST The static string input that is the path of the destination of the DATA input value.
DATA The ANY type input to be written to the variable identified in the DEST input.
NOTE
ERROR The boolean output that is TRUE if the block cannot execute correctly.
OUT The output that provides the value of the defined at the input at all times, regardless of the
EN input value. A local variable of the same data type as that of the variable addressed in
the DEST input must be connected to this output for the value to be displayed.
SET_BIT
The symbol of the Set Bit (SET_BIT) function block is shown above. This block may be used to write a
single bit of a destination variable of type WORD. The SET_BIT block also continuously reads both the
specified bit and the value of the specified WORD variable.
The Destination string must point to a WORD data type variable. The DATA input must be a BOOL. The
BIT_n input is an integer (INT) that selects which bit of the Destination WORD is to be read/written. The
W_OUT output is the current value of the Destination WORD variable. The Data Type is WORD. The
B_OUT output is the current value of the bit (determined by the BIT_n input) of the Destination WORD
variable. The Data Type is BOOL.
This block is limited to setting or reading bit states within one resource (ACM configuration). The DEST
input value uses the VARNAME notation. The VARNAME is a path to a variable in the form:
The path is assumed to start from the resource unless there is a leading period (.) character. The period
signifies that the destination path is relative to the sheet on which the SET_BIT block resides.
The inputs and outputs of the SET_BIT block are defined as follows:
EN The boolean enable input. The block writes the specified bit to the destination variable only
when this input is TRUE.
DEST The static string input that specifies the address path of the destination WORD variable. See
Address Paths for Remote Access to Variables
.
DATA The BOOL input specifying the TRUE or FALSE value to be written to the specified bit of
the variable identified in the DEST input.
BIT_n The integer (INT) value that selects which bit of the Destination WORD is to be
read/written. Use 1 to address the low-order bit and 16 to address the high-order bit.
ERROR The boolean output that will be TRUE if the block cannot execute correctly.
B_OUT The current output value of the bit (determined by the BIT_n input) of the Destination
WORD variable.