DUTs sobrecargadas

Asignación de la memoria:

Todos los elementos del mismo tipo de datos (BOOL, WORD, INT, DWORD, DINT, REAL y STRING con la misma longitud de string) se agrupan y se asignan uno detrás de otro comenzando por una dirección de inicio común. Los arrays siempre son asignados a esta dirección de inicio común.

Las siguientes condiciones se aplican a este área de inicio: Si la DUT consiste en elementos del tipo BOOL o ARRAY OF BOOL, se almacena en un área de memoria reservada para bits; en caso contrario se almacena en un área de memoria reservada para palabras de 16 bits.

No está permitida la inicialización. Por defecto, se realizan las siguientes inicializaciones:

Tipo de dato

Valor inicial

BOOL

FALSE

WORD, INT, UINT, DWORD, DINT, UDINT

0

REAL

0.0

STRING

'' (caracter vacío)

NOTA
  • Las direcciones ocupadas por la longitud máxima de string se inicializan con la longitud máxima del string que es mayor o igual a cero. El resto del string se inicializa con ceros.

  • Además, todos las variables de tipo de datos STRING se deben colocar al final de la declaración.

  • En general, se debe prestar mucha atención a cómo se ocupa el área de memoria por el tipo de datos usado.

  • Especialmente si se usan STRINGs, tener en cuenta que su modo particular de ocupar la memoria permite que sean sobrescritos repetidamente con la ayuda de otros elementos.

  • Asegurarse de que la longitud máxima del string y la longitud actual son valores válidos antes de utilizar comandos string.

  • Una DUT no se puede usar como una variable dentro de otra DUT.

Ejemplo 1:

DUT sin elementos de tipo BOOL DUTwithoutBOOLs:

Cómo ocupan la memoria las DUTs con elementos solapados:

Área de 16 bits

       

DT100

WORD1

DWORD1

INT1

DINT1

REAL1

STRING1

DT101

WORD2

INT2

DT102

DWORD2

DINT2

DT103

STRING2

NOTA

Las variables STRING1 y STRING2 deben tener la misma longitud y deben situarse al final de la declaración.

DUT DUTwithBOOLs con elementos de tipo BOOL (sin direcciones definidas por el usuario):

Cómo ocupan la memoria las DUTs con elementos solapados:

Área de Bit

           

WR10

Bool14

Bools[04]

WORD1

DWORD1

INT1

DINT1

REAL1

STRING1

WR11

WORD2

INT2

WR12

DWORD2

DINT2

WR13

NOTA

La variable STRING1 se debe colocar al final de la declaración.

DUT con Arrays:

Cómo ocupan la memoria las DUTs con elementos solapados:

Área de 16 bits

     

DT100

String1_Max

String_Parts[1,1]

String1

StringS[1]

DT101

String1_Act

String_Parts[1,2]

DT102

String1_Char12

String_Parts[1,3]

DT103

String1_Char34

String_Parts[1,4]

DT104

String2_Max

String_Parts[2,1]

String2

StringS[2]

DT105

String2_Act

String_Parts[2,2]

DT106

String2_Char12

String_Parts[2,3]

DT107

String2_Char34

String_Parts[2,4]

NOTA

Las variables String1, String2 y Strings deben tener la misma longitud y deben situarse al final de la declaración.

En la FP tool library ya están predefinidas las DUTs con elementos solapados más comunes.

Temas relacionados

Modificado el: 2021-04-28Comentarios sobre esta páginaLínea directa de Panasonic