Taula de continguts:

Mr Tracker: 3 passos
Mr Tracker: 3 passos

Vídeo: Mr Tracker: 3 passos

Vídeo: Mr Tracker: 3 passos
Vídeo: 328pce Block Slider Marble ASMR ☆ Colorful Marble Course 2024, Juliol
Anonim
Mr Tracker
Mr Tracker

El rastrejador solar proporciona un 30% més d’electricitat que el panell solar normal

  • Hola, voleu crear el vostre propi Solar Tracker.
  • A continuació, es detallen alguns passos senzills pels quals podeu crear el vostre propi rastrejador solar.

Material requerit

  • Taula de pa
  • Aurdino Uno / Nano / Pro mini
  • Bateria de 9v
  • 2 panells solars (qualsevol de mida)
  • 2 LDR (si voleu fer 2 eixos, necessitareu 4 LDR).
  • Filferros de pont
  • Cartolina
  • 1 servomotor

Pas 1: comproveu aquest diagrama Com serà el circuit

Consulteu aquest diagrama Com serà el circuit
Consulteu aquest diagrama Com serà el circuit

Pas 2: Com codificar

Si no coneixeu el servomotor. El servo gira només 180 graus. l'avantatge d'utilitzar el servo depèn de nosaltres quant volem girar.

LDR, la resistència de LDR és baixa quan hi ha massa llum i en la foscor té una resistència molt alta. Posarem el codi Inside If condició perquè puguem girar fàcilment el nostre panell solar utilitzant la resistència de ldr.

Podeu escriure el vostre propi codi per a aquest rastrejador solar. Segons el disseny del vostre seguidor solar.

El codi del meu rastrejador solar és: -

Pas 3: Codi: -

#include Servo sg90; int inicial_posició = 90; int LDR1 = A0; // connecteu el LDR1 al pin A0

int LDR2 = A1; // Connecteu el LDR2 al pin A1

int error = 5;

int servopin = 9; // Podeu canviar el servo només per fer-ho al pin PWM d'arduino

configuració nul·la ()

{

sg90.attach (servopin);

pinMode (LDR1, INPUT); pinMode (LDR2, INPUT);sg90.write (posició_inicial);

// Mou el servo a 90 graus

endarreriment (2000); }

bucle buit ()

{

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

int R2 = analogRead (LDR2); // llegir LDR 2 int diff1 = abs (R1 - R2); int diff2 = abs (R2 - R1);if ((diff1 <= error) || (diff2 <= error)) {}

més {

si (R1> R2)

{

if (posició_inicial> 60) {posició_inicial = --posició_inicial;

}

} si (R1 <R2) {

if (posició_inicial <120) {posició_inicial = ++ posició_inicial; }}} sg90.write (inicial_position); retard (50);

}

Recomanat: