6.1 KiB
Definiciones de Frontend en .doc\backend_setup.md
Flujo de trabajo:
Se usa [x1] para exportar los datos de configuración desde el proyecto de Tia Portal, incluidos los IO configurados en el hardware. Esto genera un archivo AML. Con [x2] se procesa el archivo AML y se convierte en markdown. Si hay un solo PLC se genera el archivo [Hardware.md]. Además genera un archivo Excel con los IOs por nodos del PLC. 3. Se deben procesar los IO desde el esquema eléctrico y agregarlos a [Hardware.md]. Se debe exportar todos los tags como un archivo excel desde el Tia Portal. Con [x3] se convierte y se filtran los tags según los path definidos en [io_paths_config] y se genera un archivo "Master IO Tags.md". [x4] Genera el prompt a usar con Claude usando MCP para que pueda acceder a los archivos originales y evitar tener que hacer uploads. Una vez que se genera el archivo procesado por el LLM se puede usar [x5] que convierte las adaptaciones a un archivo que luego se puede importar en Tia Portal 8. Importar en Tia Portal el archivo [PLCTags_Updated.xlsx]
Nuevo flujo alternativo con Excel:
Después del paso 2, se puede usar : [x7] para: Modificar manualmente el archivo Excel de IOs generado- Aplicar los cambios de vuelta al archivo AML original Generar un AML actualizado con las modificaciones
Cambios recientes:
Automatización de selección de proyecto TIA Portal (x1_export_CAx.py):
- Eliminada la interfaz gráfica tkinter para selección manual de archivos
- El script ahora lee automáticamente la ruta del proyecto desde la configuración
siemens_tia_project
en work_dir.json - Nueva función
find_project_file_in_dir()
que busca automáticamente archivos .ap18/.ap19/.ap20 en el directorio configurado - Validación automática que verifica que exista exactamente un archivo de proyecto en el directorio especificado
- Mejora en la experiencia de usuario al eliminar pasos manuales de selección de archivos
Directorio de exportación CAx configurable (x1_export_CAx.py):
- La ruta de exportación de archivos CAx ahora es configurable.
- El script utiliza el valor
aml_exp_directory
de la configuraciónlevel2
enwork_dir.json
. - La nueva ruta de salida se construye como
working_directory
/aml_exp_directory
. - Todos los archivos generados (AML, Markdown y log) se guardan en este directorio, manteniendo los artefactos de exportación organizados.
Directorio de E/S configurable para el procesamiento CAx (x2_process_CAx.py):
- El script ahora utiliza el directorio
aml_exp_directory
dework_dir.json
para la entrada y salida de archivos. - Se ha unificado el comportamiento con
x1_export_CAx.py
, esperando el archivo AML de entrada enworking_directory
/aml_exp_directory
. - Todos los archivos generados (JSON, Markdown, Excel) se guardan en este mismo directorio, manteniendo la consistencia del flujo de trabajo.
- Se mantiene el fallback al directorio
.debug
para la ejecución independiente del script.
Selección automática de archivo AML (x2_process_CAx.py):
- El script ahora busca automáticamente un único archivo
.aml
en el directorioaml_exp_directory
. - Si se encuentra un solo archivo, se utiliza directamente, eliminando la necesidad del diálogo de selección manual.
- Si se encuentran cero o múltiples archivos
.aml
, el script recurre al diálogo de selección manual para que el usuario resuelva la ambigüedad. - Esta mejora agiliza el flujo de trabajo al automatizar la selección de archivos en el caso más común.
Directorio de resultados configurable (x1 y x2):
- Se ha agregado el parámetro
resultados_exp_directory
a la configuraciónlevel2
enwork_dir.json
. x1_export_CAx.py
ahora guarda la tabla de resumen (*CAx_Summary.md
) en el subdirectorioworking_directory
/resultados_exp_directory
.x2_process_CAx.py
guarda todos los archivos de resultados finales (tablas Markdown y reportes Excel) enworking_directory
/resultados_exp_directory
, anidados en carpetas por PLC.- Los archivos intermedios (JSON, logs, debug files) permanecen en
aml_exp_directory
, separando los artefactos de compilación de los resultados finales.
Corrección de errores de exportación en TIA Portal (x1_export_CAx.py):
- Se ha solucionado un error que ocurría cuando el archivo AML a exportar ya existía. El script ahora elimina los archivos
.aml
y.log
existentes antes de la exportación para permitir la sobrescritura. - Se ha corregido el manejo de excepciones al eliminar un bloque
except
que intentaba capturar una excepción inexistente (TiaException
), lo que causaba un error secundario y ocultaba el problema original.
Flujo de trabajo de E/S con Excel mejorado (x3_excel_to_md.py):
- Directorios configurables: El script ahora utiliza
tags_exp_directory
(delevel3
) para buscar archivos Excel yresultados_exp_directory
(delevel2
) para guardar el archivo Markdown resultante. Ambos se leen desdework_dir.json
. - Selección automática de archivo: Si solo existe un archivo
.xlsx
entags_exp_directory
, el script lo utiliza automáticamente, eliminando la necesidad de selección manual. - Fallback a diálogo manual: Si se encuentran cero o múltiples archivos Excel, el script muestra un diálogo para que el usuario seleccione el archivo correcto, manteniendo la flexibilidad.
- Consistencia del proyecto: Esta actualización alinea el comportamiento de
x3_excel_to_md.py
con los scriptsx1
yx2
, creando un flujo de trabajo más coherente y automatizado.
Configuración dinámica de rutas en el generador de prompts (x4_prompt_generator.py):
- Las rutas de los archivos de entrada (
Master IO Tags.md
yHardware.md
) ahora se construyen dinámicamente utilizandoresultados_exp_directory
de la configuraciónlevel2
, alineándose con el resto de los scripts. - La configuración de las rutas base de Obsidian (
ObsideanDir
,ObsideanProjectsBase
) se ha movido allevel3
para una mejor organización de la configuración. - El prompt generado refleja automáticamente estas rutas configurables, asegurando que las herramientas de IA siempre utilicen las ubicaciones correctas de los archivos.