Projekt 24: Wasserstandsregelung: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(48 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:


[[Kategorie:Projekte]] [[Datei:Baustelle.jpg|300px|thumb|right|Abb. 1: Wasserstandsreglung]]
[[Kategorie:Projekte]]  
[[Kategorie: ProjekteET MTR BSE WS2017]]
[[Datei:Wasserstandsregelung.jpg|300px|thumb|right|Wasserstandsreglung]]
 
Dieser Wiki-Beitrag ist Teil eines Projektes, welches im Rahmen des [[:Kategorie:ProjekteET_MTR_BSE_WS2017|WS 17/18: Fachpraktikum Elektrotechnik (MTR)]] im 5. Semester [https://www.hshl.de/studieren/studiengaenge/bachelorstudiengaenge/mechatronik/ Mechatronik] absolviert wurde. Ziel des Beitrags ist es, eine nachhaltige Dokumentation zu schaffen, welche die Ergebnisse festhält und das weitere Arbeiten am Projekt ermöglicht.


Autoren: Brandt, Eidhoff<br/>  
Autoren: Brandt, Eidhoff<br/>  
Zeile 7: Zeile 11:




== Aufgabe ==
==Aufgabe==
 
Das Projekt „Wasserstandsregelung“ befasst sich mit einer selbständigen und
kontinuierlichen Regelegung der Höhe des Wasserstandes in einem Behälter. Die Aufgabe besteht darin,
bei einer beliebigen Ausflussmenge des Mediums den Wasserstand möglichst konstant zu halten.
Es handelt sich hier um eine klassischee Anwendung aus der Regelungstechnik.


==Erwartungen an Ihre Projektlösung==


*Planung eines mechanischen Aufbaus
*Planung eines elektrischen Aufbaus
*Erstellen einer "Bill of Material" (BOM)
*Entwurf eines Regelkreises
*Recherche zu bestehenden Lösungen
*Programmieren eines Arduino Uno (Programmiersprache: C)
*Testen der Regelung
*Erstellung einer wissenschaftlichen Dokumentation
*Live Vorführung während der Abschlusspräsentation


==Einleitung==
==Einleitung==


Der Aufbau ist zu Präsentationszwecken folgendermaßen gewählt worden:
In einer handelsüblichen 3 Liter Sonnenblumenöl Flasche ist das zu fördernde Medium Wasser.
Durch einen Absperrhahn wird ein Auslass an der Unterseite simuliert, welcher als Störgröße der Regelung fungiert.
Das Wasser läuft über einen Schlauch in eine Wasserwanne, aus welcher das Medium mittels einer Pumpe wieder oben in
die Sonnenblumenölflasche gepumpt werden soll.
Nach abwägen verschiedenster Möglichkeiten der Regelung wurde folgender Ansatz zur Lösung der Problemstellung gewählt:


# Druckmessung mit einem Drucksensor
# Sollwertbestimmung mit einem Potentiometer
# Regelung mittels Software des Arduino Uno
# Pumpen des Wasser mit einer Tauchpumpe je nach Bedarf


==Anforderungen==
==Anforderungen==


*Regeln des Wasserstandes auf eine einstellbare Höhe
*Einstellen der Höhe
*Kein Überlauf des Behälters
*stetige Regelung
==Regelkreis==
Regelkreis:
[[Datei:Regelkreis Wasserstandsregelung.PNG|800px|Regelkreis der Wasserstandsregelung]]
==Auswahl der Elektronikkomponenten==
[[Datei:Differenzdrucksensor.JPG|300px|thumb|right|Aufbau eines Diffenrenzdrucksensors http://www.hjs.com/aftermarket/produkte/elektronik/sensorik.html]]
Auswahl der Reglerkomponente: Arduino Uno
*Bereits im Praktikum verwendet
*sehr bedienerfreundlich
*günstig
*Programmiersprache C (bereits bekannt)
*umfangreiche Dokumentationen vorhanden
Auswahl des Motortreibers und der Pumpe:
*Spannungsregler auf Motortreiber sorgt für eine 5V Versorgungsspannung für den Arduino
*einfache PWM-Ansteuerung der Pumpe
*Förderleistung der Pumpe von 12L/min
*kostengünstig


Auswahl des Drucksensors: Differenzdrucksensor
*unempflindlich gegen Wasser
*Auflösung: 450mV pro kPa --> 45mV pro Zentimeteränderung der Wassersäule


==Materialliste==
==Materialliste==
Zeile 27: Zeile 84:
! style="font-weight: bold;" | Artikelnr.
! style="font-weight: bold;" | Artikelnr.
|-
|-
| Pumpe
| 12V Pumpe
| 1
| 1
| Conrad
| Conrad
| ------
| 539082 - 62
|-
|-
|  
| Differenzdrucksensor
|
| 1
|
| Reichelt
|  
| MPX 5010DP
|-|
| Stiftleiste
| 1
| Reichelt
| SL 1X32G
|-|
| Potentiometer
| 1
| Conrad
| 452867 - 62
|-|  
|-|  
|
| Arduino Uno
|
| 1
|
| Conrad
|  
| 191789 - 62
|-|  
|-|  
|
| Motortreiber
|
| 1
|
| Conrad
| 1573541 - 62
|-
| Rohrnippel 3/4" 100mm
| 1
| Globus
| GLO782144626
|-
| Floraworld Kugelhahn 3/4"
| 1
| Globus
| GLO782140012
|-
| Rohrnippel 3/4" 40mm
| 1
| Globus
| GLO782144630
|-
| Temperguss Reduzierstück 3/4" 1" 
| 4
| Globus
| GLO782144607
|-
| Teflonband
| 1
| Globus
| GLO782145948
|-
| Sonnenblumenöl Flasche
| 1
| Lidl
|  
|  
|-|  
|-
|
| Multiplexplatte
| 2x1m
| Eigenbestand
|  
|  
|-
| Systembox
| 1
| Globus
| GLO655700394
|-
| PVC-Schlauch 4mm
| 1m
| Globus
| GLO680453095
|-
| 1/2" Schlauch
| 1m
| Eigenbestand
|
|
|-
| 13mm Rohr
| 20mm
| Eigenbestand
|
|
|-|
|-
|
| Stahlrohr 40mm
|  
| 70cm
|
| Eigenbestand
|
|
|-
|-
|}
|}


==Aufbau==
==Aufbau==


 
[[Datei:Aufbau Präsentationstisch.jpg|120px|thumb|right|Aufbau des Präsentationstisches]]


===Mechanik===
===Mechanik===


Arbeitsschritte:


# Sägen und Zusammenbau der Wände und Zwischenlagen des Präsentationstisches
# Durchbohren der Tischplatte mit anschließender Befestigung der Rohrleitungen
# Installation des Sonnenblumenöltanks über dem Kugelhahn
# Schweißen einer Befestigungsplatte an das Halterohr
# Befestigung des Halters an der Tischplatte
# Schlauchdurchführung zur Befüllung des Tanks
# Anbringen des Differentialdrucksensors und der Elektronik auf der Tischplatte


===Elektronik===
===Elektronik===


Die Elektronik wurde nach folgendem Schaltplan aufgebaut:
[[Datei:SchaltplanWasserstandsregelung.PNG|800px|Schaltplan]]


===Auslegung des Regelkreises===
[[Datei:AuslegungRegelkreisWasserstandsregelung.PNG|600px|Auslegung des Regelkreises]]


===Implementierung===
===Implementierung===


Zuerst wurde die angeschlossene Peripherie (Drucksensor, Pumpe, Potentiometer) mit einem seriellen Monitor getestet.


Implementierung mit Arduino:
[[Datei:Wasserstandsregelung sketch.jpg|Wasserstandsregelung]]


==Bedienung==
==Bedienung==


Die Sollgröße des Wasserstandes kann mit einem Potentiometer eingestellt werden. Ist das Potentiometer voll aufgedreht, wird die Sollgröße auf den maximalen Wasserstand (Kein Überlauf!) gestellt. Die Sollhöhe der Wassersäule ist proportional zu dem Potentiometer.
Durch Öffnen des Kugelhahns wird eine Störgröße simuliert. Ist der Kugelhahn voll aufgedreht reicht allerdings die Förderleistung der Pumpe nicht aus, um den Verlust der Höhe direkt zu kompensieren. Zum testen der Regelung sollte daher der Kugelhahn nicht maximal aufgedreht werden.


==Projekterkenntnisse==
*Zeitliche Planung eines komplexeren Projekts
*Planung / Auslegung von Bauteilen (BOM)
*Schnittstellen zwischen Hardware und Software
*Eigenständige Recherche von Datenblättern
*Orientierung in technischen Datenblättern
*Implementierung eines PID-Reglers
*Funktionstests und Optimierung


==Fazit/Reflexion==
==Fazit/Reflexion==


Sowohl der mechanische als auch der elektrische Aufbau haben auf Anhieb einwandfrei funktioniert. Bei der Bauteilauswahl wären folgende Änderungen für weitere Aufbauten sinnvoll:
*kleinerer Querschnitt des Kugelhahns, damit bei vollem Aufdrehen Vzu > Vab ist
*Rückschlagventil direkt an der Pumpe (verhindert die Totzeit)
*Wassereinlass verlängern, sodass es durch "plätschern" keine verfälschten Messwerte des Drucksensors gibt


Durch die bereits gemachten Erfahrungen mit dem Arduino Uno stellte die Implementierung keine größeren Probleme dar.
Es gibt verschiedene Möglichkeiten das Projekt weiterzuführen:
*Optimierung des mechanischen Aufbaus (Rückschlagventil, anderer Kugelhahn, Verlängerung des Wassereinlasses)
*Berechnung des gesamten Regelsystems (zum Beispiel die Übertragungsfunktion der Regelstrecke Ks)
*Testen des Systems mit einem Einheitssprung
[https://youtu.be/6oZYCd5_1sU Youtube-Video]


==Weblinks==
==Weblinks==
 
*[http://cdn-reichelt.de/documents/datenblatt/A300/SBC-MOTORDRIVER2_DATENBLATT_V2.pdf Datenblatt Motortreiber]
*[http://www.produktinfo.conrad.com/datenblaetter/525000-549999/539082-an-01-ml-Barwig_Tauchpumpe_12L_de_en_fr_nl.pdf Datenblatt Pumpe]
*[http://cdn-reichelt.de/documents/datenblatt/B400/MPX5010.pdf Datenblatt Differenzdrucksensor]
*[http://howtomechatronics.com/tutorials/arduino/arduino-dc-motor-control-tutorial-l298n-pwm-h-bridge/ Anschluss und Programmierung des Motortreibers]
*[https://playground.arduino.cc/Code/PIDLibrary PID Library Arduino]





Aktuelle Version vom 12. März 2018, 12:25 Uhr

Wasserstandsreglung

Dieser Wiki-Beitrag ist Teil eines Projektes, welches im Rahmen des WS 17/18: Fachpraktikum Elektrotechnik (MTR) im 5. Semester Mechatronik absolviert wurde. Ziel des Beitrags ist es, eine nachhaltige Dokumentation zu schaffen, welche die Ergebnisse festhält und das weitere Arbeiten am Projekt ermöglicht.

Autoren: Brandt, Eidhoff
Betreuer: Prof. Dr. Göbel


Aufgabe

Das Projekt „Wasserstandsregelung“ befasst sich mit einer selbständigen und kontinuierlichen Regelegung der Höhe des Wasserstandes in einem Behälter. Die Aufgabe besteht darin, bei einer beliebigen Ausflussmenge des Mediums den Wasserstand möglichst konstant zu halten. Es handelt sich hier um eine klassischee Anwendung aus der Regelungstechnik.

Erwartungen an Ihre Projektlösung

  • Planung eines mechanischen Aufbaus
  • Planung eines elektrischen Aufbaus
  • Erstellen einer "Bill of Material" (BOM)
  • Entwurf eines Regelkreises
  • Recherche zu bestehenden Lösungen
  • Programmieren eines Arduino Uno (Programmiersprache: C)
  • Testen der Regelung
  • Erstellung einer wissenschaftlichen Dokumentation
  • Live Vorführung während der Abschlusspräsentation

Einleitung

Der Aufbau ist zu Präsentationszwecken folgendermaßen gewählt worden: In einer handelsüblichen 3 Liter Sonnenblumenöl Flasche ist das zu fördernde Medium Wasser. Durch einen Absperrhahn wird ein Auslass an der Unterseite simuliert, welcher als Störgröße der Regelung fungiert. Das Wasser läuft über einen Schlauch in eine Wasserwanne, aus welcher das Medium mittels einer Pumpe wieder oben in die Sonnenblumenölflasche gepumpt werden soll.

Nach abwägen verschiedenster Möglichkeiten der Regelung wurde folgender Ansatz zur Lösung der Problemstellung gewählt:

  1. Druckmessung mit einem Drucksensor
  2. Sollwertbestimmung mit einem Potentiometer
  3. Regelung mittels Software des Arduino Uno
  4. Pumpen des Wasser mit einer Tauchpumpe je nach Bedarf

Anforderungen

  • Regeln des Wasserstandes auf eine einstellbare Höhe
  • Einstellen der Höhe
  • Kein Überlauf des Behälters
  • stetige Regelung

Regelkreis

Regelkreis:

Regelkreis der Wasserstandsregelung

Auswahl der Elektronikkomponenten

Aufbau eines Diffenrenzdrucksensors http://www.hjs.com/aftermarket/produkte/elektronik/sensorik.html

Auswahl der Reglerkomponente: Arduino Uno

  • Bereits im Praktikum verwendet
  • sehr bedienerfreundlich
  • günstig
  • Programmiersprache C (bereits bekannt)
  • umfangreiche Dokumentationen vorhanden

Auswahl des Motortreibers und der Pumpe:

  • Spannungsregler auf Motortreiber sorgt für eine 5V Versorgungsspannung für den Arduino
  • einfache PWM-Ansteuerung der Pumpe
  • Förderleistung der Pumpe von 12L/min
  • kostengünstig

Auswahl des Drucksensors: Differenzdrucksensor

  • unempflindlich gegen Wasser
  • Auflösung: 450mV pro kPa --> 45mV pro Zentimeteränderung der Wassersäule

Materialliste

Artikel Anzahl Lieferant Artikelnr.
12V Pumpe 1 Conrad 539082 - 62
Differenzdrucksensor 1 Reichelt MPX 5010DP
Stiftleiste 1 Reichelt SL 1X32G
Potentiometer 1 Conrad 452867 - 62
Arduino Uno 1 Conrad 191789 - 62
Motortreiber 1 Conrad 1573541 - 62
Rohrnippel 3/4" 100mm 1 Globus GLO782144626
Floraworld Kugelhahn 3/4" 1 Globus GLO782140012
Rohrnippel 3/4" 40mm 1 Globus GLO782144630
Temperguss Reduzierstück 3/4" 1" 4 Globus GLO782144607
Teflonband 1 Globus GLO782145948
Sonnenblumenöl Flasche 1 Lidl
Multiplexplatte 2x1m Eigenbestand
Systembox 1 Globus GLO655700394
PVC-Schlauch 4mm 1m Globus GLO680453095
1/2" Schlauch 1m Eigenbestand
13mm Rohr 20mm Eigenbestand
Stahlrohr 40mm 70cm Eigenbestand

Aufbau

Aufbau des Präsentationstisches

Mechanik

Arbeitsschritte:

  1. Sägen und Zusammenbau der Wände und Zwischenlagen des Präsentationstisches
  2. Durchbohren der Tischplatte mit anschließender Befestigung der Rohrleitungen
  3. Installation des Sonnenblumenöltanks über dem Kugelhahn
  4. Schweißen einer Befestigungsplatte an das Halterohr
  5. Befestigung des Halters an der Tischplatte
  6. Schlauchdurchführung zur Befüllung des Tanks
  7. Anbringen des Differentialdrucksensors und der Elektronik auf der Tischplatte

Elektronik

Die Elektronik wurde nach folgendem Schaltplan aufgebaut: Schaltplan


Auslegung des Regelkreises

Auslegung des Regelkreises

Implementierung

Zuerst wurde die angeschlossene Peripherie (Drucksensor, Pumpe, Potentiometer) mit einem seriellen Monitor getestet.


Implementierung mit Arduino:

Wasserstandsregelung

Bedienung

Die Sollgröße des Wasserstandes kann mit einem Potentiometer eingestellt werden. Ist das Potentiometer voll aufgedreht, wird die Sollgröße auf den maximalen Wasserstand (Kein Überlauf!) gestellt. Die Sollhöhe der Wassersäule ist proportional zu dem Potentiometer.

Durch Öffnen des Kugelhahns wird eine Störgröße simuliert. Ist der Kugelhahn voll aufgedreht reicht allerdings die Förderleistung der Pumpe nicht aus, um den Verlust der Höhe direkt zu kompensieren. Zum testen der Regelung sollte daher der Kugelhahn nicht maximal aufgedreht werden.

Projekterkenntnisse

  • Zeitliche Planung eines komplexeren Projekts
  • Planung / Auslegung von Bauteilen (BOM)
  • Schnittstellen zwischen Hardware und Software
  • Eigenständige Recherche von Datenblättern
  • Orientierung in technischen Datenblättern
  • Implementierung eines PID-Reglers
  • Funktionstests und Optimierung

Fazit/Reflexion

Sowohl der mechanische als auch der elektrische Aufbau haben auf Anhieb einwandfrei funktioniert. Bei der Bauteilauswahl wären folgende Änderungen für weitere Aufbauten sinnvoll:

  • kleinerer Querschnitt des Kugelhahns, damit bei vollem Aufdrehen Vzu > Vab ist
  • Rückschlagventil direkt an der Pumpe (verhindert die Totzeit)
  • Wassereinlass verlängern, sodass es durch "plätschern" keine verfälschten Messwerte des Drucksensors gibt

Durch die bereits gemachten Erfahrungen mit dem Arduino Uno stellte die Implementierung keine größeren Probleme dar.

Es gibt verschiedene Möglichkeiten das Projekt weiterzuführen:

  • Optimierung des mechanischen Aufbaus (Rückschlagventil, anderer Kugelhahn, Verlängerung des Wassereinlasses)
  • Berechnung des gesamten Regelsystems (zum Beispiel die Übertragungsfunktion der Regelstrecke Ks)
  • Testen des Systems mit einem Einheitssprung

Youtube-Video

Weblinks


Literatur


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