MCL
// using elements of ARRAY for parameters transfer
linAbs( Pos1, v := myArray[1], a := myArray[2] );
posAbs( ax[2], 20.0 );
// using elements of STRUCT for parameters transfer
linAbs( Pos1, v := myStruct.v, j := myStruct.j );
END_PROGRAM
Uso de agregados
Para indicar la posición en instrucciones MCL pueden utilizarse agregados.
El siguiente ejemplo muestra el uso de un agregado para el parámetro "Target position" con el
tipo de datos "TO_Struct_Ipr_Position":
MCL
// complete target position specification as aggregate
linAbs( ( x := 10.0, y := 20.0, z := 0.1,
El orden de los elementos del agregado no está determinado. No es necesario utilizar todos
los elementos del agregado para indicar la posición en la instrucción MCL.
Uso de una expresión aritmética
Como parámetro de instrucciones MCL también puede utilizarse una expresión aritmética. El
resultado de la expresión debe coincidir con el tipo de datos del parámetro:
MCL
PROGRAM main
VAR
END_VAR
// using arithmetic expression for parameter transfer
linAbs( Pos1, v := 10 * myVar, j := 10000.0 );
// using arithmetic expression for parameter transfer in aggregate
linAbs( ( x := 100.0 + myVar, z := 25.0 + myVar * cos( 30.0 ) ) );
END_PROGRAM
S7-1500T Funciones de intérprete V8.0 a partir de STEP 7 V19
Manual de funciones, 11/2023, A5E53131983-AA
A := 25.0, B:= 45.0, C := 0.0 ) );
Pos1 : TO_Struct_Ipr_Position;
myVar : LREAL;
Crear el programa MCL (S7-1500T)
5.9 Llamada de instrucciones MCL (S7-1500T)
149