Inhoudsopgave:

AUTOMATISCHE LICHTBRON TRACKING MET ARDUINO UNO R3 - Ajarnpa
AUTOMATISCHE LICHTBRON TRACKING MET ARDUINO UNO R3 - Ajarnpa

Video: AUTOMATISCHE LICHTBRON TRACKING MET ARDUINO UNO R3 - Ajarnpa

Video: AUTOMATISCHE LICHTBRON TRACKING MET ARDUINO UNO R3 - Ajarnpa
Video: Extract GPS location in Arduino with NEO-6m or NEO-7M module 2024, November
Anonim
AUTOMATISCHE LICHTBRON TRACKING MET ARDUINO UNO R3
AUTOMATISCHE LICHTBRON TRACKING MET ARDUINO UNO R3

In deze les zullen we een servomotor, een fotoresistor en een pull-down weerstand gebruiken om een automatisch volgend lichtbronsysteem samen te stellen.

Stap 1: Componenten

- Arduino Uno-bord * 1

- USB-kabel * 1

- Servomotor * 1

- fotoweerstand * 1

- Weerstand (10k) * 1

- Broodplank * 1

- Jumper draden

Stap 2: Principe

De servomotor en de fotoweerstand scannen en zoeken naar een lichtbron in 180 graden en registreren de locatie van de lichtbron. Na het scannen stoppen de servomotor en de fotoresistor in de richting van de lichtbron.

Stap 3: Schematisch diagram

Schematisch diagram
Schematisch diagram

Stap 4: Procedures

Procedures
Procedures
Procedures
Procedures

Stap 1:

Bouw de schakeling.

Stap 2:

Download de code van

Stap 3:

Upload de schets naar het Arduino Uno-bord

Klik op het pictogram Uploaden om de code naar de besturingskaart te uploaden.

Als "Klaar met uploaden" onderaan het venster verschijnt, betekent dit dat de schets succesvol is geüpload.

Als u nu een zaklamp gebruikt om de fotoweerstand te laten schijnen, ziet u de servomotor en de fotoweerstand draaien en uiteindelijk stoppen in de richting van de lichtbron

Stap 5: Coderen

/********************************************************************

* naam:

Automatisch volgen van lichtbron

* functie

: als je een zaklamp gebruikt om op de fotoresistor te schijnen, * je zult zien

de servomotor en de fotoweerstand draaien, * en tenslotte

stop bij de richting van de lichtbron.

***********************************************************************

/E-mail: [email protected]

// Website: www.primerobotics.in

#erbij betrekken

const int fotocelPin = A0;

/************************************************/

Servo myservo;// maak een servo-object om een servo te besturen

int outputWaarde = 0;

int-hoek = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180};

int maxVal = 0;

int maxPos = 0;

/*************************************************/

ongeldige setup()

{

Serieel.begin(9600);

myservo.attach (9);//bevestigt de servo op pin 9 aan servo-object

}

/*************************************************/

lege lus()

{

voor(int i = 0;

ik < 19; ik ++)

{

myservo.write(angle);//schrijf de hoek naar servo

outputWaarde

= analogRead (photocellPin);//lees de waarde van A0

Serial.println(outputValue);//print it

if(outputValue > maxVal)//als de huidige waarde van A0 groter is dan de vorige

{

maxVal = outputValue;// noteer de waarde

maxPos

= ik;//

}

vertraging (200);

}

myservo.write(angle[maxPos]);//schrijf de hoek naar servo die A0 de grootste waarde heeft

terwijl(1);

}

Aanbevolen: