Aerodeslizador RC basado en Arduino DIY

¿Te gustaría construir tu propio aerodeslizador controlado por control remoto? ¡Entonces este artículo es para ti! En esta guía paso a paso, te mostraremos cómo crear un aerodeslizador RC basado en Arduino con materiales fáciles de conseguir. ¡No te pierdas la oportunidad de experimentar la emoción de ver tu propia creación deslizarse sobre cualquier superficie!

En este tutorial aprenderemos cómo construir un aerodeslizador RC basado en Arduino. Te mostraré todo el proceso de construcción, desde el diseño y la impresión 3D de las piezas del aerodeslizador, incluidas las hélices, hasta la conexión de los componentes electrónicos y la programación del Arduino.

Puede ver el vídeo a continuación o leer el tutorial escrito a continuación.

descripción general

Para controlar el aerodeslizador, utilicé mi transmisor RC basado en Arduino que creé en uno de mis videos anteriores. Configuré el joystick derecho para controlar el servomotor para colocar los timones en la parte posterior del motor de empuje, configuré uno de los potenciómetros para controlar la hélice de elevación, que en realidad está conectada a un motor de CC sin escobillas, y configuré el joystick izquierdo para controlar la unidad. Entonces, echemos un vistazo a lo que se requiere para construir este aerodeslizador RC.

Aerodeslizador RC basado en Arduino DIY

aerodeslizador modelo 3d

Primero, diseñé el aerodeslizador utilizando un software de modelado 3D.

Aerodeslizador RC basado en Arduino DIY

Puede>

Aerodeslizador RC basado en Arduino DIY

Descargar>Montaje de un modelo 3D en Thangs.

Archivos STL para impresión 3D:

Aerodeslizador RC basado en Arduino DIY

Ver también
Avión RC Arduino | 100% bricolaje

Principio de funcionamiento del aerodeslizador.

El principio de funcionamiento básico de un aerodeslizador es que se eleva mediante un colchón de aire. La hélice central sopla aire debajo del vehículo, inflando un faldón fabricado de material blando.

Aerodeslizador RC basado en Arduino DIY

Cuando>

Después del levantamiento, la segunda hélice crea un empuje que hace avanzar el aerodeslizador.

Aerodeslizador RC basado en Arduino DIY

En>

Impresión 3d

Sin embargo, una vez que terminé el diseño, comencé a imprimir las piezas en 3D.

Aerodeslizador RC basado en Arduino DIY

El>

Aerodeslizador RC basado en Arduino DIY

Aquí>

Una vez completada la impresión, es hora de hacer un poco de limpieza. La parte principal del aerodeslizador, o cabina, fue la impresión más larga: tardó unas 18 horas en imprimirse. Debido al diseño curvo y a que quería una única impresión, se utilizó mucho material de soporte para esta impresión.

Aerodeslizador RC basado en Arduino DIY

Sin>

Aerodeslizador RC basado en Arduino DIY

Ya>

Algunas de las áreas redondas de las piezas estaban un poco ásperas, así que las alisé con papel normal.

Aerodeslizador RC basado en Arduino DIY

No>

Aerodeslizador RC basado en Arduino DIY

Pintando el aerodeslizador

Bien, el siguiente paso es pintar las piezas impresas en 3D. No utilicé una imprimación de antemano, sino que apliqué pintura acrílica directamente en forma de pintura en aerosol.

Aerodeslizador RC basado en Arduino DIY

Para>

Para que el aerodeslizador se vea un poco más fresco, apliqué dos colores más a las piezas después de que se secó la primera capa. Para hacer esto, creé algunos patrones aleatorios en una simple hoja de papel y los usé para crear rayas y puntos de diferentes colores. Para ello utilicé marrón más claro y negro.

Aerodeslizador RC basado en Arduino DIY

Montaje del aerodeslizador Arduino RC

Me gustaron mucho las piezas y una vez secas seguí armándolas.

Aerodeslizador RC basado en Arduino DIY

Comencé>

Aerodeslizador RC basado en Arduino DIY

Luego>

Aerodeslizador RC basado en Arduino DIY

Aquí,>

Aerodeslizador RC basado en Arduino DIY

Lo>

Aerodeslizador RC basado en Arduino DIY

Los>

Aerodeslizador RC basado en Arduino DIY

Una>

diagrama de circuito

Luego viene la electrónica. Los componentes electrónicos están colocados entre el fuselaje y el cuerpo principal del aerodeslizador. Pero antes de hacer eso, echemos un vistazo al esquema y veamos cómo debe conectarse todo.

Entonces el cerebro de este aerodeslizador es una placa Arduino. Usando Arduino podemos controlar fácilmente tanto el servo como los dos motores sin escobillas a través de los dos controladores electrónicos de velocidad o ESC. Para alimentar los motores BLDC utilizo una batería Li-Po 3S que proporciona alrededor de 11 V y para alimentar el Arduino podemos usar los 5 V regulados que proporcionan los ESC a través de su función de circuito eliminador de batería.

Aerodeslizador RC basado en Arduino DIY

Para>

Hay un pequeño detalle más en este esquema y es el monitor de batería. Agregué un divisor de voltaje simple hecho de dos resistencias, conectadas directamente a la batería, con la salida yendo a la entrada analógica del Arduino. El divisor de voltaje reduce los 11 voltios a aproximadamente 4 voltios, lo que luego es aceptable para los pines Arduino de 5 V. Esto nos permite monitorear el voltaje de la batería y configurar un LED para que se encienda si, por ejemplo, el voltaje de la batería cae por debajo de los 11 voltios.

Puede obtener los componentes necesarios para este tutorial de Arduino en los siguientes enlaces:

  • Módulo transceptor NRF24L01…. Amazonas / Banggood / AliExpress
  • NRF24L01 + PA + LNA………….…. Amazonas / Banggood / AliExpress
  • Motor sin escobillas……………….…… Amazonas / Banggood / AliExpress
  • Regulador 30A ……………………………….….. Amazonas / Banggood / AliExpress
  • Batería Li-Po……………………………….. Amazon / Banggood / AliExpress
  • XT60 2 tomas a 1 enchufe…………. Amazon / Banggood / AliExpress
  • Conector XT60 ………………………… Amazon / Banggood / AliExpress
  • Servo motor ……………………………….. Amazon / Banggood / AliExpress
  • Placa Arduino………………………… Amazon / Banggood / AliExpress

Divulgación: estos son enlaces de afiliados. Como asociado de Amazon, gano con compras que califican.

Entonces comencé a conectar los componentes como se explica. Para conectar los dos reguladores a una sola batería, utilicé un conector de batería paralelo XT60.

Aerodeslizador RC basado en Arduino DIY

Para>

Luego coloqué los ESC en el cuerpo principal y los coloqué entre éste y el fuselaje del aerodeslizador. Luego uní las dos piezas con cuatro tornillos M3. Luego inserté la batería en el área de la cabina desde la abertura superior de la carrocería.

Aerodeslizador RC basado en Arduino DIY

A>

Aerodeslizador RC basado en Arduino DIY

Entonces,>

Aerodeslizador RC basado en Arduino DIY

Luego>

Aerodeslizador RC basado en Arduino DIY

Sin>

Continué con la instalación del sistema de dirección. Primero conecté una pequeña conexión a la bocina del servo usando un tornillo y una tuerca M2. Luego inserté el primer timón y lo fijé a la carcasa de empuje con un cable metálico de 2 mm que atraviesa el cuerpo para que el timón pueda girar alrededor de él. Adjunté el segundo timón de la misma manera.

Aerodeslizador RC basado en Arduino DIY

Este>

Aerodeslizador RC basado en Arduino DIY

A>

Aerodeslizador RC basado en Arduino DIY

Bien,>

Aerodeslizador RC basado en Arduino DIY

También>

Aerodeslizador RC basado en Arduino DIY

Así>

Aerodeslizador RC basado en Arduino DIY

Usando>

Aerodeslizador RC basado en Arduino DIY

A>

Aerodeslizador RC basado en Arduino DIY

Cuando>

Aerodeslizador RC basado en Arduino DIY

Luego>

Aerodeslizador RC basado en Arduino DIY

Una>

Aerodeslizador RC basado en Arduino DIY

Esta>

Finalmente, hay que acoplar las hélices a los motores sin escobillas. Para ello utilizo la pinza que viene con el motor sin escobillas. Es una forma realmente sencilla y eficaz de fijar la hélice al eje del motor.

Aerodeslizador RC basado en Arduino DIY

Sin>

Aerodeslizador RC basado en Arduino DIY

Y>

Aerodeslizador RC basado en Arduino DIY

Sin>

Código del aerodeslizador Arduino RC

Aquí está el código para este proyecto de aerodeslizador RC basado en DIY Arduino:

/*
         Arduino based RC Hovercraft
   == Receiver Code - ESC and Servo Control =
  by Dejan, www.HowToMechatronics.com
  Library: TMRh20/RF24, https://github.com/tmrh20/RF24/
*/
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <Servo.h>

#define led 10

RF24 radio(8, 9);   // nRF24L01 (CE, CSN)
const byte address[6] = "00001";
unsigned long lastReceiveTime = 0;
unsigned long currentTime = 0;

Servo esc1;  // create servo object to control the ESC
Servo esc2;
Servo servo1;

int esc1Value, esc2Value, servo1Value;
// Max size of this struct is 32 bytes - NRF24L01 buffer limit
struct Data_Package {
  byte j1PotX;
  byte j1PotY;
  byte j1Button;
  byte j2PotX;
  byte j2PotY;
  byte j2Button;
  byte pot1;
  byte pot2;
  byte tSwitch1;
  byte tSwitch2;
  byte button1;
  byte button2;
  byte button3;
  byte button4;
};
Data_Package data; //Create a variable with the above structure
void setup() {
  Serial.begin(9600);
  radio.begin();
  radio.openReadingPipe(0, address);
  radio.setAutoAck(false);
  radio.setDataRate(RF24_250KBPS);
  radio.setPALevel(RF24_PA_LOW);
  radio.startListening(); //  Set the module as receiver
  resetData();
  esc1.attach(7);
  esc2.attach(6);
  servo1.attach(5);
  pinMode(led, OUTPUT);
}
void loop() {
  // Check whether we keep receving data, or we have a connection between the two modules
  currentTime = millis();
  if ( currentTime - lastReceiveTime > 1000 ) { // If current time is more then 1 second since we have recived the last data, that means we have lost connection
    resetData(); // If connection is lost, reset the data. It prevents unwanted behavior, for example if a drone jas a throttle up, if we lose connection it can keep flying away if we dont reset the function
  }
  // Check whether there is data to be received
  if (radio.available()) {
    radio.read(&data, sizeof(Data_Package)); // Read the whole data and store it into the 'data' structure
    lastReceiveTime = millis(); // At this moment we have received the data
  }
  // Controlling servos
  servo1Value = map(data.j2PotX, 0, 255, 0, 50);
  servo1.write(servo1Value);

  // Controlling brushless motor with ESC
  // Lift propeller
  esc1Value = map(data.pot1, 0, 255, 1000, 2000); // Map the receiving value form 0 to 255 to 0 1000 to 2000, values used for controlling ESCs
  esc1.writeMicroseconds(esc1Value); // Send the PWM control singal to the ESC
  
  // Thrust propeller
  esc2Value = constrain(data.j1PotY, 130, 255); // Joysticks stays in middle. So we only need values the upper values from 130 to 255
  esc2Value = map(esc2Value, 130, 255, 1000, 2000);
  esc2.writeMicroseconds(esc2Value);

  // Monitor the battery voltage
  int sensorValue = analogRead(A0);
  float voltage = sensorValue * (5.00 / 1023.00) * 3; // Convert the reading values from 5v to suitable 12V i
  Serial.println(voltage);
  // If voltage is below 11V turn on the LED
  if (voltage < 11) {
    digitalWrite(led, HIGH);
  }
  else {
    digitalWrite(led, LOW);
  }
}
void resetData() {
  // Reset the values when there is no radio connection - Set initial default values
  data.j1PotX = 127;
  data.j1PotY = 127;
  data.j2PotX = 127;
  data.j2PotY = 127;
  data.j1Button = 1;
  data.j2Button = 1;
  data.pot1 = 1;
  data.pot2 = 1;
  data.tSwitch1 = 1;
  data.tSwitch2 = 1;
  data.button1 = 1;
  data.button2 = 1;
  data.button3 = 1;
  data.button4 = 1;
}Code language: Arduino (arduino)

Descripción: Por lo tanto, primero necesitamos integrar la biblioteca RF24 para comunicación por radio, así como la biblioteca de servos para controlar los motores servo y sin escobillas. Luego necesitamos definir los objetos de radio y servo, algunas variables necesarias para el siguiente programa, así como la estructura de las variables utilizadas para almacenar los datos entrantes de mi transmisor RC de bricolaje. Para obtener más detalles sobre cómo funciona esta comunicación, consulte mi tutorial dedicado.

En la sección de configuración necesitamos inicializar la comunicación por radio y definir los pines a los que están conectados los servos y ESC.

En la sección de bucle, leemos los datos entrantes del transmisor y usamos estos valores para controlar los motores servo y sin escobillas. Por lo tanto, los datos provenientes del joystick, que están entre 0 y 255, se convierten en valores de 0 a 50 y utilizamos estos valores para controlar la posición del servo.

Usamos el mismo método para controlar los motores sin escobillas a través de los ESC. Los datos entrantes en el rango de 0 a 255 se convierten en valores de 1000 a 2000 y usando la función wirteMicrosegundos() enviamos estos datos al ESC como señal de control.

Para monitorear el voltaje de la batería, leemos la entrada analógica proveniente del divisor de voltaje y convertimos los valores de entrada al valor real del voltaje de la batería con unos simples cálculos. Cuando el voltaje de la batería cae por debajo de 11V, simplemente encendemos el LED indicador.

Y eso es. En caso de que necesites más detalles, puedes consultar los otros tutoriales sugeridos para que puedas comprender completamente cómo funciona.

Espero que hayas disfrutado este tutorial y hayas aprendido algo nuevo. No dudes en hacer tus preguntas en la sección de comentarios a continuación y consultar mi colección de proyectos Arduino.

Categorías Proyectos
Error 403 The request cannot be completed because you have exceeded your quota. : quotaExceeded

Aerodeslizador RC basado en Arduino DIY: Tutorial paso a paso

En este tutorial aprenderemos cómo construir un Aerodeslizador RC basado en Arduino. Mostraré todo el proceso de construcción, desde el diseño y la impresión en 3D de las piezas del aerodeslizador, incluidas las hélices, hasta la conexión de los componentes electrónicos y la programación del Arduino.

Para controlar el aerodeslizador, utilicé mi Transmisor RC casero basado en Arduino que hice en uno de mis videos anteriores. La palanca derecha controla el servo motor para posicionar las timoneras en la parte trasera del motor de empuje, un potenciómetro controla la hélice de elevación que está conectada a un motor de CC sin escobillas, y la palanca izquierda controla la propulsión.

Modelo en 3D del Aerodeslizador

Para comenzar, diseñé el aerodeslizador utilizando un software de modelado 3D. Puedes encontrar y descargar este modelo en 3D, así como explorarlo en tu navegador en Thangs.

Archivos STL para impresión 3D:

Descarga los archivos STL aquí

Principio de funcionamiento del Aerodeslizador

El principio de funcionamiento básico de un aerodeslizador es que la embarcación es levantada por un cojín de aire. La hélice central sopla aire por debajo de la embarcación, lo que infla una falda hecha de material suave. Cuando la presión del aire en la falda es suficientemente alta, la embarcación se eleva. El aire suministrado constantemente escapa desde el centro de la embarcación, entre la falda y el suelo, lo que crea una elevación adicional y también reduce la fricción entre el aerodeslizador y el suelo.

Una vez elevado, se genera un empuje usando la segunda hélice que mueve el aerodeslizador hacia adelante. En la parte trasera de la hélice de empuje, hay un simple timón que se utiliza para dirigir el aerodeslizador.

Impresión en 3D

Una vez finalizado el diseño, comencé con la impresión en 3D de las piezas. El casco del aerodeslizador es la parte más grande para imprimir y lo diseñé específicamente para que se adaptara a mi impresora Creality CR-10, que tiene una cama de impresión de 30x30cm.

Después de la impresión, es hora de limpiar un poco. La parte principal del casco del aerodeslizador fue la más larga en imprimir, lo que tardó alrededor de 18 horas en imprimir. Debido al diseño curvo, y porque quería que fuera una sola impresión, se utilizó mucho material de soporte para esta impresión. Sin embargo, fue muy fácil de quitar y la pieza final resultó perfecta.

Pintando el Aerodeslizador

El siguiente paso es pintar las piezas impresas en 3D. No utilicé imprimación antes, sino que apliqué directamente una pintura acrílica en forma de aerosol.

Utilicé un color marrón chocolate para la primera capa. Para algunas de las piezas más pequeñas, que son en realidad solo piezas decorativas, utilicé un color marrón más claro.

etc…

¡Espero que hayas disfrutado de este tutorial y hayas aprendido algo nuevo! No dudes en hacer cualquier pregunta en la sección de comentarios y consulta mi Colección de Proyectos Arduino.

1 comentario en «Aerodeslizador RC basado en Arduino DIY»

Deja un comentario