- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Nachführung Solarzelle mittels Servo

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied
    Registriert seit
    14.08.2004
    Ort
    Esting
    Alter
    45
    Beiträge
    37

    Nachführung Solarzelle mittels Servo

    Hi,

    Ich arbeite mich gerade in die Atmega Controller ein und hier ist mal ein kleines Testprojekt.

    Ich fand ne alte Solarzelle und nen Servo in der Bastelkiste, also warum nicht mal ne Solarzelle mittels Servo und 2 LDRs der Sonne nachführen.

    Gesagt getan und losgebaut, hier das Ergebniss:

    2 LDR, einer links und einer rechts von der Solarzelle messen das Licht und der Atmega wertet es aus. Der Atmega bewegt dann das Servo in die Richtung wo es heller ist. das ganze macht er solange bis beide in etwa gleich Hell sind.
    Mann kann im Code einen Puffer einstellen, wieviel Abstand zwischen den beiden Messergebnissen sein darf bis der Atmega reagiert.

    Hier ein kleines Video davon:
    http://www.youtube.com/watch?v=qcufMahoQEQ

    Werde es wohl Morgen (heute) noch so abändern, das nur aller 10min gemessen wird um Strom zu sparen. Evtl. werde ich dann auch einen Attiny26 verwenden.

    Das ganze soll, nicht hundertprozentig eine Funktion erfüllen, es geht mir nur darum mich in die Atmegas einzuarbeiten.


    hier noch der Code:

    Code:
    '**********************************************************
    '*          TEST  Solarnachführung mittels Servo          *
    '*                        Ronny Drbal                     *
    '*                 Email: ronny at ronbal de              *
    '*                                                        *
    '*           Servo am PORTD.5 LDR an ADC0 & ADC1          *
    '*                                                        *
    '**********************************************************
    
    
    $regfile = "m16def.dat"                                     ' specify the used micro
    
    $crystal = 8000000                                          ' used crystal frequency
    
    $baud = 9600                                                ' use baud rate
    
    $hwstack = 32                                               ' default use 32 for the hardware stack
    
    $swstack = 10                                               ' default use 10 for the SW stack
    
    $framesize = 40                                             ' default use 40 for the frame space
    
    
    
    Config Servos = 1 , Servo1 = Portd.5 , Reload = 10          'Servo Konfigurieren
    Config Adc = Single , Prescaler = Auto , Reference = Avcc   'ADC Konfigurieren
    Enable Interrupts
    Start Adc
    Dim Linkerldr As Word
    Dim Rechterldr As Word
    Dim Serv1 As Byte
    Dim Rechts1 As Word
    Dim Rechts2 As Word
    
    Serv1 = 45                                                  'Startposition des Servos
    Servo(1) = Serv1                                            'Servo setzen
    
    Do
    Messen:                                                     'Wert vom linken LDR einlesen
    Linkerldr = Getadc(0)                                       'Wert vom rechten LDR einlesen
    Rechterldr = Getadc(1)                                      'Werte ausgeben an die Serielle Schnittstelle
    Print "links: " ; Linkerldr ;
    Print "   rechts: " ; Rechterldr ;
    Print "  SERVO POS: " ; Serv1
    
    Rechts1 = Rechterldr + 1                                    'hier werden die AD Werte etwas gelättet :-)
    Rechts2 = Rechterldr - 1
    If Linkerldr > Rechts1 Then                                 'prüfen wo es heller ist
    If Serv1 > 144 Then                                         'prüfen ob Servo schon an der Max pos ist
    Goto Messen
    End If
    Serv1 = Serv1 + 1                                           'Servo eine position weiter
    Servo(1) = Serv1
    Waitms 50
    Goto Messen
    
    End If
    
    If Linkerldr < Rechts2 Then
    If Serv1 < 45 Then
    Goto Messen
    End If
    Serv1 = Serv1 - 1
    Servo(1) = Serv1
    Waitms 50
    Goto Messen
    
    End If
    
    Loop
    
    
    End
    Gebt doch mal feedback was ihr davon haltet.

    VG
    dr_bal

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von vohopri
    Registriert seit
    11.09.2004
    Ort
    südlich der Alpen
    Beiträge
    1.708
    Hallo Ronny,

    interessantes Miniprojekt. Gefällt mir gut. Habe auch schon 4 Stück von diesen Zellen.

    Leider kann ich die LDRs auf dem Video nicht erkennen. Dazu wollt ich nur sagen, dass sie nur dann gut funktionieren, wenn man etwas hat, das bei einer Abweichung Schatten wirft.

    Aus meiner Erfahrung mit Solaranlagen würd ich sagen, dass 10 Minuten immer noch zu kurz bemessen ist. Auch da kostet die Nachführung mehr Energie als die Abweichung. Ich würde eher 15 - 30 Minuten schätzen, aber wirklich kann man das erst mit Kontrollmessungen sagen.

    Nur zur Ergänzung und als Anregung für weitere Experimente:
    Optimal ist eine Montage der Nachführachse parallel zur Erdachse. Wenn man dann 1x in der Woche den Höhenwinkel der Zelle nachjustiert ist die Angelegenheit schon sehr gut optimiert.

    Weiter so und poste uns auch weiterhin deine Ergebnisse.

    grüsse,
    Hannes

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    59
    Beiträge
    1.080
    Nice

    Interressehalber: warum LDRs und nicht die Spannung der Solarzellen messen?

    Gruß MeckPommER
    Mein Hexapod im Detail auf www.vreal.de

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.01.2007
    Ort
    Bitterfeld
    Alter
    36
    Beiträge
    140
    wenn du die spannung misst dann weißte ja nicht wo es heller ist und wo nicht, da du nur ein messergebnis hast, halt nur von deiner solarzelle. möchtest du jetzt die optimale position einstellen und nachführen dann müsste man durch probieren herausfinden wie die optimale position ist und das würde zu viel energie verbrauchen, darum ein lrd links und rechts.

    ciao, Zachso

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    30.12.2008
    Beiträge
    1.427
    aber wenn man mehr solarzellen zur verfügung hat kann man das über die spannung machen

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    14.08.2004
    Ort
    Esting
    Alter
    45
    Beiträge
    37
    danke für die Blumen

    @hannes

    das mit dem Schatten dachte ich mir auch und wollte eigentlich nen Röhrchen (Schrumpfschlauch) über die LDRs machen damit sie etwas abgeschottet sind.
    Jetzt beim Testen bei Tageslicht funktiniert es eigentlich sehr gut.
    Die ADC werden ja mit 10bit gemessen und die 1024 Schritte ergeben schon ein gutes Messergebniss bei den unterschieden der beiden Sensoren.

    Angeschlossen habe ich die LDRs mittels Spannungsteiler an den Atmega.

    So ich habe jetzt mal noch die Spannung an der Zelle an den Atmega gelegt und lasse die mir auch über die Serielle Schnittstelle schicken.

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    14.08.2004
    Ort
    Esting
    Alter
    45
    Beiträge
    37
    So ich nochmal.

    Ich habe mal den Schaltplan gezeichnet (mein erster).

    Könntet ihr mal drüberschauen ob das mit der Solarzelle und dem Akku klappt.
    Wahrscheinlich eher nicht oder ? Zumindest wird es nicht effizient mit dem 7805 sein.

    Also ich habe nen altes Akkupack aus einer Taschenlampe NIMH 3,6V 1800mah.
    Ich habe die Solarzelle, welche bei vollen Sonnenschein um die 10V bringt.

    Mein gedanke ich reduziere die Spannung auf 5V mit dem 7805, dahinter ne diode falls der Akku mal mehr Spannung als die Solarzelle hat.
    Habe es auch mal so angeschlossen und der Akku läd auch, die frage ist nur wie lange er das so überlegen kann?

    Da der Akku eh nicht gebraucht wird ist es jetzt mal nicht so schlimm wenn er drauf geht.

    Aber wie würde man es richtig machen ?
    Angehängte Dateien Angehängte Dateien
    • Dateityp: pdf ldr.pdf (17,1 KB, 65x aufgerufen)

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Wie viel Strom bringt denn deine Solarzelle?
    Signatur??? kann ich mir nicht leisten!!!

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    14.08.2004
    Ort
    Esting
    Alter
    45
    Beiträge
    37
    die sollte 0,085A bringen und 0,190 Kurzschlusstrom haben, zumindest wenn es diese Version ist:

    http://www.conrad.de/goto.php?artikel=112240


    es könnte auch diese gewesen sein, da ich ja über 10V bei Sonne gemessen habe:

    http://www.conrad.de/goto.php?artikel=112232

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Den 7805 brauchst Du nicht, die höhere Spannung stört den Akku nicht. Der Strom ist für den Akku für ne Dauerladung zu groß also brauchst Du ne Ladeenderkennung. Ist für NiCd und NiMh leider nicht ganz so einfach.

    p.s. Conrad-Links funktionieren nicht
    Signatur??? kann ich mir nicht leisten!!!

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen