Author Topic: Mein Projekt Solar Tracker  (Read 14116 times)

SeviT

  • Newbie
  • *
  • Posts: 42
  • Karma: +1/-0
Mein Projekt Solar Tracker
« on: January 13, 2013, 06:31:04 PM »
Hallo Zusammen

Ich mache im moment ein solar tracking projekt.
hardware und alles habe ich nun läuft das peogramm, jedoch spinnen die servos ein bisschen. hat jemand einen ratschlag worann das liegt??
sie bewegen sich langsam und tönen komisch.

lg sevi


mein program

#include <Servo.h>


Servo servoRotation; 
Servo servoPitch;


int ldrLeft = 0;       
int ldrRight = 4;     
int ldrTop = 2;       
int ldrDown = 3;       
int valRotation = 90; 
int valPitch = 135;
int valLeft;           
int valRight;
int valTop;
int valDown;
int delayTime= 1;     
int buttonState = 0;

void setup() {

 


 
  servoRotation.attach(6);   
  servoPitch.attach(9);     
  //  Serial.begin(9600);
}

void loop() {
  //reading LDR values depending on incoming light
  valLeft = analogRead(ldrLeft);
  valRight = analogRead(ldrRight);
  valTop = analogRead(ldrTop);
  valDown = analogRead(ldrDown);

 
  if (valLeft - valRight > 2 || valLeft - valRight < -2){
   
    if (valLeft > valRight && valRotation > 0) {
      valRotation--;
    }
   
    if (valRight > valLeft && valRotation < 180) {
      valRotation++;
    }
  }
 
  if (valTop - valDown > 2 || valTop - valDown < -2){
   
    if (valTop > valDown && valPitch > 90) {
      valPitch--;
    }
   
    if (valDown > valTop && valPitch < 180) {
      valPitch++;
    }
  }
 
  servoRotation.write(valRotation);       
  servoPitch.write(valPitch);

  delay(delayTime);                     
 
 

}


MathiasW

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 614
  • Karma: +13/-0
    • my Arduino page
Re: Mein Projekt Solar Tracker
« Reply #1 on: January 14, 2013, 05:00:01 PM »
Salut,

auf den ersten Blick fällt mir nichts auf. Wenn ich den Code richtig verstehe, wird bis zu 1000 mal pro Sekunde geprüft, ob sich der Wert der beiden RefernezLDR um mehr als 2 unterscheidet. Das sind ~10 mV am anlog Port. Das erscheint mir sehr sensitiv und ich gehe davon aus, dass die Servos so komisch klingen, weil sie sehr häufig pro Sekunde um jeweils wenige Grad verstellt werden.
Ich würde mir erst einmal den Output der LDR anschauen und entscheiden, welchen Schwellwert man am besten einsetzt.
Außerdem würde ich die Tatsache nutzen, dass die Sonne in ihrem Verhalten recht vorhersagbar ist. Man kann also noch einige Plausibilitätsprüfungen einbauen, da man weiß, dass die Sonne maximal 15 Grad pro Stunde durchläuft. Weiterhin sollte man über eine Mittlung nachdenken, so dass man nicht von Schwankungen im Licht/Schatten abhängig ist.
Ich hoffe, das gibt einen Anstoß
Ciao, Mathias

SeviT

  • Newbie
  • *
  • Posts: 42
  • Karma: +1/-0
Re: Mein Projekt Solar Tracker
« Reply #2 on: January 14, 2013, 05:42:23 PM »
Hallo

vielen dank für die antwort hat mir geholfen habe die zeit au 1000 geändert jetzt läuft das ganze schon besser :)
 ich habe auch noch ein problem, dass die drehung des solarpanel nicht wirklich funktioniert. das ab und auf funktioniert problemlos. mal schauen.

lg sevi

SeviT

  • Newbie
  • *
  • Posts: 42
  • Karma: +1/-0
Re: Mein Projekt Solar Tracker
« Reply #3 on: January 14, 2013, 06:03:49 PM »
hallo ich melde mich gleich nochmals

ich habe die sache einpendlen lassen, bis er die optimale position gefunden hat. dann habe ich die einzelnen ldr's ausgemessen mit meinen programm und bin auf diese werte gekommen.

links 927
oben 925
unten 918
rechts 875

irgend etwas stimmt nicht finde jedoch nichts.

lg sevi

Nukular

  • Newbie
  • *
  • Posts: 45
  • Karma: +1/-0
Re: Mein Projekt Solar Tracker
« Reply #4 on: January 14, 2013, 10:24:28 PM »
Ich musste an das Bordbuch der Fluglinie QANTAS denken:

Pilot: Im Cockpit ist irgendetwas locker.
Mechaniker: Wir haben im Cockpit irgendetwas wieder fest gemacht.
 ;D

Warum programmierst du eine optimale Position, wenn du einen Tracker baust, der diese ja selber suchen soll ?

Dann die üblichen verdächtigen: Liefert die Stromversorgung genügend wenn beide Servos laufen ? (Kondensator schadet nie)
Ich würde mit Pausen dazwischen mehrmals messen, um Störungen wie z.B. Reflexionen vom Öffnen/Schliessen von Fenstern auszufiltern.
Weiter würde ich eine Hysterese einfügen, dass sich die Servos erst bewegen ab +/- 3 und nicht flattern.
Und müssen die Servos die ganze Zeit laufen, würde es reichen, sie nur zum richten einzuschalten ?

SeviT

  • Newbie
  • *
  • Posts: 42
  • Karma: +1/-0
Re: Mein Projekt Solar Tracker
« Reply #5 on: January 15, 2013, 08:12:25 PM »
hallo

naja es ist einfach ein projekt für mich besser als den abend vor dem tv sitzen :) mal etwas sinnvolles machen
ja strom hat er genug
eine hysterese habe ich ich habe einfach eine abweichung von 2 programmier, doch ich probiere es mal mit 3.

ja eine gute idee werde ich gleich umsetzen

lg

danke für die antworten