Satura rādītājs:

Sekotāja kungs: 3 soļi
Sekotāja kungs: 3 soļi

Video: Sekotāja kungs: 3 soļi

Video: Sekotāja kungs: 3 soļi
Video: Самый большой в мире транзистор, диод и конденсатор 2024, Jūlijs
Anonim
Trakera kungs
Trakera kungs

Saules izsekotājs nodrošina par 30% vairāk elektrības nekā parastais saules panelis

  • Sveiki, vēlaties izveidot savu Saules izsekotāju.
  • Šeit ir daži vienkārši soļi, ar kuriem jūs varat izveidot savu saules izsekotāju.

Nepieciešams materiāls

  • Maizes dēlis
  • Aurdino Uno/Nano/Pro mini
  • 9v akumulators
  • 2 saules paneļi (jebkura izmēra)
  • 2 LDR (ja vēlaties izveidot 2 asis, tāpēc jums būs nepieciešami 4 LDR).
  • Jumper vadi
  • Karšu dēlis
  • 1 Servo moter

1. darbība: pārbaudiet šo diagrammu, kā būs ķēde

Pārbaudiet šo diagrammu, kā būs ķēde
Pārbaudiet šo diagrammu, kā būs ķēde

2. darbība. Kā kodēt

Ja jūs nezināt par servo moter. Servo griežas tikai par 180 grādiem. servo izmantošanas priekšrocība ir atkarīga no mums, cik daudz mēs vēlamies pagriezt.

LDR, LDR pretestība ir zema, ja ir pārāk daudz gaismas, un tumsā tai ir ļoti augsta pretestība. Mēs ievietosim kodu Inside If stāvoklī, lai mēs varētu viegli pagriezt mūsu saules paneli, izmantojot ldr pretestību.

Šim saules izsekotājam varat uzrakstīt savu kodu. Saskaņā ar jūsu saules izsekotāja dizainu.

Mana saules izsekotāja kods ir:-

3. darbība: kods:-

#iekļaut Servo sg90; int sākotnējā_pozīcija = 90; int LDR1 = A0; // savienojiet LDR1 uz kontakta A0

int LDR2 = A1; // Pievienojiet LDR2 tapai A1

int kļūda = 5;

int servopin = 9; // Jūs varat mainīt servo tikai, lai pārliecinātos, ka tas ir uz arduino PWM tapas

anulēts iestatījums ()

{

sg90.attach (servopin);

pinMode (LDR1, INPUT); pinMode (LDR2, INPUT);sg90.write (sākotnējā_pozīcija);

// Pārvietot servo 90 grādu leņķī

kavēšanās (2000); }

tukša cilpa ()

{

int R1 = analogRead (LDR1); // lasīt LDR 1

int R2 = analogRead (LDR2); // lasīt LDR 2 int diff1 = abs (R1 - R2); int dif2 = abs (R2 - R1);ja ((dif1 <= kļūda) || (dif2 <= kļūda)) {}

cits {

ja (R1> R2)

{

ja (sākotnējā_pozīcija> 60) {sākotnējā_pozīcija = -sākotnējā_pozīcija;

}

} ja (R1 <R2) {

ja (sākotnējā_pozīcija <120) {sākotnējā_pozīcija = ++ sākotnējā_pozīcija; }}} sg90.write (sākotnējā_pozīcija); kavēšanās (50);

}

Ieteicams: