Introducción a Ardupilot y PX4 - Parte 2: Construyendo el Dron
Autor: Raúl Alvarez-Torrico
Esta es una traducción automática (pueden haber algunos errores de traducción) de mi artículo original en inglés publicado por la revista "Circuit Cellar" (#358 de Mayo, 2020). El código de programa y diagramas aún están en Inglés.
Resumen
En la Parte 1 de este artículo, hablé de la arquitectura general de un dron multirotor y sus principales componentes de hardware y software. También dí una introducción general a las plataformas Ardupilot y PX4, mencionando algunos ejemplos de hardware de controlador de vuelo y tipos de vehículos compatibles, así como el software de control de tierra disponible en ambas plataformas. También dí una introducción general al protocolo MAVLink utilizado para comunicar aeronaves con estaciones de control en tierra en ambas plataformas. En esta segunda parte, discutiré los pasos principales involucrados en la construcción y configuración de un quadrirotor con la plataforma PX4. No será un tutorial detallado, sino una revisión de los pasos más importantes involucrados. También daré algunos consejos que abordan posibles situaciones problemáticas en el proceso de armado, no siempre obvias de inmediato para los principiantes. Hay muchos tutoriales bien documentados para armado de drones en Internet, considere este artículo como un resumen de pasos y consejos importantes que doy de mi propia experiencia para principiantes que desean construir su primer quadrirotor. Al final, también discutiré consejos adicionales sobre cómo iniciarse con vuelo autónomo utilizando la blibrería MAVSDK y el paquete MAVROS. Veamos si con este artículo puedo alentarlo a construir su primer quadricóptero y, en un futuro próximo, comenzar a experimentar con vuelo autónomo.
Un Proceso de Cuatro Pasos
La Figura 1 muestra una increíble cartilla de cableado hecha por Jethro Hazelhurst para el sitio web Ardupilot [Referencia 1]. El gráfico no se muestra aquí con gran detalle debido a la falta de espacio, pero puede seguir el enlace a la fuente que figura en el título para acceder a la versión original. Analiza la imagen en detalle; será muy ilustrativo si nunca antes ha construido un quadricóptero.
El proceso de construcción de un quadrirotor típico como el que mostraré como ejemplo en este artículo, es prácticamente el mismo para las plataformas PX4 y Ardupilot. Para este resumen, usaré la plataforma PX4 para explicar el proceso. Entonces, ¿qué pasos están generalmente involucrados en la construcción, configuración y vuelo de un quadcopter? Divido el proceso en cuatro pasos: 1) Armado del hardware, 2) Programación y configuración del firmware del controlador de vuelo, 3) Calibración y prueba previa de ESC, y 4) Prueba (s) de vuelo. El siguiente desarrollo asume que Ud. ya está familiarizado con las partes principales utilizadas para construir un multirotor, consulte la Parte 1 de este artículo para ver más detalles.
Entonces, aquí va uno de los primeros consejos que le daría a cualquiera que esté armando su primer quadrirotor. Consejo # 1: Nunca se apresure con los pasos involucrados en el proceso, siempre verifique dos veces todo lo que hace, y cuando tenga dudas, siempre es mejor investigar más o preguntar a alguien que tenga más conocimiento antes de continuar.
Figura 1: Cartilla de conexiones para un cuadricóptero Pixhawk (http://bit.ly/quadwiring)
Armado del Hardware
Paso 1: El marco. En general, uno comienza armando el marco. Estos generalmente vienen con una cartilla propia de instrucciones para su armado, de otro modo, se puede encontrar fácilmente uno en Internet. No ajuste los tornillos con fuerza al principio, se recomienda enfáticamente armar el marco primero, solo para "presentarlo". Consejo # 2: En sus primeros armados, es mejor no apretar de entrada los tornillos, mucho menos usar bloqueador de rosca; deje esto para los pasos finales, después de estar seguro de que todo está correcto y en su lugar.
Paso 2: Controladores electrónicos de velocidad (ESC) y motores "brushless". Para conectar motores brushless (sin escobillas), controladores de velocidad (ESCs) y cables de suministro de energía de la batería, generalmente se utilizan conectores tipo "banana". Aunque el marco S500 que utilicé para mi armado de ejemplo (ver Figura 2) viene con una placa de distribución de energía (PDB) "embebida" en la placa inferior del marco (la cual es realmente una PCB de doble cara usada también como parte de la estructura del marco); para principiantes, recomendaría usar una placa de distribución de energía (PDB) separada por dos razones: Primero, siempre existe la posibilidad de estropear la soldadura requerida en la PDB. Si esto sucede, es más barato y más fácil reemplazar el PDB separado que reemplazar la placa inferior del marco. Un quadrirotor típico de este tamaño consumirá alrededor de 15 amperios en total mientras "flota" en el aire con viento suave y sin carga útil. Sin embargo la corriente total puede alcanzar fácilmente el doble (si no más), cuando lleva carga útil, hace maniobras agresivas o vuela en condiciones de viento severo. Consejo # 3: Todas las soldaduras en el sistema de propulsión deben hacerse con cuidado, ordenadamente y de manera robusta, porque por esos puntos de conexión circularán corrientes altas, razón por la cual deben tener una buena continuidad eléctrica.
También debe existir el mejor aislamiento posible entre las terminales positivas y negativas. Como medida de seguridad, siempre verifique la ausencia de continuidad eléctrica entre cada par de almohadillas "+" y "-" en el PDB, solo para asegurarse de que no haya ningún cortocircuito debido al proceso de soldadura. Algunos ESC, motores brushless y PDBs vienen con los conectores tipo bala ya soldados; si no, debe soldarlos usted mismo. La Figura 2 muestra los ESC, motores y PDB ya integrados en mi marco S500 con todas las conexiones necesarias. Los ESC y los cables se asegurarán más tarde al marco con bridas de plástico.
Figura 2: Marco S500 con motores, ESCs y placa de distribución de potencia (PDB)
Paso 3: Controlador de vuelo, receptor RC y módulo GPS. El giro de los motores y las hélices en el cuadrirotor generan una cierta cantidad de vibración mecánica, la cual es detectada por los sensores acelerómetro y giroscopio en el controlador de vuelo. Esta vibración es "ruido" de señal para los sensores y potencialmente puede afectar la estabilidad del quadricóptero. Para minimizarlo, se puede instalar el controlador de vuelo sobre un soporte antivibraciones, como se muestra en la Figura 3. Utilicé bandas elásticas para fijar el controlador de vuelo al soporte, como puede ver en la imagen; en los pasos finales, se lo fijará con cinta adhesiva de doble cara.
Figura 3: Controlador de vuelo, receptor RC y módulo GPS
La Figura 4 muestra las disposición de los motores para la configuración de cuadrirotor "Quad X". Como se puede ver, cada motor tiene un número, posición y dirección de rotación determinados; por este motivo, es muy importante conectar cada cable de señal ESC correspondiente a las salidas del controlador de vuelo en el orden correcto. Consejo # 4: La disposición correcta de todos los motores en el marco y la conexión de los cables de señal de entrada ESC a los pines de salida correctos en el controlador de vuelo es de suma importancia. No hacerlo puede hacer que el quadricóptero se comporte de forma errática y luego se estrelle.
Figura 4: Configuración de cuadricóptero 'Quad X'
Para este armado, utilicé un sistema RC convencional de 6 canales con salidas analógicas PWM paralelas. Sin embargo, el controlador Pixhawk solo acepta señales de entrada en serie PPM-Sum o S.Bus; las cuales proporcionan las señales de todos los canales RC a través de una sola salida digital en serie. Ud. puede comprar un sistema de control RC con un receptor de salida en serie que sea adecuado para conectarse directamente al Pixhawk; sin embargo, si ya posee un sistema con canales PWM analógicos paralelos, hay disponibles convertidores PWM analógicos paralelos a digitales en serie de muy bajo costo, como el que utilicé para este armado.
La conexión del módulo GPS y brújula externa es muy sencilla. El módulo tiene dos conectores: el más ancho es para el receptor GPS y el angosto para la brújula digital. La brújula digital es altamente sensible a la interferencia magnética; por lo general, se recomienda usar un soporte para el módulo GPS para evitar interferencias provenientes del resto de los componentes electrónicos en el dron, especialmente del sistema de alimentación. La Figura 3 muestra el controlador de vuelo, el receptor RC y el módulo GPS con su soporte.
Paso 4. Módulo de potencia, batería y alarma. La Figura 5 muestra el módulo de potencia conectado al controlador de vuelo y al PDB, así como la batería LiPo en su lugar con su alarma de bajo voltaje. La Figura 1 ilustra claramente la conexión entre el controlador de vuelo, el módulo de potencia, la batería y el sistema de propulsión; no dude en volver a la Figura 1 cuando sea necesario para obtener una vista más detallada de otras conexiones. Para volar este quadricóptero usaré una batería de 5000mAh, 3S, 8C. Consejo # 5: El uso inadecuado de las baterías de LiPo puede ser extremadamente peligroso. Antes de cargarlos, conectarlos y usarlos, tómese el tiempo necesario para hacer una investigación exhaustiva acerca de su uso y cuidado. Hay muchos recursos en Internet que cubren este tema en detalle.
Paso 5. Módulo de telemetría, gimbal y transmisor FPV. El módulo de telemetría debe estar conectado al puerto TELEM1 en el Pixhawk (consulte la Figura 1). El gimbal recibe energía de la placa de distribución de potencia (PDB); el gimbal que elegí para este armado puede funcionar con baterías LiPo entre 2S y 6S. Los gimbals generalmente tienen una entrada de señal para controlar manualmente el ángulo de inclinación de la cámara. Esta entrada se puede conectar a cualquier salida no utilizada en el receptor RC, preferiblemente una de un canal asociado con un control tipo perilla en el transmisor RC. Una vez que se energiza el gimbal, la cámara se estabiliza automáticamente y el ángulo de inclinación se controla con la mencionada perilla en el transmisor RC. Las cámaras para dron tienen una salida de señal de video para conectarse al transmisor de video FPV (el cual es también alimentado desde la PDB). En general, el sistema FPV es un sistema independiente del sistema del dron. La figura 1 ilustra también esta idea.
Figura 5: Módulo de potencia, batería y alarma de bajo voltaje
Paso 6. Finalizando la construcción del hardware. Por lo general conecto la batería una vez al final de la construcción del hardware para asegurarme de que todo está bien y que nada se calienta debido a un cortocircuito, especialmente en el sistema de propulsión. Luego, procedo a apretar todos los tornillos con fijador de rosca. Los saco uno por uno del marco y los motores, aplico el fijador de rosca y los atornillo firmemente en su lugar. El fijador de rosca necesita al menos 24 horas para curar adecuadamente. Yo uso Loctite del tipo azul, el cual es recomendado para construcciones multirotor. Consejo # 6: Después del primer vuelo y antes de volar nuevamente, siempre verifique si los tornillos en los motores y el marco todavía están ajustados; a veces pueden aflojarse un debido a que las piezas tienden a asentarse de a poco con la vibración mecánica,por lo que se hace necesario un reajuste de los mismos. Un motor o parte suelta del marco puede hacer que el quadricóptero vibre demasiado y se estrelle.
Grabación y Configuración de Firmware
Aunque estoy usando el firmware PX4 para este ejemplo de armado, este mismo tipo de quadrirotor también se puede programar con firmware Ardupilot siguiendo casi los mismos pasos que se detallan a continuación:
Paso 1. Grabación de Firmware. Es muy fácil grabar el firmware al controlador de vuelo utilizando un software de control de tierra. Con QGroundControl por ejemplo, puede hacerlo yendo al submenú "Firmware" ubicado en el menú "Firmware Setup" (vea la Figura 6) y siguiendo las instrucciones que se dan allí. Después de grabar el firmware PX4, el tipo de marco usado debe configurarse en el submenú "Airframe", en la opción "Quadrotor x". Yo elegí "S500" para esta armado (ver Figura 7).
Figura 6: Menú de configuración de vehículo y submenú de grabación de firmware
Figura 7: Configuración de marco
Paso 2. Calibración de sensores. Luego, desde el submenú "Sensors", debemos calibrar la brújula digital, el giroscopio, el acelerómetro y también nivelar el horizonte (ver Figura 8). Aquí también se dan muchas pautas en la pantalla de QGroundControl para seguirlas paso a paso hasta terminar la calibración.
Figura 8: Calibración de sensores
Paso 3. Configuración del control de radio. La calibración del radio realizada en el submenú "Radio" (ver Figura 9) asegura que los valores mínimos y máximos para cada canal RC estén correctamente configurados en el controlador de vuelo. Estos valores generalmente varían de un transmisor RC a otro.
Figura 9: Configuración de radio control
Paso 4 Configuración de modos de vuelo. En el submenú "Flight Modes" (ver Figura 10) podemos configurar hasta seis modos de vuelo diferentes. Con un RC de 6 canales, suelo asignar el canal 5 para controlar los modos de vuelo y el canal 6 para la función "Kill switch" (interruptor de desactivación de emergencia). Los tres modos de vuelo más útiles que puedo recomendar para principiantes son los siguientes: "Altitude", que estabiliza automáticamente la altitud del cuadricóptero utilizando el sensor de presión barométrica (altímetro), pero no estabiliza la posición en el plano horizontal porque este modo de vuelo no usa el receptor GPS. Este modo de vuelo requerirá que Ud. estabilice manualmente el quadricóptero en el plano horizontal (lo cual puede ser complicado para los principiantes, especialmente con vientos fuertes). En este modo, el quadricóptero se puede "armar" (activar los motores) sin la necesidad de una fijación del GPS (útil para pruebas de motor en interiores). Consejo # 7: Nunca vuele un quadricóptero en interiores si es un principiante, menos si hay gente cerca. Para pruebas de vuelo, use siempre campos grandes y abiertos sin personas, animales y obstáculos alrededor.
Figura 10: Configuración de modos de vuelo
El modo de vuelo preferido que recomiendo para principiantes es "Position", especialmente para volar en condiciones de viento, ya que utiliza el sensor de presión barométrica y también el receptor GPS para estabilizar el dron vertical y horizontalmente. Pero no permite "armar" los motores y despegar el dron sin una buena fijación de GPS, que se no obtendrá a menos que el receptor GPS tenga buena visibilidad hacia el espacio. El modo de vuelo "Return" regresa automáticamente el dron a su punto de despegue y es muy útil si por alguna razón, uno pierde el control y solo se desea que el controlador de vuelo se encargue de aterrizar el dron por sí mismo en el punto de despegue original . Finalmente, también es muy importante configurar la función "Kill switch" para apagar los motores, especialmente cuando algo sale muy mal. Por ejemplo, si el dron cae al suelo y los motores siguen girando, incluso con el empuje ("thrust") en cero; o cuando el dron está fuera de control y es preferible apagarlo (y estrellarlo) antes de que ocurra algo peor.
Paso 5. Configuración de alimentación de energía. En el submenú "Power" se puede configurar la función de monitoreo de energía de la batería por parte del controlador de vuelo, a fin de que pueda estimar con precisión la energía restante y el tiempo de vuelo restante. Generalmente solo configuro el parámetro "Number of cells" ("3S" para una batería 3S) y dejo el resto en sus valores predeterminados. Al principio, es mejor no cambiar los parámetros restantes hasta que se comprenda bien cómo estos parámetros afectan la forma en que el controlador de vuelo realiza las estimaciones antes mencionadas.
Paso 6. Acciones de salvaguarda. Una "acción de salvaguarda" es una medida de seguridad predefinida que el quaricóptero tomará cuando ocurran algunos tipos de fallas. Por ejemplo, cuando la batería está al mínimo, o cuando se pierde la señal RC, o cuando se pierde el enlace de datos (telemetría), etc. Las opciones de configuración de salvaguarda disponibles van desde no hacer nada o dar una advertencia, hasta aterrizar el dron, devolverlo al punto de despegue o mantenerlo "flotando" en el aire. Las acciones de salvaguarda se pueden configurar en el submenú "Safety". Las opciones predeterminadas son también en este caso un buen punto de partida.
Calibración de ESCs y Pruebas Preliminares
Un último paso importante a tomar antes del primer vuelo es la calibración de los ESC (disponible en el submenú "Power"). La calibración ESC garantiza que todos los motores respondan igualmente al rango de aceleración disponible del transmisor RC. Esto se logra "enseñando" a los ESC a reconocer los valores mínimos y máximos de PWM para el control de empuje ("thrust") cero y en máximo. Consejo # 9: Antes de intentar despegar por primera vez, verifique la dirección de rotación de todos los motores de acuerdo con lo que se especifica en el diseño de la configuración seleccionada. También verifique el correcto montaje de las hélices. Motores girnado en la dirección incorrecta o hélices montadas incorrectamente causarán un comportamiento errático, que va desde no poder despegar en absoluto, hasta despegar y girar sin control en el plano horizontal, o despegar y voltearse boca abajo para finalmente estrellarse. Si un motor gira en la dirección incorrecta, cambie dos de los tres cables del motor conectados al ESC (elija dos de cualquiera de los tres disponibles) para cambiar la dirección de rotación. Verifique también el montaje adecuado de la hélice, con las curvas superiores e inferiores correctamente colocadas y el borde de ataque "cortando" directamente en el aire, en la dirección de rotación correcta.
Pruebas de Vuelo
Hasta este punto, por razones de seguridad, siempre haga todas las pruebas preliminares de motores sin las hélices; póngalas en los motores solo antes del primer vuelo. Elija un campo abierto sin personas, animales y obstáculos alrededor. Si hay obstáculos naturales o estructuras grandes (árboles altos, colinas, edificios, torres, etc.), el receptor GPS tardará más en obtener una fijación, o peor aún, la irá perdiendo de forma intermitente durante el vuelo. Consejo # 10: Siempre trate de hacer sus pruebas de vuelo en la mañana, cuando el viento es generalmente más tranquilo que en la tarde. Evite volar con vientos relativamente fuertes hasta que desarrolle buenas habilidades de pilotaje. Puede llevar un anemómetro de bolsillo para medir la velocidad del viento antes de despegar. La velocidad máxima del viento en la que se puede volar con seguridad un quadrirotor dependerá de la velocidad máxima del mismo. Una buena regla general es establecer la velocidad máxima del viento hasta dos tercios de la velocidad máxima del cuadrirotor. Por ejemplo, si la velocidad máxima del cuadrirotor es 80 mph; dos tercios de eso serían aproximadamente 53 mph, lo que, según la regla, será la velocidad máxima recomendada de viento para volar el quadricóptero de manera segura. Por último, pero no menos importante, no olvide cumplir con todas las regulaciones vigentes para aeronaves no tripuladas en su ciudad, para evitar problemas legales.
PX4 Vs ArduPilot
Desde un punto de vista funcional, PX4 y Ardupilot realmente no tienen muchas diferencias. El proceso de grabar el firmware y configurar los parámetros es casi el mismo en ambas plataformas. Además, ambos son compatibles con MAVLink y generalmente funcionarán bien con la configuración de quadricóptero usada aquí, siempre que el controlador de vuelo sea compatible con ambas plataformas. Una vez que haya grabado y configurado su quadricóptero con, digamos PX4, y haya volado su dron durante un tiempo, puede intentarlo con Ardupilot si lo desea. Se aplican todos los pasos descritos en la parte de firmware y configuración de este resumen, con mínimas diferencias. Incluso puede intentar usar Mission Planner o APM Planner esta vez. Esas son dos aplicaciones de software de control de tierra pertenecientes al ecosistema Ardupilot, muy similares a QGroundControl.
MAVSDK y MAVROS
MAVSDK es una librería de programación MAVLink en el ecosistema PX4, la cual está escrita en C ++ y tiene enlaces ("wrappers") a Python, Swift y Java. También tiene enlaces a JavaScript, CSharp y Rust, aunque todavía están en la etapa de "prueba de concepto". MAVSDK permite interactuar mediante código de programa con cualquier vehículo compatible con MAVLink para obtener información general de los mismos, obtener datos de telemetría, enviar comandos de acción como armar, despegar, aterrizar o regresar a casa, enviar comandos para calibrar sensores y enviar comandos de "bajo nivel" para controlar directamente el movimiento del vehículo [Referencia 2]. Por ejemplo, se puede controlar la posición, la velocidad y la aceleración en tres dimensiones para hacer que el dron cambie su estado en respuesta a las decisiones tomadas por algún tipo de algoritmo de navegación.
Por otro lado, el paquete MAVROS (el cual es un puente ROS a MAVLink), también del ecosistema PX4, permite el uso de comunicación MAVLink para que cualquier computadora que ejecute el "middleware" Robot Operating System (ROS) se comunique con cualquier software de estación de control de tierra o vehículo que utilize el protocolo MAVLink. Entonces en resumen, MAVSDK nos permite programar drones robóticos, y MAVROS nos permite hacerlo de forma directa en un entorno ROS; para lograr un enfoque más modular, distribuido, escalable y profesional. Ardupilot también tiene su propia biblioteca MAVLink llamada Dronekit (la cual tiene APIs Python y Android disponibles), pero aparentemente ha quedado un poco desatendida, y no se ha hecho mucho trabajo últimamente para proporcionar soporte para otros lenguajes de programación.
Si desea comenzar con el desarrollo de aplicaciones de vuelo autónomo dentro del ecosistema PX4, sugeriría probar MAVSDK y/o MAVROS en tres etapas: Primero, generalmente la forma más fácil de probar MAVSDK sería instalar el "wrapper" de Python y probar algunos ejemplos que vienen incluidos con un simulador 'Software In The Loop' (SITL). La instalación de la versión C++ de MAVSDK puede ser un poco más complicada, pues requiere compilar lalibrería desde código fuente en algunos casos. MAVROS es útil solo si ya sabe cómo usar ROS, pero si es nuevo en ROS, quizás debería aprender primero ROS antes de probar MAVROS. De todos modos aún puede hacer que su dron vuele de forma autónoma utilizando MAVSDK. Tanto MAVSDK como MAVROS pueden conectarse a vehículos a través de un puerto serie, conexiones UDP y TCP. Cuando se trabaja con simulación, conexiones TCP/UDP suelen ser la forma de conectar nuestra aplicación de software con el simulador.
En segundo lugar, una vez que su código se ejecute bien en la simulación, puede probarlo en un dron real abriendo el puerto serie del módulo de telemetría desde la aplicación que se ejecuta en su computadora de desarrollo o dispositivo móvil. En este caso, MAVSDK y MAVROS se comunicarán con su dron mediante la conexión MAVLink establecida a través de los módulos de telemetría. Tercero y último, para que su dron sea verdaderamente autónomo, puede actualizarlo agregando una computadora complementaria (Raspberry Pi, Odroid, Jetson Nano, etc.) a la configuración de su quadricóptero. La computadora complementaria se puede conectar directamente al puerto serie TELEM2 del controlador de vuelo y ejecutar el código MAVSDK/MAVROS que controla el vehículo, junto con código adicional de interfaz con sensores y actuadores adicionales especialmente elejidos para su aplicación.
Conclusión
Espero que la información presentada en este artículo haya servido para darle una perspectiva general sobre las plataformas PX4 y Ardupilot, y qué implica la construcción de un quadricóptero para fotografía aérea; o quizás más interesante aún, uno para experimentar con vuelo autónomo. Si nunca antes has construido un quadricóptero, te animo a que lo hagas y experimentes. No voy a mentir, te estrellarás varias veces mientras aprendes a pilotarlo y experimentas con él, pero ese es el proceso normal de aprendizaje para cualquiera; ¡de todos modos es muy divertido! Lo más emocionante es que una vez que comprendas bien lo que implica construir y configurar un quadricóptero correctamente, puedes comenzar a experimentar con aplicaciones autónomas de drones. En un futuro artículo cubriré con más detalle (y con un ejemplo concreto) cómo usar la librería MAVSDK para desarrollar código para drones autónomos usando simulación SITL. ¡Hasta la próxima!
Ve la segunda parte de este artículo en este enlace: Introducción a Ardupilot y PX4 - Parte 1: Soluciones de Autopiloto Para Drones
-----------------------------
REFERENCIAS
[Reference 1] https://ardupilot.org/copter/docs/advanced-pixhawk-quadcopter-wiring-chart.html
[Reference 2] https://mavsdk.mavlink.io/develop/en/index.html
RECURSOS
PX4 platform
https://px4.io/
Ardupilot platform
https://ardupilot.org/ardupilot/
PX4 Basic Configuration
https://docs.px4.io/v1.9.0/en/config/index.html
PX4 ESC Calibration
https://docs.px4.io/v1.9.0/en/advanced_config/esc_calibration.html
QGroundControl
http://qgroundcontrol.com/
How to care for your lipo batteries
https://thedronegirl.com/2016/07/26/care-lipo-batteries/
MAVSDK library
https://mavsdk.mavlink.io/develop/en/index.html
MAVROS package
https://dev.px4.io/v1.9.0/en/ros/mavros_installation.html
PX4 SITL simulation
https://dev.px4.io/v1.9.0/en/simulation/index.html
Dronekit library
https://dronekit.io/
-----------------------------
Suscríbete a Nuestro Boletín de Noticias
Para recibir anuncios de otros talleres cursos similares.
Productos Relacionados en Nuestra Tienda Virtual
Controladora de Vuelo Pixhawk 2.4.8, GPS NEO-6M, Tarjeta TF 4GB, Módulo de Potencia, PPM, I2C Splitter, OSD, Botón, BuzzerDetalles del Producto $us 260.00 |
Kit Cuadricóptero S500 (Tren Largo) APM DJI Compatible Básico CompletoDetalles del Producto $us 513.00 |