Arduino - Potentiometer bestuurt Servo Motor

In een eerdere tutorial hebben we geleerd hoe u een servo motor draait op basis van de uitgangswaarde van een potentiometer. In deze tutorial leert u hoe u:

Hardware Vereist

1×Arduino Uno R3
1×USB 2.0 kabel type A/B
1×Potentiometer
1×(Alternatief) Potentiometer Kit
1×(Alternatief) Potentiometer Module met knop
1×Servomotor
1×Jumper draden
1×(Aanbevolen) Schroefklem Block Shield voor Arduino Uno
1×(Aanbevolen) Breadboard-Shield voor Arduino Uno
1×(Aanbevolen) Behuizing voor Arduino Uno
1×(Aanbevolen) Prototyping Basisplaat & Breadboard Kit voor Arduino Uno

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 Potentiometer

Als u nog niets weet over servo motoren en potentiometers (pinout, werking, programmeren ...), leer er meer over in de volgende tutorials:

Wiring Diagram

Arduino Potentiometer Servo Motor Wiring Diagram

This image is created using Fritzing. Click to enlarge image

Arduino Code - Analoge Drempelwaarde

/* * Deze Arduino code is ontwikkeld door newbiely.nl * Deze Arduino code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino/arduino-potentiometer-triggers-servo-motor */ #include <Servo.h> // constants won't change const int POTENTIOMETER_PIN = A0; // Arduino pin connected to Potentiometer pin const int SERVO_PIN = 9; // Arduino pin connected to Servo Motor's pin const int ANALOG_THRESHOLD = 500; Servo servo; // create servo object to control a servo void setup() { servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(0); } void loop() { int analogValue = analogRead(POTENTIOMETER_PIN); // read the input on analog pin if(analogValue > ANALOG_THRESHOLD) servo.write(90); // rotate servo motor to 90 degree else servo.write(0); // rotate servo motor to 0 degree }

Snel aan de slag

  • Verbind de Arduino met uw PC via de USB-kabel
  • Open de Arduino IDE, selecteer het juiste board en de juiste poort
  • Kopieer bovenstaande code en open deze met de Arduino IDE
  • Klik op de Upload knop in de Arduino IDE om de code naar de Arduino te uploaden
  • Draai aan de potentiometer
  • Bekijk de beweging van de servo motor

Arduino Code - Spanningsdrempel

De analoge waarde van de potentiometer wordt omgezet naar een spanning en vervolgens vergeleken met een spanningsdrempel om de servo motor aan te sturen

/* * Deze Arduino code is ontwikkeld door newbiely.nl * Deze Arduino code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino/arduino-potentiometer-triggers-servo-motor */ #include <Servo.h> // constants won't change const int POTENTIOMETER_PIN = A0; // Arduino pin connected to Potentiometer pin const int SERVO_PIN = 9; // Arduino pin connected to Servo Motor's pin const float VOLTAGE_THRESHOLD = 2.5; // Voltages Servo servo; // create servo object to control a servo void setup() { servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(0); } void loop() { int analogValue = analogRead(POTENTIOMETER_PIN); // read the input on analog pin float voltage = floatMap(analogValue, 0, 1023, 0, 5); // Rescale to potentiometer's voltage if(voltage > VOLTAGE_THRESHOLD) servo.write(90); // rotate servo motor to 90 degree else servo.write(0); // rotate servo motor to 0 degree } float floatMap(float x, float in_min, float in_max, float out_min, float out_max) { return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; }

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 om de werking van de potentiometer en servo motor 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!