Mündəricat:

Cənab Tracker: 3 addım
Cənab Tracker: 3 addım

Video: Cənab Tracker: 3 addım

Video: Cənab Tracker: 3 addım
Video: Chevrolet Traker 1 Traker 2! Qaysi biri yaxshi? plus minus tomoni! 2022 yilda olasa boladim yoq? 2024, Noyabr
Anonim
Cənab Tracker
Cənab Tracker

Günəş izləyicisi normal Günəş panelindən 30% daha çox elektrik enerjisi təmin edir

  • Salam öz Günəş İzləyicinizi etmək istəyirsiniz.
  • Günəş izləyicisini özünüz edə biləcəyiniz bir neçə sadə addım.

Tələb olunan material

  • Çörək lövhəsi
  • Aurdino Uno/Nano/Pro mini
  • 9v batareya
  • 2 günəş paneli (İstənilən ölçüdə)
  • 2 LDR (2 ox etmək istəyirsinizsə, 4 LDR tələb olunacaq).
  • Jumper telləri
  • Kart lövhəsi
  • 1 Servo motor

Addım 1: Dövrün necə olacağını bu Diaqramı yoxlayın

Dövr necə olacağını bu diaqrama baxın
Dövr necə olacağını bu diaqrama baxın

Addım 2: Necə Kodlaşdırılır

Servo moter haqqında məlumatınız yoxdursa. Servo yalnız 180 dərəcə fırlanır. servo istifadə etməyin üstünlüyü, nə qədər döndürmək istədiyimizdən asılıdır.

Çox işıq və qaranlıqda çox yüksək müqavimətə malik olduqda LDR, LDR müqaviməti aşağı olur. Kodu İçəriyə qoyacağıq Əgər ldr müqavimətindən istifadə edərək günəş panelimizi asanlıqla çevirə bilərik.

Bu günəş izləyicisi üçün öz kodunuzu yaza bilərsiniz. Günəş izləyicinizin dizaynına görə.

Günəş izləyicimin kodu belədir:-

Addım 3: Kod:-

#Servo sg90 daxil et; int initial_position = 90; int LDR1 = A0; // LDR1 -i A0 pininə bağlayın

int LDR2 = A1; // LDR2 -ni A1 pininə qoşun

int xətası = 5;

int servopin = 9; // Arduinonun PWM pinindəki servo dəyişdirə bilərsiniz

boş quraşdırma ()

{

sg90. əlavə (servopin);

pinMode (LDR1, GİRİŞ); pinMode (LDR2, GİRİŞ);sg90.write (initial_position);

// Servo 90 dərəcə sürüşdürün

gecikmə (2000); }

boşluq döngəsi ()

{

int R1 = analogRead (LDR1); // LDR 1 oxuyun

int R2 = analogRead (LDR2); // oxuyun LDR 2 int diff1 = abs (R1 - R2); int dif2 = abs (R2 - R1);əgər ((dif1 <= səhv) || (dif2 <= səhv)) {}

başqa {

əgər (R1> R2)

{

if (initial_position> 60) {initial_position = --initial_position;

}

} əgər (R1 <R2) {

if (initial_position <120) {initial_position = ++ initial_position; }}} sg90.write (initial_position); gecikmə (50);

}

Tövsiyə: