Tabla de contenido:

Coche robot de control inalámbrico Arduino: 5 pasos
Coche robot de control inalámbrico Arduino: 5 pasos

Video: Coche robot de control inalámbrico Arduino: 5 pasos

Video: Coche robot de control inalámbrico Arduino: 5 pasos
Video: Carrito a control remoto con Arduino / Bluetooth / Android, en Protoboard 2024, Septiembre
Anonim
Coche robot de control inalámbrico Arduino
Coche robot de control inalámbrico Arduino

En esta publicación, aprenderá cómo construir un automóvil robot de control inalámbrico Arduino. Construiremos tanto el lado del transmisor como del receptor.

El lado del transmisor incluirá un Arduino nano, un módulo de joystick y NRF24L01 para enviar los datos de forma inalámbrica. El lado del receptor incluirá Arduino nano, NRF24L01 para recibir los datos y el controlador de motor L293D IC para controlar los motores. Tanto el circuito del transmisor como el del receptor serán alimentados por baterías de 9V.

Componentes necesarios Los componentes que necesitará para este proyecto son los siguientes

Lado del transmisor

  • Arduino Nano
  • Módulo de joystick
  • NRF24L01
  • Condensador de 100 uf
  • Interruptor deslizante de 3 pines
  • Bloque de terminales de 2 pines
  • Batería de 9V

Lado del receptor

  • Arduino Nano
  • NRF24L01
  • Condensador de 100 uf
  • Condensador 0.1uf
  • Condensador de 10 uf
  • Interruptor deslizante de 3 pines
  • Bloques de terminales de 2 pines (3 piezas)
  • IC del controlador del motor L293D
  • Batería de 9V

Paso 1: diagrama de circuito

Diagrama de circuito
Diagrama de circuito

La parte principal de los circuitos transmisor y receptor es Arduino nano, que funciona con la batería de 9V. Luego tenemos el módulo NRF24L01 en ambos lados para comunicarnos de forma inalámbrica.

El módulo de joystick en el lado del transmisor se usará para obtener los valores xey que se enviarán al lado del receptor y se usarán para controlar los motores. El controlador de motor L293D IC en el lado del receptor también obtendrá energía de la fuente de alimentación de 9v y controlará los motores.

Usando el diagrama de circuito anterior, puede hacer el circuito en la placa de pruebas para asegurarse de que todo funcione como lo desea.

Paso 2: Diseño de PCB

Diseño de PCB
Diseño de PCB
Diseño de PCB
Diseño de PCB

Después de asegurarme de que todo funciona bien en la placa de pruebas, he diseñado el PCB en EasyEDA. EasyEDA es una herramienta de diseño de PCB en línea de código abierto.

Aquí hay un enlace al diseño de PCB de este proyecto. Después de diseñar las placas de circuito impreso, generé los archivos Gerber necesarios para la fabricación de placas de circuito impreso.

Puede descargar los archivos Gerber a través de los siguientes enlaces

Gerber_Transmitter_20190711100324Descargar

Gerber_Receiver_20190711100335Descargar

Paso 3: pedir las placas de circuito impreso

Pedido de PCB
Pedido de PCB
Pedido de PCB
Pedido de PCB
Pedido de PCB
Pedido de PCB
Pedido de PCB
Pedido de PCB

Ahora tenemos el diseño de la placa de circuito impreso y es el momento de pedir las placas de circuito impreso. Para eso, solo tiene que ir a JLCPCB.com y hacer clic en el botón "COTIZAR AHORA".

JLCPCB también patrocina este proyecto. JLCPCB (Shenzhen JLC Electronics Co., Ltd.), es la empresa de prototipos de PCB más grande de China y un fabricante de alta tecnología especializado en prototipos de PCB rápidos y producción de PCB en lotes pequeños. Puede pedir un mínimo de 5 PCB por solo $ 2.

Para fabricar la PCB, cargue el archivo gerber que descargó en el último paso. Sube el archivo.zip o también puedes arrastrar y soltar los archivos gerber.

Después de cargar el archivo zip, verá un mensaje de éxito en la parte inferior si el archivo se cargó correctamente. Puede revisar la PCB en el visor de Gerber para asegurarse de que todo esté bien.

Puede ver la parte superior e inferior de la PCB.

Después de asegurarnos de que nuestra PCB se vea bien, ahora podemos realizar el pedido a un precio razonable. Puede pedir 5 PCB por solo $ 2, pero si es su primer pedido, puede obtener 10 PCB por $ 2.

Para realizar el pedido, haga clic en el botón "GUARDAR EN EL CARRITO".

Mis PCB tardaron 2 días en fabricarse y llegaron en una semana utilizando la opción de entrega de DHL. Los PCB estaban bien embalados y la calidad era realmente buena.

Después de ensamblar todo y conectar los motores, se ve como se muestra en la última imagen de este paso.

Paso 4: Código

Código del transmisor

Primero, necesitamos incluir la biblioteca SPI y RF24 para la comunicación inalámbrica. Luego, necesitamos definir los pines digitales para el módulo NRF24L01 y los pines analógicos para el módulo de joystick. Después de eso, necesitamos definir el objeto de radio, la dirección de comunicación para él y una matriz para almacenar los valores del módulo de joystick en él.

En la función de configuración, necesitamos inicializar la comunicación en serie y por radio.

En la función de bucle, primero leemos los valores del módulo del joystick y los almacenamos en la matriz. Después de eso, usando la función radio.write () enviaremos ese mensaje al receptor. El primer argumento en esta función es el mensaje y el segundo argumento es el número de bytes presentes en ese mensaje. La función radio.write () devuelve un bool y es verdadero, entonces significa que los datos llegaron al receptor y si regresa falso, se han perdido datos.

Código del receptor En el lado del receptor, también necesitamos incluir las bibliotecas SPI y RF24 para la comunicación inalámbrica. Luego, necesitamos definir los pines digitales para el módulo NRF24L01 y el controlador de motor l293d IC y algunas variables. Después de eso, necesitamos definir el objeto de radio, la dirección de comunicación para él y una matriz para almacenar los valores entrantes en él.

En la función de configuración, necesitamos inicializar la comunicación serial y por radio. Entonces necesitamos definir algunos pines de L293D como pines de salida.

En la función de bucle, primero verificamos si hay alguna información disponible o no. Si estará allí, lo almacenaremos en variables. Después de eso, controlaremos los motores de acuerdo con estos valores.

También puede obtener los códigos en

Recomendado: