Projekt 18: Entwicklung eines automatischen Sonnen-Nachführ-Geräts

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Sonnen-Nachführ-Gerät 2018 - Vorderansicht
Sonnen-Nachführ-Gerät 2018 - Rückansicht

Autoren: Dörksen Andreas

Betreuer: Prof. Schneider

Aufgabe

Entwickeln und Bauen Sie Sonnenlicht-Nachführ-Gerät für eine Solarzelle.


Erwartungen an die Projektlösung

  • Recherche bisheriger Lösungen
  • Entwurf der Schaltung und Beschaffung der Bauteile
  • Realisierung der Schaltung durch Fertigung eines prototypischen Arduino-Uno-Shields
  • Programmierung und Visualisierung mit Simulink
  • Machen Sie ein tolles Videos, welches die Funktion visualisiert.
  • Test und wiss. Dokumentation
  • Live Vorführung während der Abschlusspräsentation


Schwierigkeitsgrad

Einfach (**)[vgl. https://campusapp01.hshl.de/pluginfile.php/378832/mod_resource/content/0/Auftaktveranstaltung.pdf S.56]


Einleitung

Dieses Projekt wurde von Andreas Dörksen im Rahmen des Masterstudiengangs Business and Systems Engineering im Angewandten Elektrotechnik Fachpraktikum im Wintersemester 2017/2018 durchgeführt. Alle BSE Projekte sind in dieser Übersicht aufgelistet und nach Semestern gordnet.

Die betreuenden Professoren waren Prof. Göbel und Prof. Schneider.

Verwendete Bauteile

Grundschaltung:

  • 2 Servos (Reely Mini-Sevo AS0008 Analog-Servo Getriebe-Material: Kunststoff Stecksystem: JR)
  • 4 Fotowiderstände (LDR 07)
  • 4 10k Ohm Widerstände
  • 1 Arduino Uno R3
  • 1 Batteriehaltung
  • 4 Schrumpfschläuche
  • 2 Leiterkarten
  • Lötzinn
  • Diverse Kabel/Litzen


Konstruktion:

  • Holz
  • Nägel/Schrauben


Zusatz der Schaltung

  • 1 Taster
  • 1 LED
  • 1 10k Ohm Widerstande
  • 1 390 Ohm Widerstande (220 Ohm reicht aus)
  • 15 Stecker für den Arduino

Projekt

Projektplan

I. Propjektplanung:

I.I. Recherche alternativer Lösungswege

I.II. Auswahl und Anpassung für Lösungsweg

I.III. Auswahl und Bestellung der Bauteile


II. Konzepterstellung:

II.I. Erstellung Konzept für Aufbau/Konstruktion

II.II. Test Funktionsweise Fotowiderstände via Arduino

II.III. Test Funktionsweise Servos via Arduino

II.IV. Entwurf erster Schaltung auf einem Steckbrett

II.V. Test der Schaltung mittels Arduinoprogrammierung


III. Erstellung Schaltung

III.I. Bau einer Prototyp Platine

III.II. Test der Platine

III.III. Programmierung in Simulink

III.IV. Test des Simulinkprogramms

III.V. Optimierung der Schaltung

III.VI. Erstellung und Test der finalen Platine


IV. Konstruktion

IV.I. Anpassung des Konstruktionskonzepts

VI.II. Beschaffung Konstruktionsmaterialien

VI.III. Fertigung der Konstruktion


V. Test fertige Konstruktion

V.I. Test via Taschenlampe

V.II. Falls nötig Anpassung Code oder Konstruktion


Projektziel

Das Ziel des Projektes war es, eine Sonnenlichtführung zu erstellen, welche mittels eines Arduinos gesteuert wird. Diese soll z.B. eine Solarzelle immer zur hellst möglichen Stelle hin ausrichten. Die Verwendung bestimmter Bauteile wurde nicht vorgegebn, sodass die Realisierung auf unterschiedliche Herangehensweisen erfolgen konnte. Die einzige Einschränkung bei diesem Projekt, stellte das begrenzte Budget in Höhe von 20€ dar.


Projektdurchführung

Zu I. Propjektplanung:

Im ersten Schritt wurde recherchiert, welche Lösungswege für eine Sonnen Nachführung oder ähnlich Anwendungen existieren. Diese Recherche zeigte eine Vielzahl von Lösungsansäten und Lösungswegen auf. Im Kern gibt es für Steuerung bzw. die Bewegung des Nachführ-Gertäts zwei Möglichkeiten:

1. Einachsig mit schräg Positionierter Solarzelle bzw. Halterung: Ermöglicht eine 180° horizontale Drehung.

2. Zweiachsig mit Beweglicher Solarzelle bzw. Halterung: Ermöglicht eine 180° Drehung in horizontaler und vertikaler Ebene und ist daher genauer.


Für die Messung der Lichtintensität gibt es ebenfalls zwei Ansätze:

1. Ein System aus mehreren Fotowiderständen: Bei diesen Ändert sich der Widerstand je nach einfallender Lichtintensität. Diese Variante ist günstig, erfordert aber einen Spannungsteiler zum Abgreifen der Spannung, daher etwas aufwendiger.

2. Ein System aus mehreren Photodetektoren: Diese Messen genauer als die Fotowiderstände und lassen sich zu Teil direkt an den Arduino anschließen. Sind aber auch deutlich teurer.

In diesem Projekt fiel die Wahl auf die zweiachsige Lösung um eine genau Nachführung zu realisieren und aus Kostengründen auf die Fotowiderstände. Je nach Positionierung und Programmierung ist es bei diesen möglich, mittels eines Vergleichs eine ausreichende Güte für die geforderte Funktion zu erhalten (Dazu später mehr). Im zweiten Schritt wurde die Idee des zweiachsigen Systems in ein konkretes Konzept umgesetzt. Auf Grund der Rotation gilt zu beachten, dass diese die Kabel nicht verdreht oder gar herausreißt. Aus diesem Grund wurden folgende Lösungskonzepte erarbeitet.

Zu II. Konzepterstellung:

1. Konzept der Konstruktion
2. Konzept der Konstruktion

Das erste Konzept (Abbildung links) ermöglicht, das die Kabel vom Arduino zun den beiden Servos verlegt werden können, ohne dass diese sich im Betrieb bewegen können. Problematisch ist dabei zum einen, dass die Kabel von den Fotowiderständen zum Arduino sich weiterhin verdrehen können. Zum Anderen besteht die Möglichkeit, dass das Gewicht der Konstruktion zu schwer für den unteren Servo ist. Je nach Leistung des Servos und Gewicht der Konstruktion, ist diese Konstruktion nicht verwendbar.

Das zweite Konzept (Abbildung recht)ist simper aufgebaut, als das erste Konzept. Der Großteil des Gewichts wird hier in den Sockel der Konstruktion verlagert, sodass der untere Servo "nur" das Gewicht des zweiten Servos, die Solarzelle, die Fotowiderstände und Halterungen tragen muss. Dies ermöglicht auch leistungsschwächere Servos zu verwenden. Problematisch ist hier, dass sich die Kabel ggf. verdrehen oder abreißen können.

Allgemein ist es möglich die Problematik der sich verdehenden Kabel mittels eines Rohres zu lösen, durch welches die Kabel geführt werden. Dadurch drehen sich die Achsen der Konstuktion, nicht aber die Kabel.

Nachdem die ersten Konstruktionskonzepte fertiggestellt wurden begann die arbeit an den Schlatungskonzepten. Dazu wurden zunächst die Fotowiderstände in ihrer Funktionsweise getestet. Diese geben bei höherer Lichtintensität einen größere Spannung an den Analogeingang des Arduinos ab. Folglich reicht es für die Schaltung aus, wenn der Arduino pro Achse die Spannungen von zwei Fotowiderstände (jeweils entgegengesetz auf der Achse) vergleicht. Die Servos lassen sich per Arduino eine Position vorgeben, auf welchen sie sich positionieren. Die Anzahl der möglichen Positionen ist hierbei begrenzt. Für die Ausrichtung der Nachführung reicht es aus, wenn auf der horizontalen und der vertikalen Ache jeweils 180° abgedeckt werden.

Der Arduino kann über eine IF-Abfrage die aktuellen Spannungswerte der Fotowiderstände vergleichen. Sobald eine Spannung höher ist, wird die Position des Servos um 1° in die entsprechende Richtung verändert. Wenn beide Spannungen gleich sind pausiert ändert der Arduino nichts. Da 180° für den Verlauf der Sonne ausreichen und um das Verdrehen der Kabel zu verhindern, wird die IF-Abfrage um eine um eine weitere IF-Abfrage erweitert, welche den minimalen Winkel auf 0° setzt und den maximalen Winkel auf 180°. Der Code der IF-Abfrage sieht an der Stelle wiefolgt aus:

  if (SensorWert1>SensorWert2) // Drehen nach Rechts, wenn Rechts heller ist
 { 
   if (Pos1 <= 179) // Von Position 0 bis 179
   {
   Pos1 = Pos1 + 1; // 1° Schitte
   Servo1.write(Pos1);
   delay(10);
   }
   else // Maximal Position 180
   {
     Pos1 = 180;
     Servo1.write(Pos1);
     delay(10);
   }
 }
 else if (SensorWert1<SensorWert2) // Drehen nach Links, wenn Links heller ist
 {
   if (Pos1 >= 1) // Von Position 180 bis 1
   {
   Pos1 = Pos1 - 1; // 1° Schitte
   Servo1.write(Pos1);
   delay(10);
   }
   else // Minimal auf Position 0
   {
     Pos1 = 0;
     Servo1.write(Pos1);
     delay(10);
   }
 }
 else
 {
   delay(10);
 }

Die Schaltung auf dem Steckbrett war relativ einfach. So können die Servos direkt an den Arduino angeschlossen werden. Die Fotowiderstände müssen über einen Spannungsteiler auf einen Analgoeingang des Arduinos gelegt werden. Als Widerstände für den Spannungsteiler wurden in diesem Projekt, aus Mangel an Budget bzw. vorhandenen Bauteilen, 390 Ohm Widerstände verwendet. Ausreichend wären an der Stelle 220 Ohm Widerstände gewesen.


Zu III. Erstellung Schaltung:

Prototyp Leiterplatte
Fritzing Skizze
Fritzing Schaltplan

Nach erfolgreichen Test auf dem Steckbrett wurde eine erste Prototyp Leiterplatte entwofen und bestückt. Diese ermöglichte es weitere Test schneller zu starten, da die Fotowiderstände über Stecker schnell an- und abmontiert werden konnten, ohne dass die restliche Schaltung abgebaut werden musste. Diese variante bietet sich an, wenn an verschiedenen Orten gearbeitet wird und nicht ausreichend Bauteile für zwei Sonnen-nachführungs-Geräte vorhanden sind. In der Abbildung rechts ist dieser Prototyp zu sehen.

Die "Sensor"-Spannungen der Schaltung werden über einen Spannungsteiler abgegriffen. Dazu werden die Fotowiderstände parallel zu den 10k Ohm Widerständen geschaltet. Der Arduino greift die Spannung zwischen Widerstand und Fotowiderstand ab (siehe Abbildung: Fritzing Skizze der Schaltung).


Simulink

Simulink Programm (äußeres)
Simulink Programm (inneres)

Nach Fertigstellung und erfolgreichem Test der Prototyp Leiterplatte wurde die Schaltung in Simulink nachgebaut und simuliert. Im Folgenden ist das Simulink-Programm abgebildet und erklärt. Der Einfachheit halber ist nur das Programm als Ganzen (obere Abbildung) und als inneres Programm der Servo Funktion (untere Abbildung) abgebildet.

Inneres Programm:

1. Der erste Part des Simulink-Programms dient zum Einlesen der Spannungswerde der beiden Fotowiderstände.

2. Der zweite Part begrenzt die analogen Werte. Eigentlich sind Werte von 0 – 1023 möglich. Je nach Einstellung erzielt die Sonnen-Nachführung unterschiedliche Empfindlichkeiten.

3. Im dritten Part werden die eingehenden Spannungen der Fotowiderstände miteinander Verglichen, um zu erkennen, ob die Winkel-Position des Servos reduziert oder erhöht werden muss. Dies dient dazu, dass der Servo sich steht’s in die hellere Richtung bewegt.

4. Im vierten Part wird abgesichert, dass die Winkel-Position des Servos keine plötzlichen Sprünge macht. So ist es nicht möglich, dass der Servo z.B. einen Sprung von 0° auf 180° macht.

5. Im letzten Part erfolgt die Weitergabe des geforderten Winkels an den Servo

Schaltung mit Zusatzfunktionen


Implementierte Zusatzfunktionen in Simulink:

Die Zusatzfunktionen sind zusammen mit den Hauptfuktionen im Oberprogramm implementiert (siehe Baustein "Taster" und "LED").


Zusatzfunktionen

1. Die erste Zusatzfunktion ist eine Status-LED. Diese leuchtet durchgägngig, wenn die optimale Position erreicht wurde. Während sich die Servos bewegen blinkt die LED. Sollten sich z.B. die Servos nicht bewegen und trotzdem die LED blinken, so ist ein Fehler bei den Servos aufgetreten.

Als Vorwiderstand wurde in diesem Projekt ein 10k Ohm Widerstand verwendet, da diese vorhanden waren. Ein 220 Ohm Widerstand hätte an der Stelle gereicht.

2. Die zweiter Zusatzfunktion besteht aus einem Taster, welcher die Positionen der Servos auf den Ausgangszustand zurücksetzt (90° horizonal und 90° vertikal). Dies ermöglicht im Störfall die Nachführung wieder in eine Position zu setzten, von wo aus die Kalibierung neu starten kann. Implementiert wurde dies dadurch, dass beim Einlesen des Tastersignals die Servopositionen jeweils auf 90° gesetzt werden. Solange der Taster gedrückt wird ist die Status LED aus.

Verbesserte Konstruktion


Zu IV. Konstruktion:

Nach Abschluss der Implementierung der Zusatzfunktionen wurde die Konsturktion dahingehend angepasst, dass sich die Achsen der beiden Servos schneiden. Dies hat zufolge, dass die Halterung der Solarzelle mittig ausgerichtet ist (siehe Abbildung links).


Zu V. Test fertige Konstruktion:

Nach Abschluss der Konstruktion erfolgten diverse Tests. Bei diesen Tests stellte sich heraus, dass die ursprünglich bestellten Servos nicht ausreichen. Im Rahmen der Tests stellten fielen beide Servos aus, sodass diese kurzfrisit ersetzt werden mussten. Problematisch war, dass die Konstruktion nicht kompatibel mit den neuen Servos ist, weswegen entweder die alten Servos ersetzt oder die Konstruktion an die neuen Servos angepasst werden muss. Bei einer Anpassung müssten mehrere Teile der Konstruktion ersetzt werden.

Projektfortführung

Mögliche Konstruktion

Das Projekt wurde erfolgreich abgeschlossen und hat darüber hinaus weitere Zusatzfunktionen. Diese können weiter ausgebaut werden. Mögliche Verbesserungen:

1 Die wichtigste Verbesserung besteht darin die verwendeten Servos durch Leistungsstärkere Sevos auszutauschen und die Konstruktion dahingehend anzupassen, dass diese mit den neuen Servos kompatibel ist.

2. Integration einer Solarzelle. Dabei kann versucht werden, zunächst die Steuerung der Servos über die Solarzelle zu betreiben. Weiterhin könnte das gesamte Geräte samt Arduino über die Solarzelle mit Strom versorgt werden. Ein zusätzliche Akku würde dabei die Einstellung des Ausgangszustandes ermöglichen.

3. Eine Verbesserung der Konstuktion: Die aktuelle Konstruktion ist funktionsorientiert und kann durch eine anwendungsorientierte Konstruktion zu ersetzen. In diesem Zug kann die Kabelführung durch Rohre Anwendung finden.

4. Das aktuelle Sonnen_Nachführ-Gerät ist ein Model und nicht wettertauglich. Es bietet sich an diese Model dahingehend umzubauen, dass es für den Einsatz im Freien geignet ist.

5 Implementierung weiterer Diagnose Funktionen. Ein Beispiel dafür, wäre ein Display, auf welchem ein konkreter Fehler angezeigt wird.

6. Eine manuelle Ausrichtung der Solarzelle. Dabei könnten die Servos direkt über eine Steuerungsmodul oder via Schnittstelle über Simulink angesprochen werden.

Ergebnis

Das Ziel des Projektes wurde Erreicht. Das Sonnen-Nachführ-Gerät vergleicht die Helligkeiten jeweils auf der horizontalen und der vertikalen Achse miteinander und richtet sich stets zu hellsten Stelle aus. Weiterhin wunden Zusatzfunktionen implementiert welche ein Zurücksetzen des Gerätes auf den Ausgangszustand ermöglichen, um bei unerwarteten Fehlern eine schnelle Lösung zu bieten. Des Weiteren wurde eine Status LED implementiert, welche zur Kontrolle der Servos dient und einen möglichen Ausfall ebendieser signalisieren können, was eine Diagnose bei auftretenden Fehlern erleichtert.


Zusammenfassung

Aus technischer Sicht erforderte das Projekt eine gewisse Grundkenntnis in der Programmierung eines Arduinos sowie im Umgang mit Simulink, was zum Teil einige Schwierigkeiten bereitete. Für den Bau der Schaltung reichte eine grundlegende Kenntnis im Bereich der Berechnung von Schaltungen aus. Weiterhin war es nötig, dass die Leiterplatte gelötet wurde.

Im Ganzen war das Projekt erfolgreich. Problematisch ist jedoch, dass die Servos während der Tests ausgefallen sind. Angesicht des Projekt-Budgets war es nicht möglich bessere Servos zu kaufen, ohnen einen Einfluss auf die anderen Komponnennten zu nehmen. Daraus ergibt sich für die Fortführung des Projektes, dass dabei bessere Servos verwendet werden müssen. Jenachdem welche weiteren Funktionen implementiert werden sollen, kann auch dort das Budget kanpp werden. Eine Lösung wäre eine Erhöhung des Projekt-Bugets.

Literatur

Projektunterlagen

Alle Projektunterlagen befinden sich in dieser ZIP Datei:

Projekt 18 Dateien

Inhalt:

  • Fritzing-Skizze
  • Arduino-Code
  • Simulink-Datei


YouTube Video



→ zurück zum Hauptartikel: Angewandte Elektrotechnik (WS 17/18)