Controllare i servomotori utilizzando un telecomando a infrarossi con Arduino

Controllare i servomotori utilizzando un telecomando a infrarossi con Arduino

```html

Controllare i motori servo con un telecomando a infrarossi e Arduino

Questo progetto dimostra come controllare un servo motore utilizzando un telecomando a infrarossi (IR) e un Arduino. Questa configurazione consente il controllo wireless della posizione del servo, rendendola ideale per varie applicazioni.

remoto
Piedini del ricevitore remoto a infrarossi VS1838B
Piedini del ricevitore remoto IR VS1838B

Ecco alcune idee di progetti utilizzando questa configurazione:

  • Regolazione remota dell'inclinazione e della rotazione di una fotocamera.
  • Controllare i movimenti di un braccio robotico.
  • Automatizzare le tende o le serrande.
  • Creare installazioni artistiche interattive.
  • Costruire un'auto o un veicolo radiocomandato.

Hardware/Componenti

  • Scheda Arduino (ad es., Uno, Nano)
  • Motore servo
  • Controllo remoto IR (qualsiasi telecomando standard funzionerà, ma il codice è configurato per telecomandi specifici)
  • Modulo ricevitore IR (ad es., TSOP1838)
  • Fili di collegamento
  • Breadboard (opzionale)

Guida al cablaggio

Il servomotore ha tre fili: massa (di solito marrone o nero), alimentazione (tipicamente rosso) e segnale (spesso arancione o bianco). Anche il ricevitore IR ha tre fili: massa, alimentazione (VCC) e segnale.

(in video a 01:46)

IR_remote_servo_wring

  • Servo di massa a massa di Arduino
  • Potenza del servo per Arduino 5V
  • Segnale del servo al pin 8 di Arduino (nel video al 02:23)
  • Terra del ricevitore IR a terra di Arduino
  • VCC del ricevitore IR a 5V di Arduino
  • Segnale del ricevitore IR al pin 11 dell'Arduino (nel video al 02:38)

Spiegazione del codice

Il codice inizia includendo le librerie necessarie per la comunicazione IR e il controllo del servo. (nel video al 03:16)


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

Successivamente, vengono definite le variabili essenziali. Dovrai configurarle in base alla tua configurazione specifica. (nel video al 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

(in video a 05:06)

Il passaggio di configurazione più cruciale è abbinare i pulsanti del telecomando a azioni specifiche. Il codice include array per diversi tipi di telecomando (bianco/nero, PCB/non PCB) e i relativi codici dei pulsanti. Dovrai identificare i codici corretti per il tuo telecomando e assegnarli alle azioni desiderate (destra, sinistra, centro). (nel video al 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

(in video at 08:12)

IlservoAction()funzione gestisce il movimento del servomotore basato sul segnale IR ricevuto. Controlla il comando ricevuto e regola l'angolo del servomotore di conseguenza. IlangleStepla variabile controlla l'aumento o la diminuzione della posizione del servo. (nel video alle 08:06)

Progetto dal vivo/Democrazia

(in video at 09:56)

Il video dimostra come controllare il servo utilizzando diversi telecomandi. Mostra come adattare il codice per vari tipi di telecomando e moduli di ricezione. La dimostrazione copre anche come catturare i codici IR dai propri telecomandi e integrarli nel codice. (nel video alle 12:48)

Capitoli

  • [00:00] Introduzione e Panoramica del Progetto
  • [00:36] Componenti e Materiali
  • [01:46] Istruzioni di cablaggio
  • [03:16] Spiegazione del codice
  • [09:56] Dimostrazione del Progetto
  • Utilizzando il tuo remoto

```

Immagini

Piedini del ricevitore remoto IR VS1838B
Piedini del ricevitore remoto IR 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
Lingua: C++
Copia!

Cose di cui potresti avere bisogno

Risorse e riferimenti

Nessuna risorsa ancora.

File📁

Nessun file disponibile.