ParamManagerScripts/backend/script_groups/TwinCat/x2_x3_README.md

4.0 KiB

Análisis de Adaptación IO - TwinCAT ↔ TIA Portal

Scripts de análisis automático para correlacionar variables IO entre plataformas TwinCAT y TIA Portal en el proyecto SIDEL E5.007560.

📋 Descripción General

Este proyecto automatiza el análisis de adaptación de variables de entrada/salida (IO) entre:

  • TIA Portal (Siemens) - Sistema actual
  • TwinCAT (Beckhoff) - Sistema objetivo de migración

🔧 Scripts Incluidos

1. x1_io_adaptation_script.py - Análisis de Correlación IO

Propósito: Encuentra y correlaciona variables IO entre ambas plataformas generando reportes detallados.

Archivos requeridos:

  • IO Adapted.md - Tabla de adaptaciones TIA Portal (debe estar en directorio raíz)
  • TwinCat/ - Directorio con archivos .scl de TwinCAT
  • TiaPortal/ - Directorio con archivos .md de TIA Portal

Archivos generados:

  • resultados/IO_Detailed_Analysis_Report.md - Reporte con tablas markdown
  • resultados/io_adaptation_data.json - Datos estructurados para análisis
  • resultados/io_detailed_analysis.csv - Datos tabulares

2. x2_code_snippets_generator.py - Generador de Snippets de Código

Propósito: Genera snippets de código mostrando el uso real de cada variable en ambas plataformas.

Archivos requeridos:

  • resultados/io_adaptation_data.json - Generado por el script 1
  • TwinCat/ - Directorio con archivos .scl
  • TiaPortal/ - Directorio con archivos .md

Archivos generados:

  • resultados/IO_Code_Snippets_Report.md - Snippets de código con contexto
  • resultados/IO_Usage_Statistics.md - Estadísticas de uso

🚀 Uso

Paso 1: Ejecutar análisis de correlación

python x1_io_adaptation_script.py

Paso 2: Generar snippets de código

python x2_code_snippets_generator.py

📁 Estructura de Directorios Requerida

proyecto/
├── x1_io_adaptation_script.py
├── x2_code_snippets_generator.py
├── IO Adapted.md                    # Tabla de adaptaciones TIA
├── TwinCat/                        # Archivos .scl TwinCAT
│   ├── GLOBAL_VARIABLES_IN_OUT.scl
│   ├── INPUT.scl
│   └── ... (otros archivos .scl)
├── TiaPortal/                      # Archivos .md TIA Portal
│   ├── Input.md
│   ├── Output.md
│   └── ... (otros archivos .md)
└── resultados/                     # Directorio creado automáticamente
    ├── IO_Detailed_Analysis_Report.md
    ├── io_adaptation_data.json
    ├── io_detailed_analysis.csv
    ├── IO_Code_Snippets_Report.md
    └── IO_Usage_Statistics.md

🔍 Funcionalidades Principales

Script 1 - Análisis de Correlación

  • Convierte direcciones TIA Portal a formato TwinCAT
  • Busca variables por dirección exacta y similitud de nombres
  • Calcula nivel de confianza de correlaciones
  • Genera reportes en múltiples formatos (MD, JSON, CSV)

Script 2 - Snippets de Código

  • Muestra hasta 3 usos por variable por plataforma
  • Contexto de 3 líneas (anterior, actual, siguiente)
  • Links markdown a archivos fuente
  • Estadísticas de uso y archivos más referenciados

📊 Resultados Típicos

  • Variables procesadas: ~90-100 adaptaciones IO
  • Tasa de correlación: ~70-80% de variables encontradas
  • Confianza alta: Correlaciones por dirección exacta
  • Variable más usada: Típicamente botones de reset/start/stop

🛠 Dependencias

pandas
pathlib (incluida en Python 3.4+)
json (incluida en Python estándar)
re (incluida en Python estándar)

📝 Notas Importantes

  1. Orden de ejecución: Ejecutar siempre el Script 1 antes que el Script 2
  2. Archivos fuente: Verificar que existan los directorios TwinCat/ y TiaPortal/
  3. Codificación: Los scripts manejan archivos con encoding UTF-8
  4. Rendimiento: El Script 2 puede tardar algunos minutos procesando archivos grandes

👥 Proyecto

Proyecto SIDEL: E5.007560 - Modifica O&U - SAE235
Automatización: Migración TIA Portal → TwinCAT