Skip to main content

Configurar variables remanentes y persistentes GM1

Variables remanentes y persistentes en GM1 (CODESYS)

Fecha: 2 de octubre de 2024
De: Daniel Cristobal – Panasonic Industry Iberia
Para: Enrique Cánoves – Reyman J.S. Montajes Industriales
Asunto: Consulta GM1 – Variables persistentes y remanentes


📘 Contexto de la consulta

Durante el desarrollo de un proyecto con controlador Panasonic GM1 (basado en CODESYS)CODESYS), se planteó la siguiente duda técnica:

Las variables declaradas como retentivas mantienen su valor ante un reinicio o apagado del PLC, pero al realizar una descarga completa del programa (tras un cambio sustancial), se inicializan a cero.
En el entorno FPWIN existía una opción de configuración para conservar estos valores, pero en CODESYS no se encuentra una alternativa evidente.


🧩 Respuesta técnica de Panasonic

El ingeniero Daniel Cristobal del departamento técnico de Panasonic Industry Iberia respondió con la siguiente recomendación:

En este caso, debes declarar las variables como persistentes, no solo como retentivas.

✅ Pasos para configurar variables persistentes en CODESYS

  1. Crear una lista de variables persistentes

    • En el árbol del proyecto, agregar una lista con el tipo Persistent Variables.

  2. Declarar dentro de esa lista las variables necesarias

    • Las variables dentro de esta lista se definen con el tipo PERSISTENT, no solo RETAIN.

  3. Comportamiento esperado

    • Las variables persistentes retendrán su valor incluso después de:

      • Una descarga completa del programa (download changes).

      • Un reinicio warm o cold reset del controlador.


🖼️ Figura 1 – Lista de variables persistentes en CODESYS

image.png

Y dentro de la lista crear variables del tipo persistente:

image.png


(Imagen extraída del correo original de Panasonic – ejemplo de configuración de variables persistentes en el entorno CODESYS para GM1)

En la captura se muestra la creación de una lista denominada PersistentVars, dentro de la cual se declaran variables del tipo PERSISTENT.
Estas variables mantienen su valor incluso tras reinicios o descargas completas del programa.


🧠 Diferencia entre variables RETAIN y PERSISTENT

Tipo de variable Conserva valor tras apagado Conserva valor tras descarga del programa Uso recomendado
RETAIN ✅ Sí ❌ No Valores que deben mantenerse en ciclos de energía, pero no tras actualizaciones de programa.
PERSISTENT ✅ Sí ✅ Sí Valores críticos que deben mantenerse incluso tras actualizaciones o descargas.

🧪 Prueba realizada por Panasonic

El técnico realizó una prueba con dos variables globales:

  • Una retentiva (RETAIN)

  • Una no retentiva

Tras descargar al GM1 y realizar un ciclo de apagado y encendido, verificó mediante la vista Watch que la variable retentiva conservaba correctamente su valor.
Se confirmó que el mecanismo de retención funciona según lo previsto, pero que para mantener valores ante descargas es necesario el uso de PERSISTENT.


🏢 Datos de contacto – Panasonic Industry Iberia

Daniel Cristobal
Application Engineer – Systems & Solutions Division
📞 +34 946 669 359
📱 +34 615 764 025
📧 Daniel.Cristobal@eu.panasonic.com
🌐 http://industry.panasonic.eu


📎 Notas de confidencialidad

El contenido del correo original contiene información técnica y confidencial entre Reyman J.S. Montajes Industriales S.L. y Panasonic Industry Iberia S.A..
La información se presenta aquí únicamente con fines técnicos y de documentación interna.


¿Quieres que añada también las imágenes del correo (por ejemplo, capturas de las listas de variables en CODESYS) extraídas del PDF y embebidas en el Markdown? Puedo convertirlas a base64 o referenciarlas con nombres de archivo (![Figura 1](fig1.png)).