ESP32 - Touch Sensor - Servo Motor

Deze tutorial legt uit hoe u de ESP32 gebruikt om een servo motor aan te sturen met een touch sensor. De details:

Dit proces wordt herhaald.

Hardware Benodigdheden

1×ESP32 ESP-WROOM-32 Ontwikkelingsmodule
1×USB-kabel Type-C
1×Aanraaksensor
1×Servomotor
1×Breadboard (experimenteerprint)
1×Jumperdraden (mannelijk-mannelijk)
1×(optioneel) DC Power Jack
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor ESP32
1×(Aanbevolen) Breakout Expansion Board for ESP32
1×(Aanbevolen) Stromsplitter voor ESP32

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over Servo Motor en Touch Sensor

We hebben specifieke tutorials over servo motoren en touch sensoren. Elke tutorial bevat gedetailleerde informatie en stapsgewijze instructies over hardware pinout, werkingsprincipe, bekabeling naar de ESP32 en ESP32 code. Lees er meer over via de volgende links:

Bedradingsschema

ESP32 Touch Sensor Servo Motor Bedradingsschema

This image is created using Fritzing. Click to enlarge image

ESP32 Code - Touch Sensor bestuurt Servo Motor

/* * Deze ESP32 code is ontwikkeld door newbiely.nl * Deze ESP32 code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/esp32/esp32-touch-sensor-servo-motor */ #include <ESP32Servo.h> #define TOUCH_SENSOR_PIN 18 // ESP32 pin GPIO18 connected to touch sensor's pin #define SERVO_PIN 26 // ESP32 pin GPIO26 connected to servo motor's pin Servo servo; // create servo object to control a servo // variables will change: int angle = 0; // the current angle of servo motor int lastTouchState; // the previous state of touch sensor int currentTouchState; // the current state of touch sensor void setup() { Serial.begin(9600); // initialize serial pinMode(TOUCH_SENSOR_PIN, INPUT); // set ESP32 pin to input mode servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(angle); currentTouchState = digitalRead(TOUCH_SENSOR_PIN); } void loop() { lastTouchState = currentTouchState; // save the last state currentTouchState = digitalRead(TOUCH_SENSOR_PIN); // read new state if(lastTouchState == LOW && currentTouchState == HIGH) { Serial.println("The sensor is touched"); // change angle of servo motor if(angle == 0) angle = 90; else if(angle == 90) angle = 0; // control servo motor arccoding to the angle servo.write(angle); } }

Snelle Stappen

  • Als u voor het eerst met ESP32 werkt, raadpleeg dan hoe u de ontwikkelomgeving instelt voor ESP32 in de Arduino IDE.
  • Voer de bedrading uit volgens bovenstaande afbeelding.
  • Verbind de ESP32 board met uw pc via een micro USB-kabel.
  • Open de Arduino IDE op uw pc.
  • Selecteer het juiste ESP32 board (bijv. ESP32 Dev Module) en de juiste COM-poort.
  • Klik op het Bibliotheken-icoon in de linkerzijbalk van de Arduino IDE.
  • Typ ESP32Servo in het zoekvak en zoek naar de servo bibliotheek van Kevin Harrington, John K. Bennett.
  • Klik op de knop Installeren om de servo motor bibliotheek voor ESP32 te installeren.
ESP32 servo motor bibliotheek
  • Kopieer bovenstaande code en plak deze in de Arduino IDE.
  • Compileer en upload de code naar het ESP32 board door op de knop Upload te klikken in de Arduino IDE.
  • Raak de touch sensor meerdere keren aan.
  • Bekijk de beweging van de servo motor.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en helpt u het beter te begrijpen.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!