Tabla de contenido:
- Paso 1: Lista de componentes
- Paso 2: Cerebro del proyecto - Placa de desarrollo ESP8266 (Wemos D1 Mini)
- Paso 3: Controlador de motor - L293d
- Paso 4: PCF8574: un expansor de puerto de E / S
- Paso 5: esquemas
- Paso 6: Código
Video: Robot de 4 ruedas controlado por Wi-Fi: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Para este proyecto, desarrollaremos un robot de 4 ruedas utilizando ESP8266 que se controlará a través de una red Wi-Fi. El robot se puede controlar desde un navegador de Internet normal, utilizando una interfaz diseñada en HTML o también desde una aplicación móvil Android. El chip ESP8266 es un microcontrolador potente y económico, que no solo es fácil de usar, sino que también viene con conectividad Wi-Fi integrada. Este es el chip perfecto para controlar robots de forma remota desde su computadora o dispositivo móvil.
Para incorporar este chip a nuestro proyecto podemos utilizar una variedad de placas de desarrollo basadas en este microcontrolador.
1. Adafruit Feather Huzzah - Está hecho por Adafruit y tiene instrucciones y soporte fácilmente disponibles. Tiene cargador de batería li-po en la propia placa, por lo que será muy útil en proyectos portátiles.
2. NodeMCU ESP8266: la placa es de código abierto y tiene una excelente documentación, por lo que será muy fácil comenzar.
3. Sparkfun ESP8266: es como el Huzzah con la adición de un interruptor de encendido y una antena externa para un mayor alcance de Wi-Fi.
4. Wemos D1 Mini: es la más pequeña de todas las placas, pero esto no tiene ningún efecto en el rendimiento.
Para mi proyecto, estoy usando Wemos D1 Mini para hacer un robot de 4 ruedas controlado por Wi-Fi. Pero puede usar cualquier placa de desarrollo ESP8266 y usar el mismo código Arduino sin que se requieran cambios. He diseñado una placa de circuito impreso para este proyecto, pero puede utilizar una placa de circuito impreso de puntos para implementar el circuito o incluso diseñar su propia placa de circuito impreso.
Y usaremos el kit de chasis robótico 4WD como se muestra en la imagen de arriba, ya que es ideal para bricolaje y es el kit de automóvil robot más económico con una estructura mecánica simple.
Características de este kit: -
1. Viene con cuatro motores de plástico BO separados con caja de cambios, es bueno para la maniobrabilidad.
2. El chasis acrílico grande y resistente permite una gran capacidad de expansión para que usted pueda hacer bricolaje.
3. Kit de chasis de coche inteligente con tracción en las cuatro ruedas. Muy fácil de instalar, solo agregue un microcontrolador (como Arduino) y módulos de sensores para construir un robot completamente autónomo
Paso 1: Lista de componentes
Wemos D1 Mini [Cantidad - 1]
IC de controlador de motor L293d [Cantidad - 2]
IC de expansión de puerto PCF8574 [Cantidad - 1]
Batería de iones de litio de 12 V [Cantidad: 1]
PCB de robot controlado por Wi-Fi [Cantidad: 1]
Kit de chasis de coche inteligente con robot 4WD [Cantidad: 1]
Paso 2: Cerebro del proyecto - Placa de desarrollo ESP8266 (Wemos D1 Mini)
Wemos D1 Mini es una mini placa de desarrollo Wi-Fi con flash de 4 MB basada en el chip ESP-8266.
- Tiene 11 pines de entrada / salida digital, todos los pines tienen soporte para interrupción / pwm / I2C / un cable (excepto D0)
- Tiene 1 entrada analógica (entrada máxima de 3,2 V)
- Tiene una conexión Micro USB para la programación, así como una fuente de alimentación.
Esta placa está basada en ESP8266, por lo tanto, es compatible con Arduino IDE, por lo tanto, se puede programar usando Arduino o también se puede programar usando el compilador Lua. También es compatible con la programación en serie y OTA.
Programaremos el Wemos D1 Mini usando Arduino IDE. Para programar la placa usando el IDE de Arduino, se deben cumplir los siguientes requisitos.
Requisito:-
- Controlador CH340G
- Instale el IDE de Arduino más reciente desde el sitio web de Arduino.
- Un cable micro usb para programar
Después de instalar el controlador y el software arduino, debe instalar el “núcleo Arduino para el chip WiFi ESP8266” dentro del IDE de Arduino para que podamos programar el chip ESP8266 desde el entorno Arduino. Este núcleo Arduino ESP8266 le permite escribir bocetos utilizando las funciones y bibliotecas familiares de Arduino, y ejecutarlos directamente en ESP8266, sin necesidad de un microcontrolador externo.
El núcleo Arduino ESP8266 viene con bibliotecas para comunicarse a través de WiFi usando TCP y UDP, configurar servidores HTTP, mDNS, SSDP y DNS, hacer actualizaciones OTA, usar un sistema de archivos en memoria flash, trabajar con tarjetas SD, servos, periféricos SPI e I2C.
Descargue el siguiente documento para tener una idea sobre cómo instalar el núcleo arduino Esp8266.
Paso 3: Controlador de motor - L293d
El Motor Driver es un IC para motores que le permite controlar la velocidad de trabajo y la dirección de dos motores simultáneamente.
L293d está diseñado para proporcionar corrientes de accionamiento bidireccionales a voltajes de 5 V a 36 V. L293D puede accionar 2 motores de CC simultáneamente.
L293D es un controlador de motor de 16 pines IC. Hay 4 pines de ENTRADA, 4 pines de SALIDA y 2 pines de ENABLE para cada motor.
Características de L293D:
Capacidad de corriente de salida de 600 mA por canal
Control de sentido horario y antihorario para canales individuales
Descripción del pin de L293d:
- Pin 1: cuando Enable1 es HIGH, la parte izquierda del IC funcionará, es decir, el motor conectado con el pin 3 y el pin 6 girará.
- Pin 2: Entrada 1, cuando este pin está ALTO, la corriente fluirá a través de la salida 1.
- Pin 3: Salida 1, este pin está conectado con un terminal del motor.
- Pin 4/5: pines GND
- Pin 6: Salida 2, este pin está conectado con un terminal del motor.
- Pin 7: Entrada 2, cuando este pin es ALTO, la corriente fluirá a través de la salida 2.
- Pin 8: VCC2, este pin se utiliza para proporcionar alimentación a los motores conectados de 5 V a 36 V como máximo dependiendo del motor conectado.
- Pin 9: Cuando Enable 2 es HIGH, la parte derecha del IC funcionará, es decir, el motor conectado con el pin 11 y el pin 14 girará.
- Pin 10: Entrada 4, cuando este pin es ALTO, la corriente fluirá a través de la salida 4.
- Pin 11: Salida 4, este pin está conectado con un terminal del motor.
- Pin 12/13: pines GND
- Pin 14: Salida 3, este pin está conectado con un terminal del motor.
- Pin 15: Entrada 3, cuando este pin es ALTO, la corriente fluirá a través de la salida 3.
- Pin 16: VCC1, para alimentación lógica de suministro a IC, es decir, 5V.
Por lo tanto, puede ver que necesita 3 pines digitales para controlar cada motor (un pin para control de velocidad y dos pines para control de dirección). Si un L293d controla dos motores de CC, entonces necesitaremos dos circuitos integrados L293d para controlar cuatro motores de CC. Vamos a utilizar motores BO de plástico para este proyecto. Por lo tanto, verá que necesitaremos 12 pines digitales para controlar los cuatro motores de CC de forma independiente con control de velocidad y dirección.
Pero si ve que Wemos D1 mini tiene solo 11 pines de E / S digitales y 1 pin analógico. Para resolver este problema, vamos a conectar los cuatro pines de habilitación (dos pines de habilitación del primer L293d y dos pines de habilitación de otro L293d) a los pines de Wemos Digital directamente mientras que los ocho pines de entrada (cuatro del primer L293d y cuatro del otro L293d) utilizando PCF8574 (un expansor de puerto de E / S) a través de I2C.
Paso 4: PCF8574: un expansor de puerto de E / S
Wemos D1 Mini (es decir, ESP8266) tiene una escasez de pines de entrada / salida. Podemos aumentar los pines de entrada / salida digital usando un IC expansor de E / S como PCF8574, que es un expansor de E / S de 8 bits.
Una de las ventajas de usar el expansor de E / S PCF8574A es que usa el bus I2C, que requiere solo dos líneas de datos, son de reloj (SCK) y de datos (SDA). Por tanto, con estas dos líneas puedes controlar hasta ocho pines del mismo chip. Al cambiar los tres pines de dirección de cada PCF8574, podemos controlar un total de 64 pines.
Este expansor de entrada / salida (E / S) de 8 bits para el bus bidireccional de dos líneas (I2C) está diseñado para una operación VCC de 2.5V a 6V. El dispositivo PCF8574 proporciona expansión de E / S remotas de propósito general para la mayoría de las familias de microcontroladores a través de la interfaz I2C [reloj en serie (SCL), datos en serie (SDA)].
El dispositivo cuenta con un puerto de E / S cuasi bidireccional de 8 bits (P0 – P7), que incluye salidas enclavadas con capacidad de control de alta corriente para controlar directamente los LED. Cada E / S cuasi bidireccional se puede utilizar como entrada o salida sin el uso de una señal de control de dirección de datos. Al encender, las E / S son altas.
Consulte el siguiente archivo pdf "PCF8574_With_L293d" para ver el diagrama de conexión del PCF8574 con los dos circuitos integrados L293d
Paso 5: esquemas
He utilizado Kicad para el diseño de PCB.
Descargue el pdf esquemático a continuación para diseñar su propia placa de circuito impreso o implementarlo en una placa de circuito impreso de puntos.
Paso 6: Código
Conéctese al siguiente punto de acceso Wi-Fi: -
// Credenciales de red definidas por el usuarioconst char * ssid = "WiFi_Robot";
const char * contraseña = "Automatizar @ 111";
Después de conectarse al punto de acceso anterior, vaya al enlace de abajo en un navegador web: -
192.168.4.1
Recibirá el siguiente mensaje: -
"¡Hola de Robot!"
192.168.4.1/fw
Hará que el robot se mueva hacia adelante
192.168.4.1/bk
Hará que el robot se mueva hacia atrás
192.168.4.1/lt
Hará que el robot se mueva a la izquierda
192.168.4.1/rt
Hará que el robot se mueva a la derecha
192.168.4.1/st
Hará que el robot se detenga
Si lo desea, también puede controlar el robot a través de la aplicación de Android creada por Robo India.
{Busque la aplicación de Android "WiFi Robot Controller" en la tienda de juegos hecha por Robo India}
[Nota: De ninguna manera estoy conectado con Robo India y esto no es para publicidad, ¡este es mi proyecto personal!]
Video de trabajo del proyecto: -
Recomendado:
Silla de ruedas controlada por joystick asistida con rastreador de obstáculos: 3 pasos (con imágenes)
Silla de ruedas controlada por joystick asistida con rastreador de obstáculos: para facilitar la conducción segura de las personas con discapacidad física, se utiliza un sensor ultrasónico para rastrear los obstáculos presentes en el camino. Según el movimiento del joystick, los motores impulsarán la silla de ruedas en cuatro direcciones y la velocidad en cada di
¿Coche RC dirigido por ruedas y pedales? ️: 6 pasos
¿Coche RC conducido por ruedas y pedales? ️: La vida se trata de hacer realidad tus sueños. El mío fue hacer RC Car con volante para juegos de PC. Así que lo hice Espero que sea útil para alguien. En caso de dudas, escribe un comentario
Robot de equilibrio / Robot de 3 ruedas / Robot STEM: 8 pasos
Robot de equilibrio / Robot de 3 ruedas / Robot STEM: Hemos construido un robot combinado de equilibrio y 3 ruedas para uso educativo en escuelas y programas educativos extracurriculares. El robot se basa en un Arduino Uno, un escudo personalizado (se proporcionan todos los detalles de construcción), un paquete de baterías de iones de litio (todos constr
Silla de ruedas robótica controlada por gestos y DTMF: 7 pasos (con imágenes)
Silla de ruedas robótica controlada por gestos y DTMF: en este mundo, varias personas están discapacitadas. Su vida gira en torno a ruedas. Este proyecto presenta un enfoque para controlar el movimiento de la silla de ruedas mediante el reconocimiento de gestos de la mano y DTMF de un teléfono inteligente
Silla de ruedas controlada por visión artificial con maniquí: 6 pasos (con imágenes)
Silla de ruedas controlada por visión artificial con maniquí: Proyecto de AJ Sapala, Fanyun Peng, Kuldeep Gohel, Ray LC Instrucción de AJ Sapala, Fanyun Peng, Ray LC Creamos una silla de ruedas con ruedas controladas por una placa Arduino, que a su vez es controlada por una frambuesa pi que ejecuta openCV a través de Processing