Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

Plataforma de datos de carga de vehículos eléctricos conectados

Unifique los datos y las operaciones de carga de vehículos eléctricos con MongoDB para crear experiencias de carga escalables y con gran capacidad de respuesta, y adáptese rápidamente a medida que crece su infraestructura.

caso de uso: Internet de las Cosas

Industrias: Manufactura y Movilidad

Productos y herramientas: MongoDB Atlas, MongoDB Search, MongoDB Time Series

emparejar: Vercel, Apollo GraphQL

Ya sea usted un fabricante de automóviles, un proveedor de energía o servicios públicos, o una empresa emergente de tecnología de movilidad, la carga de vehículos eléctricos conectados requiere reunir datos que cambian a diferentes velocidades y que alimentan diferentes partes de la experiencia de carga.

Estos datos incluyen:

  • Ubicación de las estaciones y capacidades de los conectores.

  • Disponibilidad de estaciones y sesiones activas.

  • Precios.

  • Eventos operacionales.

A medida que crecen las redes de recarga, mantener la coherencia y el acceso a estos datos en todas las experiencias operativas y de cara al conductor se vuelve cada vez más importante para ofrecer servicios fiables y tomar decisiones informadas.

Esta solución demuestra cómo una capa de datos operativos unificada puede integrar estas cargas de trabajo en MongoDB. Una base de datos compartida permite experiencias de cobro en tiempo real y proporciona a los operadores una visión coherente de la actividad de las estaciones y las sesiones.

Dentro de una única arquitectura de aplicación, la solución gestiona:

  • Localización y disponibilidad de estaciones.

  • Cobro de reservas y sesiones activas.

  • Eventos operacionales y telemetría.

Este enfoque utiliza el modelo de documentos de MongoDB para organizar los datos en torno a los patrones de acceso de las aplicaciones, mientras que las consultas geoespaciales permiten la detección basada en la ubicación, las actualizaciones condicionales ayudan a mantener una disponibilidad precisa y los flujos de cambios conectan las modificaciones del estado operativo con el procesamiento posterior. La consolidación de los datos operativos en una plataforma flexible permite a su equipo crear aplicaciones de carga conectada que se adaptan al crecimiento de las redes, los requisitos de datos y las necesidades operativas.

Descripción general de la plataforma de datos que da servicio al ecosistema de carga de vehículos eléctricos.

Figura 1. Descripción general de la plataforma de datos que da servicio al ecosistema de carga de vehículos eléctricos.

haga clic para ampliar

La solución integra la experiencia del conductor, las operaciones de carga, la simulación de estaciones y los datos operativos a través de una arquitectura de aplicación unificada.

Arquitectura de demostración de carga de vehículos eléctricos

Figura 2. Arquitectura de demostración de carga de vehículos eléctricos.

haga clic para ampliar

La aplicación Next.js ofrece dos experiencias principales:

  • Aplicación para el conductor: Se utiliza para encontrar estaciones de carga y gestionar las sesiones de carga.

  • Centro de control de operaciones: Se utiliza para supervisar la actividad de carga y los datos operativos en tiempo real.

La aplicación se comunica bidireccionalmente con el Sistema de Gestión de Estaciones de Carga (CSMS), desarrollado con Apollo GraphQL. El CSMS proporciona el contrato de la aplicación para los flujos de trabajo de carga y conecta las acciones de la aplicación con las operaciones de las estaciones de carga. La aplicación también se integra con servicios de geolocalización a través de OpenStreetMap para facilitar la búsqueda de estaciones y ofrecer experiencias basadas en la ubicación.

Un simulador Python FastAPI representa la actividad de la estación de carga y genera telemetría de sesión. Los flujos de cambios deMongoDB capturan los cambios de estado en la sesión de carga para el flujo de trabajo CSMS-simulador. El simulador utiliza estos eventos para:

  • Iniciar o detener el procesamiento de una sesión de carga.

  • Calcula el estado de carga simulado.

  • Generar telemetría de sesión.

MongoDB proporciona una plataforma de datos operativos unificada para toda la arquitectura. Integra todos los datos necesarios para la experiencia de carga integral, desde el contexto del conductor y del vehículo hasta la infraestructura de carga, la actividad de la sesión, los eventos operativos y la telemetría de alto volumen.

A medida que su solución evoluciona, las funcionalidades de MongoDB, como las consultas geoespaciales, lascolecciones de series temporales, la búsqueda en Atlas y el archivo en línea, admiten diversos patrones de datos y acceso.

El modelo de datos reproduce el funcionamiento real de las aplicaciones de carga de vehículos eléctricos: los conductores necesitan una visión completa de la sesión de carga, las búsquedas de estaciones requieren información sobre ubicación y disponibilidad, y la telemetría debe gestionarse como un flujo de datos de alto volumen. El modelo de documentos de MongoDB permite configurar cada colección en función de estos patrones de acceso específicos.

La solución utiliza las siguientes colecciones principales:

  • users y vehicles: Almacenar información del conductor y del vehículo.

  • chargingStations y chargingPoints: Seguimiento de la estación de búsqueda y estado del equipo de suministro de vehículos eléctricos (EVSE).

  • chargingSessions: Gestionar reservas, sesiones activas e historial de cobros.

  • incidents: Seguimiento de problemas operativos.

  • telemetryAlmacena grandes volúmenes de datos de carga.

El modelo de documento hace que la solución sea intuitiva y más fácil de implementar.

Por ejemplo, la colección chargingSessions utiliza el patrón de referencia extendida para mantener juntos los datos del historial de sesión. Junto con las referencias al vehículo y la estación subyacentes, la sesión almacena pequeñas instantáneas de los detalles relevantes.

{
"status": "COMPLETED",
"stationSnapshot": {
"name": "Downtown Mall Charging",
"addressShort": "Main St 10, Zurich",
"chargingPointLabel": "Bay 1"
},
"vehicleSnapshot": {
"make": "BMW",
"model": "i3"
},
"charging": {
"energyDeliveredKwh": 52.4
},
"pricingSnapshot": {
"currency": "EUR",
"priceCentsPerKwh": 55
},
"cost": {
"totalCents": 2882
}
}

Cuando los conductores consultan su historial de sesiones, la aplicación recupera esta información de un único documento sin combinar varias colecciones. Las instantáneas también conservan el contexto histórico de la sesión, incluso si los datos subyacentes de la estación o del vehículo cambian posteriormente.

El mismo principio simplifica la búsqueda de estaciones. La colección chargingStations almacena su ubicación en formato GeoJSON, lo que permite realizar consultas geoespaciales en MongoDB para encontrar estaciones cercanas a la ubicación del conductor. Además, mantiene recuentos de disponibilidad calculados y una proyección limitada de las capacidades de los puntos de recarga, de modo que las consultas comunes de mapas y búsquedas se pueden responder directamente desde el documento de la estación.

{
"name": "Downtown Mall Charging",
"location": {
"type": "Point",
"coordinates": [8.5417, 47.3769]
},
"availability": {
"availableNowPoints": 7
},
"chargingPoints": [
{
"connectors": [
{ "type": "CCS", "power": 150 },
{ "type": "TYPE2", "power": 22 }
]
}
]
}

Los cambios frecuentes de estado operativo se almacenan en la colección separada chargingPoints para evitar la actualización de los documentos de la estación cada vez que cambia el estado de un punto de carga. Esta separación también mantiene la eficiencia del modelo a medida que aumenta el volumen de telemetría.

La telemetría tiene un patrón de acceso diferente: es de alto volumen, se basa en el tiempo y crece continuamente. La solución mantiene la telemetría separada y utiliza una colección de series temporales de MongoDB con un índice TTL para aplicar automáticamente las políticas de retención. Para los datos de mayor duración, MongoDB Online Archive traslada los datos más antiguos a un almacenamiento de menor coste, lo que proporciona una forma nativa de gestionar el ciclo de vida de los datos sin necesidad de crear flujos de trabajo de archivado independientes.

{
"timestamp": "2026-02-12T08:11:58Z",
"meta": {
"stationId": "65c8f2e2d2f4c3a9b3b9b001",
"chargingPointId": "65c8f2e2d2f4c3a9b3b9b101",
"stationCode": "station-001",
"chargingPointCode": "cp_station-001_01"
},
"messageType": "SESSION_SAMPLE",
"ok": true,
"powerKw": 120,
"energyKwhDelta": 0.4,
"voltageV": 400,
"currentA": 300,
"temperatureC": 31.2
}

Estos patrones permiten que la implementación se centre en los flujos de trabajo reales de la aplicación, al tiempo que posibilitan que cada tipo de dato se adapte y evolucione de forma independiente. El resultado es un modelo de documentos práctico que reduce la complejidad de la aplicación sin sacrificar la flexibilidad.

Para ejecutar la solución localmente, siga los siguientes pasos:

1

Instala Docker, clona el repositorio y copia .env.example a .env para añadir tu cadena de conexión de MongoDB.

2

Ejecuta make build para iniciar la aplicación, el backend de CSMS y el simulador de estación de carga. La solución inicializa automáticamente la base de datos la primera vez que la ejecutas.

3

Abra http://localhost:3000 para probar el recorrido del conductor: encuentre una estación cercana, filtre los puntos de carga, haga una reserva, inicie una sesión e informe de un incidente.

4

Acceda al Centro de Control de Operaciones para ver la actividad de la sesión, la telemetría, la utilización, los incidentes y los análisis a medida que cambia la actividad de facturación.

Para obtener las instrucciones de configuración completas, las opciones de desarrollo local, las variables de entorno y los comandos adicionales, consulte el repositorio de GitHub.

  • Unifique los datos y las operaciones de carga de vehículos eléctricos: consolide las experiencias de los conductores, la infraestructura de carga, los datos operativos y la telemetría en una única plataforma de datos operativos para mejorar la visibilidad y simplificar la arquitectura.

  • Simplifique el desarrollo y la evolución: utilice el modelo de documentos flexible de MongoDB y los patrones de esquema para crear y adaptar los flujos de trabajo de facturación a medida que cambian los requisitos.

  • Diseñada para la disponibilidad y la escalabilidad: combine datos en tiempo real, procesamiento basado en eventos y capacidades nativas de MongoDB para ofrecer experiencias de facturación ágiles a medida que crecen la infraestructura y el volumen de datos.

  • Amplíe las operaciones con IA: utilice el contexto de la estación conectada, la sesión, el incidente y la telemetría como base para los flujos de trabajo de soporte y toma de decisiones operativas asistidos por IA.

  • Rami Pinto, MongoDB

  • Humza Akhtar, MongoDB

  • Daniel Jamir, MongoDB