Projekt 18b: Sonnen-Nachführung: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(11 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 69: Zeile 69:
|}
|}


 
<gallery mode="nolines">
[[Datei:Projektplan final.png|px400|thumb| Projektplan]]
Datei:Projektplan final.png| Projektplan
Datei:Schaltplan.jpg|px400| Schaltplan
Datei:Schaltplan.jpg| Schaltplan
</gallery>


=== Projektdurchführung ===
=== Projektdurchführung ===
Zeile 82: Zeile 83:
Somit wird bei steigender Lichtintensität der ohmsche Widerstand gesenkt.  
Somit wird bei steigender Lichtintensität der ohmsche Widerstand gesenkt.  
Die Fotowiderstände verringern bei steigender Lichtintensität ihren inneren Widerstand, so dass ein höherer Strom gemessen werden kann an den Analogeingängen. Somit kann das Arduino mit jeweils zwei Widerständen für oben und unten und links und rechts und deren Spannungsunterschied, per passenden Softwarebefehlen und if-Anweisungen diese Werte vergleichen und Steuersignale an die Servos geben zur Nachverfolgung der Lichtquelle.
Die Fotowiderstände verringern bei steigender Lichtintensität ihren inneren Widerstand, so dass ein höherer Strom gemessen werden kann an den Analogeingängen. Somit kann das Arduino mit jeweils zwei Widerständen für oben und unten und links und rechts und deren Spannungsunterschied, per passenden Softwarebefehlen und if-Anweisungen diese Werte vergleichen und Steuersignale an die Servos geben zur Nachverfolgung der Lichtquelle.
<gallery mode="nolines">
    Datei:Photo resistor.jpg| Eingesetzter Fotoresistor
    Datei:Widerstand fotosensor.png| Lichtintensität und Spannungsverlauf (idealisiert)
Datei:Photorescode.png| Beispielcode Arduino und Fotosensor
</gallery>


'''Theoretische Grundlagen und Praxis der Servos'''
'''Theoretische Grundlagen und Praxis der Servos'''
Zeile 94: Zeile 101:
Innerhalb der Servos befindet sich eine Steuerelektronik, die per H-Brücke Soll und Ist-Wert der Spannung vergleicht und regelt, bis eine Differenz von 0 erreicht ist.
Innerhalb der Servos befindet sich eine Steuerelektronik, die per H-Brücke Soll und Ist-Wert der Spannung vergleicht und regelt, bis eine Differenz von 0 erreicht ist.


<gallery mode="nolines">
Datei:Servo end.jpg| Aufbau eines Arduino Servomotors
Datei:Servoregelkreis.png| Regelkreis der Servomotoren
Datei:ServoMotor2.jpg| Funktionsweise PWM am Servo
Datei:2019-01-18 00 12 58-How Servo Motors Work & How To Control Servos using Arduino - HowToMechatronics .png| Beispielcode Arduino und Servo
</gallery>
'''Gehäuse und 3D-Druck'''
'''Gehäuse und 3D-Druck'''


Zeile 99: Zeile 112:
Auch gab es Probleme mit den Toleranzen des Gehäuses, so dass doch ein DIY Ansatz für das Gehäuse gewählt wurde.  
Auch gab es Probleme mit den Toleranzen des Gehäuses, so dass doch ein DIY Ansatz für das Gehäuse gewählt wurde.  
So war es vor allen Dingen leichter und unproblematischer die Verbindung Servo zu Lagerung zu realisieren, welche sich bei den im 3D Drucker ausgedruckten Gehäuseteilen als immer wieder unzuverlässig erwiesen.
So war es vor allen Dingen leichter und unproblematischer die Verbindung Servo zu Lagerung zu realisieren, welche sich bei den im 3D Drucker ausgedruckten Gehäuseteilen als immer wieder unzuverlässig erwiesen.
<gallery mode="nolines">
Datei:3d fuss.jpg| 3D Modell Ausleger
Datei:3D plattform.jpg| 3D Modell Plattform
Datei:3D hand2.jpg| 3D Modell Stativ
Datei:3D alle 3.jpeg| 3D Druck der 3 Teile
Datei:GK2.jpeg| Alternatives Gehäuse aus Holz
</gallery>


''' Matlab und Simulink'''
''' Matlab und Simulink'''


Prinzipiell war es möglich das Projekt mit Simulink zu verwirklichen. Leider führte die Benutzung von Matlab und Arduino immer wieder zu Abstürzen und Fehlern, egal wie die Testkonfiguration aussah, so dass wir wieder zur Arduino IDE wechselten, welche eine problemlose Nutzung und Funktion ermöglichte.
Prinzipiell war es möglich das Projekt mit Simulink zu verwirklichen. Leider führte die Benutzung von Matlab und Arduino immer wieder zu Abstürzen und Fehlern, egal wie die Testkonfiguration aussah, so dass wir wieder zur Arduino IDE wechselten, welche eine problemlose Nutzung und Funktion ermöglichte.
<gallery mode="nolines">
Datei:Simulinksun.png| Arduino und Simulink
</gallery>


== Ergebnis ==
== Ergebnis ==
Zeile 124: Zeile 148:


== Projektunterlagen ==
== Projektunterlagen ==
* https://svn.hshl.de/svn/Elektrotechnik_Fachpraktikum/trunk/Projekte/18b_Sonnennachfuehrung/Unterlagen%20Projekt%2018b/


== YouTube Video ==
== YouTube Video ==

Aktuelle Version vom 18. Januar 2019, 02:52 Uhr

Autoren: Agic, Barranco
Betreuer: Daniel Klein


→ zurück zur Übersicht: WS 18/19: Fachpraktikum Elektrotechnik (MTR)

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
  • Darstellung der regelungstechnischen Theorie
  • Beschaffung der Bauteile (Miniaturisierung z.B. Arduino Nano)
  • Systemidentifikation (Übertragungsfunktion der Regelstrecke bestimmen)
  • Realisierung der Schaltung durch Fertigung eines prototypischen Arduino-Uno-Shields
  • Vergleichen und bewerten Sie verschiedene Regleransätze (P, PI, PID und andere).
  • Modellbasierte Programmierung der Hardware via Simulink
  • Machen Sie ein tolles Videos, welches die Funktion visualisiert.
  • Test und wiss. Dokumentation
  • Live Vorführung während der Abschlusspräsentation

Hinweis: Grenzen Sie sich zu Vorgängerlösungen ab.

Einleitung

Im Rahmen des GET-Fachpraktikums im 5.Semester an der HSHL Lippstadt, betreut durch Prof. Schneider und Daniel Klein wurde das Projekt der Plannung und des Baus einer "Sonnennachführung" vergeben. Dabei soll durch die Nutzung eines Arduino UNO Boards und entsprechender Aktoren, Sensoren und Software eine Plattform geschaffen werden, die aktiv einer Lichtquelle folgen kann. Dazu ist die Konstruktion einer Plattform notwendig, die entsprechend horizontale als auch vertikale Freiheitsgerade besitzt. Vorbild in der Realität sind hierbei reale "Suntracker" Systeme, die durch aktive Ausrichtung der Panels zur Sonne (bzw. dem günstigsten Punkt) eine beträchtliche Erhöhung der Energieausbeute erreichen können. Für die teilnehmenden Studenten ergibt sich so die Möglichkeit in den Kerngebieten der Mechatronik wie Mechanik, Elektronik und Informatik, spielerisch praktische Fähigkeiten zu erlernen und anzuwenden.

Projekt

Projektplan

Verwendete Bauteile

  • 2 Servomotoren (Reely Mini-Servo Stecksystem: JR)
  • 4 Fotowiderstände (LDR 07)
  • 4 10k Ohm Widerstände
  • 1 Arduinoboard Uno R3
  • 1 Steckplatine
  • 3D Drucker zum drucken der Gehäusebauteile

Verwendete Software

  • MATLAB/Simulink 2018b
  • Arduino Software IDE 1.8.1
  • Fritzing


Lasten und Pflichtenheft

Lasten Pflichten
1. Entwurf passender Gehäuse für Servomotoren und zur Unterbringung der Fotosensoren. Einarbeitung in die dafür notwendigen Aktoren und Sensoren und deren Schaltung. Betrachtung bereits existierender Lösungen und Anpassung dieser an eigene Pläne.
2. Erstellung des Schaltplans mit Fritzing und erste Tests in real der Servos und Sensoren mit Hilfe von Breadboard und MatlabSimulink Konfigurationsaufbau und Analyse des Aufbaus per Simulinkschaltung. Organisation der benötigten Simulinkbibliotheken für das Arduino.
3. Entwurf und Bau eines zweiten, alternativen Gehäusetyps als Ersatz zum 3D-Druck Gehäuse Redundanter Ansatz um verschiedene Konfigurationen von Hard- und Software zu testen.
4. Einarbeitung und Erstellung der benötigten Softwaregrundlagen mit Hilfe der Arduino IDE Software Test verschiedener Gehäusekonfigurationen mit der genuinen Arduino IDE, um auf die angepassten Bibliotheken und Befehlssätze dieser zugreifen zu können, was einen leichteren und direkteren Zugang zum System ermöglicht und sich als zuverlässiger erweist.
5. Fertigstellung und Test des ersten voll lauffähigen Prototyps in Hard- und Software. Wichtiger Meilenstein erreicht. Grundanforderung an Projekt erfüllt so dass sich auf Feinjustierung des Systems konzentriert werden kann.
6. Erstellung der Dokumentation und des Wikiartikels des Projekts Dokumention des Projekts nach HSHL Standards zur Transparenz des Projekts für dritte.
7. Vorbereitung auf die Präsentation im Rahmen der Abschlussveranstaltung Erfüllung aller geforderten Standards im Rahmen des Praktikums.

Projektdurchführung

Theoretische Grundlagen und Praxis der Fotosensoren

Die grundlegende Theorie hinter den Fotosensoren ist relativ einfach. Auf dem Auflegerarm werden die 4 Fotowiderstände jeweils zu zwei Paaren oben-unten, links-rechts montiert und an die A0 bis A3 Analogeingänge angeschlossen. Zur Spannungsversorgung dient der 5V Ausgang des Arduino. Diese werden jeweils über 10K Ohm-Widerstände an die Fotosensoren angelegt. Unsere Fotowiderstände gehören zu den Halbleiterbauelementen. Die Funktionsweise beruht dabei auf den inneren Lichtelektrischen Effekt. Treffen die Lichtquanten auf die Halbleiterschicht, werden Elektronen aus den Atomhüllen der Halbleiteratome "herausgeschlagen" und stehen somit als frei bewegliche Ladungsträger zur weiteren Möglichkeit der Ladungsweitergabe zur Verfügung. Somit wird bei steigender Lichtintensität der ohmsche Widerstand gesenkt. Die Fotowiderstände verringern bei steigender Lichtintensität ihren inneren Widerstand, so dass ein höherer Strom gemessen werden kann an den Analogeingängen. Somit kann das Arduino mit jeweils zwei Widerständen für oben und unten und links und rechts und deren Spannungsunterschied, per passenden Softwarebefehlen und if-Anweisungen diese Werte vergleichen und Steuersignale an die Servos geben zur Nachverfolgung der Lichtquelle.

Theoretische Grundlagen und Praxis der Servos

Die Servos werden ebenfalls über die 5V versorgung des Arduino mit Spannung versorgt. Die Steuerungssignale erfolgen hierbei über Pin 9 und 10, die die Ausgabe eines PWM Signals ermöglichen. Hierbei ist auch auf die Verkabelung der Servos zu achten, da in unserem Fall die Ansteuerung nur über das Signalkabel des Servos erfolgen kann. Dabei sorgt ein Servo für die horizontale Drehung im Bereich von 180° bis 45°. Hierbei haben wir die horizontale Bewegungsfreiheit der Servos per Arduino Code künstlich eingeschränkt, da die volle Bewegungsfreiheit von 180° zu Problemen führte, ausgelöst durch zu langen Input der Servos. Der zweite Servo sorgt für die vertikale Rotation, wobei hierbei die Rotation nach unten auch eingeschränkt wurde, da für gewöhnlich keine Sonne von unten auf die Sensoren scheint. Die Abbildungen aus der Bildergalerie verdeutlichen dies nochmal. Für gewöhnlich werden in der Industrie bei Servos als Positions Feedbackgeber hochpräzisionsencoder verwendet. Im Rahmen von Arduino und den Servos, handelt es sich um ein simples Potentiometer, dessen Funktion leicht zu erklären ist. Dabei wird die aktuelle Position, die vom Ponti erfasst und an die Arduino Steuerung weiter gegeben wird, verglichen mit der gewünschten Soll-Position. Per einfachen if-Schleifen und Vergleich der Werte, haben wir die Sonnennachführung so programmiert, dass solange ein Wert der Fotosensoren (horizontal-vertikal) grösser oder kleiner ist, ein Steuerbefehl an die Servos erfolgt, zur Bewegung in die Richtung. Hierbei habne wir auch eine gewisse Toleranz eingebaut, da die Fotosensoren bauartbedingt keine allzu präzise Messung ermöglichen. Innerhalb der Servos befindet sich eine Steuerelektronik, die per H-Brücke Soll und Ist-Wert der Spannung vergleicht und regelt, bis eine Differenz von 0 erreicht ist.

Gehäuse und 3D-Druck

In unserer ersten Konstruktion des Gehäuses zeigte sich leider dass die 3D Druck Modelle nicht optimal geeignet waren für den Einsatz, da die Servomotoren ständig aus ihren Lagerungen sprangen und so ein zuverlässiger Betrieb nicht möglich war. Auch gab es Probleme mit den Toleranzen des Gehäuses, so dass doch ein DIY Ansatz für das Gehäuse gewählt wurde. So war es vor allen Dingen leichter und unproblematischer die Verbindung Servo zu Lagerung zu realisieren, welche sich bei den im 3D Drucker ausgedruckten Gehäuseteilen als immer wieder unzuverlässig erwiesen.

Matlab und Simulink

Prinzipiell war es möglich das Projekt mit Simulink zu verwirklichen. Leider führte die Benutzung von Matlab und Arduino immer wieder zu Abstürzen und Fehlern, egal wie die Testkonfiguration aussah, so dass wir wieder zur Arduino IDE wechselten, welche eine problemlose Nutzung und Funktion ermöglichte.

Ergebnis

Im Ergbenis waren wir mit den Resultaten insgesamt zufrieden. Die Schaltung benötigte insgesamt Sorgfalt im Zusammenbau, alle Leitungen und WIderstände mussten durchgemessen werden, um die Senorwerte nicht zu verfälschen. Auch mussten verschiedene Konfigurationen aus Gehäuse/Software/Schaltungen/Servos/Fotoresistoren getestet werden, da sich viele Konfigurationen als problematisch erwiesen. Gerade der Einsatz der Fotosresistoren zeigte, dass hier auf Qualität geachtet werden muss, da die billigen Bauteile leicht zu Fehlmessungen führen, welche das ganze Projekt gefährden. So mussten wir alle benutzen Fotosensoren ausmessen und die zuverlässigsten wurden von uns ausgesucht.

Nach einiger Anpassung und Konfiguration der Software waren und sind wir aber mit dem Ergebnis der "Sonnen-Nachführung" zufrieden.

Zusammenfassung

Lessons Learned

  • Teamarbeit (international)
  • Projektplanung und Umsetzung dieser im Detail wie Materialbeschaffung, Recherche etc.
  • Konstruktion von Gehäuseteilen per CAD und 3D-Druck dieser Teile
  • Konstruktion und Verschaltung von Aktoren und Sensoren samt Schaltplan
  • Aneignung von regeltechnischen Grundlagen bezüglich Aktoren im Regelkreis
  • Progarmmierung von Arduino mit Matlab Arduino IDE und Anwendung dessen im mechatronischen System
  • Präsentation und Dokumentation nicht nur der Ergebnise sondern auch der Zwischenschritte (nach aussen als auch im Team)

Projektunterlagen

YouTube Video

https://www.youtube.com/watch?v=gDTOf11C4Cs

Weblinks

Literatur


→ zurück zur Übersicht: WS 18/19: Fachpraktikum Elektrotechnik (MTR)