ARES — Amateur Rocket Embedded System

ARES es una plataforma de gestión de vuelo integrada para cohetes amateur. El sistema centraliza el registro de datos, el control de misión y la telemetría en una placa base electrónica diseñada con una arquitectura flexible. Esto permite que el sistema evolucione y se adapte a distintos tipos de hardware según los objetivos de cada lanzamiento.

El sistema opera como una pila tecnológica completa (full-stack) con responsabilidades bien definidas:

🏗️ Arquitectura del sistema ARES

ComponenteFunción PrincipalDescripción Técnica
🧭 GNC (Navegación) Fusión de sensoresLectura de IMU, barómetro y GPS mediante protocolos I2C y UART.
📜 Motor AMSControl de misiónEjecución de scripts en texto plano para gestionar estados (apogeo, paracaídas).
📡 Data Link (Radio)TelemetríaUso del protocolo binario APUS (estándar ESA adaptado) para bajo ancho de banda.
💻 GSE (Tierra)Interfaz de operaciones

Punto de acceso WiFi con API REST para configuración y descarga de datos.

 

🧠 AMS: el cerebro programable de ARES

La característica que define a ARES es su motor de misión, AMS (Ares Mission Script). En la mayoría de ordenadores de vuelo amateur, la lógica de la misión está escrita directamente en el firmware. Si quieres cambiar una condición de despliegue, modificar la telemetría o ajustar un umbral de seguridad, debes recompilar y volver a cargar el software completo. ARES adopta una filosofía diferente: la misión se describe mediante un lenguaje declarativo propio que se interpreta en tiempo real durante el vuelo. Esto permite:
- Modificar perfiles de vuelo sin recompilar firmware.
- Utilizar el mismo hardware para misiones completamente distintas.
- Validar la lógica de misión antes del lanzamiento.
- Mantener separada la electrónica de la lógica operacional.

Un ejemplo simplificado de AMS sería:

state WAIT:
transition to FLIGHT when TC.command == LAUNCH

state FLIGHT:
transition to DESCENT when BARO.alt < 50

state DESCENT:
transition to LANDED when GPS.speed < 1

Con este enfoque, el firmware actúa como una plataforma de ejecución mientras que la misión se convierte en un archivo configurable que puede cargarse mediante WiFi antes del lanzamiento.

Abrir guía AMS

📡 Telemetría y comunicaciones

ARES incorpora un sistema de telemetría diseñado para entornos con ancho de banda limitado. La comunicación utiliza un protocolo binario propio inspirado en el estándar PUS de la Agencia Espacial Europea (ESA), adaptado para sistemas embebidos mediante una implementación ligera denominada APUS.

Actualmente el enlace de radio se realiza mediante módulos LoRa de 868 MHz, permitiendo transmitir:
- Telemetría de estado.
- Eventos de misión.
- Alertas de seguridad.
- Confirmaciones de comandos.

Mientras la información esencial se transmite por radio, los datos de alta frecuencia se almacenan localmente en memoria flash para su posterior análisis tras la recuperación del vehículo.

🌐 Ground Segment (GSE)

La interacción con el vehículo se realiza mediante una estación de tierra integrada. El ordenador de vuelo crea un punto de acceso WiFi que permite:
- Cargar nuevas misiones AMS.
- Configurar parámetros del sistema.
- Consultar el estado de sensores y subsistemas.
- Descargar registros de vuelo.
- Armar el sistema antes del lanzamiento.

Todo ello se expone mediante una API REST, facilitando el desarrollo de herramientas de monitorización y control.

🚀 Próximos pasos

ARES continúa evolucionando hacia una plataforma de vuelo más completa. Las siguientes versiones incorporarán soporte para actuadores capaces de ejecutar acciones físicas durante la misión:
- Despliegue de paracaídas principal y drogue.
- Activación de sistemas pirotécnicos.
- Separación de etapas.
- Control aerodinámico activo.
- Sistemas de recuperación avanzados.

La visión final es convertir ARES en una plataforma abierta, modular y reutilizable para proyectos de cohetería experimental.

En la aviónica amateur, un error de software no es un «bug» molesto; es la pérdida total del cohete o un riesgo de seguridad en la rampa. Por eso, ARES no se programa como un proyecto de fin de semana, sino siguiendo estándares de misión crítica:

🛡️ Los 8 pilares de control de ARES

EstándarEnfoque PrincipalObjetivo en el Vuelo
🛰️ PO10 (NASA JPL)Determinismo estrictoCódigo verificable con reglas de oro (ej. nada de recursión infinita).
🚗 MISRA C / C++Seguridad de tiposEliminar comportamientos impredecibles del lenguaje C/C++.
🔒 CERT CDefensa de datosValidación de entradas para evitar bloqueos por datos corruptos.
📡 APUS (ESA PUS)Disciplina de RFProtocolo de paquetes profesional para que la telemetría sea íntegra.
✈️ DO-178CProceso de seguridadMetodología de desarrollo inspirada en la certificación aviónica civil.
⏱️ RTOS DisciplineConcurrencia seguraGestión de tareas y recursos sin condiciones de carrera.
📝   Doxygen (DOX)Documentación técnicaCódigo auto-explicativo y trazable para auditorías de seguridad.
🌐 REST APIInterfaz de tierraComunicación estandarizada y segura vía WiFi antes del despegue.

🔓 Filosofía Open Source en ARES

ElementoTipo de Licencia¿Qué significa para el usuario?
🔌 Hardware (PCB)Hardware Libre(En desarrollo) Puedes descargar los archivos de diseño, fabricar tu propia placa, modificar el circuito o incluso vender versiones mejoradas.
💻 Software (Firmware)GPLv3El código es abierto. Si alguien lo mejora o lo usa en otro proyecto, está obligado a compartir esas mejoras bajo la misma licencia libre.

El proyecto ARES está alojado en GitHub. Es software libre, así que si quieres colaborar con el proyecto o usarlo por tu cuenta, es todo tuyo.