ESP32 - Deursensor - Servo Motor

Deze tutorial legt uit hoe u de ESP32 gebruikt met een deursensor en een servo motor. In detail:

Dit proces wordt herhaald.

Hardware Benodigd

1×ESP32 ESP-WROOM-32 Ontwikkelingsmodule
1×USB-kabel Type-C
1×Deursensor
1×Servomotor
1×Breadboard (experimenteerprint)
1×Jumperkabels (man-man)
1×(Optioneel) DC voedingsconnector
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 Deursensor

We hebben specifieke tutorials over servo motor en deursensor. Elke tutorial bevat gedetailleerde informatie en stapsgewijze instructies over hardware pinout, werking, bedrading naar ESP32, ESP32 code... Leer er meer over via de volgende links:

Bedradingsschema

ESP32 Deursensor Servo Motor Bedradingsschema

This image is created using Fritzing. Click to enlarge image

Als u niet weet hoe u ESP32 en andere componenten van stroom moet voorzien, vindt u instructies in de volgende tutorial: Hoe ESP32 van stroom te voorzien.

ESP32 Code - Deursensor 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-door-sensor-servo-motor */ #include <ESP32Servo.h> #define DOOR_SENSOR_PIN 21 // ESP32 pin GPIO21 connected to door 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 prev_door_state; // the previous state of door sensor int door_state; // the current state of door sensor void setup() { Serial.begin(9600); // initialize serial pinMode(DOOR_SENSOR_PIN, INPUT_PULLUP); // set ESP32 pin to input pull-up mode servo.attach(SERVO_PIN); // attaches the servo on pin GPIO26 to the servo object servo.write(angle); door_state = digitalRead(DOOR_SENSOR_PIN); } void loop() { prev_door_state = door_state; // save the last state door_state = digitalRead(DOOR_SENSOR_PIN); // read new state if(prev_door_state == LOW && door_state == HIGH) { Serial.println("The door-opening event is detected"); // 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 dit de eerste keer is dat u ESP32 gebruikt, bekijk dan hoe u de omgeving instelt voor ESP32 in Arduino IDE.
  • Maak de bedrading zoals op bovenstaande afbeelding.
  • Verbind de ESP32 board met uw pc via een micro USB-kabel.
  • Open Arduino IDE op uw pc.
  • Selecteer het juiste ESP32 board (bijv. ESP32 Dev Module) en de juiste COM-poort.
  • Klik op het Libraries-icoon in de linker zijbalk van de Arduino IDE.
  • Typ ESP32Servo in het zoekvak en zoek vervolgens de servo library van Kevin Harrington, John K. Bennett.
  • Klik op de Installeren-knop om de servo motor bibliotheek voor ESP32 te installeren.
ESP32 servo motor bibliotheek
  • Kopieer bovenstaande code en plak deze in Arduino IDE.
  • Compileer en upload de code naar de ESP32 door op de Upload-knop in Arduino IDE te klikken.
  • Beweeg de magneet dicht naar de reed switch en beweeg hem vervolgens weer weg van de reed switch. Herhaal dit meerdere keren.
  • Observeer 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 stap voor stap.

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