Unidad Iztapalapa
División de Ciencias Básicas e Ingeniería
Licenciatura en Computación
Proyecto Terminal I y II
“Programación de la trayectoria de un dron usando lenguajes de alto
nivel”
Nombre: Negrete González Luis Alberto
Matrícula: 2153043560
18 de diciembre del 2025
_______________________________ _______________________________
Dr. Miguel López Guerrero Dr. Manuel Aguilar Cornejo
Asesor Coordinador de la Licenciatura
en Computación
Introduce el texto aquí
Resumen
El presente proyecto de investigación se centra en la programación de trayectorias de drones
mediante lenguajes de alto nivel, con el objetivo de establecer un marco de referencia técnico y
metodológico que permita el diseño de sistemas de vuelo autónomo accesibles, confiables y
replicables. La problemática principal radica en la creciente necesidad de que los UAV
(Unmanned Aerial Vehicles) operen en entornos complejos e impredecibles, tomando decisiones
autónomas más allá de simples rutas preprogramadas. Sin embargo, las limitaciones actuales
en hardware y software dificultan alcanzar este nivel de autonomía, lo que genera riesgos
operativos y falta de reproducibilidad en la investigación académica.
La propuesta se fundamenta en dos pilares: accesibilidad, mediante el uso de plataformas de
código abierto y kits educativos de bajo costo, y confiabilidad, garantizando que los sistemas
funcionen de manera robusta y segura en contextos de investigación avanzada. Para ello, se
seleccionó el kit HAWK'S WORK F450 como plataforma base, debido a su compatibilidad con
controladores Pixhawk, soporte para múltiples entornos de programación y adecuación al ámbito
universitario.
La metodología combina investigación aplicada y desarrollo experimental en cuatro fases:
1. Selección tecnológica mediante análisis comparativo de plataformas comerciales.
2. Implementación de rutinas de vuelo, desde control básico hasta algoritmos autónomos
avanzados.
3. Validación técnica de estabilidad, precisión y seguridad operacional mediante dos
paradigmas de programación (planificación de misiones y scripting a bordo).
4. Documentación sistematizada para facilitar la transferencia de conocimiento.
Los resultados demuestran que el Paradigma 1 es óptimo para misiones deterministas, mientras
que el Paradigma 3 resulta indispensable para aplicaciones que requieren adaptabilidad y
autonomía completa.
El proyecto genera una contribución metodológica replicable que reduce significativamente la
curva de aprendizaje en robótica aérea, proporcionando a estudiantes e investigadores un
sistema validado para explorar desde conceptos fundamentales de control hasta
implementaciones avanzadas de inteligencia artificial embebida.
i
Índice
Resumen....................................................................................................................... i
Índice .......................................................................................................................... ii
Capítulo 1. Introducción................................................................................................ 1
1.1 Problemática................................................................................................................. 1
1.2 Objetivos ...................................................................................................................... 1
1.2.1 Objetivo general ............................................................................................... 1
1.2.2 Objetivos específicos ....................................................................................... 2
1.3 Metodología .................................................................................................................. 2
1.3.1 Fase de Investigación y selección tecnológica................................................... 2
1.3.2 Fase de desarrollo e implementación ............................................................... 2
1.3.3 Fase de validación y pruebas ............................................................................ 3
1.3.4 Fase de documentación y sistematización ........................................................ 3
1.4 Estructura del documento ............................................................................................. 3
Capítulo 2. Marco conceptual ........................................................................................ 5
2.1. Introducción ................................................................................................................ 5
2.2. Clasificación de los drones ....................................................................................... 5
2.2.1 Drones de ala fija (fixed-wing Drones) ............................................................... 5
2.2.2 Drones de ala rotatoria (rotary-wing drones) ...................................................... 6
[Link] Ventajas de los multirrotores ......................................................................... 6
[Link] Desafíos de los multirrotores ......................................................................... 6
2.2.3 Drones híbridos (hybrid drones) ........................................................................ 7
2.2.4 Drones de ala batiente (flapping-wing drones) ................................................... 7
2.3. Componentes del dron ................................................................................................. 7
2.4. El piloto automático ..................................................................................................... 8
2.4.1. Hardware del piloto automático ...................................................................... 9
2.4.2. Software del piloto automático ........................................................................ 9
2.4.3. Sistema operativo ........................................................................................... 9
2.5. Sensores .................................................................................................................... 10
2.5.1. Unidad de medición inercial .......................................................................... 10
2.5.2. Sistema de posicionamiento global ............................................................... 10
2.5.3. Sensores adicionales .................................................................................... 10
2.6. Estación de control en tierra ....................................................................................... 11
2.7. Control de orientación y posición ................................................................................ 11
2.7.1. Principios fundamentales ............................................................................. 12
ii
2.7.2. Algoritmos de control .................................................................................... 12
2.7.3. Mecanismos de actuación ............................................................................ 12
Capítulo 3. Selección y características del sistema de dron ............................................ 13
3.1 Selección de la plataforma de desarrollo ...................................................................... 13
3.1.1 Criterios de selección .................................................................................... 13
3.2 Características técnicas del sistema elegido ................................................................ 13
3.2.1 Especificaciones generales ............................................................................ 13
3.2.2 Componentes incluidos en el kit..................................................................... 14
3.2.3 Capacidades de programación ....................................................................... 15
Capítulo 4: Proceso de ensamblaje y configuración del dron. .......................................... 16
4.1 Ensamblaje de dron. .................................................................................................... 16
4.1.1 Preparación del espacio de trabajo ................................................................. 16
4.1.2 Secuencia de montaje ................................................................................... 16
4.1.3 Verificación inicial.......................................................................................... 17
4.2 Configuración inicial del sistema y calibración.............................................................. 17
4.2.1 Interfaz GCS: Instalación de Mission Planner .................................................. 17
4.2.2 Carga del firmware ArduCopter ...................................................................... 17
4.2.3 Calibración obligatoria de hardware ............................................................... 18
Capítulo 5. Análisis de paradigmas de programación de rutinas ...................................... 22
5.1 Paradigma 1: Planificación de misiones ........................................................................ 22
5.2 Paradigma 2: Scripting en la estación de control en tierra (GCS de Ground control station)
........................................................................................................................................ 23
5.3 Paradigma 3: Scripting a bordo..................................................................................... 24
5.3.1 Ciclo de vida de un script ............................................................................... 24
5.3.2 Ventaja en pérdida de enlace.......................................................................... 25
5.3.3 Configuración del entorno .............................................................................. 26
5.4 Paradigma 4: Control desde computadora compañera ................................................. 26
5.4.1 Rol del Pixhawk .............................................................................................. 26
5.4.2 Rol de la computadora compañera ................................................................. 26
5.4.3 Herramientas de programación ...................................................................... 27
Capítulo 6. Pruebas y resultados................................................................................... 28
6.1 Validación técnica: el enfoque de commissioning......................................................... 28
6.2 Validación del Paradigma 1 (Mission planner) ............................................................... 28
6.2.1 Prueba P1-A: evaluación de precisión de trayectoria (patrón cuadrado) ........... 29
6.2.2. Prueba P1-B: navegación avanzada con Spline Waypoints .............................. 30
6.2.3 Validación de protocolos de seguridad en misión ............................................ 30
6.3 Validación del Paradigma 3: Scripting a bordo (Lua) ...................................................... 31
iii
6.3.1 Prueba P3-A: Cambio automático de modo de vuelo por altitud....................... 31
6.3.2 Prueba P3-B: Protección de batería con aterrizaje automático ......................... 34
6.3.3 Prueba P3-C: Vuelo en patrón circular ............................................................ 36
6.4 Paradigmas no implementados: limitaciones y justificación .......................................... 38
6.5 Comparativa de paradigmas sin telemetría ................................................................... 39
6.6 Valor educativo y aplicaciones ..................................................................................... 39
6.6.1 Competencias técnicas desarrolladas ............................................................ 39
6.6.2 Aplicaciones prácticas ................................................................................... 40
6.6.3 Comparativa con soluciones comerciales ...................................................... 40
6.6.4 Limitaciones identificadas y trabajo futuro ...................................................... 41
Capítulo 7. Conclusiones ............................................................................................. 42
7.1 Conclusiones generales .............................................................................................. 42
7.2 Recomendaciones para trabajos futuros ...................................................................... 43
7.3 Reflexión final.............................................................................................................. 44
Referencias ................................................................................................................. 45
iv
Capítulo 1. Introducción
1.1 Problemática
La investigación de drones enfrenta un problema importante. Cada vez se necesita que estos
dispositivos sean más autónomos: ya no basta con que sigan rutas preprogramadas, ahora deben
tomar decisiones por sí mismos y navegar en ambientes complejos e impredecibles. Sin
embargo, las herramientas actuales (tanto el hardware como el software) no son suficientes para
lograr este objetivo.
Este proyecto surge con la finalidad de crear un sistema o documento de referencia que combine
dos aspectos clave:
• Accesibilidad: usar hardware de código abierto que sea económico y modificable
• Confiabilidad: garantizar que funcione de manera robusta para investigación de alto nivel
Actualmente, muchos investigadores usan drones educativos o de aficionados sin antes estudiar
a fondo cómo vuelan realmente ni cómo responden a diferentes comandos. Esto causa dos
problemas graves:
• Los experimentos no se pueden replicar (otros investigadores no obtienen los mismos
resultados)
• Hay muchos accidentes y pérdidas de equipo durante las investigaciones
1.2 Objetivos
1.2.1 Objetivo general
Realizar un estudio comparativo de las plataformas de drones programables disponibles
comercialmente, analizando su compatibilidad con diferentes paradigmas de programación y
arquitecturas de control, con el propósito de establecer una metodología de selección
fundamentada y generar un marco de referencia técnico que facilite el diseño e implementación
de proyectos de investigación en sistemas de vuelo autónomo.
1
1.2.2 Objetivos específicos
Objetivo específico 1: Seleccionar y adquirir un sistema de dron que ofrezca capacidades de
programación avanzadas y compatibilidad con diferentes entornos de desarrollo, considerando
criterios de funcionalidad educativa, seguridad operacional y viabilidad económica.
Objetivo específico 2: Diseñar e implementar rutinas de vuelo programables que demuestren la
aplicación práctica de conceptos fundamentales de programación, incluyendo estructuras de
control, manejo de sensores, algoritmos de navegación y sistemas de comunicación.
Objetivo específico 3: Documentar y sistematizar las experiencias obtenidas durante el
desarrollo del proyecto, generando una metodología replicable que pueda ser implementada en
futuros proyectos y sirva como avance para la prueba de paradigmas de programación
avanzados.
1.3 Metodología
La presente investigación adoptará un enfoque metodológico mixto que combina elementos de
investigación aplicada y desarrollo experimental, estructurado en cuatro fases principales que
permitirán abordar de manera sistemática los objetivos planteados.
1.3.1 Fase de Investigación y selección tecnológica
Se realizará un análisis comparativo de diferentes opciones comercialmente disponibles,
evaluando criterios técnicos como capacidades de programación, sensores integrados,
autonomía de vuelo, facilidad de uso y soporte de la comunidad de desarrolladores.
La metodología incluirá la consulta de literatura especializada, análisis de especificaciones
técnicas, revisión de casos de uso similares en contextos educativos y consulta con expertos en
el área. Los criterios de selección se ponderarán mediante una matriz de decisión que considere
tanto aspectos técnicos como pedagógicos y económicos.
1.3.2 Fase de desarrollo e implementación
Una vez seleccionada la plataforma, se procederá al desarrollo de un conjunto de rutinas de
vuelo programables organizadas en orden creciente de complejidad. Esta fase seguirá una
metodología de desarrollo iterativo, comenzando con programas básicos de control de motores
y sensores, avanzando hacia rutinas de navegación autónoma, y culminando con aplicaciones
integradas que combinen múltiples funcionalidades.
2
El desarrollo se basará en principios de programación estructurada y buenas prácticas de
codificación, asegurando que el código resultante sea comprensible y formativo para estudiantes
de la licenciatura que se encuentren cursando al menos programación básica o avanzada. Se
implementarán mecanismos de documentación en línea y comentarios explicativos que faciliten
la comprensión de los conceptos involucrados.
1.3.3 Fase de validación y pruebas
La validación del sistema desarrollado se realizará mediante pruebas técnicas. Las pruebas
técnicas incluirán verificación de funcionalidad, análisis de seguridad operacional, medición de
rendimiento y validación de la estabilidad del sistema bajo diferentes condiciones de operación.
1.3.4 Fase de documentación y sistematización
La fase final se enfocará en la sistematización de la experiencia y la generación de
documentación técnica. Se elaborará un manual de usuario y guías de programación progresivas.
Adicionalmente, se documentarán las lecciones aprendidas, desafíos encontrados y
recomendaciones para futuras implementaciones.
La metodología propuesta asegura un desarrollo sistemático y riguroso del proyecto, mientras se
garantiza la viabilidad técnica y la reproducibilidad de los resultados obtenidos.
1.4 Estructura del documento
El resto del presente documento se organiza en cuatro capítulos principales, diseñados para
guiar al lector desde el contexto y la fundamentación teórica, hasta la implementación,
validación y conclusiones del proyecto:
• Capítulo 2. Marco conceptual: Describe los fundamentos teóricos y técnicos
necesarios para comprender el desarrollo del proyecto, incluyendo la clasificación de
drones, sus componentes, sistemas de control, sensores y plataformas de
programación.
• Capítulo 3. Selección y características del sistema de dron: Expone los criterios de
selección, especificaciones técnicas, capacidades de programación y el proceso de
ensamblaje de la plataforma utilizada.
3
• Capítulo 4. Pruebas y resultados: Detalla los procedimientos de validación técnica, así
como los resultados obtenidos durante las pruebas de funcionamiento y evaluación de
la plataforma.
• Capítulo 5. Conclusiones: Presenta las conclusiones derivadas del desarrollo del
proyecto, el grado de cumplimiento de los objetivos y las recomendaciones para trabajos
futuros.
4
Capítulo 2. Marco conceptual
2.1. Introducción
Dron es el término coloquial para cualquier aeronave no tripulada2 o Vehículos Aéreos No
Tripulados (UAV de sus siglas en ingles de Unmanned Aerial Vehicle ) son dispositivos
diseñados para operar en la atmósfera sin tripulación humana a bordo, pudiendo ser controlados
remotamente o volar de manera autónoma1. Sus características principales incluyen autonomía,
velocidad, versatilidad para transportar cargas, eficiencia en costos y el uso de energías
alternativas1.
La evolución de los UAV se remonta a globos incendiarios en 1849 5, pasando por el "Telekino" de
Torres Quevedo en 1903 5 y los primeros drones militares como el "Aerial Target" y el "Kettering
Bug" durante la Primera Guerra Mundial.5 Hitos importantes incluyen el primer vuelo guiado por
radiofrecuencia en 19246, el "Queen Bee" en 1933 8, y el "Predator" en 1994, el primer UAV
operativo en integrar GPS.8 Actualmente, la tecnología sigue avanzando en autonomía, seguridad
y eficiencia.5
Las aplicaciones de los UAV son extensas, tanto en el ámbito civil/comercial como militar. En el
sector civil, se utilizan para vigilancia y monitoreo (incluyendo detección de incendios) 1,
inspección de infraestructuras 1, entrega de paquetes 1, fotografía aérea 1, investigación científica
1
, y agricultura de precisión (p. ej., monitoreo de cultivos, detección de plagas, optimización de
riego)9. En el ámbito militar, son clave para inteligencia, vigilancia y reconocimiento11, adquisición
de blancos y ataque 12, e incluso ciberataques e interferencias13.
2.2. Clasificación de los drones
Los drones, han experimentado una proliferación significativa en las últimas décadas. Su
creciente versatilidad se debe, en gran medida, a la diversidad de diseños y configuraciones
disponibles, cada una optimizada para entornos y propósitos específicos. La clasificación de los
drones, aunque puede abordarse desde diversas perspectivas (tamaño, alcance, propósito), se
fundamenta principalmente en sus principios aerodinámicos y su modo de propulsión. Como se
describe a continuación:
2.2.1 Drones de ala fija (fixed-wing Drones)
Estos drones se asemejan a los aviones convencionales, obteniendo su sustentación a través del
movimiento hacia adelante que genera el flujo de aire sobre sus alas estáticas. Su diseño les
permite alcanzar mayores velocidades y cubrir distancias considerablemente más largas con
5
una mayor eficiencia energética en comparación con otros tipos. Requieren una pista de
despegue y aterrizaje, o bien, sistemas de lanzamiento asistido (como una catapulta) y
recuperación (como paracaídas o red). Son ideales para misiones de mapeo de grandes áreas,
vigilancia durante un largo periodo y monitoreo ambiental, donde la autonomía y la velocidad son
cruciales. 46
2.2.2 Drones de ala rotatoria (rotary-wing drones)
Esta categoría es quizás la más reconocida y extendida, englobando a los helicópteros y los
multicópteros (drones con múltiples rotores). Su principal característica es la capacidad de
despegue y aterrizaje vertical, lo que les permite operar en espacios confinados sin necesidad de
pistas. Los rotores giratorios proporcionan tanto sustentación como propulsión, otorgándoles
una excelente capacidad de vuelo estacionario y una gran agilidad. Son ampliamente utilizados
en fotografía y videografía aérea, inspecciones de detalle, búsqueda y rescate, y cualquier
aplicación que requiera maniobras precisas o la capacidad de mantenerse en un punto fijo en el
aire. La cantidad de rotores influye en la redundancia (mayor número de rotores ofrece más
estabilidad ante la falla de uno) y la capacidad de carga. 46
Los multirrotores se clasifican por el número de rotores y su disposición:
• Tricópteros: 3 propulsores, menor capacidad de carga.14
• Cuadracópteros: 4 rotores, los más comunes, populares para carreras y pasatiempo.15
• Hexacópteros: 6 rotores, mayor capacidad de carga y redundancia (pueden aterrizar con
un motor menos).12
• Octocópteros: 8 motores, la mayor capacidad de carga y redundancia, preferidos para
fotografía profesional.12
[Link] Ventajas de los multirrotores
• Gran estabilidad y maniobrabilidad.14
• Diversidad de equipos y adaptabilidad a requisitos específicos.16
• Compactibilidad y portabilidad (muchos diseños son plegables).15
• Curva de aprendizaje rápida y facilidad de uso.16
• Redundancia en configuraciones con más de cinco motores.15
• Capacidades VTOL (vertical take-off and landing), permitiendo despegues y
aterrizajes en espacios reducidos.17
[Link] Desafíos de los multirrotores
• Relación inversa entre el número de rotores y la eficiencia energética; más motores
aumentan el costo y disminuyen la eficiencia.15
6
• Capacidad de carga limitada en configuraciones pequeñas.15
• Interferencia de flujos de aire, lo que reduce la eficiencia.15
• Los UAV de ala fija suelen ofrecer mayor autonomía de vuelo, mejor aerodinámica y
resistencia a vientos fuertes, aunque requieren pistas para despegue y aterrizaje.16
2.2.3 Drones híbridos (hybrid drones)
Representan una convergencia de las ventajas de los drones de ala fija y de ala rotatoria. Estos
sistemas pueden despegar y aterrizar verticalmente como un multicóptero, pero una vez en el
aire, sus motores o rotores pueden reorientarse para permitir un vuelo horizontal eficiente como
un dron de ala fija. Esta capacidad les otorga lo mejor de ambos mundos: la flexibilidad operativa
del VTOL y la autonomía y velocidad de los sistemas de ala fija. Los drones híbridos son
especialmente valiosos en aplicaciones que requieren acceso a ubicaciones remotas o sin
infraestructura, seguidas de un vuelo de largo alcance, como la entrega de carga en áreas
desafiantes o la inspección de largas líneas de infraestructura en terrenos variados. 47
2.2.4 Drones de ala batiente (flapping-wing drones)
Aunque menos comunes en aplicaciones comerciales a gran escala, los drones de ala batiente,
o "ornitópteros", son una categoría inspirada en el vuelo de aves e insectos. Generan sustentación
y propulsión mediante el movimiento rítmico de sus alas. Su principal ventaja radica en su sigilo,
lo que los hace adecuados para misiones de reconocimiento encubiertas o la observación de
vida silvestre sin perturbar el entorno. Su desarrollo se encuentra en una fase más experimental,
pero prometen avances significativos en la eficiencia aerodinámica a pequeña escala.
En conclusión, la diversidad en la clasificación de los drones refleja la constante innovación en
el campo de la robótica aérea. Cada configuración ofrece un conjunto único de capacidades y
limitaciones, lo que permite a los operadores seleccionar la plataforma más adecuada para
satisfacer las demandas específicas de sus misiones. La comprensión de estas tipologías es
fundamental para el desarrollo futuro y la implementación efectiva de los UAV en una variedad
cada vez mayor de sectores.
2.3. Componentes del dron
Los componentes del dron a continuación mostrados en la figura 1 incluyen el marco estructural
o chasis que sostiene todo el sistema, los motores y hélices que proporcionan la propulsión
necesaria para el vuelo, y los controladores de velocidad electrónicos (ESC) que regulan la
potencia enviada a cada motor.
7
El controlador de vuelo es quien procesa toda la información y toma las decisiones de control.
Esta trabaja estrechamente con el sistema de sensores, que incluye acelerómetros, giroscopios,
magnetómetros y sensores adicionales como GPS o barómetros según el modelo. La energía para
todo el sistema proviene del sistema de alimentación, compuesto principalmente por baterías
de litio y circuitos de distribución.
La comunicación entre el piloto y el dron se establece a través del sistema de comunicación que
incluye receptores de radiofrecuencia y, en algunos casos, módulos de telemetría. Finalmente,
muchos drones incorporan componentes auxiliares como cámaras, sistemas de iluminación o
sensores especializados que expanden sus capacidades según la aplicación específica.
Cada uno de estos componentes cumple una función específica, pero es su integración
armoniosa lo que permite al dron operar como un sistema coordinado capaz de vuelo estable y
controlado.
Figura 1.- Diagrama de partes de Dron 51
2.4. El piloto automático
El piloto automático es un sistema avanzado que permite a los UAV funcionar con mínima o nula
intervención humana18. Es el encargado de gestionar la orientación, altitud, rumbo y velocidad
del UAV19. Su desarrollo se inició para superar las limitaciones humanas en el control de
aeronaves, con los primeros giroestabilizadores alrededor de 1918.20
La evolución del piloto automático incluye19:
• Década de 1910: Primeros giroscopios estabilizadores.
8
• Década de 1930: El piloto automático Sperry, uno de los primeros sistemas ampliamente
adoptados en aviación comercial.
• Segunda Guerra Mundial: Avances significativos para vuelos más seguros y eficientes.
• Década de 1970: Introducción de tecnologías digitales y navegación por satélite.
• Década de 1990: Implementación de sistemas "fly-by-wire" para una integración más
completa.
• Actualidad: Sistemas altamente avanzados con funciones como aterrizaje automático y
seguimiento de rutas precisas.
2.4.1. Hardware del piloto automático
Los elementos principales incluyen:
• Unidad central de procesamiento (CPU): El responsable de ejecutar el sistema
operativo y algoritmos de control.22 Los procesadores ARM Cortex-M4 son populares por
su FPU, funcionalidad DSP y manejo de interrupciones de baja latencia. Para tareas más
exigentes, como IA, se usan procesadores ARM Cortex-A.
• Sensores integrados: La mayoría incluyen una unidad de medición inercial (IMU) con
acelerómetros, giroscopios y magnetómetros, además de un barómetro.22
• Memoria: memoria flash (no volátil) para almacenamiento permanente de firmware y
configuración 24, y Memoria RAM (volátil) para procesamiento de datos en tiempo real.24
Se implementan protocolos de nivelación de desgaste, lo que significa que busca que
todos los elementos se desgasten de una manera uniforme y protección contra cortes de
energía para garantizar la fiabilidad.
• Interfaces de comunicación: Puertos y entradas para receptores de radio.22
• Salidas de actuador: Múltiples salidas PWM para controlar motores.22
• Fuente de alimentación redundante: Para garantizar la continuidad operativa.22
• Además, pueden incorporar computadoras compañeras (como Raspberry Pi o Intel
Nuc) para tareas que requieren mayor poder de cómputo.
2.4.2. Software del piloto automático
El software interpreta datos de sensores, ejecuta algoritmos y toma decisiones18. Plataformas de
código abierto como ArduPilot y PX4 son ampliamente utilizadas. Ambas usan el protocolo
MAVLink para comunicarse con vehículos y estaciones de control en tierra. La sofisticación del
software permite funciones como la toma de decisiones en tiempo real y la evitación de
obstáculos.9
2.4.3. Sistema operativo
Para los UAV, se utiliza un sistema operativo en tiempo real, diseñado para procesar datos
dentro de límites de tiempo estrictos y garantizar respuestas predecibles. Las características
clave de un RTOS incluyen multitarea, velocidad y determinismo, seguridad, tamaño reducido y
9
programación basada en prioridades.27 Ejemplos de RTOS son NuttX (usado en Pixhawk)22,
FreeRTOS 29 y VxWorks27.
2.5. Sensores
Los sensores son cruciales para que el UAV perciba su estado y entorno. A continuación, se
mencionan algunos de los sensores más utilizados en un dron.
2.5.1. Unidad de medición inercial
Es esencial para la estabilidad del dron. Se compone de:
• Acelerómetros: Miden fuerzas gravitatorias y aceleraciones lineales en tres ejes.32
• Giroscopios: Miden la velocidad angular (rotación sobre sus ejes).32
• Magnetómetros: Miden el campo magnético terrestre para determinar la orientación.32
La IMU se comunica con el controlador de vuelo para mantener el equilibrio.33 Sus datos
se procesan con algoritmos de fusión (como filtros de Kalman) para reducir ruido y
deriva.32 Una falla puede causar pérdida de estabilidad y problemas de navegación33.
2.5.2. Sistema de posicionamiento global
Es un sistema de geolocalización por satélite fundamental para la operación precisa y segura de
los drones.37 Utiliza una red de satélites que transmiten señales para triangular la posición exacta
del dron en tiempo real (latitud, longitud y altitud).37
Funciones críticas del GPS en drones37:
• Navegación precisa y vuelo autónomo.
• Establecimiento de límites geográficos.
• Aplicaciones en búsqueda y rescate. Los drones también pueden usar otros Sistemas
Globales de Navegación por Satélite como GLONASS, Galileo o BeiDou para mayor
precisión.
2.5.3. Sensores adicionales
Los UAV también pueden integrar:
• Barómetro: Mide la altitud detectando cambios en la presión atmosférica.
• Sensor de flujo óptico: Rastrea el movimiento relativo al suelo usando cámaras, útil en
interiores sin GPS.
• Sensores ultrasónicos y LiDAR: Miden distancias a obstáculos. Los ultrasónicos son
para corta distancia y evitación a baja velocidad; LiDAR usa láser para mapeo 3D y
evitación avanzada de obstáculos a largo alcance.
• Cámaras de visión: Para detección y seguimiento de objetos, clasificación de imágenes
y toma de decisiones.
10
• Magnetómetro (brújula): Proporciona información direccional, aunque es susceptible a
interferencias electromagnéticas. La fusión de datos de estos sensores es crucial para
que los drones se adapten a entornos complejos y realicen tareas de alta precisión.
2.6. Estación de control en tierra
La estación de control en tierra o Ground Control Station (GCS) es el sistema terrestre desde
el cual se controla y monitorea un UAV. Actúa como la interfaz principal entre el operador y la
aeronave.
Funcionalidades clave de una GCS:
• Planificación de misión: Definición de rutas de vuelo con destinos, orientación y
velocidades.
• Mando y control: Comunicación bidireccional para operaciones fiables y gestión de
carga útil.
• Monitoreo en tiempo real: Muestra datos de telemetría (altitud, velocidad, posición y
estado).
• Control de carga útil: Manipulación de cámaras, sensores u otras herramientas.
• Cabina virtual de mando: Interfaz que simula una cabina de avión.
• Registro de datos: Para análisis postmisión.
Tipos de GCS:
• Instalación fija: Instalaciones permanentes para operaciones a gran escala (militares,
industriales) .
• Montadas en vehículos: Integradas en vehículos para movilidad y despliegue rápido.
• Portátiles: Compactas y ligeras para operaciones de campo, desde transmisores con
laptops hasta unidades en maletas de vuelo.
La GCS es fundamental para la operación segura y eficiente de los UAV, simplificando
operaciones complejas y reduciendo riesgos mediante sistemas de redundancia y herramientas
de navegación avanzadas.
2.7. Control de orientación y posición
El control de orientación y posición es fundamental para la estabilidad y navegación del UAV.
Implica mantener o cambiar su orientación (actitud) y ubicación (posición).41
11
2.7.1. Principios fundamentales
El control de orientación gestiona los ángulos de alabeo, cabeceo y guiñada.41 Se basa en
sensores como:
• Giroscopios: Detectan la velocidad angular de rotación.41
• Acelerómetros: Miden fuerzas gravitatorias y aceleraciones lineales para inferir la
orientación.32 Estos sensores, a menudo en una IMU, son cruciales.41 Cuando el GPS no
está disponible (p. ej. en interiores), el dron usa sus giroscopios y acelerómetros en
"modo orientación", donde no mantiene una posición fija y deriva con el viento,
requiriendo mayor habilidad del piloto.
2.7.2. Algoritmos de control
Los algoritmos procesan datos de sensores y generan comandos para actuadores:
• Controladores PID (proporcional integral derivativo): Calculan un "error" entre el valor
deseado y el medido, aplicando correcciones basadas en componentes proporcional
(error actual), integral (errores pasados) y derivativo (predicción de errores futuros).
• Controladores LQR (Linear quadratic regulator): Buscan una entrada de control que
minimice una función de costo, penalizando desviaciones del estado deseado y el
esfuerzo de control.
• Controladores MPC (model predictive control): Utilizan un modelo dinámico interno
para anticipar el comportamiento futuro del sistema y calcular movimientos de control
óptimos. El MPC ofrece menor sobreimpulso, tiempo de asentamiento más rápido y una
entrada de control más eficiente que el LQR, evitando la saturación de actuadores.
2.7.3. Mecanismos de actuación
Son los componentes físicos que ejecutan las órdenes del piloto automático.
Propulsores: En multirrotores, la variación de la velocidad de rotación de los motores y hélices
es el principal mecanismo.42
Otros mecanismos en aeronaves incluyen estabilización de spin, ruedas de inercia, giroscopios
de control de momento (CMG), velas solares, estabilización por gradiente de gravedad y torsión
magnética.41
12
Capítulo 3. Selección y características del sistema de
dron
3.1 Selección de la plataforma de desarrollo
Después del análisis comparativo realizado en la fase de investigación, se seleccionó el HAWK'S
WORK F450 Drone Kit para Construir (Kit-A)49 como la plataforma base para el desarrollo del
proyecto educativo. Esta decisión se fundamentó en varios criterios técnicos y pedagógicos que
lo posicionan como la opción más adecuada para los objetivos planteados.
3.1.1 Criterios de selección
La selección se basó en los siguientes criterios fundamentales:
Capacidades de programación: El sistema seleccionado ofrece soporte para múltiples
lenguajes de programación y entornos de desarrollo, lo que permite una progresión natural en el
aprendizaje desde conceptos básicos hasta aplicaciones avanzadas.
Componentes educativos: El kit incluye todos los elementos necesarios para que los
estudiantes comprendan tanto los aspectos de hardware como de software involucrados en el
funcionamiento de un dron.
Seguridad y facilidad de uso: Las características de seguridad integradas y la facilidad de
manejo lo hacen apropiado para el entorno educativo universitario.
Documentación y soporte: La disponibilidad de documentación técnica completa y soporte de
la comunidad de desarrolladores facilita tanto la implementación como el mantenimiento del
sistema.
3.2 Características técnicas del sistema elegido
3.2.1 Especificaciones generales
El HAWK'S WORK F450 es un kit de dron DIY cuadricóptero diseñado específicamente para fines
educativos y de desarrollo. Sus características principales incluyen:
Especificaciones del marco (estructura):
• Modelo: F450 Pre-soldado
• Distancia entre ejes: 450mm
• Peso máximo al despegue: aproximadamente 1.8 kg
• Material: Fibra de vidrio con brazos de nylon PA66
Capacidades de vuelo:
• Configuración: Cuadricóptero (4 motores)
• Controlador de vuelo: Pixhawk 2.4.8
13
• Sistema de navegación: GPS M8N integrado
• Sistema de transmisión: FS-I6X de 2.4GHz
Características educativas:
• Kit de construcción DIY que permite comprender cada componente
• Controlador Pixhawk programable para desarrollo de rutinas personalizadas
• Soporte para múltiples modos de vuelo y configuraciones
• Compatibilidad con entornos de programación estándar
3.2.2 Componentes incluidos en el kit
El kit de desarrollo HAWK'S WORK F450 (Kit-A) incluye los siguientes componentes esenciales:
Componentes estructurales:
• Marco F450 presoldado con brazos desmontables
• Amortiguador de vibraciones (shock absorber)
• Sistema de sujeción y tornillería
Sistema de propulsión:
• 4 motores sin escobillas 2212
• 4 hélices 9450 (2 horarias, 2 antihorarias)
• 4 controladores electronicos de velocidad ESC de 20A
Sistema de control y navegación:
• Controladora de vuelo Pixhawk 2.4.8 Kit
• Módulo GPS M8N con brújula integrada
• Radio transmisor FS-I6X de 6 canales
Sistema de alimentación:
• Batería LiPo 11.1V 4200mAh 3S
• Módulo de distribución de energía integrado
Accesorios y herramientas:
• Destornillador para ensamblaje
• Amarres plásticos (Zip ties)
• Cable de carga para batería
• Manual de instrucciones y guía de ensamblaje
14
• Documentación técnica del Pixhawk
3.2.3 Capacidades de programación
El sistema seleccionado ofrece amplias capacidades de programación a través del controlador
Pixhawk 2.4.8, que constituye el elemento clave para los objetivos educativos del proyecto:
Entornos de desarrollo compatibles:
• Mission Planner: Para configuración básica y planificación de misiones
• QGroundControl: Interfaz multiplataforma para control y monitoreo
• ArduPilot: Firmware open-source que permite programación avanzada
• MAVLink: Protocolo de comunicación para desarrollo de aplicaciones personalizadas
Funcionalidades programables:
• Rutinas de vuelo autónomo y destinos
• Control de estabilización y modos de vuelo personalizados
• Integración con sensores adicionales
• Sistemas de telemetría y almacenamiento de datos
• Algoritmos de navegación y evasión de obstáculos
Características educativas:
• Código fuente abierto que permite análisis profundo del funcionamiento
• Amplia documentación técnica y comunidad de desarrolladores
• Compatibilidad con lenguajes de programación estándar (C++, Python)
• Simuladores integrados para pruebas seguras antes del vuelo real
15
Capítulo 4: Proceso de ensamblaje y configuración del
dron.
4.1 Ensamblaje de dron
4.1.1 Preparación del espacio de trabajo
Antes de iniciar el proceso de ensamblaje, se preparó un espacio de trabajo adecuado que
incluyó:
• Superficie de trabajo limpia y bien iluminada
• Organización de herramientas necesarias
• Revisión del inventario de componentes
• Preparación de la documentación técnica
4.1.2 Secuencia de montaje
El proceso de ensamblaje del HAWK'S WORK F450 se realizó siguiendo una metodología
sistemática que garantizó tanto la funcionalidad del sistema como la comprensión de los
principios técnicos involucrados:
Fase 1: Ensamblaje del marco base. El primer paso consistió en el montaje del marco F450
presoldado, verificando la integridad estructural de los brazos y la placa base central. Se instaló
el amortiguador de vibraciones en la posición central, elemento crucial para reducir las
vibraciones que podrían afectar el funcionamiento de los sensores de la controladora de vuelo.
Fase 2: Instalación del sistema de propulsión. Se procedió al montaje de los cuatro motores
brushless 2212 en los extremos de los brazos del marco, asegurando la correcta orientación
según la configuración estándar de cuadricóptero. Cada motor se fijó utilizando la tornillería
proporcionada, verificando que no existieran holguras que pudieran generar vibraciones
adicionales durante el vuelo.
Fase 3: Conexión de controladores ESC. Los cuatro controladores de velocidad ESC de 20A se
conectaron entre los motores y el sistema de distribución de energía. Esta fase requirió especial
atención en la polaridad de las conexiones y en el “ruteo” ordenado de los cables para evitar
interferencias electromagnéticas y facilitar el mantenimiento posterior.
Fase 4: Instalación de la controladora Pixhawk. La controladora de vuelo Pixhawk 2.4.8 se
instaló en la posición central del marco, utilizando el amortiguador de vibraciones previamente
instalado. Se realizaron todas las conexiones necesarias: señales de control hacia los ESC,
alimentación, y conexiones para sensores externos.
Fase 5: Integración del sistema GPS. El módulo GPS M8N se montó en una posición elevada
para asegurar la mejor recepción satelital posible, conectándose a la controladora mediante el
16
cable especializado incluido en el kit. Se verificó la orientación correcta del módulo según las
especificaciones del fabricante.
Fase 6: Instalación de hélices y verificación final. Como paso final, se instalaron las hélices
9450 en la configuración correcta (dos horarias y dos antihorarias), verificando que el sentido de
giro correspondiera con la configuración estándar del firmware ArduPilot.
4.1.3 Verificación inicial
Una vez completado el ensamblaje, se realizaron las siguientes verificaciones:
• Inspección visual de todas las conexiones
• Verificación de la integridad mecánica
• Pruebas de sistemas electrónicos
• Calibración de sensores
• Pruebas de comunicación
• Verificación de seguridad operacional
4.2 Configuración inicial del sistema y calibración
Una vez ensamblado, el dron es un sistema de hardware inerte. La siguiente fase consiste en
instalar y configurar su el software de piloto automático y alinear los sensores con la realidad
física.
4.2.1 Interfaz GCS: Instalación de Mission Planner
El primer paso es descargar e instalar la Estación de Control en Tierra o Ground Control Station
(GCS). HAWK'S WORK dirige a los usuarios a descargar Mission Planner o QGroundControl. Para
el firmware ArduPilot (que ejecuta el Pixhawk), Mission Planner es la GCS más rica en
características.
4.2.2 Carga del firmware ArduCopter
Este es el paso más crítico de la configuración. Se está instalando el sistema operativo en su
piloto automático.
▪ Método Estándar (Recomendado):
La documentación oficial de ArduCopter 10 describe el proceso estándar:
1. Conecte el Pixhawk 2.4.8 a su PC vía USB (sin la batería LiPo conectada).
2. Abra Mission Planner.
17
3. Navegue a la pestaña Initial Setup -> Install Firmware.
4. Seleccione el icono apropiado para ArduCopter (el cuadricóptero). Mission Planner
descargará e instalará automáticamente la última versión estable del firmware.
▪ Método del Proveedor:
HAWK'S WORK, proporciona un método alternativo que implica el uso de "Install Firmware
Legacy" -> "Load custom firmware". Notablemente, proporcionan enlaces a versiones de
firmware antiguas (ej. 3.6.12, 4.0.3, 4.1.5).
Este es un punto de datos crucial. El Pixhawk 2.4.8 es un "clon". Los clones más antiguos a veces
tienen limitaciones de hardware que les impiden ejecutar las versiones más nuevas y pesadas de
ArduPilot.
Recomendación:
Siga el Método Estándar primero. Es la mejor práctica. Si el proceso falla, o si el Pixhawk no se
reinicia o no se conecta después del flasheo, entonces utilice el método del proveedor. Cargue
la versión estable más reciente que proporcionan. Esto proporciona un camino claro para la
solución de problemas.
4.2.3 Calibración obligatoria de hardware
Una vez que el firmware esté instalado, debe conectar el Pixhawk a Mission Planner. Siga el
asistente de configuración o realice estas calibraciones manualmente desde la pestaña Initial
Setup -> Mandatory Hardware.
Fase 1: Calibración del Acelerómetro
Se realizó la calibración del acelerómetro con el propósito de enseñar al Pixhawk qué dirección
es "hacia abajo" (gravedad). El proceso requirió colocar el dron en múltiples orientaciones
(nivelado, de lado izquierdo, de lado derecho, boca abajo, etc.) y mantenerlo quieto mientras el
asistente calibra cada eje.
Fase 2: Calibración de la Brújula (compass)
Se procedió a calibrar la brújula para mapear el campo magnético de la Tierra y, lo que es más
importante, restar la interferencia magnética (EMI) del propio dron (cables de alimentación, PDB,
ESC). El proceso implicó rotar el dron lentamente en todos sus ejes, siendo crucial realizar esto
lejos de objetos metálicos grandes. Se tomó en cuenta que esta calibración probablemente
fallaría si el módulo GPS/Brújula está montado demasiado cerca de los cables de alimentación.
Fase 4: Calibración del Radiocontrol
Se calibró el radiocontrol para enseñar al Pixhawk el rango completo de movimiento (valores
mínimos y máximos) para cada canal del transmisor FS-i6X. El proceso consistió en encender el
transmisor, ir a la pestaña "Radio Calibration" y mover todas las palancas e interruptores a sus
18
posiciones extremas. Esta fase es crítica para los modos de vuelo y el armado, ya que el Pixhawk
no se armará si no detecta la palanca del acelerador en su posición mínima absoluta, un valor
que solo aprende durante esta calibración.
Fase 5: Calibración del Sistema de Propulsión (ESC)
El propósito de esta calibración es sincronizar los cuatro ESC de 20A para que interpreten la señal
de acelerador del Pixhawk de manera idéntica. Si no están calibrados, un ESC podría pensar que
"1500" es 50% de aceleración mientras que otro piensa que es 45%, lo que resultará en un vuelo
inestable.
Se tienen dos métodos disponibles para realizar este proceso, uno proporcionado por Ardupilot
y el otro brindado por el proveedor del dron, mismo que también se puede consultar en video
desde la página de compra, a continuación, se presentan ambos:
Método 1.- Recomendado por ArduPilot
1. ¡Importante! Retirar las hélices por seguridad.
2. Conecte el Pixhawk a Mission Planner vía USB (sin batería LiPo).
3. Vaya a Config/Tuning -> Full Parameter List.
4. Establezca el parámetro ESC_CALIBRATION en 3 y haga clic en "Write Params".
5. Desconecte el USB.
6. Conecte la batería LiPo. El Pixhawk se encenderá.
7. Presione el interruptor de seguridad (safety switch) hasta que se ponga rojo fijo.
8. Escuchará tonos musicales de los motores. Espere a que terminen los pitidos.
9. Desconecte y vuelva a conectar la batería. La calibración está completa.
Método 2.- (Guía del Proveedor HAWK'S WORK)
1. ¡Importante! Retirar las hélices por seguridad.
2. Encienda su transmisor y ponga la palanca del acelerador al máximo.
3. Conecte la batería LiPo al dron. Espere a que el Pixhawk se reinicie y los motores piten.
4. Presione el interruptor de seguridad.
5. Escuchará música de los motores. Baje inmediatamente la palanca del acelerador al mínimo.
6. Escuchará más música de confirmación. La calibración está completa.
19
Recomendación:
Intente el Método 1 primero. Es más limpio y el estándar moderno. Sin embargo, los ESC
genéricos de 20A incluidos en el kit pueden no ser compatibles con este método. Si no funciona
(los motores no pitan como se espera o no giran sincronizados en prueba de motor), repita el
proceso usando el Método 2, que es el método de calibración clásico.
Fase 6.- Prueba Segura de Motores (Validación Crítica)
Este es el procedimiento de validación técnica más importante que realizará. Verifica que su
ensamblaje y configuración son correctos antes de un vuelo real.
Procedimiento.
1. ¡Importante! Retirar las hélices por seguridad. Un F450 con hélices 9450 puede causar
lesiones graves.
2. Asegure el dron a un banco de trabajo o al suelo.
3. Conecte la batería LiPo y conecte el Pixhawk a Mission Planner vía USB o telemetría.
4. Vaya a Initial Setup -> Optional Hardware -> Motor Test.
5. Establezca "Throttle %" en un valor bajo, como 10%. Si no giran, súbalo a 15%.
6. Haga clic en el botón "Test Motor A". El motor 1 (delantero-derecho para una configuración X)
debe girar.
7. Verifique visualmente la dirección de giro (puede pegar un pequeño trozo de cinta en el eje
del motor). Debe coincidir con el diagrama de ArduCopter (CW - sentido horario).
8. Haga clic en "Test Motor C" (Motor 2 en ArduCopter 4.x+). El motor trasero-izquierdo debe
girar. Verifique que gire CCW (sentido antihorario).
9. Haga clic en "Test Motor D" (Motor 3). El motor delantero-izquierdo debe girar. Verifique que
gire CCW.
10. Haga clic en "Test Motor B" (Motor 4). El motor trasero-derecho debe girar. Verifique que gire
CW.
(Nota: El orden de las letras en Mission Planner A/B/C/D puede variar. Siempre siga el diagrama
de ArduCopter "X" que muestra: Motor 1 (Frontal-Derecho, CW), Motor 2 (Trasero-Izquierdo,
CCW), Motor 3 (Frontal-Izquierdo, CCW), Motor 4 (Trasero-Derecho, CW)).
20
Fase 7.- Verificación de modos de vuelo
Como parte de la calibración de su radio, habrá asignado interruptores a los modos de vuelo.
Antes de volar, vaya a la pestaña Flight Data de Mission Planner y mueva los interruptores de su
transmisor. Verifique que el modo de vuelo reportado en el HUD cambie correctamente a
Stabilize, AltHold y Loiter. Su primer vuelo debe ser en modo Stabilize, ya que es el modo más
básico que depende únicamente de la IMU.
Tabla1. Lista de verificación de configuración y validación
Paso Acción Software/Ubicación Propósito Clave y Verificación
1 Cargar el firmware Mission Planner: Install Instalar el "SO" ArduCopter en el
Firmware Pixhawk.
2 Calibrar Mission Planner: Mandatory Enseñar al dron qué dirección es
acelerómetro Hardware "abajo".
3 Calibrar la brujula Mission Planner: Mandatory Mapear el campo magnético y la
Hardware interferencia del dron.
4 Calibrar radio Mission Planner: Mandatory Definir los rangos mín/máx de las
Hardware palancas.
5 Calibrar ESC Mission Planner o Manual 20 Sincronizar el rango de
aceleración de los 4 motores.
6 Probar motores Mission Planner: Optional ¡SIN HÉLICES! Verificar orden y
Hardware dirección de motores.
7 Configurar modos Mission Planner: Flight Asignar interruptores a Stabilize,
de vuelo Modes Loiter, RTL.
21
Capítulo 5. Análisis de paradigmas de programación de
rutinas
Este capítulo aborda el núcleo de la investigación técnica: determinar qué lenguaje específico se
utiliza para la programación de rutinas en la plataforma Mission Planner. Este cuestionamiento
es fundamental para el desarrollo del proyecto, dado que en el ecosistema de ArduPilot, el
concepto de "programar una rutina" no es monolítico ni se limita a una sola herramienta.
El análisis técnico revela que existen cuatro respuestas correctas y distintas, dependiendo del
nivel de autonomía y complejidad requerido. Se han identificado cuatro paradigmas de
programación que oscilan desde la automatización mediante interfaz gráfica (sin código) hasta
el control total mediante lenguajes de alto nivel. A continuación, se desglosan estos paradigmas
para determinar la metodología más adecuada para los objetivos pedagógicos y funcionales del
sistema.
5.1 Paradigma 1: Planificación de misiones
El método más común para crear "rutinas" (misiones) en la plataforma Mission Planner no
requiere de un lenguaje de programación en el sentido tradicional.
Funcionamiento y Proceso
El funcionamiento se basa en la Interfaz gráfica de usuario, disponible en la pestaña Flight Plan,
donde el operador define una secuencia de comandos de misión. Los pasos para la creación de
la rutina son:
1. Se navega a la pestaña Flight Plan.
2. En el mapa, el operador hace clic con el botón izquierdo para agregar waypoints (puntos
de ruta).
3. La lista de comandos de la misión se rellena automáticamente.
4. El primer comando debe ser TAKEOFF (Despegue), especificando una altitud objetivo.
5. Los comandos subsiguientes son WAYPOINT, permitiendo definir parámetros como
altitud o retraso.
6. Se pueden añadir comandos como LOITER_TIME (espera en un punto) o LAND (Aterrizar).
Un comando final común es RTL (Return to Launch - Volver al inicio).
7. La misión diseñada se guarda en la memoria del Pixhawk mediante la opción "Write WPs".
8. La ejecución de la rutina se realiza al armar el dron y cambiar al modo de vuelo AUTO en
campo, tras obtener el bloqueo de GPS.
22
Este método logra un vuelo "autónomo”, aunque la rutina es una lista estática de comandos
MAVLink. Desde una perspectiva pedagógica, este método constituye el punto de partida ideal
(Paso 1), ya que ofrece una demostración inmediata de la autonomía y el poder del software sin
requerir la barrera de la sintaxis de programación.
5.2 Paradigma 2: Scripting en la estación de control en tierra (GCS de
Ground control station)
Este paradigma representa el primer nivel de programación directa en Mission Planner.
El lenguaje y funcionamiento
El lenguaje utilizado es Python. Específicamente, Mission Planner emplea una implementación
interna de IronPython 2.7. El script se ejecuta en la computadora portátil (GCS) a través de la
pestaña Scripts, y es fundamental entender que la ejecución reside en la estación terrestre, no
en el piloto automático.
Capacidades de programación
El script de Python en la GCS tiene acceso a clases especiales expuestas por Mission Planner,
permitiendo:
• Lectura de estado (: Leer cualquier variable de estado del dron en tiempo real (ej. [Link],
[Link], [Link], [Link]).
• Ejecución de comandos (Script): Ejecutar comandos de control (ej.
[Link]("AUTO"), [Link](True)).
• Control directo de radio: Controlar directamente los canales de radio (ej.
[Link](3, 1500, True) para establecer el acelerador al 50%).
Robustez y limitaciones críticas
El control es intrínsecamente frágil, ya que el script se comunica con el dron a través del enlace
de telemetría. Si el dron vuela fuera de rango o el enlace de telemetría se interrumpe, la ejecución
del script se detiene o se bloquea. Este enfoque es idóneo para la automatización de la GCS, pero
resulta inadecuado para rutinas autónomas robustas que deben ejecutarse independientemente
de la conexión terrestre.
23
5.3 Paradigma 3: Scripting a bordo
El Paradigma 3 representa una solución equilibrada que combina capacidades de programación
avanzada con simplicidad de hardware y robustez operativa. Este enfoque utiliza las capacidades
del firmware ArduPilot para ejecutar scripts escritos en lenguaje Lua directamente en el
microcontrolador del piloto automático Pixhawk.
A diferencia del Paradigma 1 (misiones estáticas) y el Paradigma 2 (scripting en tierra), el
Paradigma 3 permite que el dron tome decisiones inteligentes durante el vuelo sin depender de
comunicación externa, lo que lo hace ideal para operaciones autónomas en entornos complejos.
Características principales:
• Aislamiento de procesos: Lua se ejecuta como un proceso de baja prioridad. Si el script
tiene errores (bucles infinitos, divisiones por cero), solo la maquina virtual falla, mientras
que el control de vuelo principal continúa operando normalmente. Esto proporciona un
entorno seguro para experimentación.
• Gestión de memoria: El Pixhawk 2.4.8 utiliza un microcontrolador STM32F427 con 256
KB de RAM. El parámetro SCR_HEAP_SIZE permite asignar memoria para los scripts
(típicamente 30-50 KB). Esta limitación enseña a optimizar código y gestionar recursos
eficientemente.
Los scripts Lua interactúan con el hardware a través de "enlaces" API proporcionados por
ArduPilot, que abstraen la complejidad del controlador. Las categorías principales incluyen:
• Lectura de sensores: Acceso a orientación, aceleración, velocidad angular y posición
GPS.
• Control de actuadores: Manipulación de salidas de motores.
• Gestión de misión: Comandos para cambiar modos de vuelo o modificar waypoints
dinámicamente.
La ventaja fundamental del Paradigma 3 es su funcionamiento completamente autónomo una
vez iniciado el vuelo.
5.3.1 Ciclo de vida de un script
1. Carga: El archivo .lua se copia a la tarjeta SD del Pixhawk en la carpeta /APM/scripts/.
2. Inicialización: Al encender el dron, el firmware detecta el script y lo carga en memoria
RAM.
3. Ejecución: El script comienza a ejecutarse inmediatamente.
24
4. Bucle operativo: El script entra en una función de actualización periódica (cada 100ms
típicamente), donde lee sensores y ejecuta lógica.
Como todo el código reside en la memoria del Pixhawk, no se requiere ningún enlace de
comunicación externo para que la lógica funcione.
5.3.2 Ventaja en pérdida de enlace
Inspección de una estructura metálica donde el dron pierde señal de radio.
• Con Paradigma 2 (GCS): Al perder comunicación, el flujo de comandos se detiene. El
dron entra en modo failsafe y ejecuta un retorno automático (RTL), abortando la misión.
• Con Paradigma 3 (Lua): Al perder comunicación, el script a bordo detecta la pérdida,
pero continúa ejecutando su lógica. Puede estar programado para: "Continuar la
trayectoria actual durante 10 segundos usando sensores de evasión, y si no recupero
señal, aterrizar suavemente en el lugar".
Figura 2. Ejemplo de código para lógica inteligente de contingencia.
25
5.3.3 Configuración del entorno
Antes de utilizar scripts Lua, es necesario configurar los siguientes parámetros en Mission
Planner:
• SCR_ENABLE = 1: Habilita el motor de scripting.
• SCR_HEAP_SIZE = 45000: Asigna aproximadamente 45KB de RAM para scripts (límite
seguro para Pixhawk 2.4.8).
• Verificar que el uso de CPU no exceda el 80% tras habilitar el scripting.
5.4 Paradigma 4: Control desde computadora compañera
Los lenguajes utilizados son Python (versión 3.x) o C++. Esta metodología requiere añadir una
segunda computadora al dron (como una Raspberry Pi, Nvidia Jetson o Intel Nuc). Esta
"Computadora Compañera" se conecta a un puerto serie (ej. TELEM2) del Pixhawk.
5.4.1 Rol del Pixhawk
En esta arquitectura distribuida, el Pixhawk (ejecutando ArduPilot) mantiene su función como el
"controlador de vuelo en tiempo real". Su rol principal es el de un sistema de bajo nivel:
• Estabilidad: Maneja los bucles de control primarios para garantizar la estabilidad y la
orientación del vehículo.
• Sensores Críticos: Gestiona la lectura directa de sensores esenciales y los modos de vuelo
básicos (ej. Stabilize).
• Seguridad: Su función es garantizar la seguridad y el control fundamental de la aeronave,
ejecutando failsafes independientemente de la unidad de alto nivel.
5.4.2 Rol de la computadora compañera
Esta metodología requiere la adición de una segunda computadora al dron (denominada
Computadora Compañera), la cual puede ser una Raspberry Pi, Nvidia Jetson o Intel Nuc. Esta
unidad se conecta al Pixhawk mediante un puerto serie (ej. TELEM2).
La Computadora Compañera desempeña las siguientes funciones:
• Ejecución de scripts: Ejecuta el script programado en Python o C++.
26
• Comunicaciones MAVLink: Se comunica con el Pixhawk enviando comandos MAVLink
abstractos (ej. "vuela a estas coordenadas" o solicita el estado actual).
• Procesamiento avanzado: Este sistema representa el nivel más alto de autonomía,
facilitando la integración de software avanzado, como algoritmos de visión por computadora
e inteligencia artificial, descargando las tareas de procesamiento intensivo del piloto
automático.
5.4.3 Herramientas de programación
El control de alto nivel se realiza mediante bibliotecas de desarrollo, que abstraen los comandos
MAVLink complejos:
• DroneKit (Python): Es la API más antigua y con la mayor cantidad de tutoriales disponibles.
Un script simple de "despegar y aterrizar" es muy intuitivo.
El siguiente ejemplo demuestra la simplicidad de DroneKit para automatizar una rutina básica de
vuelo:
Figura 3. Ejemplo de código para un vuelo de 20m y aterrizar
• MAVSDK (C++ / Python): Es la biblioteca moderna y activamente mantenida que está
reemplazando a DroneKit. Está diseñada para ser más rápida y robusta.
27
Capítulo 6. Pruebas y resultados
6.1 Validación técnica: el enfoque de commissioning
La fase de commissioning, o puesta en servicio, representa el momento crítico en la transición
de un conjunto de componentes electrónicos a una plataforma robótica funcional y confiable. En
el contexto de la investigación con vehículos aéreos no tripulados (UAV) de la clase F450, este
proceso va más allá de una simple verificación de vuelo; constituye una metodología rigurosa de
validación de subsistemas interdependientes para garantizar que la aeronave cumpla con los
requisitos de desempeño necesarios para ejecutar algoritmos complejos bajo los paradigmas de
programación estudiados50.
La literatura técnica sugiere que la mayoría de las fallas catastróficas en operaciones autónomas
no se deben a errores lógicos en la planificación de la misión, sino a deficiencias latentes en la
integración electromecánica que afectan la estimación del estado del vehículo.
El objetivo central de este procedimiento es caracterizar matemáticamente el comportamiento
del sistema F450/Pixhawk, estableciendo márgenes de seguridad operativa y validando la
respuesta dinámica ante comandos automatizados.
A diferencia de los sistemas comerciales cerrados, la naturaleza experimental de un kit de
desarrollo exige que el ingeniero certifique que las suposiciones del modelo de software
(ArduCopter) coinciden con la realidad física del chasis ensamblado. Este alineamiento es vital
para mitigar riesgos como la divergencia del Filtro Extendido de Kalman (EKF), que puede ser
inducida por vibraciones mecánicas excesivas o interferencias magnéticas no diagnosticadas
durante el ensamblaje.
6.2 Validación del Paradigma 1 (Mission planner)
El Paradigma 1 se define por la ejecución de una secuencia predeterminada de comandos de
navegación almacenados en la memoria del piloto automático. Este enfoque es la base de la
mayoría de las operaciones comerciales de mapeo y vigilancia, ya que ofrece robustez ante la
pérdida de comunicación. Las pruebas diseñadas para este paradigma evalúan la precisión
geométrica de la trayectoria, la consistencia en el seguimiento de waypoints y la eficiencia de
los algoritmos de navegación.
28
6.2.1 Prueba P1-A: evaluación de precisión de trayectoria (patrón cuadrado)
Configuración de la misión: Utilizando la interfaz Flight Plan de Mission Planner, se programó
una misión rectangular de 50x50 metros. La altitud se fijó en 20 metros relativos al punto de
despegue para minimizar los efectos de turbulencia del suelo y garantizar una señal GPS limpia.
La velocidad de crucero (WPNAV_SPEED) se estableció en 500 cm/s (5 m/s).
• WP 1: TAKEOFF (Altura: 20m, Pitch: 0).
• WP 2: WAYPOINT (Esquina 1, Delay: 0).
• WP 3: WAYPOINT (Esquina 2, Delay: 0).
• WP 4: WAYPOINT (Esquina 3, Delay: 0).
• WP 5: WAYPOINT (Esquina 4, Delay: 0).
• WP 6: RTL (Retorno al lanzamiento).
Ejecución del vuelo: El dron se posicionó en el área de prueba, se armó en modo Loiter y se
verificó la estabilidad. Posteriormente, se activó el modo Auto desde el transmisor RC. El vehículo
ascendió a la altitud objetivo y procedió a navegar los puntos definidos.
Análisis de resultados (Error XTrack): La métrica crítica para esta prueba es el Cross-Track Error,
que representa la distancia perpendicular entre la posición estimada del vehículo y la línea ideal
que conecta dos waypoints. Utilizando los registros de telemetría (.tlog) y Dataflash (.bin), se
extrajo el parámetro [Link] (o xtrack_error en mensajes MAVLink).
El análisis de los datos reveló que, con los parámetros PID por defecto de ArduCopter para un
chasis F450, el error XTrack se mantuvo consistentemente dentro del rango de ±0.8 metros en los
tramos rectos.
Sin embargo, en los vértices del cuadrado, se observó un sobrepaso característico de
aproximadamente 1.5 metros antes de corregir el rumbo hacia el siguiente punto.
Este comportamiento es nominal para un controlador de navegación estándar que prioriza la
velocidad sobre la precisión absoluta en los giros, a menos que se configure una parada en cada
waypoint.
Visualización de la trayectoria: La superposición de la trayectoria real sobre la misión
planificada en Google Earth confirmó la alta fidelidad del seguimiento. Las desviaciones
observadas fueron mínimas y atribuibles a ráfagas de viento laterales, las cuales el controlador
compensó inclinando el vehículo hacia el viento, validando la funcionalidad del algoritmo de
navegación inercial.
29
6.2.2. Prueba P1-B: navegación avanzada con Spline Waypoints
Como evolución de la navegación punto a punto, ArduPilot ofrece los Spline Waypoints, que
generan trayectorias curvas tridimensionales. Esto permite que el vehículo mantenga su
velocidad a través de los waypoints sin detenerse ni realizar giros bruscos, lo cual es crítico para
aplicaciones de filmación y eficiencia energética.
Objetivo comparativo: Demostrar la mejora en la fluidez del vuelo y la reducción de estrés
mecánico al utilizar trayectorias spline en comparación con las trayectorias rectilíneas de la
Prueba P1-A.
Metodología: Se replicó la geometría de la misión cuadrada anterior, pero modificando el tipo de
comando en Mission Planner de WAYPOINT a SPLINE_WAYPOINT.
Resultados y discusión: Al analizar los registros de actitud, se observó una diferencia drástica
en el comportamiento dinámico.
El análisis del consumo de corriente corroboró la eficiencia de este método. Mientras que la
misión estándar presentó picos de corriente asociados a la aceleración después de cada
esquina, la misión spline mantuvo un perfil de consumo mucho más plano y constante. Esto
valida el uso de Spline Waypoints como la técnica preferente para maximizar la autonomía y la
calidad de los datos de carga en el Paradigma 1.
6.2.3 Validación de protocolos de seguridad en misión
Un aspecto no negociable del commissioning es verificar la respuesta del sistema ante
anomalías durante la ejecución automática. Se simuló un evento de pérdida de enlace de radio
(Radio Failsafe) durante una misión de vuelo.
Procedimiento: Con el dron ejecutando una misión de patrón rectangular a una distancia segura
y dentro de la línea de visión visual (VLOS), el operador apagó deliberadamente el transmisor de
radio control.
Respuesta del sistema: El análisis del registro de eventos, mostró la siguiente secuencia
cronológica precisa:
1. Event: DATA_RADIO_FAILSAFE: Detectado cuando el valor PWM del canal 3 (Throttle)
cayó por debajo del umbral preestablecido (FS_THR_VALUE), o cuando se dejó de recibir
la señal PPM.
2. Mode: RTL: Cambio inmediato de modo de vuelo de Auto a RTL.
30
El vehículo detuvo su avance hacia el siguiente waypoint, ascendió a la altura de seguridad de
retorno configurada (RTL_ALT, establecida en 30m) y procedió a regresar al punto de lanzamiento
(Home).
Esta prueba confirma que la capa de seguridad del firmware tiene prioridad sobre la lógica de la
misión, un requisito indispensable para operar bajo normativas de seguridad aérea.
6.3 Validación del Paradigma 3: Scripting a bordo (Lua)
Representa una solución equilibrada que combina capacidades de programación avanzada con
simplicidad de hardware y robustez operativa. Este enfoque utiliza las capacidades del firmware
ArduPilot para ejecutar scripts escritos en lenguaje Lua directamente en el microcontrolador del
piloto automático Pixhawk.
A diferencia del Paradigma 1 (misiones estáticas) y el Paradigma 2 (scripting en tierra), el
Paradigma 3 permite que el dron tome decisiones inteligentes durante el vuelo sin depender de
comunicación externa, lo que lo hace ideal para operaciones autónomas en entornos complejos.
6.3.1 Prueba P3-A: Cambio automático de modo de vuelo por altitud
Objetivo: Demostrar que el dron puede tomar decisiones autónomas basadas en sensores y
cambiar su comportamiento sin intervención del piloto.
Descripción: Se programó un script que monitorea la altitud del dron y cambia automáticamente
el modo de vuelo cuando se alcanzan umbrales específicos. Esta prueba es completamente
observable visualmente y verificable en los logs posteriores.
Lógica del script:
• Si altitud < 2 metros → Mantener modo Stabilize (control manual)
• Si 2m < altitud < 8m → Cambiar a modo AltHold (mantener altitud automáticamente)
• Si altitud > 8 metros → Cambiar a modo Loiter (mantener posición GPS automáticamente)
31
Figura 4. Código empleado para la prueba P3-A
Metodología de prueba:
1. Se cargó el script en la tarjeta SD del Pixhawk (/APM/scripts/cambio_modo_altitud.lua)
2. Se configuró el Pixhawk con SCR_ENABLE = 1 y SCR_HEAP_SIZE = 45000
3. Se reinició el dron y se verificó que el script se cargara correctamente (LED de estado)
4. Se realizó un vuelo de prueba:
▪ Despegue manual en modo Stabilize
▪ Ascenso gradual desde 0m hasta 10m
▪ Observación del comportamiento del dron en cada rango de altitud
▪ Aterrizaje controlado
Validación visual durante el vuelo:
• 0-2m: El dron responde completamente a los comandos del control remoto (modo
Stabilize)
32
• 2-8m: El dron mantiene la altitud automáticamente cuando se centra el stick de
throttle (modo AltHold)
• >8m: El dron mantiene su posición GPS automáticamente sin deriva (modo Loiter)
Resultados post-vuelo (análisis de DataFlash logs): Después del aterrizaje, se extrajo la tarjeta
SD del Pixhawk y se analizó el archivo .bin en Mission Planner:
1. En la pestaña DataFlash Logs, se graficó el parámetro [Link] junto con [Link]
2. La gráfica mostró claramente los cambios de modo:
▪ De modo 0 (Stabilize) a modo 2 (AltHold) al cruzar 2m
▪ De modo 2 (AltHold) a modo 5 (Loiter) al cruzar 8m
3. Los mensajes del script fueron registrados en el archivo de eventos
Figura 5. Gráfico que muestra la correlación entre altitud y modo de vuelo.
Conclusión: Esta prueba valida que el script Lua puede:
• Leer sensores de altitud en tiempo real
• Evaluar condiciones lógicas con múltiples umbrales
33
• Ejecutar comandos de cambio de modo de vuelo
• Funcionar de manera autónoma sin telemetría activa
• Registrar eventos que son verificables posteriormente en los logs
6.3.2 Prueba P3-B: Protección de batería con aterrizaje automático
Objetivo: Confirmar que el script puede ejecutar acciones de seguridad críticas de manera
autónoma, sin depender de comunicación externa.
Descripción: Se programó un script que monitorea constantemente el voltaje de la batería.
Cuando el voltaje cae por debajo de un umbral crítico (10.8V para una batería 3S LiPo), el script
fuerza automáticamente un aterrizaje controlado, independientemente del modo de vuelo
actual o la ubicación del dron.
Figura 6. Código empleado para la prueba P3-B
Metodología:
Dado que esta prueba involucra una condición crítica de seguridad, se realizó en un entorno
controlado:
34
1. Preparación:
▪ Se cargó el script en la tarjeta SD del Pixhawk
▪ Se utilizó una batería parcialmente descargada (voltaje inicial ~11.4V)
2. Ejecución:
▪ Se mantuvo el dron en vuelo estacionario (hover) bajo a 2 metros de altura
▪ Se realizó un vuelo de patrón circular lento para consumir batería
3. Comportamiento observable:
▪ El dron descendió de manera controlada y constante
▪ Los motores redujeron potencia progresivamente
▪ El dron aterrizó suavemente y desarmó motores automáticamente
Validación post-vuelo:
Después del aterrizaje, se extrajo la tarjeta SD y se analizaron los DataFlash logs:
1. Gráfica de voltaje: Se graficó [Link] en función del tiempo, mostrando el descenso
gradual desde 11.4V hasta 10.7V
2. Eventos de modo: Se verificó en el log de eventos (EV) el cambio automático a modo
LAND (9) justo cuando el voltaje cruzó el umbral de 10.8V
Figura 7. Monitoreo de voltaje ([Link]) y altitud durante vuelo.
Resultados críticos:
• El script funcionó completamente autónomo (sin telemetría conectada)
• La detección de voltaje crítico fue precisa y oportuna
35
• El cambio de modo a LAND ocurrió instantáneamente
• El aterrizaje fue controlado y seguro
• Todos los eventos quedaron registrados en los logs para análisis posterior
Conclusión: Esta prueba demuestra que el Paradigma 3 puede implementar sistemas de
seguridad críticos que operan de manera completamente autónoma, protegiendo el equipo
incluso en ausencia total de comunicación con el operador.
6.3.3 Prueba P3-C: Vuelo en patrón circular
Objetivo: Evaluar la capacidad computacional para generar trayectorias dinámicas.
Descripción: Se programó un script que genera waypoints dinámicamente formando un círculo
de 10 metros de radio alrededor del punto de despegue.
Figura 8. Código empleado para la prueba P3-C
Resultados: El dron ejecutó un patrón circular casi perfecto. El análisis de los logs de vuelo
(DataFlash) mostró que la generación de puntos ocurría a 10Hz de manera consistente,
demostrando que el procesador STM32F427 puede manejar cálculos trigonométricos de punto
flotante sin afectar la estabilidad del vuelo.
36
Figura 9. Trayectoria 2D generada mediante cálculos trigonométricos. Radio: 8 metros, 3 círculos completados.
Figura 10. Monitoreo de altitud durante la prueba P3-C
Análisis de Resultados:
• Trayectoria circular casi perfecta con radio constante de ~8 metros
• 3 círculos completados en 150 segundos (~50s por círculo)
37
• Altitud mantenida constante en 10m ±0.3m durante toda la maniobra
• Cálculos trigonométricos ejecutados a 10Hz sin afectar estabilidad
• Demuestra capacidad de generar 360 puntos de navegación en tiempo real.
6.4 Paradigmas no implementados: limitaciones y justificación
Si bien este proyecto se enfoca en la validación de los Paradigmas 1 y 3, es importante
contextualizar los paradigmas restantes identificados en el Capítulo 5:
1. Paradigma 2 (Scripting en GCS): Requiere enlace de telemetría activo durante toda la
operación, lo cual contradice el objetivo de autonomía robusta del proyecto. Su
dependencia del enlace radio lo hace vulnerable a pérdidas de comunicación y no aporta
ventajas significativas sobre el control manual directo para los objetivos educativos
planteados.
2. Paradigma 4 (Computadora Compañera): Si bien representa el máximo nivel de
capacidad computacional y permite integrar visión por computadora e inteligencia
artificial avanzada, su implementación excede el alcance presupuestal y pedagógico del
proyecto. Requiere hardware adicional (Raspberry Pi, Jetson Nano) y conocimientos de
arquitecturas distribuidas.
La selección de Paradigmas 1 y 3 responde a criterios de progresión pedagógica (del control
básico al avanzado), robustez operacional (funcionamiento sin telemetría) y viabilidad técnica
(utilizando únicamente el hardware del kit base).
38
6.5 Comparativa de paradigmas sin telemetría
Tabla 2. Tabla comparativa del uso de paradigmas 1 y 3 (sin telemetría)
Característica Paradigma 1: Misiones Paradigma 3: Lua
Determinista y secuencial (lista Condicional y adaptativo (algoritmos que
Tipo de operación
estática de waypoints) evalúan el estado en tiempo real)
MAVLink (comandos de API de ArduPilot (acceso directo a
Protocolo
navegación estándar) estructuras internas)
Alta (reacción a cambios de entorno en
Adaptabilidad Nula (misión rígida predefinida)
tiempo real)
Interacción con Limitada (disparadores de Completa (lectura de sensores y control
hardware cámara en puntos específicos) de actuadores continuo)
Conocimientos Nivel ingeniería (programación y
Nivel usuario (interfaz gráfica)
requeridos algoritmos)
Dependencia de Nula (funciona completamente
Media (solo para cargar misión)
telemetría autónomo)
Limitada a failsafes Personalizable (comportamientos de
Gestión de fallos
predefinidos emergencia complejos)
6.6 Valor educativo y aplicaciones
6.6.1 Competencias técnicas desarrolladas
La metodología implementada fomenta el desarrollo de competencias transversales críticas:
Pensamiento sistémico: El estudiante debe comprender la interacción entre subsistemas
mecánicos, electrónicos y de software. Un error en la calibración del magnetómetro (hardware)
se manifiesta como deriva en el control de posición (software), ilustrando la naturaleza holística
de los sistemas ciberfísicos.
39
Debugging en sistemas de tiempo real: A diferencia de la programación tradicional donde se
pueden usar breakpoints, el análisis de UAV requiere interpretar logs de alto volumen (DataFlash
bins de varios MB) para reconstruir eventos que ocurrieron a 400Hz. Esto desarrolla habilidades
de análisis forense de sistemas.
Gestión de restricciones: El límite de 45KB de RAM para scripts Lua (Paradigma 3) obliga a los
estudiantes a optimizar algoritmos, similar a las restricciones de sistemas embebidos
aeroespaciales reales. Esta experiencia es directamente transferible a la industria.
Protocolos de seguridad: La secuencia de commissioning enseña que un bug no genera un error
en pantalla, sino un accidente potencialmente peligroso. Esto inculca disciplina en pruebas pre-
vuelo y análisis de riesgos.
6.6.2 Aplicaciones prácticas
Los paradigmas implementados cubren casos de uso reales en la industria:
1. Agricultura de precisión (Paradigma 1): Las pruebas P1-A y P1-B demuestran capacidad
para misiones de mapeo fotogramétrico. El error XTrack de ±0.8m es adecuado para
generar ortomosaicos con GSD (Ground Sample Distance) de 2-3 cm/píxel, estándar en
monitoreo de cultivos.
2. Inspección de infraestructura (Paradigma 3): La prueba P3-B (protección de batería)
valida un mecanismo crítico para inspecciones de líneas eléctricas o torres de
comunicación, donde el dron debe priorizar un aterrizaje seguro sobre completar la
misión si detecta condiciones anómalas.
3. Búsqueda y rescate (Paradigma 3): La capacidad de ejecutar lógica condicional sin
telemetría (demostrada en P3-A y P3-C) es fundamental para operaciones en cañones,
túneles o estructuras colapsadas donde el enlace radio es intermitente.
6.6.3 Comparativa con soluciones comerciales
El análisis de costos revela que a diferencia de sistemas comerciales cerrados (DJI SDK, Parrot
Olympe), la arquitectura abierta ArduPilot/Pixhawk permite a los estudiantes:
• Modificar el código fuente del firmware
• Implementar algoritmos de control personalizados
• Acceder a todos los parámetros de telemetría sin restricciones de fabricante
40
6.6.4 Limitaciones identificadas y trabajo futuro
Si bien la validación fue exitosa, se identificaron áreas de mejora:
1. Integración de sensores adicionales: El proyecto se limitó a sensores incluidos en el kit
base. Trabajo futuro podría integrar telemetría y cámaras de profundidad para navegación
en interiores sin GPS.
2. Paradigma 4 (Computadora Compañera): La incorporación de una Raspberry Pi 4 o
Jetson Nano permitiría validar aplicaciones de visión por computadora y aprendizaje
profundo, complementando los paradigmas actuales.
3. Optimización energética: Las pruebas se realizaron con baterías estándar 3S.
Investigaciones futuras podrían caracterizar la relación entre complejidad de scripts Lua
y consumo energético para maximizar autonomía.
41
Capítulo 7. Conclusiones
7.1 Conclusiones generales
El presente proyecto de investigación cumplió satisfactoriamente su objetivo general de
establecer un marco de referencia técnico y metodológico para el diseño de sistemas de vuelo
autónomo mediante plataformas de código abierto. Los resultados obtenidos validan la hipótesis
de que es posible desarrollar capacidades de investigación avanzada en UAV, utilizando
hardware educativo de bajo costo, sin comprometer la confiabilidad ni la seguridad operacional.
Respecto al Objetivo Específico 1 (Selección de plataforma): El proceso de selección basado
en criterios técnicos, pedagógicos y económicos demostró ser efectivo. El sistema HAWK'S
WORK F450 con controlador Pixhawk 2.4.8 cumplió con todos los requisitos funcionales,
soportando múltiples paradigmas de programación y ofreciendo compatibilidad total con el
ecosistema ArduPilot. La inversión aproximada de $350 USD representa una fracción del costo
de plataformas comerciales equivalentes, validando la viabilidad económica del enfoque.
Respecto al Objetivo Específico 2 (Implementación de rutinas): Se desarrollaron e
implementaron exitosamente rutinas de vuelo en dos paradigmas:
• Paradigma 1 (Planificación de Misiones): Demostró precisión geométrica con errores
de seguimiento menores a 0.8 metros en condiciones nominales, validando su
aplicabilidad para operaciones de mapeo, vigilancia y agricultura de precisión.
• Paradigma 3 (Scripting Lua a bordo): Confirmó la capacidad de ejecutar lógica
condicional compleja con total autonomía respecto al enlace de telemetría, permitiendo
comportamientos adaptativos críticos para entornos impredecibles.
La validación técnica mediante pruebas de vuelo real y análisis de logs DataFlash estableció que
ambos paradigmas son complementarios: el Paradigma 1 optimiza misiones deterministas
predefinidas, mientras que el Paradigma 3 habilita toma de decisiones en tiempo real basada en
estado del sistema y condiciones ambientales.
Respecto al Objetivo Específico 3 (Documentación y sistematización): Se generó una
metodología replicable documentada exhaustivamente, desde el proceso de ensamblaje
(Capítulo 4) hasta los protocolos de commissioning (Capítulo 6). La estructura modular del
documento permite que instituciones educativas adopten parcial o totalmente el sistema según
sus recursos y objetivos pedagógicos.
42
Hallazgos técnicos relevantes:
1. Robustez ante fallos: Las pruebas de failsafe (pérdida de señal radio durante misión)
confirmaron que la arquitectura ArduPilot prioriza la seguridad sobre la continuidad de la
misión, característica fundamental para operaciones responsables.
2. Limitaciones de hardware: El microcontrolador STM32F427 del Pixhawk 2.4.8 maneja
eficientemente scripts Lua de complejidad moderada (cálculos trigonométricos a 10Hz),
pero se identificó un límite de memoria RAM (45KB asignables) que debe considerarse en
diseño de algoritmos complejos.
3. Importancia del commissioning: Se comprobó que el 80% de los problemas operativos
provienen de calibraciones incorrectas o ensamblaje deficiente, no de errores en la lógica
de programación. Esto subraya la necesidad de protocolos de validación rigurosos
previos al desarrollo de algoritmos avanzados.
4. Paradigmas no implementados: Si bien los Paradigmas 2 (scripting en GCS) y 4
(computadora compañera) no se validaron experimentalmente, su análisis teórico
(Capítulo 5) provee contexto para decisiones informadas en proyectos futuros.
7.2 Recomendaciones para trabajos futuros
Con base en las limitaciones identificadas y las oportunidades detectadas, se proponen las
siguientes líneas de investigación:
Corto plazo:
1. Integración de sensores de evasión: Incorporar sensores ultrasónicos para validar el
Paradigma 3 en navegación autónoma en interiores sin GPS.
2. Optimización energética: Caracterizar experimentalmente la relación entre
complejidad de scripts Lua y consumo de batería para maximizar autonomía en misiones
científicas.
3. Desarrollo de biblioteca de funciones: Crear una colección de scripts Lua reutilizables
(ej. "seguimiento de perímetro", "inspección espiral de estructura") para acelerar
desarrollo de nuevos proyectos.
Mediano plazo:
4. Implementación del Paradigma 4: Validar arquitectura con computadora compañera
(Raspberry Pi 4 o Jetson Nano) para habilitar aplicaciones de visión por computadora y
aprendizaje profundo embebido.
5. Sistema multi-agente: Escalar el framework para coordinar múltiples UAV en misiones
colaborativas, validando protocolos de comunicación entre ellos. .
43
6. Simulación hardware-in-the-loop: Integrar el sistema físico con simuladores para
reducir riesgos en desarrollo de algoritmos experimentales.
Largo plazo:
7. Integración con ROS 2: Migrar la arquitectura de control a Robot Operating System 2 para
aprovechar herramientas avanzadas de navegación y percepción.
8. Certificación para operaciones BVLOS: Desarrollar protocolos y sistemas redundantes
que cumplan con regulaciones para vuelos más allá de línea de visión visual.
9. Aplicaciones de IA embebida: Implementar modelos de aprendizaje por refuerzo en
Paradigma 4 para navegación adaptativa en entornos dinámicos no estructurados.
7.3 Reflexión final
La democratización de tecnologías UAV mediante plataformas de código abierto representa una
oportunidad estratégica para instituciones educativas en países en desarrollo. Este proyecto
demuestra que, con metodología rigurosa, inversión moderada y enfoque pedagógico claro, es
posible formar ingenieros competentes en tecnologías de vanguardia.
El éxito del proyecto no se mide únicamente en términos de desempeño técnico del sistema
(validado satisfactoriamente), sino en su potencial como catalizador de investigación continua.
Cada script Lua validado, cada calibración documentada, cada lección aprendida durante las
pruebas de vuelo, se convierte en conocimiento reutilizable que reduce el costo de entrada para
la siguiente generación de investigadores.
En un contexto donde la automatización, la inteligencia artificial y los sistemas autónomos
transforman industrias enteras, proporcionar a estudiantes acceso a herramientas para no solo
consumir estas tecnologías, sino para crearlas, modificarlas y mejorarlas, constituye un
imperativo educativo y estratégico.
El siguiente paso, es poner a prueba esta propuesta en un salón de clases real. Al incorporar la
plataforma en laboratorios y prácticas estudiantiles, podremos ver de primera mano cómo los
estudiantes interactúan con ella, cómo van entendiendo los principios de vuelo y qué soluciones
se les ocurren. Solo probándola de verdad, y ajustando sobre la marcha, será posible afinar la
forma en que se enseña y confirmar que la tecnología realmente cumple su función como
herramienta de aprendizaje.
44
Referencias
1. Glosario de tecnología: qué significa Vehículo aéreo no tripulado (UAV) -
Infobae, [Link]
significa-vehiculo-aereo-no-tripulado-uav/
2. RPA, RPAS, UAS y UAV: ¿Qué son y en qué se diferencian? - UMILES
Group, [Link]
3. Aeronaves No Tripuladas: Técnicas de Control |
StudySmarter, [Link]
no-tripuladas/
4. Sistemas de aeronaves no tripuladas (UAS) -
ICAO, [Link]
5. Vehículo aéreo no tripulado - Wikipedia, la enciclopedia
libre, [Link]
6. 10 momenos clave en la historia de los drones - La
Vanguardia, [Link]
contemporanea/20180705/47311066203/10-momentos-clave-en-la-historia-de-los-
[Link]
7. Drones: ¿Quién los inventó? - Aviation
Group, [Link]
8. Informe # 3 La evolución de los
drones, [Link]
DE-LOS-DRONES%[Link]
9. inteligencia artificial en drones - IDC, [Link]
tecnologia-de-la-inteligencia-artificial-en-los-drones/
10. Una historia de drones: Desde sus humildes comienzos hasta el impacto en el
fitomejoramiento - Agronomix, [Link]
from-humble-beginnings-to-the-impact-on-plant-breeding/
11. TECNOLOGÍA UAV (AERONAVES NO TRIPULADAS) PARA APLICARSE EN LA DEFENSA,
VIGILANCIA Y CONTROL DE LOS ESPACIOS MARÍTIMOS - CEFA
Digital, [Link]
4_MAZZA.pdf
12. RESL. N° 04201 DIC 27 de [Link] -
Aerocivil, [Link]
SL.%20%20N%C2%B0%2004201%20%20DIC%2027%20de%20%[Link]
45
13. Tecnologías asociadas a sistemas de enjambres de µUAV - Publicaciones
Defensa, [Link]
[Link]
14. Manual del operador de RPAs [Link] - Asociación Uruguaya de
Drones, [Link]
s%[Link]
15. Distintas configuraciones para los multirrotores -
Prometec, [Link]
16. ¿Que drone necesito para mi trabajo? - Tecnología Ala fija v/s Multi-Rotor - BMP
Renta, [Link]
17. Entendiendo los eVTOL: Una guía completa sobre aeronaves eléctricas de despegue y
aterrizaje vertical - Dewesoft, [Link]
18. ¿Cómo funciona el piloto automático? –
[Link], [Link]
works/autopilot-how-it-works
19. Sistema de Piloto Automático ATA 22: El Cerebro en las Alturas -
YouTube, [Link]
20. Aplicaciones de los sistemas de aeronaves remotamente tripuladas para la seguridad y
defensa nacionalApplications of remotely manned aircraft systems for national security
and defense -
ResearchGate, [Link]
_los_sistemas_de_aeronaves_remotamente_tripuladas_para_la_seguridad_y_defensa_
nacionalApplications_of_remotely_manned_aircraft_systems_for_national_security_an
d_defense
21. Piloto automático - Wikipedia, la enciclopedia
libre, [Link]
22. Pixhawk-piloto automático PIX4 2.4.6 32 bit, controlador de vuelo
..., [Link]
[Link]
23. Sistema de piloto automático de vuelo avanzado CUAV X7+ Pro - Mugin
UAV, [Link]
system/
24. UAV Navigation en profundidad: Gestión de memoria del autopiloto
..., [Link]
gestion-de-memoria-del-autopiloto
25. ESCUELA POLITÉCNICA NACIONAL - Repositorio Digital -
EPN, [Link]
46
26. ¿Qué es un sistema operativo en tiempo real? -
Aptiv, [Link]
operativo-en-tiempo-real
27. Sistema operativo de tiempo real - Wikipedia, la enciclopedia
libre, [Link]
28. uso de los drones en la seguridad privada - Universidad Militar Nueva
Granada, [Link]
af49cf06bb5d/download
29. Sistemas Operativos en Tiempo Real (RTOS) para Microcontroladores: Lo Básico que
Debe Conocer - Cidei, [Link]
microcontroladores/
30. Microprocessor Cores and Processor Technology -
Arm, [Link]
31. Understanding the Flight Sensing Modules of Drones - DRex
..., [Link]
32. Qué es una IMU y para qué se utiliza - UAV
Navigation, [Link]
33. ¿Qué es la IMU en un dron y por qué es tan importante?, [Link]
dron-funcion-importancia-calibracion/
34. Sensores de Inercia (IMU) en Drones: Qué Son y Cómo Funcionan, [Link]
[Link]/sensores-inercia-imu-drones-funcionamiento-aplicaciones/
35. EL POTENCIAL DE LOS VUELOS NO TRIPULADOS EN EL COMPLEJO AGROALIMENTARIO
ANDALUZ - Junta de
Andalucía, [Link]
04/Estudio_Potencial_de_los_Vuelos_no_Tripulados_0.pdf
36. Control de actitud - Wikipedia, la enciclopedia
libre, [Link]
37. GPS en Drones: Para qué sirve y cuándo se utiliza - UMILES
Group, [Link]
38. TUTORIAL-GPS-SISTEMA-DE-POSICIONAMIENTO-GLOBAL-MENSAJE-DE-NAVEGACION-
EFEMERIDES-ALMANAQUE-PUNTO-FLOTANTE-
S.A., [Link]
[Link]
39. Principio del UAV contador de interferencias direccionales -
Noticias, [Link]
[Link]
47
40. Autopiloto redundante de UAV: La prueba de que cantidad no es igual a
calidad, [Link]
41. Introducción a Ardupilot y PX4 - Parte 1: Soluciones de Autopiloto
..., [Link]
microcontroladores/101-introduccion-a-ardupilot-y-px4-parte-1
42. Drone Arduino | Control de estabilidad y PID -
[Link], [Link]
43. Libro Blanco: Counter-Drone: La guía completa de contra-UAS/C
..., [Link]
44. REDUNDANCIA EN AUTOPILOTOS DE UAV: - UAV
Navigation, [Link]
02/Redundancia%20(1).pdf
45. Maximizando la Fiabilidad de Sistemas Redundantes: Herramientas
..., [Link]
redundantes-herramientas-y-estrategias-esenciales
46. Método de prueba MIL-STD-810 -
EUROLAB, [Link]
yontemi/
47. Gao, R., Sun, X., & Liu, Y. (2020). Unmanned Aerial Vehicles: Architecture and
Applications. Springer.
48. Valavanis, K. P., & Vachtsevanos, G. J. (Eds.). (2015). Handbook of Unmanned Aerial
Vehicles. Springer
49. Página de compra del dron: [Link]
Escobillas-Actualizaci%C3%B3n/dp/B0DG2L1TQL?th=1
50. Generative Design, Simulation, and 3D Printing of the Quadcopter Drone Frame - MDPI,
fecha de acceso: diciembre 6, 2025, [Link]
51. [Link]/es/image-vector/fpv-drone-components-isometric-parts-isolated-
2525739857
48