Tabla de contenido:

Wi-Servo: Servomotores controlados por navegador Wi-Fi (con Arduino + ESP8266): 5 pasos
Wi-Servo: Servomotores controlados por navegador Wi-Fi (con Arduino + ESP8266): 5 pasos

Video: Wi-Servo: Servomotores controlados por navegador Wi-Fi (con Arduino + ESP8266): 5 pasos

Video: Wi-Servo: Servomotores controlados por navegador Wi-Fi (con Arduino + ESP8266): 5 pasos
Video: Pr#87 - Crear Servidor ESP8266 | Control Arduino por Internet (cualquier sitio del mundo) 2024, Noviembre
Anonim
Image
Image
Electrónica
Electrónica

Este instructivo muestra cómo controlar algunos servomotores de forma remota en una red wi-fi, utilizando un navegador de Internet normal (Firefox, por ejemplo). Esto se puede utilizar en varias aplicaciones: juguetes, robots, drones, movimiento horizontal / vertical de la cámara, etc.

Los motores estaban conectados a un Arduino Uno, que conecta la red wi-fi a través de un módulo ESP-8266. La interfaz de control fue diseñada con HTML y jQuery.

El tutorial de Miguel (https://allaboutee.com/2015/01/02/esp8266-arduino-led-control-from-webpage/), que muestra cómo encender / apagar los LED con ESP-8266, sirvió de inspiración para este correo.

La técnica que se muestra aquí se utiliza en uno de mis proyectos: "Robô da Alegria":

www.instructables.com/id/Joy-Robot-Rob%C3%B4-Da-Alegria-Open-Source-3D-Printed-A/

Puede encontrar más sobre esto en uno de los siguientes enlaces:

hackaday.io/project/12873-rob-da-alegria-joy-robot

www.facebook.com/robodaalegria/

github.com/ferauche/RoboAlegria

Paso 1: Electrónica

Electrónica
Electrónica
Electrónica
Electrónica

Para este proyecto, necesitará los siguientes componentes:

  • Arduino Uno (comprar)
  • ESP8266 (comprar)
  • Protoshield (para una versión más compacta) o una placa de pruebas ordinaria (comprar)
  • Resistencia de 10 kohmios (x3)
  • Algunos cables de puente
  • Servomotor SG90 (x2) (comprar)
  • Una computadora (para compilar y cargar código Arduino)

No necesitará herramientas específicas para el montaje de este proyecto. Todos los componentes se pueden encontrar en línea en su tienda de comercio electrónico favorita. El circuito es alimentado por el puerto USB (conectado a una computadora o un cargador de teléfono ordinario), pero también puede agregar una fuente de alimentación de CC externa o una batería conectada al conector de alimentación Arduino.

Paso 2: Montaje

Montaje
Montaje
Montaje
Montaje

Conecte todos los componentes de acuerdo con el esquema. Necesitará algunos cables de puente para conectar el módulo ESP-8266 y los servomotores. Puede usar un protoshield (para un circuito más compacto), una placa de pruebas ordinaria o diseñar su propio escudo Arduino.

Conecte el cable USB a la placa Arduino Uno y continúe con el siguiente paso.

Paso 3: Código Arduino

Instale el IDE de Arduino más reciente. En este proyecto se utilizó la biblioteca servo.h para el control de los servos. Para evitar conflictos entre el módulo wi-fi y el puerto USB de la computadora durante la carga del código, se utilizó la biblioteca de softserial. No se necesitó una biblioteca adicional para la comunicación con el módulo ESP-8266. Verifique la velocidad en baudios de su ESP8266 y configúrela correctamente en el código.

Algunos servomotores comienzan a temblar y a hacer ruidos extraños cuando su posición está cerca de los límites (0 y 180 grados). Para evitar eso, el ángulo se limitó entre 10 y 170 grados tanto en el código Arduino como en la interfaz de control (más adelante).

Desafortunadamente, la biblioteca servo.hy la biblioteca softserial.h usan el mismo temporizador del microcontrolador. Esto podría causar jitter en los servos cada vez que el Arduino se comunica con el ESP-8266. Para evitar eso, los servos se desconectan del Arduino después de cada comando. También puede conectar el módulo a los pines serie estándar. En este caso, recuerde desconectar el módulo antes de cada carga.

Descargue el código Arduino (wi-servo.ino) y reemplace el XXXXX por el SSID de su enrutador wifi y YYYYY por la contraseña del enrutador. Conecte la placa Arduino al puerto USB de su computadora y cargue el código.

Paso 4: interfaz

Interfaz
Interfaz

Se diseñó una interfaz html para el control de los servomotores. En este ejemplo, se usaron dos servos, pero se pueden agregar más al Arduino Uno (probé hasta cuatro motores).

Se utiliza un formulario de cuadro de texto para ingresar la dirección IP del módulo ESP.

Descargue los archivos Wi-servo.html y jquere.js y guárdelos en la misma carpeta.

Paso 5: uso

Image
Image
Uso
Uso
Uso
Uso

Cuando se reinicia el Arduino, intentará conectar su red wi-fi automáticamente. Use el monitor serial para verificar si la conexión fue exitosa y para obtener qué IP fue asignada a su ESP-8266 por su enrutador.

Abra el archivo html en un navegador de Internet (Firefox).

Informe la dirección IP de su ESP-8266 en el cuadro de texto y estará listo para comenzar. Seleccione el ángulo deseado para cada servo usando los controles deslizantes. El navegador enviará automáticamente una solicitud al Arduino cuando suelte el botón del mouse y mueva cada servo.

Recomendado: