Arduino UNO R4 - Lichtsensor Activeert Servomotor

In deze tutorial leren we hoe u een Arduino UNO R4 gebruikt om de servomotor aan te sturen op basis van de waarde die wordt gelezen van een lichtsensor of de lichtsensormodule. Specifiek zal de Arduino UNO R4 waarden lezen van een lichtsensor.

Arduino UNO R4 Lichtsensor bestuurt Servomotor

Benodigde Hardware

1×Arduino UNO R4 WiFi or Arduino UNO R4 Minima
1×Alternatief: DIYables STEM V4 IoT, Compatible with Arduino Uno R4 WiFi
1×Arduino UNO R4 Minima (Alternatief)
1×USB-kabel Type-C
1×Lichtsensor
1×10 kΩ weerstand
1×Servomotor
1×Jumperdraden
1×(Aanbevolen) Schroefklem Block Shield voor Arduino Uno R4
1×(Aanbevolen) Breadboard-Shield voor Arduino Uno R4
1×(Aanbevolen) Behuizing voor Arduino Uno R4
1×(Aanbevolen) Stromsplitter voor Arduino Uno R4
1×(Aanbevolen) Prototyping Basisplaat & Breadboard Kit voor Arduino Uno

Of u kunt de volgende kits kopen:

1×DIYables STEM V4 IoT Starterskit (Arduino inbegrepen)
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.

De LDR lichtsensor is zeer betaalbaar, maar vereist een weerstand voor de bedrading, wat de opstelling complexer kan maken. Om de bedrading te vereenvoudigen, kunt u als alternatief een LDR lichtsensormodule gebruiken.

Over Servomotor en Lichtsensor

Als u niet bekend bent met servomotoren en lichtsensoren (hun aansluitingen, functionaliteit en programmering), raadpleeg dan de onderstaande tutorials om meer te leren:

Bedradingsschema

  • Het bedradingsschema tussen Arduino Uno R4, servomotor en lichtsensor (Analoog)
Arduino UNO R4 Lichtsensor Servomotor Bedradingsschema

This image is created using Fritzing. Click to enlarge image

  • Het bedradingsschema tussen Arduino Uno R4, servomotor en lichtsensormodule (digitaal)
Arduino UNO R4 Lichtsensormodule Servomotor 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.

Arduino UNO R4 Code - Analoge Drempelwaarde

  • De Arduino Uno R4 code voor het uitlezen van de waarde van de LDR lichtsensor en het aansturen van de servomotor
/* * 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-light-sensor-controls-servo-motor */ #include <Servo.h> #define LIGHT_SENSOR_PIN A0 // Arduino Uno R4 pin connected to light sensor's pin #define SERVO_PIN 9 // Arduino Uno R4 pin connected to Servo Motor's pin #define 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(LIGHT_SENSOR_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 }
  • De Arduino Uno R4 code voor het uitlezen van de waarde van de LDR lichtsensor en het aansturen van de servomotor
/* * 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-light-sensor-controls-servo-motor */ #include <Servo.h> #define LIGHT_SENSOR_PIN 11 // Arduino Uno R4 pin connected to light sensor's pin #define SERVO_PIN 9 // Arduino Uno R4 pin connected to Servo Motor's pin Servo servo; // create servo object to control a servo void setup() { Serial.begin(9600); // initialize serial communication pinMode(LIGHT_SENSOR_PIN, INPUT); // initialize the Arduino Uno R4's pin as an input servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object servo.write(0); } void loop() { int light_state = digitalRead(LIGHT_SENSOR_PIN); if (light_state == HIGH) { Serial.println("The light is NOT present"); servo.write(90); // rotate servo motor to 90 degree } else { Serial.println("The light is present"); servo.write(0); // rotate servo motor to 0 degree } }

Snelle Stappen

Volg deze instructies stap voor stap:

  • Als dit uw eerste keer is met de Arduino Uno R4 WiFi/Minima, raadpleeg dan de tutorial over het opzetten van de omgeving voor Arduino Uno R4 WiFi/Minima in de Arduino IDE.
  • Bedrading de componenten volgens het bijgeleverde schema.
  • Sluit het Arduino Uno R4 board aan op uw computer met 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 de bovenstaande code en plak de code in Arduino IDE.
  • Klik op de Upload knop in Arduino IDE om de code naar de Arduino UNO R4 over te brengen.
  • Draai de lichtsensor.
  • Observeer de beweging van de servomotor.

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.

Opmerkingen

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