13. Controlar servo con potenciometro en ESP32

Controlar servo con potenciómetro en ESP32

Ya hemos movido 2 servos de formal independiente, ahora vamos a controlar servo con potenciómetro en ESP32, o sea que vamos a girar un potenciómetro y este va a girar un servo.

Requerimientos:

  • 1 Servomotor.
  • 1 Potenciómetro.
  • Cables.

Conexiones:

  • Conectamos la tierra (Cable café) del servo1 a la tierra del ESP32.
  • Conectamos la corriente (Cable rojo) del servo 1 y el servo2 a VIN del ESP32.
  • Conectamos la señal (Cable naranja) del servo 1 al PIN D2.
  • Conectamos la tierra del potenciómetro a la tierra del ESP32.
  • Conectamos la corriente del potenciómetro a VIN del ESP32.
  • Conectamos la señal del potenciómetro al PIN D4.

Código y diagrama: https://wokwi.com/projects/343488922369655379

Controlar servo con potenciómetro en ESP32
Controlar servo con potenciómetro en ESP32

Código:

/*
Controlar servo con potenciómetro en ESP32
*/
//Agregamos las librerias del servo
#include <ESP32Servo.h>
//Declaramos la variable que almacenara el valor analigico ingresara del potenciometro
int entradaPotenciometro = 0;
//Variable que movera el servo
int anguloServo = 0;
//Declaramos el servo
Servo servo;
//Declaramos la variable del pin del potenciometro
int pinPotenciometro=2;
//Declaramos la variable del pin del servo
int pinServo=4;
void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  //Configuramos el pin del potenciometro
  pinMode(pinPotenciometro, INPUT);
  //Configuramos el servo y su pin
  servo.attach(pinServo, 500, 2500);
}

void loop() {
  //Recibimos los datos analogicos del potenciometro
  entradaPotenciometro = analogRead(pinPotenciometro);
  //Obtenemos el anguloServo multiplicando entradaPotenciometro * (180/4095)
  anguloServo = (entradaPotenciometro * 0.04395604395);
  Serial.print("entradaPotenciometro:");
  Serial.println(entradaPotenciometro);
  Serial.print("anguloServo:");
  Serial.println(anguloServo);
  Serial.println("------------------");
  //Movemos el servo este angulo
  servo.write(anguloServo);
  delay(10); // this speeds up the simulation
}

servo potenciometro
Videotutorial de como Controlar servo con potenciómetro en ESP32

🎦 Este curso: https://www.youtube.com/watch?v=VuJkqL2Ys3Y&list=PLCTD_CpMeEKTvjzabAvLGHakg-ql6t0q6&ab_channel=ProgramadorNovato

🎦 Curso de Arduino: https://www.youtube.com/watch?v=oGinJt9aALc&list=PLCTD_CpMeEKSqw3Nh7rA9aXUAzbPIPkdv&ab_channel=ProgramadorNovato

🎦 [CURSO] C++ DE 0 A HEROE: https://www.youtube.com/watch?v=APN8aCyPvww&list=PLCTD_CpMeEKTofxs7iottRxJ5YPM7BOcc

<<Anterior tutorial Siguiente tutorial >>

Los comentarios están cerrados.