Arduino UNO R4 - Potentiometer Servo Motor

Deze tutorial leert u hoe u een servo motor kunt besturen met een potentiometer met behulp van Arduino Uno R4. Deze tutorial toont hoe u de hoek van de servo motor kunt aanpassen door een potentiometer te draaien. U leert:

Over Servo Motor en Potentiometer

Voordat u verder gaat, als u niet bekend bent met servo motors en potentiometers (hun pinout, werking en programmering), raadpleeg dan de onderstaande tutorials:

Bedradingsschema

  • Het bedradingsschema tussen Arduino UNO R4, servo motor en klassieke potentiometer
Arduino UNO R4 Servo Motor Potentiometer Bedradingsschema

This image is created using Fritzing. Click to enlarge image

  • Het bedradingsschema tussen Arduino UNO R4, servo motor en potentiometer module
Arduino UNO R4 Servo Motor Potentiometer module Bedradingsschema

This image is created using Fritzing. Click to enlarge image

Zie De beste manier om Arduino Uno R4 en andere componenten van stroom te voorzien.

Hoe Te Programmeren

  • Leest de waarde van de potentiometer (waarden variëren van 0 tot 1023)
int analogValue = analogRead(A0);
  • Past deze aan naar een hoek (waarde tussen 0 en 180)
int angle = map(analogValue, 0, 1023, 0, 180);
  • Verandert de positie van de servo op basis van de hoek.
myServo.write(angle);

Arduino UNO R4 Code

/* * Deze Arduino UNO R4 code is ontwikkeld door newbiely.nl * Deze Arduino UNO R4 code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-uno-r4/arduino-uno-r4-potentiometer-servo-motor */ #include <Servo.h> Servo myServo; // create servo object to control a servo void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); myServo.attach(9); // attaches the servo on pin 9 to the servo object } void loop() { // reads the value of the potentiometer (value between 0 and 1023) int analogValue = analogRead(A0); // scales it to use it with the servo (value between 0 and 180) int angle = map(analogValue, 0, 1023, 0, 180); // sets the servo position according to the scaled value myServo.write(angle); // print out the value Serial.print("Potentiometer's Value: "); Serial.print(analogValue); Serial.print(" => Servo Motor's Angle: "); Serial.println(angle); delay(100); }

Snelle Stappen

Volg deze instructies stap voor stap:

  • Als dit uw eerste keer is met de Arduino Uno R4 WiFi/Minima, raadpleeg de tutorial over het instellen van de omgeving voor Arduino Uno R4 WiFi/Minima in de Arduino IDE.
  • Bedraad de componenten volgens het meegeleverde schema.
  • Verbind het Arduino Uno R4 board met uw computer met behulp van een USB-kabel.
  • Start de Arduino IDE op uw computer.
  • Selecteer het juiste Arduino Uno R4 board (bijv., Arduino Uno R4 WiFi) en COM-poort.
  • Kopieer en plak de bovenstaande code in de Arduino IDE
  • Klik op de Upload knop in Arduino IDE om de code naar de Arduino UNO R4 over te dragen
Arduino IDE Upload Code
  • Open de Serial Monitor
  • Draai de potentiometer
  • Bekijk hoe de servo motor roteert
  • Controleer het resultaat op de Serial Monitor
COM6
Send
Potentiometer's Value: 0 => Servo Motor's Angle: 0 Potentiometer's Value: 85 => Servo Motor's Angle: 14 Potentiometer's Value: 201 => Servo Motor's Angle: 35 Potentiometer's Value: 286 => Servo Motor's Angle: 50 Potentiometer's Value: 370 => Servo Motor's Angle: 65 Potentiometer's Value: 444 => Servo Motor's Angle: 78 Potentiometer's Value: 521 => Servo Motor's Angle: 91 Potentiometer's Value: 608 => Servo Motor's Angle: 106 Potentiometer's Value: 690 => Servo Motor's Angle: 121 Potentiometer's Value: 793 => Servo Motor's Angle: 139 Potentiometer's Value: 907 => Servo Motor's Angle: 159 Potentiometer's Value: 1023 => Servo Motor's Angle: 180 Potentiometer's Value: 1023 => Servo Motor's Angle: 180
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Code Uitleg

Bekijk de uitleg gegeven in de commentaren van de broncode ⇒ regel voor regel geschreven!

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.

Commentaren

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