Valor de inicialización predeterminado
El valor de inicialización predeterminado es 0 para todas las declaraciones, pero puede añadir valores de inicialización definidos por el usuario en la declaración de cada variable y tipo de datos.
Valores de inicialización definidos por el usuario
La inicialización definida por el usuario se debe al operador de asignación := y puede ser cualquier expresión ST válida. Por consiguiente, los valores de constante, así como otras variables o funciones, se pueden utilizar para definir el valor de inicialización. Compruebe que ya se ha iniciado la propia variable usada para la inicialización u otra variable.
Ejemplo de inicializaciones de variables válidas:
VAR
var1:INT := 12; * Integer variable with initial value of 12. *
x : INT := 13 + 8; * Integer value defined an expression with literal values.*
y : INT := x + fun(4); * Integer value defined by an expression containing a function call. NOTE: Be sure that any variables used in the variable initialization have already been defined. *
z : POINTER TO INT := ADR(y); * POINTER is not described by the IEC61131-3: Integer value defined by an address function; NOTE: The pointer will not be initialized if the declaration is modified online. *
END_VAR
Para obtener más información, consulte las siguientes descripciones:
oinicialización de matrices
oinicialización de estructuras
oinicialización de una variable con un tipo de subrango
NOTA: Las variables de las listas de variables globales (GVL) se inicializan antes que las variables locales de un POU.
NOTA: A partir de la versión 4.0 de SoMachine, las variables de un bloque de funciones se inicializarán en el siguiente orden: primero, las constantes según su orden de declaración; a continuación, las variables restantes según su ordene de declaración.
Para obtener más información en relación con el orden de inicialización, consulte el Attribute global_init_slot.