Obsah:

Pán Tracker: 3 kroky
Pán Tracker: 3 kroky

Video: Pán Tracker: 3 kroky

Video: Pán Tracker: 3 kroky
Video: Pán Karpatského lesa II - ukážka 5 2024, Júl
Anonim
Pán Tracker
Pán Tracker

Solárny sledovač poskytuje o 30% viac elektrickej energie ako normálny solárny panel

  • Ahoj, chcete si vytvoriť svoj vlastný solárny sledovač.
  • Tu je niekoľko jednoduchých krokov, pomocou ktorých si môžete vytvoriť svoj vlastný solárny sledovač.

Potrebný materiál

  • Chlebová doska
  • Aurdino Uno/Nano/Pro mini
  • 9v batéria
  • 2 solárne panely (ľubovoľnej veľkosti)
  • 2 LDR (ak chcete vytvoriť 2 os, budete potrebovať 4 LDR).
  • Prepojovacie vodiče
  • Kartová doska
  • 1 servomotor

Krok 1: Skontrolujte tento diagram, ako bude obvod vyzerať

Pozrite sa na tento diagram, ako bude obvod vyzerať
Pozrite sa na tento diagram, ako bude obvod vyzerať

Krok 2: Ako kódovať

Ak neviete o servomotore. Servo sa otáča iba o 180 stupňov. výhoda použitia serva závisí od nás, ako veľmi chceme otáčať.

LDR, odpor LDR je nízky, keď je príliš veľa svetla a v tme má veľmi vysoký odpor. Kód vložíme do podmienky If, aby sme mohli solárny panel ľahko otáčať pomocou odporu ldr.

Pre tento solárny sledovač môžete napísať svoj vlastný kód. Podľa vášho návrhu solárneho sledovača.

Kód môjho slnečného sledovača je:-

Krok 3: Kód:-

#include Servo sg90; int initial_position = 90; int LDR1 = A0; // Pripojte LDR1 na pin A0

int LDR2 = A1; // Pripojte LDR2 na pin A1

int chyba = 5;

int servopin = 9; // Môžete zmeniť servo, aby sa zaistilo, že je na kolíku PWM arduina

neplatné nastavenie ()

{

sg90.attach (servopin);

pinMode (LDR1, INPUT); pinMode (LDR2, INPUT);sg90.write (initial_position);

// Posuňte servo o 90 stupňov

oneskorenie (2000); }

prázdna slučka ()

{

int R1 = analogRead (LDR1); // čítaj LDR 1

int R2 = analogRead (LDR2); // čítať LDR 2 int diff1 = abs (R1 - R2); int diff2 = abs (R2 - R1);if ((diff1 <= chyba) || (diff2 <= chyba)) {}

inak {

ak (R1> R2)

{

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

}

} if (R1 <R2) {

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

}

Odporúča: