Misiones de dron — el planificador
Una DroneMission es un plan adjunto a un polígono: un patrón de
cobertura, una pila de parámetros de vuelo y una lista de waypoints
computados que la aeronave volará realmente. Cada campo en el documento
DroneMission de Firestore se mapea directamente a un control en el
planificador, y desde ahí bien a una entrega a peer TACLINK (dron de
mano) o bien a un WPML KMZ subido a un dock DJI.
Abrir el planificador
Desde el tile de mapa de operaciones:
- Dibuja el polígono operativo (SAR, custom, zone — cualquier tipo de polígono funciona).
- Clic derecho en el polígono → Planificar misión de dron desde polígono.
- O abre el panel de misión de dron y haz clic en Nuevo contra un polígono existente.
Desde la página de detalle de una misión → Misiones de dron → Nuevo plan hace lo mismo para polígonos ya adjuntos a la operación.
Configurar el plan
Identidad
- Nombre y descripción opcional.
- Color de ruta (
pathColor) — hex, dibujado en el preview del mapa. Predeterminado#e0e0e0.
Cobertura
- Patrón (
pattern) — uno deparallel,creeping-line,expanding-square,sector,crosshatch,perimeter,oblique,corridor,slope,geometric,mapping. Ver patrones. - Altitud (
altitudeM) — metros AGL para cada waypoint generado. - Modo de altitud (
altitudeMode) —terrain(AGL por punto contra DEM) ouniform(todos los waypoints comparten una altitud plana). - Espaciado (
spacingM) — distancia perpendicular entre líneas paralelas. - Rumbo (
bearingDeg) — rotación de líneas en grados desde norte. - Buffer (
bufferM) — padding hacia dentro/fuera desde el borde del polígono; controla el espacio de giro.
Comportamiento de vuelo
- Velocidad (
speedMps) — velocidad de crucero. Predeterminado 8 m/s. - Velocidad de tránsito (
transitSpeedMps) — velocidad de despegue-a-primer-waypoint. - Modo de rumbo (
headingMode) —followWayline(predeterminado),fixed,manually,smoothTransition,towardPOI. ParafixedymanuallyestableceheadingAngleDeg. ParatowardPOIestableceheadingPoi(lat/lng/alt). - Modo de giro (
turnMode) —coordinateTurn,toPointAndStopWithDiscontinuityCurvature(predeterminado, conforme a especificación para stop-at-waypoint),toPointAndStopWithContinuousCurvature,toPointAndPassWithContinuousCurvature. EstableceturnDampingDistM(0.2–1000 m) para suavizar. - Modo de altura (
heightMode) —relativeToStartPoint(predeterminado),WGS84,EGM96,aboveGroundLevel.
Seguridad
- Altura de seguridad de despegue (
takeoffSecurityHeight) — metros AGL; la aeronave sube a esto antes de ejecutar la wayline. Emitido como<wpml:takeOffSecurityHeight>. - Altitud RTH (
rthAltitude) — emitido como<wpml:globalRTHHeight>. - Salir al perder RC (
exitOnRcLost) —executeLostAction(predeterminado) oexitImmediately. - Acción al perder RC (
rcLostAction) —goBack(predeterminado),hover,land. - Acción al finalizar (
finishedAction) —no_action,go_home,auto_land,go_to_first_waypoint.
Cámara
- FOV de cámara (
cameraFovDeg) + cabeceo de gimbal predeterminado (gimbalPitchDeg, -90 = nadir). - Ajustes de cámara a nivel de misión (
cameraSettings) — focus/metering/exposure/ISO/ aperture/shutter/dewarp/fileSuffix/lenses/useGlobalLens. Overrides por acción son posibles — ver waypoints y acciones.
Binding de aeronave
- droneEnumValue / droneSubEnumValue / payloadEnumValue /
payloadSubEnumValue / payloadPositionIndex — identificadores
DJI. Los predeterminados apuntan al Mavic 3D (
droneEnumValue= 77).
Preview
Conforme cambias cualquier parámetro, el mapa dibuja los waypoints
recomputados con índices numerados, marcadores de entrada/salida
(type: 'entry' | 'survey' | 'exit') y polilínea de ruta. Los
overrides de altitud por waypoint (pointAltOverrides) y las listas
de acciones (waypointActions) se renderizan inline.
Asignar
En la sección Asignación elige exactamente uno de:
- Dron de mano — establece
assignedDroneId+assignedDronePeerId. El envío va por TACLINK a la app Android del operador. - Dock DJI — establece
assignedDockSn. Para cobertura multi-dock configuradockChainconmultiDockModerelayosimultaneous.
Los dos objetivos son mutuamente exclusivos; cambiar limpia el otro.
Guardar vs. Enviar
- Guardar — persiste el documento
DroneMissionconstatus: 'planned'(o'ready'una vez que los waypoints están computados). No vuela nada. - Enviar — dispara
DjiMissionDispatcherService.dispatchToDock: generar KMZ → subida presigned → registrar wayline → crear tarea de vuelo → preparar. El estado de la misión pasa porwayline_uploading→wayline_registered→dji_preparing→dji_ready→dji_executing. Ver exportación KMZ y tareas de vuelo DJI.
Para envío programado o recurrente ver scheduling.