Acceso a las variables ("asignación tardía")

Si el valor de una variable o de una dirección se lee dentro de una red, el compilador siempre usa el valor que tenía la variable o la dirección cuando el compilador comenzó a procesar la red.

Tener en cuenta que a menudo ocurren errores de programación, cuando se modifica y después se lee, el valor de una variable o una dirección.

Al comienzo de la red, el valor de la variable correspondiente se copia en una variable temporal. Todos los accesos de lectura posteriores se realizan sobre la variable temporal; todos los accesos de escritura, sobre la variable original.

Ejemplo 1:

Editor

Código de programa

Descripción

LD

Resultado no consistente debido a una lectura sobre la copia temporal.

Código adicional para copiar el valor de iVariable en DT768 en una variable temporal en DT769

Lee desde la variable temporal en DT769 añade 5 y escribe el resultado en iVariable en DT768.

Lee de nuevo desde la variable temporal en DT769 multiplica el valor por 3 y escribe el resultado en iVariable en DT768.

Editor tipo GR

Resultado consistente debido a que no se realiza la lectura sobre la copia temporal

Ejemplo 2:

Editor

Código de programa

Descripción

LD

Resultado consistente debido a una lectura sobre la copia temporal de bOutput

Código adicional para copiar el valor de bOutput en R0511 en una variable temporal en R0500

Lee desde la variable temporal R0500

Editor tipo GR

Resultado inconsistente debido a que no se realiza la lectura sobre la copia temporal

Modificado el: 2020-10-27Comentarios sobre esta páginaLínea directa de Panasonic