Tabla de contenido:

Sígueme - Guía de drones inteligentes Raspberry Pi: 9 pasos
Sígueme - Guía de drones inteligentes Raspberry Pi: 9 pasos

Video: Sígueme - Guía de drones inteligentes Raspberry Pi: 9 pasos

Video: Sígueme - Guía de drones inteligentes Raspberry Pi: 9 pasos
Video: TODO ESTO PUEDES HACER CON UNA RASPBERRY PI 😈💻 2024, Diciembre
Anonim
Sígueme - Guía de drones inteligentes Raspberry Pi
Sígueme - Guía de drones inteligentes Raspberry Pi

¿Siempre te has preguntado cómo hacer un dron de la A a la Z?

Este tutorial le muestra cómo hacer un cuadricóptero de 450 mm paso a paso, desde la compra de las piezas hasta la prueba de su robot aéreo en su primer vuelo.

Además, con una Raspberry Pi y una PiCamera, puede transmitir un video en vivo en su dispositivo y controlar su dron en primera persona. La Raspberry Pi también ofrece la posibilidad de mejorar aún más su dron y agregar funciones como seguimiento de personas, evitación de obstáculos y una estación meteorológica. Este tutorial te mostrará cómo hacer que tu dron te siga.

La ventaja de Raspberry Pi es principalmente que puede procesar algunos algoritmos de visión artificial para funciones que requieren que el dron sea "inteligente".

En este instructivo, aprenderá:

  • Qué herramientas / piezas necesita comprar
  • Cómo arreglar todas las partes en el marco.
  • Cómo hacer las conexiones para el sistema de propulsión.
  • Cómo configurar su microcontrolador
  • Cómo conectar el receptor al transmisor
  • Cómo transmitir un video tomado por el dron en su teléfono
  • Cómo ajustar su PID para un mejor control
  • Cómo implementar el seguimiento de personas

Además, el dron tiene un LED rojo que se enciende cuando el dron está buscando a alguien y un LED verde cuando se detecta a alguien y el dron lo está siguiendo. También se implementa un botón para apagar la Pi antes de desconectar la batería de la tarjeta SD de la Raspberry Pi para que no se corrompa.

Este tutorial tiene como objetivo establecer los conceptos básicos de cómo construir un dron inteligente personalizable, por lo que si eres un principiante, ¡has venido al lugar correcto!

Paso 1: descripción general

Visión general
Visión general

Para construir un quadcopter, necesitamos 4 motores y 4 ESC (controlador electrónico de velocidad) cada uno conectado a un motor. Se utiliza un tablero de distribución de energía para distribuir la energía de la batería a los 4 ESC.

El ESC recibe el comando del controlador de vuelo (aquí una placa MultiWii) y lo transmite al motor.

Este controlador de vuelo tiene un giroscopio, acelerómetro y barómetro. También puede agregarle un módulo bluetooth y un GPS.

Para hacer la conexión entre la Raspberry Pi y el controlador de vuelo, usamos un adaptador FTDI. Así podemos enviar comandos al controlador desde nuestro Pi. Además, para hacer la calibración PID y cargar el firmware del Mulltiwii en el controlador de vuelo, el FTDI será muy útil.

Finalmente, controlamos de forma remota el dron con un mando a distancia que envía comandos a los receptores y los envía al controlador de vuelo.

La Raspberry Pi también proporciona una transmisión que se puede ver en cualquier navegador desde un dispositivo como un teléfono, por ejemplo. De esta manera podemos ver lo que ve la cámara Pi cuando está en el aire.

Paso 2: reunir las piezas

Reunir las piezas
Reunir las piezas
Reunir las piezas
Reunir las piezas
Reunir las piezas
Reunir las piezas

Se requieren las siguientes partes para completar con éxito este tutorial:

1) El marco: Marco 450 F de 4 ejes

2) El transmisor y el receptor: Flysky FS-i6X

3) La Raspberry Pi: Placa base Raspberry Pi 3 Modelo B

4) La cámara: PiCamera

5) El microcontrolador: Crius MultiWii SEV2.6

6) El convertidor FTDI: FTDI USB a TTL / FT232

7) Cables pequeños: Elegoo 120pcs Cable Dupont multicolor

8) Los motores (x4): Motor sin escobillas Liobaba 1100KV 2-4S

9) Los ESC (x4): ESC sin escobillas 30A firmware ESC sin escobillas con 5V 3A UBEC

10) La batería: Batería LiPo HRB 11.1V 5000mAh 3S 50C-100C

11) Los conectores: conectores chapados en oro de 3,5 mm (x4) y Artrinck XT-60 60A / 100A macho hembra

12) Las hélices (x3): FidgetGear 10x4.5 Propeller (Azul)

13) La almohadilla de montaje del controlador de vuelo: almohadilla de montaje del controlador de vuelo

14) Algunas fundas termorretráctiles: Tubo termorretráctil - SODIAL

15) Cables: cable 16GA

16) El soldador: Kit de soldador Holife, herramienta de soldadura con control de temperatura ajustable de 60 W y 110 V

Opcional

  • Un zumbador: Monitor de bajo voltaje Venom para baterías LiPO de 2S a 8S
  • Un soporte / bastidor para el Pi y el controlador de vuelo: Caja de almacenamiento para Raspberry Pi
  • Mejore su experiencia de soldadura con: Elenco Helping Hands y 60-40 Tin Lead Rosin Core Solder

El costo TOTAL de todas estas piezas debe ser de 450,71 dólares canadienses.

Paso 3: Soldar y fijar piezas en el marco

Soldadura y fijación de piezas en el marco
Soldadura y fijación de piezas en el marco
Soldadura y fijación de piezas en el marco
Soldadura y fijación de piezas en el marco
Soldadura y fijación de piezas en el marco
Soldadura y fijación de piezas en el marco

Dos partes necesitan soldadura:

  1. Los ESC (no vienen con conectores en las extremidades)
  2. El cuadro de distribución de energía (en nuestro caso integrado en el marco)

Use los conectores hembra tx en los cables que agregó a la placa de distribución, los conectores macho tx en los cables laterales de la placa de distribución de los ESC y los conectores dorados de 3,5 mm en los cables laterales del motor de los ESC. No olvide agregar la funda termocontraíble para aislar (no queremos ver ningún cable desnudo).

Consejos para soldar:

  • Utilice la punta de hierro plano de tamaño medio (incluida en su kit de soldadura) y caliente el soldador a 400 ° C.
  • Limpia a menudo la punta del alambre de soldadura con la esponja de agua.
  • Primero, derrita un poco de soldadura en las dos superficies que desea conectar, luego péguelas y agregue más soldadura.

Para obtener más detalles sobre cómo soldar todo, no dude en echar un vistazo a nuestro sitio web.

Fije las piezas en el marco:

  1. Utilice dos tornillos para fijar los motores en la extremidad de cada brazo.
  2. Fije el soporte de la electrónica en el marco con tuercas y tornillos.
  3. Fije el Pi en el soporte con tuercas y tornillos.
  4. Pegue una almohadilla de montaje (para absorber las vibraciones) en la parte superior del soporte y péguele Multiwii asegurándose de que esté exactamente en el medio del marco y con la flecha apuntando entre dos brazos del mismo color.
  5. Pega el receptor al soporte con velcro.
  6. Coloque sus ESC en cada brazo con ataduras.
  7. Use correas para sujetar la batería en el nivel inferior del marco.
  8. Taladrar las hélices y ponerlas en los motores con la ayuda del perno especial que viene con el motor.

Paso 4: las conexiones

Las conexiones
Las conexiones
Las conexiones
Las conexiones
Las conexiones
Las conexiones

Para el receptor:

  • Conecte los pines del acelerador del MultiWii al canal 3 del receptor.
  • Conecte los pines Roll al canal 1 del receptor.
  • Conecte los pines de tono al canal 2.
  • Conecte los pines de guiñada al canal 4.
  • Conecte el Auxiliar 1 al canal 5.

Para los CES:

Con Multiwii mirando hacia adelante y con el cable negro del conector de comando del ESC en el pin inferior del Multiwii;

  • Conecte el ESC superior izquierdo a D3.
  • Conecte el ESC superior derecho a D10.
  • Conecte el ESC de la parte inferior derecha a D9.
  • Conecte el ESC de la parte inferior izquierda a D11.

Para el Pi:

  • Conecte la PiCamera.
  • Conecte el FTDI a un adaptador mini-USB / USB y conéctelo al Pi, también conecte los pines FTDI o los pines FTDI del MultiWii.
  • Conecte un pin - y + del MultiWii a un pin GPIO de 5V y tierra del Pi.

Para los motores

Por defecto, los motores giran en sentido antihorario (CCW). Entonces, para los motores de arriba a la izquierda y de abajo a la derecha, debe invertir la conexión de los cables con el ESC (el negro con el rojo y el rojo con el negro), por lo que tendrá una dirección en el sentido de las agujas del reloj (CW).

Paso 5: configúrelo todo

Configurarlo todo
Configurarlo todo
Configurarlo todo
Configurarlo todo
Configurarlo todo
Configurarlo todo
Configurarlo todo
Configurarlo todo

Retire sus hélices para los siguientes pasos.

Programación de los ESC:

El controlador de velocidad electrónico controla el motor y, por lo tanto, hay muchas opciones disponibles y depende de usted personalizar su ESC para que se comporte como desee.

Retire todos los cables conectados al receptor.

Para cada ESC:

  1. Conecte solo un ESC a la alimentación (a la placa de distribución en nuestro caso) y asegúrese de que la batería esté desconectada.
  2. Coloque los pines ESC en el canal del acelerador del receptor (en nuestro caso, el canal 3).
  3. Encienda su transmisor.
  4. Ponga el acelerador a la posición máxima en su transmisor.
  5. Encienda la placa de distribución conectando la batería a ella. También puede usar algunas pinzas de cocodrilo y conectar directamente la batería al ESC.
  6. Después de algunos pitidos, debería escuchar un tono musical con 4 pitidos. Después de esta primera música, ponga el acelerador en la posición mínima en su transmisor.
  7. Espere la confirmación de la UBEC, dada por un bip.
  8. Cierre el transmisor.
  9. Quite la energía (desconecte la batería Li-Po)

Para probarlo:

  1. Encienda el transmisor con la posición mínima del acelerador.
  2. Conecta la batería.
  3. Aumente gradualmente el acelerador hasta la potencia máxima. El motor debería girar más rápido cuando aumenta la aceleración.

Configuración de la placa de control de vuelo:

Para este paso puedes quitar el cable USB del FTDI en el Pi y ponerlo en tu computadora, que será más conveniente para programar la placa.

  1. Descargue el software Arduino en su computadora a través del sitio web.
  2. Descargue la última versión del firmware multiwii y extráigala en su computadora.
  3. Vaya a la carpeta MultiWii extraída previamente, luego abra MultiWii.ino que lanzará Arduino.
  4. Vaya al archivo config.h en Arduino, elimine // delante de #define QUADX para configurar el tipo de configuración de su multicóptero y delante de #define CRIUS_SE_v2_0 para elegir el tipo de placa.
  5. Luego vaya a Herramientas -> Placa -> y seleccione Arduino Pro o Pro Mini y asegúrese de que en Herramientas -> Procesador -> ATMmega328P (5V, 16MHz) esté seleccionado.
  6. La última configuración que debemos hacer antes de cargar en la placa es ir a Herramientas -> Puerto -> seleccionar el puerto de tu MultiWii (COM3 para nosotros).
  7. Haga clic en verificar y luego en cargar.
  8. A medida que se carga el código en el Crius MultiWii SE v2.6, debería ver las luces parpadeando tanto en la placa del controlador como en la placa FTDI.

Calibre los sensores en el tablero de control de vuelo:

  1. Vaya a la carpeta MultiWiiConf presente en la carpeta MultiWii descargada previamente de su sitio web.
  2. Luego vaya a -> carpeta application.windows32 -> haga doble clic en la aplicación MultiWiiConf. (Tenga en cuenta que incluso si tuviera Windows de 64 bits, solo la aplicación de 32 bits parece funcionar).
  3. Debe seleccionar el puerto al que está conectado su controlador de vuelo (en este caso COM3).
  4. Haga clic en Leer.
  5. Haga clic en Inicio.
  6. Coloque su tablero sobre el escritorio y luego haga clic en Calib_acc.
  7. Haga clic en Calib_mag y luego debe rotar su tablero en todas las direcciones durante 30 segundos lo más rápido posible. Debería ver picos en todo el gráfico.

Para probarlo:

Gire su tabla en el eje de cabeceo, balanceo y guiñada y vea si lo que muestran los sensores en el software tiene sentido

Configuración del transmisor (control remoto):

Primero, puede verificar qué palanca controla qué canal en el menú de pantalla:

  1. Antes de encender el controlador, asegúrese de que todos los interruptores estén arriba y que la palanca del acelerador (palanca izquierda) esté abajo.
  2. Inicie el controlador.
  3. Mantenga pulsado el botón Aceptar.
  4. Vaya a Configuración, luego Pantalla.
  5. Puede mover sus palos para ver qué canal reacciona.

Antes de continuar, seleccione un modelo y un nombre:

  1. Vaya a Sistema-> Seleccionar modelo -> seleccione un modelo.
  2. Vaya a Sistema -> Nombre del modelo. Y dale un nombre. Espera cancelar para guardar tus cambios.
  3. Vaya a Sistema-> Seleccionar tipo y configúrelo como Avión o planeador, incluso si es un quadrirotor.
  4. Configure el recorte en el menú Subtrim. Cuando las palancas están en su posición neutra, necesita que los canales (consulte el Menú de pantalla) estén al 0% para la guiñada, el cabeceo y el balanceo.
  5. Mantenga pulsado cancelar para guardar su configuración.

A continuación, establezcamos la configuración a prueba de fallos:

Esto asegura que cuando el dron se aleja demasiado del controlador y pierde la señal, todos los controles pasan a la posición neutral. Entonces, para hacer esto, necesitamos configurar los canales 1, 2 y 4 en 0% y activar el modo a prueba de fallas en ellos a través del menú Failsafe. También necesitamos activar el sistema de seguridad en el acelerador y configurarlo al 100%.

También puede usar los otros interruptores de su controlador activándolos en Sistema-> Aux. interruptores.

Puede tener más detalles sobre esta sección en nuestro sitio web.

Paso 6: Transmisión en vivo

Transmisión en vivo
Transmisión en vivo
Transmisión en vivo
Transmisión en vivo
Transmisión en vivo
Transmisión en vivo

La Raspberry Pi es una computadora y lo que puede hacer con una computadora voladora tiene un límite a su imaginación.

Para transmitir en vivo:

  1. Habilite la PiCamera. Para hacerlo, inicie el Pi y conecte un mouse y un monitor. Haga clic en el logotipo de rasbian en la parte superior izquierda, vaya a preferencias, luego Configuración de Raspberry Pi y luego en la pestaña de interfaces haga que la cámara esté marcada como habilitada. Luego haga clic en Aceptar.
  2. Descarga el script (fuente del código: tutoriales nerd aleatorios) y colócalo en tu carpeta de inicio.
  3. Ejecute el script escribiendo "python3 rpi_camera_surveillance_system.py" en la terminal.

Una vez que la secuencia de comandos se está ejecutando, puede acceder a su servidor web de transmisión de video en: https://: 8000. Reemplace con su propia dirección IP de Raspberry Pi, en mi caso

Si no conoce su dirección IP de Pi, puede saberlo escribiendo ifconfig en el terminal que le da la dirección.

Puede acceder a la transmisión en vivo a través de cualquier dispositivo conectado a la misma red que la Raspberry Pi. Solo necesitas abrir el navegador.

También puede iniciar este programa desde su teléfono inteligente. Solo necesita instalar la aplicación Terminus (si tiene un iPhone).

Para iniciar la transmisión directamente cuando el Pi está encendido (es decir, cuando su dron está encendido), escriba en la terminal:

sudo nano /home/pi/.bashrc

Luego ve a la última línea y agrega, echo corriendo en el arranque

sudo python3 / home / pi / rpi_camera_surveillance_system.py

sudo reiniciar

Guarde su archivo presionando Ctrl + X, luego escriba Y y haga clic en Enter.

¡Felicitaciones, su transmisión en vivo ya está configurada! ¡Puedes usarlo para espiar a tus vecinos o hacer carreras de FPV!

Paso 7: el arte del ajuste PID

Estás listo para tu primer vuelo. Lo primero que debes hacer es probar tu dron sin hélice para ver si todo responde bien.

Luego, puede agregar sus hélices y comenzar muy lentamente a aumentar el acelerador para ver si puede despegar.

Es probable que su dron oscile lentamente, vibre o los motores silben. ¡Esto significa que necesita configurar su PID!

Esta parte lleva un tiempo si quieres un dron muy estable que responda bien a tus comandos. La configuración de PID es subjetiva, por lo que realmente depende de usted cómo desea que vuele su dron. Aquí está el procedimiento:

  1. Empiece con una I baja en cabeceo y balanceo (0,01) y aumente P hasta que vea oscilaciones de alta frecuencia y vuelva a reducirla al último valor.
  2. Luego, aumente I en cabeceo y balanceo en incrementos de 0.01 hasta que nuevamente vea vibraciones o sienta que su dron está rígido y no responde. Por lo general, la configuración I puede ayudarlo si experimenta descensos de altitud y deriva. Contrarresta las perturbaciones en su sistema (el dron).
  3. Baje su P si vio alguna oscilación de alta frecuencia.
  4. Disminuya su D si su dron parece demasiado amortiguado (bajo para responder).

Para el eje de guiñada, normalmente puede dejarlo en el valor predeterminado, pero si siente que su dron se desplaza en el eje de guiñada, puede aumentar I.

Paso 8: función Sígueme

Función Sígueme
Función Sígueme

Un dron autónomo es increíble, puede volar y moverse sin tener que preocuparse por eso.

El dron realizado en este tutorial tiene la capacidad de hacer esto procesando los datos que capturan sus sensores.

Para implementar una función como el seguimiento de personas, debe:

  1. Use la cámara del dron para ayudarlo a tomar nota de su entorno.
  2. Utilice un algoritmo de visión artificial para analizar el entorno.
  3. Planifica la trayectoria del dron.
  4. Ordena la dirección a seguir hasta el dron.

Más específicamente, la cámara Pi puede proporcionar una transmisión en vivo de imágenes a la Raspberry Pi, que es una computadora con suficiente potencia para ejecutar algunos algoritmos de visión artificial.

Estos algoritmos pueden detectar a una persona en una imagen y analizar la posición de esta persona. El algoritmo de cascada de Haar o las redes neuronales profundas pueden ser algoritmos útiles para eso.

Por lo tanto, al conocer la posición de la persona a seguir, puede planificar cómo se mueven los motores y qué dirección tomar dependiendo de la posición del objeto rastreado en el marco. Por ejemplo, si la persona a rastrear está a la derecha del cuadro tomado por la cámara Pi, el algoritmo ordena al dron que gire a la derecha.

Finalmente, una vez que se ha elegido la dirección que debe seguir el dron, la Raspberry Pi tiene que enviar un comando al Multiwii para permitir que el dron vaya en esa dirección. Para hacer eso, el MSP (Multiwii Serial Protocol) es útil para comunicarse entre su computadora (la Pi) y su controlador de vuelo.

Aquí puede encontrar adjunto una forma de codificar eso.

En nuestro sitio web se ha mostrado un método más robusto que utiliza tensorflow y redes neuronales profundas para la detección de personas.

También puedes imaginar muchas otras formas de mejorar tu dron autónomo, como hacer que tome una foto cada vez que ve un árbol o un animal. La evasión de objetos también es posible si se configura el dron para que detenga su carrera si está más cerca de una distancia especificada de un objeto.

Además, puede aprender en el sitio web cómo conectar un LED al Pi y encenderlo cuando el dron detecta a alguien a quien seguir.

Paso 9: ¡Feliz vuelo

Enciende tu dron y disfruta de tu vuelo.

Si desea ir más allá e implementar el seguimiento de personas en su dron, puede consultar nuestro sitio web para obtener un tutorial al respecto.

¡Gracias por preparar este tutorial!

Recomendado: