Arduino Nano - Bewegingssensor - Servo Motor

Deze tutorial legt uit hoe u een Arduino Nano en een bewegingssensor gebruikt om een servo motor aan te sturen. In detail:

Dit kan worden toegepast in een automatiseringsproces dat acties triggert bij het detecteren van menselijke aanwezigheid.

Hardware Benodigd

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB kabel
1×HC-SR501 Bewegingssensor
1×Servomotor
1×Jumperdraden
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

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 Bewegingssensor

Als u niet bekend bent met servo motoren en bewegingssensoren, inclusief de pinout, werking en programmering, kunnen de volgende tutorials u helpen:

Bedradingsschema

Arduino Nano Bewegingssensor Servo Motor bedrading schema

This image is created using Fritzing. Click to enlarge image

Het is belangrijk op te merken dat het bovenstaande bedrading schema alleen geschikt is voor een servo motor met een laag koppel. Mocht de motor trillen in plaats van draaien, dan moet een externe voedingsbron worden gebruikt om de servo motor van stroom te voorzien. Het volgende bedrading schema laat zien hoe u de servo motor op een externe voeding aansluit.

Arduino Nano Bewegingssensor Servo Motor bedrading schema

This image is created using Fritzing. Click to enlarge image

Vergeet niet om de GND van de externe voeding te verbinden met de GND van de Arduino.

Eerste Instelling

Time Delay Adjuster Draai deze volledig tegen de klok in.
Detection Range Adjuster Draai deze volledig met de klok mee.
Repeat Trigger Selector Plaats de jumper zoals te zien is op de afbeelding.
arduino bewegingssensor eerste instelling

Arduino Nano Code - Bewegingssensor bestuurt Servo Motor

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-motion-sensor-servo-motor */ #include <Servo.h> #define MOTION_SENSOR_PIN 2 // The Arduino Nano pin connected to the OUTPUT pin of motion sensor #define SERVO_PIN 9 // The Arduino Nano pin connected to the servo motor Servo servo; // create servo object to control a servo int angle = 0; // The current angle of servo motor int prev_motion_state; // The previous state of motion sensor int motion_state; // The current state of motion sensor void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. pinMode(MOTION_SENSOR_PIN, INPUT); // set arduino pin to input mode servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(angle); motion_state = digitalRead(MOTION_SENSOR_PIN); } void loop() { prev_motion_state = motion_state; // save the last state motion_state = digitalRead(MOTION_SENSOR_PIN); // read new state if (motion_state == LOW && prev_motion_state == HIGH) { // pin state change: LOW -> HIGH Serial.println("Motion detected!"); servo.write(90); } else if (motion_state == HIGH && prev_motion_state == LOW) { // pin state change: HIGH -> LOW Serial.println("Motion stopped!"); servo.write(0); } }

Snelle Stappen

  • Sluit uw Arduino Nano met een USB-kabel aan op de computer.
  • Start de Arduino IDE, selecteer het juiste board en de juiste poort.
  • Kopieer de bovenstaande code en open deze in de Arduino IDE.
  • Klik op de Upload knop in de Arduino IDE om de code te compileren en naar de Arduino Nano te uploaden.
  • Wierel met uw hand voor de sensor.
  • 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 het proces 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!