Arduino - Ultrasone Sensor - Servo Motor

We leren:

Hardware Benodigd

1×Arduino Uno R3
1×USB 2.0 kabel type A/B
1×Ultrasone Sensor
1×Servomotor
1×Jumper Draden (verbindingsdraden)
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 Ultrasone Sensor

Als u nog niet bekend bent met servo motors en ultrasone sensoren (pinout, werking, programmeren ...), leer er meer over in de volgende tutorials:

Bedradingsschema

Arduino Ultrasone Sensor Servo Motor Bedradingsschema

This image is created using Fritzing. Click to enlarge image

Arduino Code - Ultrasone Sensor Bestuurt Servo Motor

/* * 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-ultrasonic-sensor-servo-motor */ #include <Servo.h> // constants won't change const int TRIG_PIN = 6; // Arduino pin connected to Ultrasonic Sensor's TRIG pin const int ECHO_PIN = 7; // Arduino pin connected to Ultrasonic Sensor's ECHO pin const int SERVO_PIN = 9; // Arduino pin connected to Servo Motor's pin const int DISTANCE_THRESHOLD = 50; // centimeters Servo servo; // create servo object to control a servo // variables will change: float duration_us, distance_cm; void setup() { Serial.begin (9600); // initialize serial port pinMode(TRIG_PIN, OUTPUT); // set arduino pin to output mode pinMode(ECHO_PIN, INPUT); // set arduino pin to input mode servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(0); } void loop() { // generate 10-microsecond pulse to TRIG pin digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // measure duration of pulse from ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; if(distance_cm < DISTANCE_THRESHOLD) servo.write(90); // rotate servo motor to 90 degree else servo.write(0); // rotate servo motor to 0 degree // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Snelle Stappen

  • Verbind de Arduino met de pc via de USB-kabel
  • Open de Arduino IDE, selecteer de juiste board en poort
  • Kopieer de 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
  • Beweeg uw hand voor de sensor
  • Zie de beweging van de servo motor

※ Notiz:

De bovenstaande code is bedoeld voor leermogelijkheden. De ultrasone sensor is erg gevoelig voor storingen (ruis). Wilt u de ultrasone sensor in praktische toepassingen gebruiken, dan dient u de ruis uit het ultrasone signaal te filteren. Zie hoe ruis te filteren bij ultrasone sensormetingen

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 ultrasone sensor en de servo motor samen 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!