Controlando motores servo utilizando un control remoto por infrarrojos con Arduino

Controlando motores servo utilizando un control remoto por infrarrojos con Arduino

```html

Controlando Servomotores con un Control Remoto Infrarrojo y Arduino

Este proyecto demuestra cómo controlar un servomotor utilizando un control remoto por infrarrojos (IR) y un Arduino. Esta configuración permite el control inalámbrico de la posición del servomotor, lo que la hace ideal para diversas aplicaciones.

remoto
Pines del receptor remoto IR VS1838B
Pines del receptor IR remoto VS1838B

Aquí hay algunas ideas de proyectos utilizando esta configuración:

  • Ajustar de forma remota el paneo y la inclinación de una cámara.
  • Controlando los movimientos de un brazo robótico.
  • Automatizando persianas o cortinas.
  • Creando instalaciones de arte interactivas.
  • Construir un coche o vehículo teledirigido.

Hardware/Componentes

  • Placa Arduino (por ejemplo, Uno, Nano)
  • Motor servo
  • Control remoto IR (cualquier control remoto estándar funcionará, pero el código está configurado para controles específicos)
  • Módulo receptor IR (por ejemplo, TSOP1838)
  • Cables de conexión
  • Protoboard (opcional)

Guía de cableado

El servomotor tiene tres cables: tierra (generalmente marrón o negro), alimentación (típicamente rojo) y señal (a menudo naranja o blanco). El receptor IR también tiene tres cables: tierra, alimentación (VCC) y señal.

(in video at 01:46)

IR_remote_servo_wring

  • Tierra del servo a tierra de Arduino
  • Potencia del servo a Arduino 5V
  • Señal del servo al pin 8 del Arduino (en el video a las 02:23)
  • Tierra del receptor IR a tierra de Arduino
  • Receptor IR VCC a Arduino 5V
  • Señal del receptor IR al pin 11 de Arduino (en el video en 02:38)

Explicación del código

El código comienza incluyendo las bibliotecas necesarias para la comunicación IR y el control del servo. (en el video a las 03:16)


#include <IRremote.h>
#include <Servo.h>

A continuación, se definen las variables esenciales. Necesitarás configurarlas según tu configuración específica. (en el video a las 03:44)


const char type = 'B'; // 'W' for white remote, 'B' for black remote
const boolean PCB = 0;   // 1 if the IR receiver has a PCB, 0 if it's a bare module
const int SERVO_PIN = 8; // The pin connected to the servo's signal wire
int angleStep = 10;      // How many degrees the servo moves per button press
const int ANGLE_CENTRE = 90; // The center/reset position of the servo

(en video a las 05:06)

El paso de configuración más crucial es hacer coincidir los botones del control remoto con acciones específicas. El código incluye matrices para diferentes tipos de control remoto (blanco/negro, PCB/no PCB) y sus códigos de botón correspondientes. Necesitarás identificar los códigos correctos para tu control remoto y asignarlos a las acciones deseadas (derecha, izquierda, centro). (en el video a las 05:16)


const String RIGHT = ">"; // Replace with the code for your "right" button
const String LEFT = "<";  // Replace with the code for your "left" button
const String CENTRE = "OK"; // Replace with the code for your "center" button

(en video a las 08:12)

ElservoAction()La función maneja el movimiento del servo en función de la señal IR recibida. Verifica el comando recibido y ajusta el ángulo del servo en consecuencia. ElangleStepla variable controla el incremento o decremento de la posición del servo. (en el video a las 08:06)

Proyecto en vivo/Demostración

(in video at 09:56)

El video demuestra cómo controlar el servo utilizando diferentes controles remotos. Muestra cómo ajustar el código para varios tipos de controles remotos y módulos receptores. La demostración también cubre cómo capturar códigos IR de tus propios controles remotos e integrarlos en el código. (en video a las 12:48)

Capítulos

  • [00:00] Introducción y panorama del proyecto
  • [00:36] Componentes y Materiales
  • Instrucciones de cableado
  • [03:16] Explicación del código
  • [09:56] Demostración del Proyecto
  • [12:48] Usando tu propio control remoto

```

Imágenes

Pines del receptor IR remoto VS1838B
Pines del receptor IR remoto VS1838B
SG90_servo_motor-1
SG90_servo_motor-1
remote
remote
IR_remote_servo_wring
IR_remote_servo_wring
139-Source for controlling a servo motor with an IR remote controller using Arduino
Idioma: C++
¡Copiado!

Recursos y referencias

Aún no hay recursos.

Archivos📁

No hay archivos disponibles.