Entwicklung eines geregelten Wasserstandssystems für die Hochschullehre: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Denim-mike.hilz@stud.hshl.de (Diskussion | Beiträge)
Denim-mike.hilz@stud.hshl.de (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 264: Zeile 264:
=== SVN ===
=== SVN ===
=== Poster ===
=== Poster ===
== Literatur ==


<!-- Fügen Sie diesen Footer hinzu.  -->
<!-- Fügen Sie diesen Footer hinzu.  -->
----
----
→ zurück zum Profil: [https://wiki.hshl.de/wiki/index.php/Benutzer:Denim-Mike_Hilz Denim Mike Hilz]
→ zurück zum Profil: [https://wiki.hshl.de/wiki/index.php/Benutzer:Denim-Mike_Hilz Denim Mike Hilz]

Version vom 18. Juli 2025, 14:57 Uhr

Autor: Denim Hilz
Erstprüfer: Prof. Göbel
Zweitprüfer: Prof. Tikhomirov
Wissenschaftliche Unterstützung: Marc Ebmeyer

work in progress

Einleitung

Dieser Wiki-Artikel stellt die Masterarbeit

Modellierung, Simulation und Echtzeit-Implementierung eines geregelten Wasserstandssystems mit MATLAB/Simulink und Mikrocontrollertechnik
für praxisorientierte Hochschuldemonstrationen im Rahmen der regelungstechnischen Lehre

vor. Dabei werden Planung, Entwicklung und Umsetzung aufgezeigt und die erzielten Ergebnisse dokumentiert.

Die Regelungstechnik ist eine zentrale Kernkompetenz für angehende Ingenieurinnen und Ingenieure, da sie die Steuerung und Regelung technischer Prozesse vermittelt. Um die oft abstrakte Theorie greifbarer zu machen, eignet sich der Einsatz praxisnaher Werkzeuge wie MATLAB/Simulink und Mikrocontrollertechnik.

Ziel der Masterarbeit war die Entwicklung eines didaktisch einsetzbaren Wasserstandssystems für die regelungstechnische Lehre an der Hochschule Hamm-Lippstadt (HSHL), um Theorie und Praxis miteinander zu verknüpfen.

Die entwickelten Regelungskonzepte basieren auf einem grundlegenden Schema der Füllstandsregelung (Level Control, LC), wie es in Abbildung ?? dargestellt ist. Ziel der Regelung ist es, den Wasserstand eines Behälters auf eine vorgegebene Sollhöhe 𝑤 (z. B. 1 m) zu bringen und dort zu halten. Die Stellgröße 𝑢 beeinflusst den Zufluss, während ein Sensor die aktuelle Ist-Höhe 𝑦 misst. Externe Einflüsse wie eine Wasserentnahme wirken als Störung 𝑑 auf das System und müssen durch die Regelung ausgeglichen werden.

Solche Regelungssysteme sind nicht nur für Lehrzwecke relevant, sondern auch in der Industrie weit verbreitet – etwa zur Vermeidung von Überlauf, Trockenlauf oder unerwünschten Füllstandsschwankungen. Die Planung und Entwicklung des Systems orientiert sich an diesem Grundschema. Quelle?? Keine Ahnung

Das Masterarbeit umfasst:

  • die Modellierung des Tanksystems,
  • die Simulation des physikalischen Verhaltens und der Auslegung des Reglers mit MATLAB/Simulink,
  • sowie die Echtzeit-Implementierung des Reglers auf einem Mikrocontroller.

Durch die Integration von MATLAB/Simulink und Mikrocontrollertechnik wird eine enge Verbindung zu den im Studium vermittelten Lehrinhalten geschaffen.

Theoretische Grundlagen

Systementwurf und Umsetzung

Basierend auf den dargelegten theoretischen Grundlagen wird in diesem Kapitel die Modellierung, Simulation und Umsetzung des geregelten Wasserstandssystems beschrieben.

Regelkreis

Zur Veranschaulichung des grundsätzlichen Funktionsprinzips dient der schematische Aufbau eines geschlossenen Regelkreises. Die Regelung verfolgt das Ziel, den Wasserstand eines Primärtanks auf eine vom Benutzer vorgegebene Sollhöhe 𝒉ₛₒₗₗ einzustellen und auch bei externen Störungen konstant zu halten.


ABBILDUNG REGELKREIS


  • Der Benutzer gibt über ein Potentiometer die gewünschte Sollhöhe 𝒉ₛₒₗₗ vor (Führungsgröße).
  • Die Differenz zur gemessenen Ist-Höhe 𝒉ₘₑₛₛ (Messgröße) ergibt den Regelfehler Δ𝒉, welcher vom Mikrocontroller (Arduino) ausgewertet wird.
  • Ein PI-Regler berechnet auf dieser Basis ein Ausgangssignal, mit dem zwei Pumpen angesteuert werden für den geregelten Zu- und Abfluss.
  • Die Ansteuerung erfolgt über PWM-Signale, die über H-Brücken an die Pumpen weitergegeben werden (Stellgröße 1).
  • Daraus ergibt sich ein resultierender Volumenstrom 𝑽ₛₜₑₗₗ (Stellgröße 2), welcher den Wasserstand im Tank verändert.
  • Eine gezielt einstellbare Störung 𝑽ₛₜₒₑᵣ, die über ein zweites Potentiometer den Abfluss ermöglicht.

Der Wasserstand wird kontinuierlich gemessen und mit dem Sollwert verglichen. Ziel ist es, die Regelgröße 𝒉_ᵢₛₜ trotz Störeinflüssen stabil bei 𝒉ₛₒₗₗ zu halten.

Konzeptskizze

Zur strukturierten Auswahl und Bewertung möglicher Systemkomponenten wurde ein morphologischer Kasten verwendet (siehe Anhang Masterarbeit). Dabei wurden verschiedene Optionen je Systemfunktion gegenübergestellt und anhand von Kriterien wie Kompatibilität, Kosten, Verfügbarkeit und Benutzerfreundlichkeit bewertet.

Ausgewählte Kriterien waren unter anderem:

  • Kompatibilität (Anbindung über Arduino und MATLAB),
  • Verfügbarkeit,
  • Kosten,
  • sowie Anwenderfreundlichkeit (z. B. für Besucher des MINT-Erlebnistag).

Die folgende Abbildung zeigt die daraus resultierende Konzeptskizze.


ABBILDUNG Konzeptskizze


  • Zwei Glaszylinder aus Borosilikatglas für Primärtank und Sekundärtank , verbunden über Silikonschläuche,
  • Pumpe 1: geregelter Zufluss (blau)
  • Pumpe 2: geregelter Abfluss (rot)
  • Pumpe 3: manuelle Störung (orange)
  • Drucksensor zur Wasserstandsmessung,
  • Zwei Drehpotentiometer zur Eingabe von Sollwert und Störung (grün/rot),
  • LCD-Anzeige zur Darstellung von Sollwert, Istwert und Störung,
  • Arduino-Controller mit H-Brücken zur Ansteuerung der Pumpen,
  • Montage auf einem Aluminiumrahmen mit Plexiglas-Gehäuse.

Der Wasserzufluss erfolgt von oben, der Abfluss über den Tankboden. Die Struktur erlaubt eine gute Sichtbarkeit und leichte Zugänglichkeit aller Komponenten, was insbesondere im Hochschulkontext von Vorteil ist.

Aufbauend auf dem Entwurf wurde das System für eine strukturierte Umsetzung in die Komponenten Rahmenkonstruktion, Wassertanksystem, Benutzereingabe_Hoehe, Benutzereingabe_Stoerung, Pumpe_Regelung, Pumpe_Stoerung, Regelung, Sensor und I2C_LCD_20x4 unterteilt.

Simulation

Die Simulation des Wasserstandssystems wurde in MATLAB/Simulink durchgeführt und diente als Grundlage für die Auslegung des Reglers, das Systemverständnis und die Bewertung des dynamischen Verhaltens bei Sollwertänderungen und Störungen.

Anti-Windup

Da die PWM im System auf 255 begrenzt ist und die Regelung einen I-Anteil beinhaltet, wurde eine Anti-Windup-Maßnahme implementiert, um den Integratorausgang in der Simulation auf den zulässigen Bereich von −255 bis +255 zu beschränken. Diese Maßnahme verhindert, dass sich der I-Anteil unkontrolliert aufintegriert.

Zum besseren Verständnis der Windup Problematik wurde eine 120 s lange Simulation ohne und mit Anti-Windup-Maßnahme durchgeführt.

Abbildung ?? vergleicht den kumulierten Regelfehler beider Simulationen und zeigt, dass mit Anti-Windup der Fehler um den Faktor fünf reduziert werden konnte.


ABBILDUNG Simulation - Auswirkung von Anti-Windup auf den Regelfehler

Auswahl geeigneter Reglerparameter

Für die finale Reglerauslegung wurden mehrere Kombinationen von Kₚ und Kᵢ mit aktiviertem Anti-Windup getestet.

ABBILDUNG Simulation - Reglerauslegung

Der Vergleich der Simulationen zeigt folgendes Ergebnis:

  • Kₚ = 100, Kᵢ = 100: langsame Regelung, starkes Überschwingen, unzureichende Störkompensation
  • Kₚ = 10000, Kᵢ = 10000: schnelle Regelung, aber sehr starkes Nachschwingen
  • Kₚ = 10000, Kᵢ = 10000: schnelle Regelung, aber Nachschwingen
  • Kₚ = 10000, Kᵢ = 5000: bestes Führungs- und Störverhalten

Trotz eines leicht höheren absoluten Regelfehlers, zeigt die Kombination Kₚ = 10000, Kᵢ = 5000 ein geringeres Schwingen und bessere Stabilität. Da reale Einflüssen (Pumpen- und Sensordynamik) weitere Dynamik hinzufügen, wurden die Parameter Kₚ = 10000, Kᵢ = 5000 für die Echtzeitumsetzung gewählt.

Zusammenfassung

Die durchgeführten Simulationen zeigten deutlich:

  • Der Anti-Windup-Mechanismus ist essenziell zur Erfüllung der Systemanforderungen.
  • Die finale Auswahl von Kₚ = 10000 und Kᵢ = 5000 erfüllt die Anforderungen an Geschwindigkeit, Genauigkeit und Störunterdrückung.
  • Die Modellierung ermöglichte eine fundierte Entscheidung, bevor die Implementierung auf Hardware erfolgte.

Systemumsetzung

Das System wurde in einzelne Komponenten unterteilt, um die Umsetzung sowohl hardware- als auch softwareseitig strukturiert durchzuführen. In diesem Kapitel werden die wichtigsten Softwarefunktionen für jede Komponente vorgestellt.

Wassertanksystem

Die Umsetzung des Wassertanksystems ist ausschließlich hardwareseitig erfolgt. Die wichtiges Punkte sind:

  • Der Wasserstand im Primärtank wird kontinuierlich überwacht und geregelt.
  • Die maximale Füllmenge der Glaszylinder beträgt 1,6 l.
  • Die maximale Füllhöhe in einem der Tanks liegt bei maximal ca. 0,35 m, was ein leichtes Überschwingen über die maximale Sollhöhe ermöglicht.

Benutzereingabe_Hoehe

Diese Komponente erlaubt dem Benutzer die Vorgabe einer Sollhöhe des Wasserstands über ein Potentiometer.

  • Die Werte werden über A1 des Arduinos in Simulink eingelesen.
  • Ein 100 nF Kondensator stabilisiert die analogen Werte.
  • Eine Mittelwertfilterung über fünf Messwerte wird mit dem MATLAB-Function-Block Benutzereingabe_Hoehe_Mittelwert_Berechnung umgesetzt.
  • Die gefilterten Digitalwerte werden in einem 1-D Lookup Table in Meter umgerechnet.
  • Der Digitalwertbereich ist wie folgt definiert:
 Digitalwert ≤ 5 entspricht 0,05 m
 Digitalwert ≥ 1018 entspricht 0,30 m

Benutzereingabe_Stoerung

Über ein zweites Potentiometer kann der Benutzer eine Störung in Prozent vorgeben.

  • Auch hier erfolgt die Einlesung über einen Arduino-Analogkanal in Simulink.
  • Der Aufbau ist identisch zur Benutzereingabe_Hoehe, inklusive 100 nF Kondensator und Mittelwertfilterung über fünf Werte.
  • Die Umrechnung von Digitalwert auf Störgröße in Prozent erfolgt in einem 1-D Lookup Table.
  • Die Ausgabe wird durch einen Round-Block auf ganze Prozent gerundet.
  • Der Digitalwertbereich ist wie folgt festgelegt:
 Digitalwert ≤ 5 entspricht 0 % Störung
 Digitalwert ≥ 1018 entspricht 100 % Störung

Pumpe_Regelung

  • Das Regelsignal Regelung_PWM wird zunächst über einen Round-Block gerundet und anschließend durch einen Abs-Block geleitet, um eine positive, ganzzahlige PWM zu erzeugen.
  • Da die Pumpen erst ab einem PWM-Wert von 71 anlaufen, wird dieser Wert über den Lookup Table Regelung_PWM-Offset als Offset hinterlegt:
 0 % ≙ 0 PWM
 1 % ≙ 71 PWM
 100 % ≙ 255 PWM
  • Das Offset-Signal wird über zwei Switch-Blöcke weitergeleitet:
 PR_PWM_>_0 steuert die Zuflusspumpe bei positiver PWM,
 PR_PWM_<=_0 steuert die Abflusspumpe bei negativer PWM.
  • Das Vergleichssignal PWM_Vergleich entscheidet über die Umschaltung:
 Wenn PWM > 0: PWM_Vergleich = 0
 Wenn PWM ≤ 0: PWM_Vergleich = 1
 Steuerung erfolgt über PAR_PR_Vergleich_Switch = 0
  • Zur Entscheidungsfindung wird das Signal Regelung_PWM_round vor dem Abs-Block abgezweigt und dem Vergleichsoperator PR_Vergleichsoperator zugeführt.
 Bei positiver PWM: Ansteuerung von Regelung_PWM_Zufluss (Pins 3 und 4)
 Bei negativer PWM: Ansteuerung von Regelung_PWM_Abfluss (Pins 6 und 7)

Da der Arduino PWM-Block nur ganzzahlige Werte verarbeiten kann, werden alle PWM-Signale in 16-Bit-Ganzzahlen umgewandelt.

Pumpe_Stoerung

Die Ansteuerung der Membranpumpe für die Störung, erfolgt in der Komponente Pumpe_Stoerung.

  • In Simulink wird das Signal BES_Stoerung_Prozent über einen 1-D Lookup Table (Stoerung_Prozent-PWM_Offset) einem PWM-Wert zugeordnet. Es gilt:
 0 % ≙ 0 PWM
 1 % ≙ 71 PWM
 100 % ≙ 255 PWM
  • Der Offset von 71 sorgt dafür, dass die Pumpe bereits bei geringen Störprozentwerten anläuft.
  • Das berechnete Signal Stoerung_PWM wird in eine 16-Bit-Ganzzahl umgewandelt.
  • Anschließend erfolgt die Ausgabe über PS_Pumpe_Stoerung_PWM und PS_Pumpe_Stoerung_Drehrichtung an die PWM-Pins 8 und 9 des Arduino.

Regelung

Die Komponente Regelung bildet das Herzstück des Systems. Sie verarbeitet den Regelfehler und gibt ein PWM-Signal zur Ansteuerung der Zulaufpumpe aus.

  • In Simulink wird kontinuierlich die Differenz d_h zwischen h_soll und h_mess berechnet.
  • Der Fehler wird in einen P-Anteil und einen I-Anteil aufgeteilt.
  • Die Verstärkungen erfolgen über die Parameter PAR_RG_KP (P-Anteil) und PAR_RG_KI (I-Anteil).
  • Der I-Anteil wird über einen Integrator mit Anti-Windup-Grenzen (−255 bis 255) summiert.
  • Beide Anteile werden anschließend im Sum-Block addiert.
  • Das Ergebnis wird im Saturation-Block von −255 bis 255 begrenzt, um die Stellgröße Reglung_PWM zu erzeugen.
  • Dieses Signal wird direkt an die Komponente Pumpe_Regelung übergeben.

ABBILDUNG Softwareumsetzung der Komponente Regelung

Systemtest und Ergebnisse

Systemtest

Regelung

Störung

Ergebnisse

Fazit und Ausblick

Abschließend werden die zentralen Erkenntnisse dieser Arbeit zusammengefasst, ihre Bedeutung für die praxisorientierte Hochschullehre reflektiert und mögliche Erweiterungen im Rahmen eines Ausblicks vorgestellt.

Zusammenfassung der Ergebnisse

Im Rahmen dieser Arbeit wurde ein geregeltes Wasserstandssystem entworfen, aufgebaut und erfolgreich getestet. Dabei wurden unter anderem

  • Sensor und Potentiometer kalibriert und stabilisiert,
  • Messwerte analysiert und gefiltert,
  • sowie eine Benutzerkonsole zur manuellen Einflussnahme und Visualisierung entwickelt.

Die Systemtests zeigten, dass das Regelverhalten insgesamt stabil ist: Die Sollhöhe wird mit einer Genauigkeit von ±5 mm erreicht, Störungen bis zu 90 % können erfolgreich kompensiert werden. Das Regelverhalten des eingesetzten PI-Reglers entsprach weitgehend den Erwartungen aus der Simulation, wobei Effekte wie Totzeiten, Verzögerungen und schwankende Pumpenleistungen zu leichten Abweichungen führten.

Ein Schwachpunkt liegt in der ungleichmäßigen Förderleistung der Pumpen, wodurch bei einer 100 %-Störung ein dauerhafter Wasserstandsabfall auftreten kann. Langzeittests deckten zusätzlich eine Leckage bei der Wasserstandsmessung auf – der gemessene Wasserstand sank über Zeit, obwohl der reale Stand konstant blieb.

Praktische Relevanz und Anwendung

Das entwickelte System eignet sich hervorragend als anschauliches Demonstrationsobjekt in der Hochschullehre. Es bietet:

  • eine interaktive Vermittlung von Regelungstechnik (z. B. PI-Regelung, Überschwingen, Störkompensation),
  • eine intuitive Benutzerführung durch Display und Konsole,
  • sowie einen modularen, offenen Aufbau mit gut einsehbaren Komponenten wie Pumpen, Sensorik und Steuerung.

Die robuste Konstruktion und das transparente Gehäuse fördern Sicherheit, einfache Wartung und einen direkten Einblick in die Wirkzusammenhänge eines geregelten technischen Systems.

Verbesserungspotential und Ausblick

Trotz des insgesamt erfolgreichen Projektverlaufs bestehen folgende Optimierungsmöglichkeiten:

  • Regler-Interface erweitern: Eine Benutzerfunktion zur Änderung der Reglerparameter (z. B. P- und I-Anteil) oder zur temporären Deaktivierung des Reglers erhöht die Flexibilität im Lehrbetrieb.
  • Totzeiten realistisch abbilden: Eine Berücksichtigung von Verzögerungen und Totzeiten in der Simulation verbessert die Genauigkeit der Modellierung und Parametrierung.
  • Elektrik überarbeiten: Die Not-Aus-Schaltung sollte überarbeitet werden, um die Pumpen nicht über die 5 V-Versorgung des Arduino zu betreiben.
  • Messkette abdichten: Undichtigkeiten in der Messleitung müssen behoben werden, um langfristig zuverlässige Messergebnisse zu gewährleisten.
  • Zuflussführung optimieren: Die Wasserzufuhr sollte direkt zum Tankboden geleitet und mit einem Rückschlagventil ausgestattet werden, um Totzeiten und Messwertverfälschungen durch Wellenbewegungen zu minimieren.

Das System bietet eine solide Grundlage für zukünftige Demonstrationen und kann dank seines modularen Aufbaus und der Nutzung von 3D-Druck mit geringem Aufwand erweitert oder angepasst werden.

Anhang

Masterarbeit

SVN

Poster

Literatur


→ zurück zum Profil: Denim Mike Hilz