4.5 KiB
4.5 KiB
🇩🇪 Deutsch | 🇬🇧 English | 🇫🇷 Français | 🇪🇸 Español
Plan del proyecto: Sistema de riego modular
| Hecho | Tarea | Fecha | Observaciones |
|---|---|---|---|
| ✅ | Fase 0: Planificación y definición | ||
| ✅ | Crear y finalizar el concepto | 30.06.2025 | La arquitectura, los componentes y la arquitectura básica están definidos. |
| ✅ | Definir el mapa de registros MODBUS | 30.06.2025 | La "API" de los esclavos está definida y constituye la base para el desarrollo del software. |
| ☐ | Fase 1: Prototipo de nodo esclavo (placa de evaluación STM32) | Objetivo: Un único esclavo cobra vida en la placa de evaluación. | |
| ☐ | 1.1 Configurar el entorno de desarrollo para STM32/Zephyr | Instalar la cadena de herramientas, VS Code, el SDK de Zephyr, MCUBoot, etc. y hacer que funcione un "Hola Mundo". | |
| ☐ | 1.2 Crear el firmware básico para el nodo esclavo | Implementar la abstracción de hardware (GPIO, ADC, UART para RS485). | |
| ☐ | 1.3 Implementar la pila MODBUS-RTU en el esclavo | Basado en el mapa de registros definido. Inicialmente solo funciones de lectura (estado, versión). | |
| ☐ | 1.4 Implementar la lógica central (p. ej., control de válvulas) | Implementación de la lógica VALVE_STATE_MOVEMENT, medición de corriente para posiciones finales, etc. |
|
| ☐ | Fase 2: Verificación del firmware del esclavo | Objetivo: Demostrar que el esclavo se adhiere exactamente a la especificación MODBUS. | |
| ☐ | 2.1 Probar el nodo esclavo con un PC a través de un adaptador USB-MODBUS | Hito crítico. Leer y escribir los registros con herramientas como "QModMaster" o un script de Python. El firmware del esclavo se valida así independientemente de la puerta de enlace. | |
| ☐ | 2.2 Probar el mecanismo de actualización de firmware | Probar el proceso de actualización completo (fragmentación, comprobación de CRC) con un script desde el PC. El esclavo inicialmente solo escribe el firmware en un área de RAM no utilizada. | |
| ☐ | Fase 3: Diseño de hardware y construcción de prototipos | Objetivo: Pasar del desarrollo en la placa de evaluación a un PCB a medida. | |
| ☐ | 3.1 Diseñar el esquema y el diseño del PCB para el nodo esclavo | Basado en la experiencia con la placa de evaluación. | |
| ☐ | 3.2 Pedir y ensamblar placas prototipo | Por ejemplo, en JLCPCB. Soldar los componentes THT (conectores, etc.) uno mismo. | |
| ☐ | 3.3 Puesta en marcha del hardware del primer prototipo | Comprobar voltajes, cargar el firmware y repetir las pruebas de la fase 2 para validar el hardware. | |
| ☐ | 3.4 Implementar la rutina de escritura en flash para la actualización del firmware | Aplicar el proceso validado en la RAM en el paso 2.2 a la memoria flash real. | |
| ☐ | Fase 4: Desarrollo de la puerta de enlace (placa de evaluación ESP32) | Objetivo: Construir el puente desde el mundo RS485 a la red doméstica. | |
| ☐ | 4.1 Crear el firmware de la puerta de enlace (ESPHome) | Configurar una puerta de enlace simple de MODBUS TCP a RTU en la placa de evaluación ESP32C6. | |
| ☐ | 4.2 Conectar y probar la puerta de enlace con el prototipo de nodo esclavo | Probar la cadena: PC (como cliente MODBUS TCP) -> WLAN -> Puerta de enlace -> RS485 -> Esclavo. | |
| ☐ | Fase 5: Integración del sistema en Home Assistant | Objetivo: Hacer que el sistema sea "inteligente". | |
| ☐ | 5.1 Configurar la integración de MODBUS en Home Assistant | Crear los sensores y las entidades para el nodo esclavo en configuration.yaml o a través de la interfaz de usuario. |
|
| ☐ | 5.2 Crear paneles y automatizaciones en HA | Visualización de los estados (válvula, bomba, etc.) y creación de la lógica de riego real. | |
| ☐ | 5.3 Desarrollar un script de Python para la actualización de firmware en HA | Implementación de la carga basada en fragmentos como un script que se puede llamar desde HA. | |
| ☐ | Fase 6: Montaje y puesta en marcha | Objetivo: Instalar el sistema terminado. | |
| ☐ | 6.1 Construir y probar todos los nodos esclavos necesarios | Probar cada esclavo individualmente con el PC a través de un adaptador USB y configurar la dirección MODBUS. | |
| ☐ | 6.2 Instalación final y cableado del sistema | Instalación de los componentes en el cobertizo, cableado del bus RS485. | |
| ☐ | 6.3 Prueba y calibración general del sistema | Calibrar el sensor de nivel, comprobar los tiempos de funcionamiento de las válvulas, probar el comportamiento a prueba de fallos. |