Kapazitiver Bodenfeuchtesensor: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 105: Zeile 105:
|-  
|-  
| Versorgungsstrom || 5 mA
| Versorgungsstrom || 5 mA
|-
| Schnittstelle || PH2.0-3P Steckkabel
|-  
|-  
| Gewicht || 10 g
| Gewicht || 10 g

Version vom 14. Juli 2024, 14:56 Uhr

Abb. 1: Kapazitiver Bodenfeuchtesensor
Autor: Ken Hilz
Studiengang: Business and Systems Engineering
Modul: BSE-M-2-1.03, Hausarbeit in Angewandte Informatik gehalten von Prof. Dr.-Ing. Schneider
Semester: Sommersemester 2024
Abgabetermin: 28.07.2024

Einführung

In der Lehrveranstaltung Angewandte Informatik ist als Prüfungsleistung eine semesterbegleitende Arbeit vorgesehen. Dieses Kapitel behandelt den Einsatz des Capacitive Soil Moisture Sensor v1.2 zur Bestimmung der Bodenfeuchtigkeit. Für die Durchführung dieser Arbeit sind Kenntnisse im Bereich von Microcontrollern, Sensoren, Aktuatoren sowie im Umgang mit MATLAB®/Simulink erforderlich. Des Weiteren sind Kenntnisse im Bereich der Signalverarbeitung und Filterung notwendig, um dieses Projekt durchzuführen. Die Funktionsweise des Sensors und die Umsetzung der Fragestellung wird im Folgenden Kapitel genauer erläutert.

Aufgabenstellung

Messen Sie die Bodenfeuchte mittels Capacitive Soil Moisture Sensor v1.2.

Thema/Fragestellung:
Messung der Bodenfeuchtigkeit mit dem Sensor Capacitive Soil Moisture Sensor v1.2.
Hypothese:
Die Bodenfeuchtigkeit lässt sich mit dem Capacitive Soil Moisture Sensor v1.2 messen.
Einordnung in den Lehrplan: [1]
Die Lehrveranstaltung Angewandte Informatik vermittelt den Studierenden mehrere praktische Methoden, welche im Folgenden aufgelistet sind:

  • mit der Versionskontrolle SVN nachhaltig Quelltext entsprechend der Programmierrichtlinien schreiben, sichern, kollaboriert bearbeiten und Konflikte lösen.
  • in einer mathematisch orientierten Systax (z. B. MATLAB®) mit Vektoren und Matrizen rechnen, Programmteile in Funktionen auslagern, Zweige und Scheifen programmieren, Daten importieren und visualisieren.
  • die Mikrocontrollerplattform Arduino modellbasiert mit Simulink programmieren, so dass Sensoren eingelesen und Aktoren angesteurt werden können.

Projektbeschreibung

Tabelle 2: Materialliste
# Anzahl Material
1 1 PC mit MATLAB/Simulink R2023b
2 1 Kapazitiver Bodenfeuchtesensor
3 1 Arduino Uno R3
4 1 Steckbrett
5 1 LCD Modul 16x02 I2C
6 5 Jumper Kabel, männlich/männlich, 20 cm

Beschreibung Funktionsweise der verwendeten Hard- und Software

Simulink R2023b [2]
Für die Ausführung von Simulink wird die Software MatLab benötigt. Beide Softwares sind von The MathWorks. Über Simulink lassen sich mithilfe von Blockschaltbilder technische Systeme testen, realisieren und simulieren. Simulink wird für die Simulation von technischen Regelkreisen oder aber für die Signalverarbeitung verwendet.

Sensor Kapazitiver Bodenfeuchtesensor [3]
Bei der kapazitiven Messung der Feuchtigkeit wird das Verfahren der indirekten Messung angewendet. Das gemessen Signal wird in eine elektrische Größe umgewandelt und an den das Microcontroller-Board ausgegeben. Auf Basis des Aufbaus eines Kondensators arbeitet der kapazitive Feuchtigkeitssensor. Zwischen den Platten des Kondensators ist ein elektrisches Feld aufgebaut, welches je nach Spannung und Abstand variiert. Die Speicherung von elektrischer Energie wird beim Kondensator Kapazität genannt und in Farad angegeben. Diese Kapazität wird durch den Abstand der Platten zueinander, der Fläche dieser Platten und des Dielektrikums bestimmt. Das Dielektrikum beschreibt das Material, welches zwischen den beiden Platten ist. Die Materialien haben unterschiedliche Isolationseigenschaften, wodurch auch unterschiedliche Durchlässigkeiten des elektrischen Feldes vorhanden sind. Diese Durchlässigkeit wird als Permittivität bezeichnet. Da bei einem kapazitiven Feuchtigkeitssensor der Abstand der beiden Kondensatorplatten unveränderbar ist, wird die Feuchtigkeit lediglich über die Änderung der Permittivität bestimmt.

Arduino Uno R3 [4]
Das Arduino Uno ist ein Microcontroller-Board, welches aus 14 digitale I/O Pins und sechs analoge I/O Pins besteht. Von den 14 digitalen I/Os können sechs ein PWM-Signal erzeugen. Verschiedene Arten von Sensoren und Aktuatoren können mit dem Arduino Uno R3 Board verbunden, wodurch eine Vielzahl von Einsatzmöglichkeiten entstehen.

Steckbrett [5]
Ein Steckbrett eignet sich zum schnellen Aufbau einer elektrischen Schaltung. Dadurch, dass die Bauteile nur gesteckt werden, können diese einfach umgesteckt werden. Somit lässt sich der Aufbau schnell und einfach überarbeiten und verbessern. Die äußeren Reihen dienen des Anschlusses der Versorgungsspannung und der Verbindung zu Ground. In den mittleren Reihen können die Bauteile gesteckt werden.

LCD Modul 16x02 I2C [6]
Das LCD-Modul 16x2 I2C zeigt Text in zwei Zeilen mit je 16 Zeichen an und nutzt die I2C-Schnittstelle. Dadurch sind nur zwei Datenleitungen nötig: SDA (für Daten) und SCL (für den Takt), sowie VCC (Spannungsversorgung) und GND (Masse). Der Mikrocontroller überträgt die Daten seriell an das Modul, meist mit der I2C-Adresse 0x27 oder 0x3F. Die I2C-Verbindung vereinfacht die Kommunikation und reduziert den Verkabelungsaufwand.

Technische Daten

In dieser Tabelle sind grundlegende technischen Daten des Sensors aufgelistet.

Tabelle 3: Technische Daten des Capacitive Soil Moisture Sensor v1.2 [7]
Messbereich 0 % .. 100 %
Reaktionszeit ca. 7000 ms
Versorgungsspannung 3.3 V ~ 5.5 V
Versorgungsstrom 5 mA
Schnittstelle PH2.0-3P Steckkabel
Gewicht 10 g
Material korrosionsbeständiges Material
Abmessungen 98 mm x 23 mm x 9 mm

Pinbelegung

In dieser Tabelle ist die Pinbelegung des Sensors aufgelistet.

Tabelle 4: Pinbelegung des Capacitive Soil Moisture Sensor v1.2 [8]
Pin Belegung Signal
1 Versorgungsspannung (VCC) 5 V
2 Analog Output (AOUT) 0~3V
3 Masse (GND) 0 V

Versuchsaufbau und Durchführung

Versuchsaufbau

Abb. 2: Schaltplan
Abb. 3: Anschlussplan
Abb. 4: Foto des Versuchsaufbaus

Der Anschlussplan des Versuchs ist in der rechten Abbildung ??? dargestellt. Zu sehen ist ein Arduino Uno R3 Board, das mit einem kapazitiven Feuchtigkeitssensor verbunden ist. Zu beachten gilt, dass der gezeigte Feuchtigkeitssensor nicht identisch mit dem für den Versuch verwendeten Sensor ist, da in Fritzing nur ein kapazitiver Sensor mit drei Anschlüssen verfügbar ist.

Auf dem Breadboard wird die Versorgungsspannung (VCC) von 5V über ein rotes Kabel angeschlossen, während das schwarze Kabel die Ground-Verbindung zum Arduino herstellt. Da der Sensor nur drei Anschlüsse hat, von denen zwei für die Spannungsversorgung und Ground verwendet werden, wird der letzte freie Anschluss des Sensors mit dem analogen Eingang A0 des Arduino verbunden.

Anschließend wird der Arduino über ein USB-A Kabel mit dem Computer verbunden, um das in Simulink erstellte Modell hochladen zu können.

Die Schaltplanübersicht und ein Foto des Aufbaus sind in den unteren Abbildungen ??? und ??? zu finden.

Versuchsdurchführung

Abb. 5: Simulink-Modell

Das Modell zur Datenverarbeitung wurde gemäß Abb. 5 in Simulink aufgebaut. Die Messdaten wurden aufgezeichnet. Ein Video der Versuchsdurchführung findet sich hier.

Modelleinstellungen: Arduino Uno, Solver: Fixed-step, discrete, Abtastrate: 0,001 s

Versuchsbeobachtung

Abb. 6: Darstellung des Rohsignals des IR-Entfernungssensors (rote Kurve)
Abb. 7: Darstellung von dynamischen Messwerten des IR-Entfernungssensors

Das Signal des Sensors weist alle 40 ms systematische Ausreisser auf (vgl. Abb. 6, rote Kurve).

Auswertung

Die Messhypothese wurde verworfen. Der Sensor weist systematische Messwertausreisser auf.

Die Ausreisser lassen sich mit einem Signalfilter eliminieren. Hierzu eignet sich ein Rangordnungsfilter (z. B. Median-Filter). Das Filter wird hierzu auf eine Fensterbreite von 30 Werten eingestellt. Das zufriedenstellende Filterergebnis für statische Werte zeigt Abb. 6 als blaue Kurve. Es konnte mit dynamische Werten verifiziert werden (vgl. Abb. 7). Das Datenblatt ([2, S. 6]) belegt die Messungen und bezeichnet die Messausreisser als "instabile Ausgabe" für maximal 5 ms alle 40 ms. Mit 50 Werten erhöht sich die Filterwirkung, es entsteht jedoch ein Delay von 10 ms. Mit 10 Werten ist die Filterwirkung zu gering.

Zusammenfassung und Ausblick

  • Zusammenfassung der Kapitel 1-4
  • Diskussion der Ergebnisse
  • Ausblick
  • Selbstreflexion/Lessons learned

Ergebnisvideo

Binden Sie hier Ihr Ergebnisvideo ein.

Anleitung: Videos im Wiki einbinden

Lernzielkrontrolle

Beantworten Sie in Ihrem Wiki-Artikel die Lernzielkontrollfragen.

Literatur

Zitieren Sie nach DIN ISO 690:2013-10.

Anhang

  • Datenblätter
  • Simulink-Modell
  • Originaldateien (PAP, Schaltplan,... )

→ zurück zum Hauptartikel: BSE Angewandte Informatik SoSe24 | Hausarbeit SoSe24