Sisällysluettelo:

Automaattinen valonlähteen seuranta: 5 vaihetta
Automaattinen valonlähteen seuranta: 5 vaihetta

Video: Automaattinen valonlähteen seuranta: 5 vaihetta

Video: Automaattinen valonlähteen seuranta: 5 vaihetta
Video: RAVE-hankkeen Aurinkoenergiawebinaari 28.4.2021, Teemu Kettunen Motiva 2024, Marraskuu
Anonim
Automaattinen valonlähteen seuranta
Automaattinen valonlähteen seuranta

Tässä oppitunnissa käytämme servomoottoria, valoresistoria ja alasvetovastusta kootaksemme automaattisesti seurannan valonlähdejärjestelmän.

Vaihe 1: Komponentit:

- Arduino Uno -levy * 1

- USB -kaapeli * 1

- Servomoottori * 1

- valovastus * 1

- Vastus (10k) * 1

- Leipälauta * 1

- Hyppyjohdot

Vaihe 2: Periaate

Servomoottori ja valoresistori skannaavat ja etsivät valonlähdettä 180 astetta ja tallentavat valonlähteen sijainnin. Skannauksen päätyttyä servomoottori ja valovastus pysähtyvät valonlähteen suuntaan.

Vaihe 3: Toimenpiteet:

Toimenpiteet
Toimenpiteet
Toimenpiteet
Toimenpiteet
Toimenpiteet
Toimenpiteet

Vaihe 1:

Rakenna piiri.

Vaihe 2:

Lataa koodi osoitteesta

Vaihe 3:

Lataa luonnos Arduino Uno -levylle

Napsauta Lähetä -kuvaketta ladataksesi koodin ohjauspaneelille.

Jos "Valmis lataus" näkyy ikkunan alareunassa, se tarkoittaa, että luonnos on ladattu onnistuneesti.

Jos nyt käytät taskulamppua valovoiman loistamiseen, näet servomoottorin ja valovastuksen pyörivän ja lopulta pysähtyvän valonlähteen suuntaan.

Vaihe 4: Kaavio

Kaaviokuva
Kaaviokuva

Vaihe 5: Koodi

Koodi
Koodi
Koodi
Koodi
Koodi
Koodi

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

* nimi:

Valonlähteen automaattinen seuranta

* toiminto

: jos käytät taskulamppua valovastuksen kiiltoon, * tulet näkemään

servomoottori ja valovastus pyörivät, * ja lopuksi

pysähdy valonlähteen suuntaan.

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

/Sähköposti: [email protected]

// Verkkosivusto: www.primerobotics.in

#sisältää

const int valokennoPin = A0;

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

Servo myservo; // luo servo -objekti servoa ohjaamaan

int outputValue = 0;

int kulma = {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;

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

mitätön asennus ()

{

Sarja.alku (9600);

myservo.attach (9); // kiinnittää nastan 9 servon servo -objektiin

}

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

tyhjä silmukka ()

{

for (int i = 0;

i <19; minä ++)

{

myservo.write (kulma ); // kirjoita servokulma

outputValue

= analogRead (valokennoPin); // lue A0: n arvo

Serial.println (outputValue); // tulosta se

if (outputValue> maxVal) // jos A0: n nykyinen arvo on suurempi kuin edellinen

{

maxVal = outputValue; // kirjoita arvo muistiin

maxPos

= minä; //

}

viive (200);

}

myservo.write (kulma [maxPos]); // kirjoita servokulma, jolla A0: lla on suurin arvo

kun taas (1);

}

Suositeltava: