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 >>

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

En Programador Novato vivimos de los anuncios, hemos detectado que está utilizando extensiones para bloquear anuncios. Ayudanos deshabilitando tu bloqueador de anuncios. :)