En la era de la tecnología inteligente, los sensores táctiles capacitivos son una herramienta cada vez más popular para la interacción con diferentes dispositivos. En este artículo, exploraremos cómo utilizar la placa Pines ESP32 con Arduino IDE para implementar y programar sensores táctiles capacitivos. ¡Descubre cómo sacar el máximo provecho de esta innovadora tecnología en tus proyectos de electrónica!
Este artículo muestra cómo utilizar los pines táctiles ESP32 con Arduino IDE. Los pines táctiles ESP32 pueden detectar cambios en cualquier cosa que lleve una carga eléctrica. A menudo se utilizan para despertar al ESP32 del sueño profundo.
Para leer el valor de los pines táctiles ESP32, use el Lectura táctil (GPIO) Función que acepta como argumento el GPIO que deseas leer.
Mira el vídeotutorial
Puede ver el video tutorial o continuar leyendo esta página para obtener las instrucciones escritas.
Presentamos el sensor táctil ESP32
El ESP32 tiene 10 GPIO táctiles capacitivos. Estos GPIO pueden detectar cambios en cualquier cosa que lleve carga eléctrica, como la piel humana. Así podrás detectar cambios provocados al tocar los GPIO con un dedo.
Estos pines se pueden integrar fácilmente en almohadillas capacitivas y reemplazar las teclas mecánicas. Además, los pines táctiles también se pueden utilizar como fuente de activación cuando el ESP32 está en sueño profundo.
Echa un vistazo a la configuración de pines de tu placa para encontrar los 10 sensores táctiles diferentes: los pines sensibles al tacto están resaltados en rosa.
Obtenga más información sobre los GPIO ESP32: Referencia de distribución de pines ESP32.
Puede ver que el sensor táctil 0 corresponde al GPIO 4, el sensor táctil 2 corresponde al GPIO 2, etc.
Nota: El sensor táctil 1 es GPIO 0. Sin embargo, no está disponible como pin en esta placa de desarrollo ESP32 en particular (versión de 30 GPIO). GPIO 0 está disponible en versión de 36 pines.
Nota: Al momento de escribir este tutorial, hay un problema con la asignación de pines táctiles en Arduino IDE. GPIO 33 se intercambia con GPIO 32 en la asignación. Esto significa que si desea hacer referencia a GPIO 32, debe usar T8 en el código. Si desea hacer referencia a GPIO33, debe usar T9. Si no tiene este problema, ignore este aviso.
tocarLeer()
La lectura del sensor táctil es sencilla. En el IDE de Arduino se utiliza el tocarLeer() Función que acepta como argumento el GPIO que deseas leer.
touchRead(GPIO);
Código – lectura del sensor táctil
Programaremos el ESP32 usando Arduino IDE. Por lo tanto, asegúrese de tener instalado el complemento ESP32 antes de continuar:
- ventanas Instrucciones – Placa ESP32 en Arduino IDE
- mac y linux Instrucciones – Placa ESP32 en Arduino IDE
Veamos cómo funciona esta función con un ejemplo de la biblioteca. En el IDE de Arduino, vaya a archivo > Ejemplos > ESP32 > Tocar y ábrelo TocarLeer bosquejo.
// ESP32 Touch Test
// Just test touch pin - Touch0 is T0 which is on GPIO 4.
void setup() {
Serial.begin(115200);
delay(1000); // give me time to bring up serial monitor
Serial.println("ESP32 Touch Test");
}
void loop() {
Serial.println(touchRead(4)); // get value of Touch 0 pin = GPIO 4
delay(1000);
}
Este ejemplo lee el pin táctil 0 y muestra los resultados en el monitor serie.
El pin T0 (pin táctil 0) corresponde al GPIO 4 como vimos en el pinout anterior.
En este código estoy configuración()Primero inicialice el monitor en serie para mostrar los valores del sensor.
Serial.begin(115200);
En el Cinta() Aquí puedes leer el sensor.
Serial.println(touchRead(4));
Utilizar el tocarLeer() Funciona y pasa como argumento el pin que deseas leer. En este caso, el ejemplo usa T0, que es el sensor táctil 0, en GPIO 4. Puede pasar el número del sensor táctil (T0) o el número GPIO (4).
Ahora sube el código a tu placa ESP32. Asegúrese de haber seleccionado la placa y el puerto COM correctos.
Probando el ejemplo del boceto
Conecte un cable de puente a GPIO 4. Tocas la parte metálica de este cable para que detecte el tacto.
En la ventana de Arduino IDE, vaya a Herramientas y abra el monitor serie con una velocidad de baudios de 115200. Verá los nuevos valores mostrados cada segundo.
Toque el cable que viene con GPIO4 y verás que los valores bajan.
También puedes utilizar el trazador de serie para ver mejor los valores. Cierre el monitor serie, vaya a Herramientas > De serietrazador.
LED sensible al tacto
Con esta función puedes controlar las salidas. En este ejemplo, construiremos un circuito LED simple controlado por tacto. Cuando tocas el GPIO con el dedo, el LED se enciende.
Para este ejemplo necesitarás las siguientes piezas:
- Placa ESP32 DOIT DEVKIT V1 (leer Las mejores placas de desarrollo ESP32)
- LED de 5 mm
- Resistencia de 330 ohmios
- tablero de circuitos
- Cables de puente
Puedes utilizar los enlaces anteriores o ir directamente MakerAdvisor.com/tools ¡Para encontrar todas las piezas para tus proyectos al mejor precio!
Determinar el valor umbral
Tome un trozo de papel de aluminio, corte un cuadrado pequeño y envuélvalo alrededor del cable como se muestra en la imagen a continuación.
Con el código anterior ejecutándose, regrese al monitor serial.
Ahora toca el papel de aluminio y verás que los valores vuelven a cambiar.
En nuestro caso el valor normal está por encima de 70 si no tocamos el pin. Y cuando tocamos el papel de aluminio, baja a un valor inferior a 10.
Entonces podemos establecer un umbral y cuando la lectura cae por debajo de ese valor, se enciende un LED. Un buen umbral en este caso es, por ejemplo, 20.
Esquema
Agregue un LED a su circuito siguiendo el siguiente diagrama de circuito. En este caso conectamos el LED a GPIO 16.
código
Copie el siguiente código en su IDE de Arduino.
// set pin numbers
const int touchPin = 4;
const int ledPin = 16;
// change with your threshold value
const int threshold = 20;
// variable for storing the touch pin value
int touchValue;
void setup(){
Serial.begin(115200);
delay(1000); // give me time to bring up serial monitor
// initialize the LED pin as an output:
pinMode (ledPin, OUTPUT);
}
void loop(){
// read the state of the pushbutton value:
touchValue = touchRead(touchPin);
Serial.print(touchValue);
// check if the touchValue is below the threshold
// if it is, set ledPin to HIGH
if(touchValue < threshold){
// turn LED on
digitalWrite(ledPin, HIGH);
Serial.println(" - LED on");
}
else{
// turn LED off
digitalWrite(ledPin, LOW);
Serial.println(" - LED off");
}
delay(500);
}
Este código lee el valor táctil del pin que definimos y enciende un LED cuando el valor está por debajo del umbral. Esto significa que el LED se enciende cuando coloca el dedo sobre la almohadilla de aluminio.
Probando el proyecto
Sube el boceto a tu ESP32. Ahora prueba tu circuito. Toca el papel de aluminio y observa cómo se enciende el LED.
Envolver
En este tutorial aprendiste cómo usar los pines táctiles ESP32. Resumido:
- El ESP32 tiene 10 GPIO táctiles capacitivos.
- Cuando tocas un GPIO sensible al tacto, el valor leído por el sensor cae.
- Puede establecer un umbral para que suceda algo cuando se detecta un toque.
- Los pines táctiles del ESP32 se pueden utilizar para despertar el ESP32 del sueño profundo.
Esperamos que este tutorial te haya resultado interesante. Si quieres aprender más sobre ESP32, apúntate a nuestro curso: Aprende ESP32 con Arduino IDE.
Quizás también quieras echar un vistazo a nuestros proyectos y tutoriales gratuitos de ESP32.
Gracias por leer.
Pines ESP32 para sensores táctiles capacitivos con Arduino IDE
Este artículo explora cómo utilizar los pines táctiles del ESP32 con Arduino IDE. Los pines táctiles del ESP32 pueden detectar variaciones en cualquier objeto que contenga una carga eléctrica. A menudo se utilizan para despertar al ESP32 del modo de sueño profundo.
Introducción al Sensor Táctil ESP32
El ESP32 cuenta con 10 GPIO táctiles capacitivos. Estos GPIO pueden detectar variaciones en cualquier objeto que contenga una carga eléctrica, como la piel humana. Por lo tanto, pueden detectar variaciones inducidas al tocar los GPIO con un dedo.
Estos pines se pueden integrar fácilmente en almohadillas capacitivas y reemplazar botones mecánicos. Además, los pines táctiles también se pueden utilizar como fuente de activación cuando el ESP32 está en modo de sueño profundo.
Función touchRead()
Para leer el valor de los pines táctiles del ESP32, utiliza la función touchRead(GPIO), que acepta como argumento el GPIO que deseas leer.
Vídeo Tutorial
Puedes ver el video tutorial o seguir leyendo esta página para las instrucciones escritas.
Código – Lectura del Sensor Táctil
Programaremos el ESP32 usando Arduino IDE. Asegúrate de tener el complemento ESP32 instalado antes de continuar.
- Abre el IDE de Arduino.
- Ve a File > Examples > ESP32 > Touch y abre el sketch TouchRead.
Ejemplo: Control de un LED Táctil
Con el ESP32, puedes controlar salidas como un LED mediante el tacto. Aquí te mostramos cómo realizar un circuito simple de LED controlado por tacto.
Para este ejemplo, necesitarás una placa ESP32 DOIT DEVKIT V1, un LED de 5 mm, una resistencia de 330 ohmios, una protoboard y cables jumper.
Conclusiones
En resumen, el ESP32 ofrece la capacidad de utilizar pines táctiles capacitivos para una variedad de aplicaciones interactivas. Desde despertar al microcontrolador hasta controlar dispositivos como LEDs, los pines táctiles añaden una dimensión táctil a tus proyectos de IoT.
Esperamos que este tutorial haya sido útil para comprender cómo utilizar los pines táctiles del ESP32 con Arduino IDE.
Recursos Adicionales
Si deseas aprender más sobre el ESP32, te invitamos a inscribirte en nuestro curso: Aprende ESP32 con Arduino IDE.
También puedes explorar nuestros proyectos y tutoriales gratuitos de ESP32.
¡Wow! No tenía idea de que se podía usar el ESP32 para sensores táctiles capacitivos. Definitivamente voy a investigar más sobre esto, ¡gracias por el dato!
¡Qué buena idea! Definitivamente voy a intentar usarlo en mis próximos proyectos. ¡Gracias por compartir la información!
¡Interesante! Nunca había pensado en utilizar el ESP32 para sensores táctiles capacitivos. Definitivamente voy a probarlo en mis proyectos, ¡gracias por la guía!
¡Qué útil! Nunca había considerado utilizar el ESP32 para sensores táctiles capacitivos. Definitivamente voy a probarlo en mis proyectos, ¡gracias por la inspiración!
Interesante, me gustaría probarlo en mis proyectos. ¡Gracias por la info!