Commit Graph

29 Commits

Author SHA1 Message Date
Miguel f5db758698 feat: Implement Plot Manager and Plot Manager Simple components with collapsible forms for plot definitions and variables configuration 2025-08-14 14:48:02 +02:00
Miguel 09263d39f8 Update application event logging, refine plot session management, and enhance configuration handling. Removed obsolete session_id fields, added new application start events, and improved session creation logic for better user experience. 2025-08-14 11:36:22 +02:00
Miguel 2845d71efe Refactor dataset and plot management to support new array format
- Updated dataset definitions to use a sampling interval of 0.5 seconds.
- Changed plot definitions to reduce the time window to 25 seconds and added a new plot for "Brix".
- Removed deprecated variable configurations from plot variables.
- Refactored ConfigManager to load datasets and variables from new array format, eliminating legacy save methods.
- Updated PLCDataStreamer and PlotManager to reflect changes in dataset and plot management, removing automatic save calls.
- Enhanced ChartjsPlot component to handle variable configurations and session management more efficiently.
- Improved PlotRealtimeSession to ensure backend commands are verified before applying local state changes.
- Adjusted system state to reflect active datasets and connection status.
2025-08-14 11:16:52 +02:00
Miguel 2ed5acf039 Refactor configuration management and schema handling
- Updated JSON schema for plot variables to improve clarity and structure.
- Modified UI schema for dataset variables to enhance user experience and layout.
- Revamped plot definitions UI schema for better organization and usability.
- Enhanced dataset manager to support filtered variable configuration based on selected datasets.
- Implemented a unified JSON manager for streamlined CRUD operations on configuration files.
- Improved error handling and validation for JSON schema loading and configuration management.
- Updated main application logic to utilize new JSON and schema managers for configuration operations.
- Added validation for dataset definitions and PLC configuration schemas.
2025-08-13 23:31:47 +02:00
Miguel 276efb117d Refactor configuration schemas and UI schemas for datasets and plots
- Changed dataset_variables schema from object to array format, adding dataset_id property.
- Updated plc schema by removing cleanup_interval_hours and max_hours properties, and added sampling_interval to udp_config.
- Modified plot_variables schema from object to array format, adding plot_id property.
- Enhanced UI schemas for dataset definitions and variables, improving layout and descriptions.
- Updated PLC configuration UI schema to reflect changes in the underlying schema.
- Improved error handling and logging in the ConfigManager for better diagnostics.
- Added helper methods in PLCClient for reconnection status and connection info.
- Unified API endpoints for configuration management, allowing direct file access and validation against schemas.
- Introduced a validation script for schema compliance checks.
2025-08-13 22:12:11 +02:00
Miguel 04f5122cc6 Actualización de la gestión de eventos de aplicación en application_events.json, añadiendo múltiples entradas para registrar eventos de inicio y errores de conexión al PLC. Se ajustaron las fechas de última actualización y se incrementó el total de entradas. Además, se implementó un nuevo endpoint de verificación de salud en main.py, mejorando la monitorización del estado del sistema. Se realizaron mejoras en la interfaz de usuario y se optimizó la carga de datos en el Dashboard, asegurando una experiencia más fluida y consistente. 2025-08-13 00:21:44 +02:00
Miguel 0c11ee3ae2 Actualización de application_events.json para incluir nuevos eventos de inicio de aplicación y ajustes en las fechas de última actualización. Se eliminaron archivos obsoletos relacionados con la integración de Chart.js y se reorganizaron las rutas de configuración en el código. Se implementaron mejoras en la gestión de esquemas y se optimizó la carga de recursos estáticos, incluyendo la favicon y logos en la interfaz. Además, se realizaron ajustes en el manejo de errores y se mejoró la estructura de directorios para una mejor organización del proyecto. 2025-08-11 16:26:20 +02:00
Miguel 593487e52f Actualización del archivo .gitignore para ignorar archivos generados automáticamente por React (Vite) en el frontend. Se añadieron múltiples entradas en application_events.json para registrar eventos de inicio de aplicación y errores de conexión al PLC. Se realizaron cambios en main.py para ajustar las rutas y mejorar la gestión de errores, además de eliminar la interfaz de usuario heredada. Se actualizaron las dependencias en package.json y se implementó un enrutador en App.jsx para la nueva SPA de React. Se modificó index.html para reflejar la transición a la nueva interfaz. 2025-08-11 15:01:53 +02:00
Miguel 5581e26d10 Version basica con Forms pero no dan una mejora a la aplicacion 2025-08-11 11:55:22 +02:00
Miguel 10df4e94bd Base de el configurador json basado en schemas 2025-08-10 01:17:14 +02:00
Miguel cf5a169cce Actualización de application_events.json con nuevos eventos para la gestión de datasets y sesiones de plot. Se mejoró el manejo de errores en la conexión al PLC en main.py, proporcionando detalles adicionales en caso de fallo. Se ajustaron las fechas de última actualización en varios archivos de configuración, incluyendo plc_config.json y plc_datasets.json. Se realizaron mejoras en la interfaz de usuario para reflejar el estado de conexión y se optimizó el código en plotting.js para una mejor gestión de datos en tiempo real. 2025-08-08 18:30:27 +02:00
Miguel df07451079 Implementación de un sistema de reconexión automática para el PLC con backoff exponencial, permitiendo la reanudación de streaming y grabación de datasets tras desconexiones. Se añadieron nuevos endpoints API para gestionar el estado de reconexión y habilitar/deshabilitar esta funcionalidad. Se actualizaron los archivos de configuración y estado del sistema, así como la interfaz de usuario para reflejar el estado de reconexión y mejorar la experiencia del usuario. 2025-08-04 18:26:22 +02:00
Miguel 5e575fd112 Actualización del sistema de plotting en tiempo real con nuevas funcionalidades, incluyendo la creación y edición de sesiones de plot a través de un formulario colapsable. Se implementaron nuevos endpoints API para obtener y actualizar la configuración de las sesiones de plot. Además, se mejoró la interfaz de usuario con sub-tabs dinámicos para gestionar múltiples sesiones de plot y se realizaron ajustes en los estilos CSS para una mejor experiencia visual. Se actualizaron los archivos de configuración y estado del sistema para reflejar estos cambios. 2025-07-21 12:30:26 +02:00
Miguel a13baed5c6 Implementación de un sistema de plotting en tiempo real con soporte para múltiples sesiones y un sistema de triggers basado en variables booleanas. Se añadieron nuevos endpoints API para gestionar sesiones de plotting, así como mejoras en la interfaz de usuario para facilitar la creación y control de plots. Se actualizaron los estilos CSS y se integraron nuevas funcionalidades en el frontend para una experiencia de usuario más intuitiva. Además, se realizaron ajustes en los archivos de configuración y estado del sistema para reflejar estos cambios. 2025-07-21 09:26:41 +02:00
Miguel 5138a2e7cd Implementación de un sistema de control de streaming UDP independiente, separando la grabación automática de CSV y la transmisión manual a PlotJuggler. Se añadieron nuevos endpoints API para iniciar y detener el streaming UDP, y se mejoró la gestión de eventos y el registro de estado. Además, se actualizaron los archivos de configuración y estado del sistema para reflejar estos cambios, y se realizaron mejoras en la interfaz de usuario para clarificar la distinción entre las operaciones de grabación y streaming. 2025-07-20 23:30:12 +02:00
Miguel a37cb8be3b Refactorizado de index.html 2025-07-20 23:05:14 +02:00
Miguel e9c86ed234 Actualización del sistema de streaming en tiempo real, añadiendo controles para la transmisión de variables y estado en la interfaz de usuario. Se implementaron mejoras en la gestión de conexiones SSE, permitiendo la transmisión continua de datos y actualizaciones automáticas. Además, se ajustaron los archivos de configuración y estado del sistema para reflejar los cambios recientes, y se mejoró la experiencia del usuario con nuevos indicadores de estado y mensajes informativos. 2025-07-20 11:32:59 +02:00
Miguel e939078799 Implementación de un sistema de gestión de configuración CSV, que incluye la obtención y actualización de la configuración de grabación CSV a través de la API. Se añadió la funcionalidad para limpiar archivos CSV antiguos según la configuración establecida, mejorando la gestión del espacio en disco. Además, se actualizaron los archivos de configuración y estado del sistema para reflejar los cambios recientes, y se mejoró la interfaz de usuario para mostrar información sobre el directorio de archivos CSV y su estado. 2025-07-19 23:46:46 +02:00
Miguel f276eb96c5 Version base con Pico.css 2025-07-19 12:17:44 +02:00
Miguel 81ade6f8f0 Antes de refactorizar a varias clases 2025-07-19 10:00:52 +02:00
Miguel 01d5df1c86 Actualización del registro de eventos en application_events.json con nuevos eventos relacionados con la activación y desactivación de conjuntos de datos, así como la conexión y desconexión de PLC. Se mejoró la gestión de rutas de recursos en main.py para asegurar la correcta carga de archivos en diferentes entornos. Se actualizó la fecha de última modificación en plc_datasets.json, system_state.json y se eliminó el archivo plc_streamer.lock, que ya no es necesario. 2025-07-18 11:15:05 +02:00
Miguel 3d4c2b3d42 Implementación de mejoras en la gestión de variables de streaming, asegurando que solo se transmitan las variables activas y sincronizando las configuraciones de streaming al iniciar la aplicación. Se corrigieron problemas de inicialización de streaming en la recuperación automática y se actualizaron los archivos de configuración y estado del sistema para reflejar los cambios recientes. Además, se mejoró la interfaz de usuario para mostrar correctamente el estado de las variables en streaming. 2025-07-17 18:32:47 +02:00
Miguel 79479c368a Implementación de un sistema de gestión de archivos CSV para conjuntos de datos, que permite la creación de nuevos archivos con marcas de tiempo cuando se modifican variables en conjuntos activos. Se añadió un seguimiento independiente del estado de modificación por conjunto de datos y se mejoró el registro de eventos para reflejar la creación de archivos CSV y errores específicos. Además, se actualizaron los archivos de configuración y se ajustaron los datos de estado del sistema para reflejar los cambios recientes. 2025-07-17 17:54:30 +02:00
Miguel f8f6537fc2 Implementación de un sistema de gestión de múltiples conjuntos de datos, permitiendo la creación, activación y desactivación de conjuntos de datos independientes con configuraciones personalizadas. Se eliminó el archivo de variables y se mejoró la interfaz para la gestión de variables dentro de cada conjunto de datos. Se añadieron nuevas funcionalidades en la API para manejar conjuntos de datos y sus variables, mejorando la experiencia del usuario y la organización de datos en entornos industriales. 2025-07-17 17:10:03 +02:00
Miguel c0d7cbc91a Se amplió el soporte para tipos de datos y áreas de memoria en la aplicación, incluyendo MW (Memory Words), PEW (Process Input Words), PAW (Process Output Words) y direccionamiento de bits individuales. Se mejoró la validación de configuraciones de variables y se implementó un sistema de edición de variables con interfaz modal. Además, se integraron nuevas funcionalidades en la API para la gestión de variables, permitiendo una experiencia de usuario más fluida y completa. 2025-07-17 16:23:18 +02:00
Miguel 5e3b1ae76e Se implementó un sistema de registro de eventos persistente con almacenamiento en disco y visualización en tiempo real en la interfaz web. Se añadieron nuevas funcionalidades para la carga y guardado del estado del sistema, así como mejoras en la gestión de instancias únicas y recuperación automática. Además, se realizaron ajustes en la interfaz para mostrar el registro de eventos, incluyendo opciones de filtrado y limpieza de la vista. 2025-07-17 15:47:48 +02:00
Miguel cc729d8f82 Implementadas mejoras significativas en el sistema de streaming y grabación de CSV. Se añadió un control independiente para la grabación de CSV, permitiendo la organización automática de archivos por hora. Se implementó un sistema de persistencia del estado del sistema y recuperación automática, mejorando la fiabilidad en entornos industriales. Además, se integró el logo de SIDEL en la interfaz y se realizaron ajustes en el diseño para una mejor experiencia de usuario. 2025-07-17 14:32:45 +02:00
Miguel c1d258fbf3 Implementada persistencia de configuración en JSON y traducción de la interfaz al inglés. Se añadieron métodos para cargar y guardar configuraciones y variables, mejorando la usabilidad y la experiencia del usuario. Además, se actualizó el diseño visual a una paleta de grises más profesional. 2025-07-17 12:45:31 +02:00
Miguel a1f582e402 Primera Version 2025-07-16 16:37:51 +02:00