Dron de bricolaje: Lección 4. Controlador de vuelo.

Contenidos

Introducción

Ahora que ha seleccionado o diseñado el bastidor, los motores, los rotores, los ESC y la batería del UAV, puede comenzar a elegir su controlador de vuelo. El controlador de vuelo para un vehículo aéreo no tripulado de múltiples rotores es un circuito integrado, que generalmente consta de un microprocesador, sensores y pines de entrada / salida. Después de desempacar, el controlador de vuelo no sabe qué tipo o configuración específica de UAV está utilizando, por lo que inicialmente deberá establecer ciertos parámetros en el software, luego de lo cual la configuración dada se carga a bordo. En lugar de simplemente comparar los controladores de vuelo disponibles actualmente, el enfoque que hemos adoptado aquí enumera qué elementos de la PC son responsables de qué funciones, así como los aspectos a tener en cuenta.

Procesador principal

8051 vs AVR vs PIC vs ARM: Una familia de microcontroladores que forman la base de la mayoría controladores de vuelo modernos. Arduino se basa en AVR (ATmel) y la comunidad parece estar enfocada en MultiWii como el código preferido. Microchip es el principal fabricante de chips PIC. Es difícil argumentar que uno es mejor que el otro, todo se reduce a lo que puede hacer el software. ARM (como STM32) usa arquitectura de 16/32 bits, y docenas usan AVR y PIC de 8/16 bits. A medida que las computadoras de placa única se vuelven cada vez menos costosas, se espera que los controladores de vuelo de próxima generación puedan ejecutar sistemas operativos completos como Linux o Android.

CPU: Por lo general, su ancho de bits es un múltiplo de 8 (8 bits, 16 bits, 32 bits, 64 bits), que en turn indica el tamaño de los registros primarios en la CPU. Los microprocesadores solo pueden procesar un número establecido (máximo) de bits en la memoria a la vez (reloj). Cuantos más bits pueda manejar el microprocesador, más preciso (y más rápido) será el procesamiento. Por ejemplo, procesar una variable de 16 bits en un procesador de 8 bits es mucho más lento que en uno de 32 bits. Tenga en cuenta que el código también debe ejecutarse con el número correcto de bits y, en el momento de escribir este artículo, solo unos pocos programas utilizan código optimizado para 32 bits.

Frecuencia de funcionamiento: La frecuencia a la que funciona el procesador principal. También se denomina "frecuencia de reloj" de forma predeterminada. La frecuencia se mide en hercios (ciclos por segundo). Cuanto mayor sea la frecuencia de funcionamiento, más rápido podrá procesar los datos el procesador.

Programa / Flash: Flash es donde se almacena el código principal. Si el programa es complejo, puede ocupar mucho espacio. Obviamente, cuanto más grande es la memoria, más información puede almacenar. La memoria también es útil para almacenar datos en vuelo como coordenadas GPS, planes de vuelo, movimiento automático de la cámara, etc. El código cargado en la memoria flash permanece en el chip incluso después de que se apaga la alimentación.

SRAM: SRAM son las siglas de Static Random Access Memory y es el espacio en el chip que se utiliza al realizar cálculos. Los datos almacenados en la RAM se pierden cuando se apaga la alimentación. Cuanto mayor sea la cantidad de RAM, más información estará "fácilmente disponible" para los cálculos en un momento dado.

EEPROM: La memoria de sólo lectura programable y borrable eléctricamente (EEPROM) se usa típicamente para almacenar información que no cambia durante el vuelo, como configuraciones en oposición a datos. almacenados en SRAM, que pueden incluir lecturas de sensores, etc.

Puertos de E / S adicionales: la mayoría de los microcontroladores tienen una gran cantidad de puertos de entrada y salida digitales y analógicos, en el controlador de vuelo algunos se utilizan para sensores, otros para comunicación, o para entrada y salida general. Estos puertos adicionales se pueden conectar a servos RC, cardanes, zumbadores y más.

Convertidor A / D: Si los sensores utilizan un voltaje analógico integrado (generalmente 0-3,3 V o 0-5 V), el convertidor analógico A digital debe convertir estas lecturas a datos digitales. Al igual que con el procesador, la cantidad de bits que puede manejar el ADC determina la máxima precisión. Asociado con esto está la frecuencia de reloj a la que el microprocesador puede leer datos (veces por segundo) para asegurar que la información no se pierda. Sin embargo, es difícil no perder algunos de los datos durante esta conversión, por lo que cuanto mayor sea la profundidad de bits del ADC, más precisas serán las lecturas, pero es importante que el procesador pueda manejar la velocidad a la que se procesan los datos. siendo enviado.

Fuente de alimentación

A menudo, las especificaciones del controlador de vuelo describen dos rangos de voltaje, el primero de los cuales es el rango de voltaje de entrada del propio controlador de vuelo (la mayoría funcionan a un voltaje nominal de 5 V), y el segundo es el rango de voltaje de entrada del microprocesador principal (3,3 V o 5 V). Dado que el controlador de vuelo es un dispositivo integrado, solo debe prestar atención al rango de voltaje de entrada del controlador. La mayoría de los controladores de vuelo UAV multirrotor operan a 5 V, ya que este voltaje es generado por el BEC (consulte la sección " Planta motriz" para obtener más información).

Repitamos. Idealmente, no es necesario alimentar el controlador de vuelo por separado de la batería principal. La única excepción es si necesita una batería de respaldo en caso de que la batería principal esté emitiendo tanta energía que el BEC no pueda generar suficiente corriente / voltaje, provocando un corte de energía / reinicio. Pero, en este caso, a menudo se utilizan condensadores en lugar de una batería de respaldo.

Sensores

Desde el punto de vista del hardware, un controlador de vuelo es esencialmente un microcontrolador programable regular, solo con sensores especiales a bordo. Como mínimo, el controlador de vuelo incluirá un giroscopio de 3 ejes, pero sin autonivelación. No todos los controladores de vuelo están equipados con los siguientes sensores, pero también pueden incluir una combinación de ellos:

  • Acelerómetro: Como su nombre indica, los acelerómetros miden la aceleración lineal. en tres ejes (llamémoslos: X, Y y Z). Normalmente se mide en "G (en ruso. Igual)". El valor estándar (normal) es g = 9.80665 m / s². Para determinar la posición, la salida del acelerómetro se puede integrar dos veces, aunque debido a pérdidas en la salida, el objeto puede estar sujeto a deriva. La característica más significativa de los acelerómetros triaxiales es que registran la gravedad y, como tales, pueden saber en qué dirección "descender". Esto juega un papel importante para garantizar la estabilidad del UAV multirrotor. El acelerómetro debe estar montado en el controlador de vuelo para que los ejes lineales coincidan con los ejes principales del dron.

  • Giroscopio: El giroscopio mide la tasa de cambio de ángulos a lo largo de tres ejes angulares (vamos llámalos: alfa, beta y gamma). Por lo general, se mide en grados por segundo. Tenga en cuenta que el giroscopio no mide ángulos absolutos directamente, pero puede iterar para obtener un ángulo que, como el acelerómetro, fomente la deriva. La salida de un giroscopio real tiende a ser analógica o I2C, pero la mayoría de las veces no necesita preocuparse por esto, ya que todos los datos entrantes son procesados ​​por el código del controlador de vuelo. El giroscopio debe instalarse de manera que su eje de rotación coincida con el eje del UAV.

  • Unidad de medida inercial (IMU): La IMU es esencialmente una placa pequeña que contiene tanto un acelerómetro y un giroscopio (generalmente de varios ejes). La mayoría de estos incluyen un acelerómetro de tres ejes y un giroscopio de tres ejes, otros pueden incluir sensores adicionales, como un magnetómetro de tres ejes, que proporcionan un total de 9 ejes de medición.

  • Brújula / Magnetómetro: Una brújula magnética electrónica capaz de detectar el campo magnético de la Tierra y utilizar estos datos para determinar la dirección de la brújula del dron (en relación con el polo norte magnético). Este sensor casi siempre está presente si el sistema tiene una entrada de GPS y está disponible de uno a tres ejes.

  • Presión / Barómetro: Dado que la presión atmosférica cambia con la distancia desde el nivel del mar, puede utilizar un sensor de presión para obtener una lectura de altitud bastante precisa del UAV. Para calcular la altitud más precisa, la mayoría de los controladores de vuelo reciben datos simultáneamente de un sensor de presión y un sistema de navegación por satélite (GPS). Al ensamblar, tenga en cuenta que es preferible que el orificio en la caja del barómetro esté cubierto con un trozo de gomaespuma para reducir el efecto negativo del viento en el chip.

  • GPS: Sistema de posicionamiento global (GPS) para determinar su ubicación geográfica específica, utiliza señales enviadas por varios satélites que orbitan la Tierra. El controlador de vuelo puede tener un módulo GPS integrado y uno conectado por cable. La antena GPS no debe confundirse con el módulo GPS en sí, que puede parecerse a una pequeña caja negra o una antena "Duck" normal. Para obtener datos de ubicación precisos, el módulo GPS debe recibir datos de varios satélites, y cuantos más, mejor.

  • Distancia: Los sensores de distancia se utilizan cada vez más en drones ya que las coordenadas GPS y los sensores de presión no pueden decir usted qué tan lejos está del suelo (colina, montaña o edificio), o si chocará con un objeto o no. El sensor de distancia orientado hacia abajo puede basarse en tecnología ultrasónica, láser o lidar (los sensores de infrarrojos pueden experimentar problemas con la luz solar). Los sensores de distancia rara vez se incluyen de serie con un controlador de vuelo.

Modos de vuelo

A continuación se muestra una lista de los modos de vuelo más populares; sin embargo, es posible que no todos estén disponibles en controladores de vuelo... El "modo de vuelo" es la forma en que el controlador de vuelo utiliza sensores y comandos de radio entrantes para estabilizar y volar el UAV. Si el equipo de control utilizado tiene cinco o más canales, el usuario puede configurar el software, lo que le permitirá cambiar de modo a través del 5º canal (interruptor auxiliar) directamente durante el vuelo.

  • ACRO - normalmente el modo predeterminado, de todos los sensores disponibles, el controlador de vuelo usa solo el giroscopio (el dron no se puede nivelar automáticamente). Relevante para vuelo deportivo (acrobático).
  • ÁNGULO - modo estable; de todos los sensores disponibles, el controlador de vuelo utiliza un giroscopio y un acelerómetro. Los ángulos son limitados. Mantendrá el dron en posición horizontal (pero sin mantener la posición).
  • HORIZONTE - combina la estabilidad del modo "ÁNGULO", cuando los palos están cerca del centro y se mueven lentamente, y las acrobacias del modo "ACRO" cuando los palos están en sus posiciones extremas y se mueven rápidamente. El controlador de vuelo solo usa el giroscopio.
  • BARO (Mantener altitud) - modo estable; de todos los sensores disponibles, el controlador de vuelo utiliza un giroscopio, un acelerómetro y un barómetro. Los ángulos son limitados. El barómetro se utiliza para mantener una cierta altitud (fija) cuando no se dan comandos desde el equipo de control.
  • MAG (Mantener rumbo) - modo de bloqueo de rumbo (dirección de la brújula), el dron mantendrá la orientación de guiñada. De todos los sensores disponibles, el controlador de vuelo usa un giroscopio, un acelerómetro y una brújula.
  • HEADFREE (CareFree, Headless) - elimina el seguimiento de orientación (Yaw) del dron y por lo tanto te permite moverte en dirección 2D según el movimiento ROLL / PITCH palanca de control. De todos los sensores disponibles, el controlador de vuelo usa un giroscopio, un acelerómetro y una brújula.
  • GPS / Regreso a casa - Automáticamente usa brújula y GPS para regresar a la ubicación de despegue. De todos los sensores disponibles, el controlador de vuelo usa un giroscopio, un acelerómetro, una brújula y un módulo GPS.
  • GPS / Waypoint - permite que el dron siga de forma autónoma puntos GPS preestablecidos. De todos los sensores disponibles, el controlador de vuelo usa un giroscopio, un acelerómetro, una brújula y un módulo GPS.
  • GPS / Retención de posición : mantiene la posición actual mediante GPS y barómetro (si está disponible). De todos los sensores disponibles, el controlador de vuelo usa un giroscopio, un acelerómetro, una brújula y un módulo GPS.
  • A prueba de fallos - si no se han especificado otros modos de vuelo, el dron cambia al modo Acro. De todos los sensores disponibles, el controlador de vuelo solo utiliza el giroscopio. Relevante en caso de fallas en el software del dron, le permite restaurar el control sobre el UAV usando comandos previamente preestablecidos.

Software

Controlador PID (asignación y configuración)

Derivado integral proporcional (PID) o Proporcional-Integral-Derivado (PID) es una pieza de software de controlador de vuelo que lee datos de sensores y calcula qué tan rápido deben girar los motores para mantener la velocidad deseada del UAV.

Los desarrolladores de UAV listos para volar tienden a ajustar de manera óptima los parámetros del controlador PID, razón por la cual la mayoría de los drones RTF se pilotean perfectamente desde el primer momento. Lo que no se puede decir sobre los ensamblajes UAV personalizados, donde es importante utilizar un controlador de vuelo universal adecuado para cualquier ensamblaje multirrotor, con la capacidad de ajustar los valores PID hasta que cumplan con las características de vuelo requeridas por el usuario final.

GUI

Interfaz gráfica de usuario (GUI) o interfaz gráfica de usuario Es lo que se usa para editar visualmente el código (usando una computadora) que se cargará en el controlador de vuelo. El software que viene con los controladores de vuelo es cada vez mejor; Los primeros controladores de vuelo usaban principalmente interfaces basadas en texto, lo que requería que los usuarios entendieran casi todo el código y cambiaran secciones específicas para adaptarse al diseño. Recientemente, la GUI ha estado utilizando interfaces gráficas interactivas para facilitar al usuario la configuración de los parámetros necesarios.

Características adicionales

El software utilizado en algunos controladores de vuelo puede tener características adicionales que no están disponibles para otros. La elección de un controlador de vuelo en particular puede depender en última instancia de las características / funcionalidades adicionales que ofrece el desarrollador. Estas funciones pueden incluir:

  • Navegación autónoma de puntos de referencia : permite al usuario establecer puntos de referencia GPS que el dron seguirá de forma autónoma.
  • Orbita - movimiento del dron alrededor de una determinada coordenada GPS, donde el frente del dron siempre se dirige hacia la coordenada dada (relevante para disparar).
  • Sígueme : muchos UAV tienen una función "Sígueme", que puede basarse en el posicionamiento satelital (por ejemplo, rastrear las coordenadas GPS de un teléfono inteligente o un módulo integrado en el equipo de control GPS).
  • Imagen 3D - La mayoría de las imágenes 3D se toman después del vuelo utilizando imágenes y datos GPS adquiridos durante el vuelo.
  • Código abierto - El software de algunos controladores de vuelo no se puede cambiar / configurar. Los productos de código abierto generalmente permiten a los usuarios avanzados modificar el código para satisfacer sus necesidades específicas.

Comunicaciones

Control de radio (RC)

El control de radio normalmente incluye Transmisor de RC / RC transmisor (en hobby no tripulado - equipo de control de radio / control remoto) y receptor RC (receptor RC)

  • Acelerador / Elevación
  • Guiñada
  • Paso
  • ​​
  • Roll

Todos los demás canales disponibles se pueden usar para acciones tales como:

  • Armar (Armar o Armar) / Desarmar (Desarmar o Desarmar) - armado / desarmado de motores...
  • Control de cardán (panorámica hacia arriba / abajo, girar en sentido horario / antihorario, zoom)
  • Cambiar modos de vuelo (ACRO / ANGLE, etc.)
  • Activar / Activar carga útil (paracaídas, zumbador u otro dispositivo)
  • Cualquier otra aplicación

La mayoría de los usuarios (pilotos de UAV) prefieren el control manual, esto demuestra una vez más que pilotar con El equipo de control sigue siendo la opción número uno. Por sí mismo, el receptor RC simplemente transmite los valores provenientes del transmisor RC, lo que significa que no puede controlar el dron. El receptor RC debe estar conectado a un controlador de vuelo, que a su vez debe estar programado para recibir señales RC. Hay muy pocos controladores de vuelo en el mercado que aceptan comandos de radio entrantes directamente desde el receptor, y la mayoría de las PC incluso proporcionan energía al receptor desde uno de los pines. Consideraciones adicionales al elegir un control remoto incluyen:

  • No todos los transmisores RC pueden proporcionar la gama completa de señales RC desde 500 ms hasta 2500 ms; algunos limitan artificialmente este rango, ya que la mayoría de los RC en uso son para automóviles, aviones y helicópteros controlados por radio.
  • Alcance / Máx. rango de aire (medido en pies o metros) Los sistemas RC-casi nunca son proporcionados por los fabricantes, ya que este parámetro está influenciado por muchos factores como el ruido, la temperatura, la humedad, la energía de la batería y otros.
  • Algunos sistemas RC tienen un receptor que también tiene un transmisor incorporado para transmitir datos desde el sensor (por ejemplo, coordenadas GPS), que luego se mostrarán en la pantalla LCD del transmisor RC.

Bluetooth

Los productos Bluetooth y BLE (Bluetooth Low Energy) posteriores estaban destinados originalmente a transferir datos entre dispositivos sin emparejamiento ni frecuencia pareo. Algunos controladores de vuelo disponibles comercialmente pueden enviar y recibir datos de forma inalámbrica a través de una conexión Bluetooth, lo que facilita la resolución de problemas en el campo.

Wi-Fi

El control de Wi-Fi generalmente se logra a través de un enrutador Wi-Fi, computadora (incluyendo computadora portátil, computadora de escritorio, tableta) o teléfono inteligente. Wi-Fi puede hacer frente tanto a la transmisión de datos como a la transmisión de video, pero al mismo tiempo, esta tecnología es más difícil de configurar / implementar. Al igual que con todos los dispositivos Wi-Fi, la distancia está limitada por el transmisor Wi-Fi.

Radiofrecuencia (RF o RF)

El control de radiofrecuencia (RF) en este contexto se refiere a la transferencia inalámbrica de datos desde una computadora o microcontrolador a una aeronave usando un transmisor / receptor de RF (o transceptor de doble banda). El uso de una unidad de RF convencional conectada a una computadora permite la comunicación bidireccional a largas distancias con una alta densidad de datos (generalmente en formato serie).

Smartphone

Aunque este no es un tipo de comunicación, la pregunta en sí es cómo controlar un dron usando un teléfono inteligente, lo suficiente como para darle una sección separada. Los teléfonos inteligentes modernos son esencialmente computadoras poderosas que, casualmente, también pueden hacer llamadas telefónicas. Casi todos los teléfonos inteligentes tienen un módulo Bluetooth incorporado, así como un módulo WiFi, cada uno de los cuales se usa para controlar el dron y / o recibir datos y / o video.

Infrarrojos (IR)

Control remoto de TV) rara vez se usa para controlar drones, ya que incluso en las habitaciones ordinarias (sin mencionar los espacios abiertos) hay tanta interferencia infrarroja que no es muy confiable. A pesar de que la tecnología se puede utilizar para controlar el UAV, no se puede ofrecer como la opción principal.

Consideraciones adicionales

Funcionalidad: Los fabricantes de controladores de vuelo generalmente intentan proporcionar tantas funciones como sea posible - se incluyen de forma predeterminada o se compran por separado como opciones / complementos. A continuación se muestran solo algunas de las muchas características adicionales que puede considerar al comparar controladores de vuelo.

Amortiguación: Incluso las pequeñas vibraciones en el marco, generalmente causadas por rotores y / o motores desequilibrados, pueden ser detectadas por el acelerómetro incorporado, que a su vez enviará las señales apropiadas al procesador principal, que tomará las medidas correctivas. Estas correcciones menores son innecesarias o indeseables para un vuelo estable, y es mejor mantener el controlador de vuelo vibrando lo menos posible. Por esta razón, los amortiguadores / amortiguadores de vibraciones se utilizan a menudo entre el controlador de vuelo y el marco.

Recinto: El recinto protector alrededor del controlador de vuelo puede ayudar en una variedad de situaciones. Además de ser más agradable desde el punto de vista estético que una placa de circuito impreso, una carcasa a menudo proporciona cierto nivel de protección eléctrica. elementos, así como protección adicional en caso de colisión.

Montaje: Hay varias formas de montar el controlador de vuelo en el marco, y no todos los controladores de vuelo tienen las mismas opciones de montaje:

  1. Cuatro orificios a una distancia de 30,5 mm o 45 mm entre sí encuadrados.
  2. Fondo plano para usar con una pegatina.
  3. Cuatro orificios en un rectángulo (estándar no instalado).

Comunidad: Ya que estás construyendo un dron personalizado, participar en una comunidad en línea puede ser de gran ayuda, especialmente si tienes problemas o quieres consejos.. También puede ser útil recibir consejos de la comunidad o ver los comentarios de los usuarios sobre la calidad y facilidad de uso de los diferentes controladores de vuelo.

Accesorios: Para el uso completo del producto, además del controlador de vuelo, es posible que necesite elementos relacionados (accesorios u opciones). Dichos accesorios pueden incluir, entre otros: módulo GPS y / o antena GPS; cables; accesorios de montaje; pantalla (LCD / OLED);

Ejemplo

Entonces, con todas estas diferentes comparaciones, ¿qué información puede obtener sobre el controlador de vuelo y qué podría incluir el controlador de vuelo? Hemos elegido Quadrino Nano Flight Controller

Procesador principal

ATMel utilizado a bordo ATMega2560 es uno de los chips ATMel compatibles con Arduino más potentes. Aunque tiene un total de 100 pines, incluidos 16 canales analógico-digitales y cinco puertos SPI, debido a su pequeño tamaño y al uso previsto como controlador de vuelo, solo algunos de ellos están presentes en la placa.

  • AVR vs PIC: AVR
  • Procesador: 8 bits
  • Frecuencia de funcionamiento: 16 MHz
  • Memoria de programa / Flash: 256 KB
  • SRAM: 8 KB
  • EEPROM: 4 KB
  • Pines de E / S adicionales: 3 × I2C; 1 × UART; 2 × GPIO de 10 pines; Servo con 5 salidas; Puerto OLED
  • Convertidor A / D: 10 bits

Sensores

Quadrino Nano incluye el chip IMU MPU9150, que incluye un giroscopio de 3 ejes, un acelerómetro de 3 ejes y un magnetómetro de 3 ejes. Esto ayuda a mantener la placa lo suficientemente pequeña sin sacrificar la calidad del sensor. El barómetro MS5611 proporciona datos de presión y está cubierto con un trozo de espuma. GPS Venus 838FLPx integrado con antena GPS externa (incluida).

Software

El Quadrino Nano fue construido específicamente para usar el último software MultiWii (basado en Arduino). En lugar de modificar el código Arduino directamente, se creó un software más gráfico por separado.

Comunicación

  • Entrada directa desde un receptor RC estándar.
  • Puerto receptor de satélite Spektrum dedicado
  • Serie (SBus y / o radios Bluetooth o 3DR)

Factores adicionales

  1. Caja: Caja protectora translúcida incluida como estándar
  2. Montaje: Hay dos formas principales de sujetar el Quadrino Nano para drone: tornillos y tuercas o adhesivo de gomaespuma.
  3. Diseño compacto: el controlador en sí (excluyendo la antena GPS) mide 53x53 mm.

.