Membran Drucksensor FSR402: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(59 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:Arduino]]
[[Kategorie:Arduino]]
[[Datei:Arduino MembranDrucksensor FSR402.jpg|thumb|rigth|300px|Abb. 1: Membran Drucksensor FSR402]]
[[Datei:Arduino MembranDrucksensor FSR402.jpg|thumb|rigth|450px|Abb. 1: Membran Drucksensor FSR402]]
{|class="wikitable"
{|class="wikitable"
|-
|-
| '''Autor*in:'''  || [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. Schneider]]
| '''Autorin:'''  || Dorothea Tege
|-
|-
| '''Studiengang:'''  || Business and Systems Engineering
| '''Studiengang:'''  || Business and Systems Engineering
|-
|-
| '''Modul:''' || BSE-M-2-1.03, Hausarbeit in Angewandte Informatik gehalten von Prof. Ulrich Schneider
| '''Modul:''' || BSE-M-2-1.03, Hausarbeit in Angewandte Informatik gehalten von [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. Schneider]]
|-
|-
| '''Lektion 9:''' || Mechatronik, Informatikpraktikum 2, 2. Semester
| '''Semester:''' || Sommersemester 2024
|-
|-
| '''Datum:''' || 02.07.2024
| '''Abgabetermin:''' || 28.07.2024
|}
 
== Einführung ==
In diesem Projekt liegt der Fokus auf dem Aufbau und der Integration eines FSR402 (Force Sensitive Resistor) Sensors mit verschiedenen Hardwarekomponenten und der Programmierung in Simulink. Der FSR402 ist ein druckempfindlicher Sensor, der durch eine Änderung seines Widerstands auf ausgeübten Druck reagiert. Diese Widerstandsänderung wird in eine analoge Spannung umgewandelt, die proportional zur Druckkraft ist. Das Projekt umfasst die Verbindung des Sensors mit anderer Hardware, um ein funktionales System zu erstellen, und die Programmierung in Simulink, um die analoge Spannung zu erfassen und in Kraftwerte zu konvertieren. Ziel ist es, ein System zu entwickeln, das präzise Kraftmessungen ermöglicht und diese in Echtzeit verarbeitet.
 
=== Aufgabenstellung ===
Messen Sie die Kraft mittels Membransensor.
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Anforderungen&thinsp;</strong>
|-
|
{| class="wikitable"
|+ Tabelle 1: Anforderungen
|-
! Req. !! Beschreibung !! Priorität
|-
| 1 || Die Kraft muss mit Kraftdrucksensor FSR402 mittels Arduino und Simulink gemessen werden.|| 1
|-
|-
| Datum: ||  
| 2 || Der Messbereich muss bestimmt werden. || 1
|-
| 3 || Die Messunsicherheit (1σ) muss für den Messbereich ermittelt und als Vertrauensbereich angezeigt werden. || 1
|-
| 4 || Der Sensor muss kalibriert werden. || 1
|-
| 5 || Für den Messbereich muss die Kraft referenziert werden. || 1
|-
| 6 || Die Messwerte müssen über der Zeit gefiltert werden.  || 1
|-
| 7 || Ein Piepton muss anzeigen, wenn der Messwert stabil/konstant ist. || 1
|-
| 8 || Das Sensorsystem muss die Kraft in N auf dem [[LCD_Modul_16x02_I2C|LCD-Display]] anzeigen. || 2
|}
|}
|}


== 1. Einführung ==
*'''Thema/Fragestellung:''' Messung der Kraft mit dem Membransensor FSR402
*'''Thema/Fragestellung:''' Messung der Entfernung mit dem Sensor Sharp GP2-0430K
*'''Hypothese:''' Die Kraft lässt sich im Bereich von 0.1&thinsp;N bis 10&thinsp;N fehlerfrei messen.
*'''Hypothese:''' Die Entfernung lässt sich im Bereich von 4&thinsp;cm bis 50&thinsp;cm fehlerfrei messen.
* '''Einordnung in den Lehrplan:''' Der Force Sensitive Resistor (FSR) ist ein wichtiger Bestandteil in vielen technischen und informatischen Anwendungen, da er die Messung von Kräften oder Druckveränderungen in verschiedenen Systemen ermöglicht. Er wird in Bereichen wie der Sensortechnik, Robotik und Mensch-Maschine-Interaktion verwendet, um präzise Daten über physische Kräfte zu sammeln und zu verarbeiten. In der Lernveranstaltung „Angewandte Informatik“ wird das Ziel verfolgt, Simulink mit Hardware zu integrieren und mathematische Programmierung zu nutzen. Durch diese Lernveranstaltung wird es möglich, Sensoren wie den FSR in Simulink einzulesen und zu steuern, was praktische Anwendungen in der Datenverarbeitung und Steuerungstechnik eröffnet.
* '''Einordnung in den Lehrplan'''


== 2. Projektbeschreibung ==
== Projektbeschreibung ==
{| class="wikitable"
{| class="wikitable"
|+ style = "text-align: left"|Tabelle 2: Materialliste
|+ style = "text-align: left"|Tabelle 2: Materialliste
Zeile 29: Zeile 58:
| 1  || 1|| PC mit MATLAB/Simulink R2022b
| 1  || 1|| PC mit MATLAB/Simulink R2022b
|-
|-
| 2  || 1 || Sensor Sharp GP2-0430K
| 2  || 1 || FSR402
|-
|-
| 3  || 1 || Arduino Uno R3
| 3  || 1 || Arduino Uno R3
Zeile 36: Zeile 65:
|-
|-
| 5 || 5 || Jumper Kabel, männlich/männlich, 20 cm
| 5 || 5 || Jumper Kabel, männlich/männlich, 20 cm
|-
| 6 || 1 || LCD-Dispaly
|-
|-
| 7 || 1 || Buzzer
|-
|}
|}
Beschreibung Funktionsweise der verwendeten Hard- und Software
Beschreibung Funktionsweise der verwendeten Hard- und Software
* Arduino Uno R3
* '''Arduino Uno R3:''' Der Arduino Uno R3 ist ein vielseitiger Mikrocontroller, der auf dem ATmega328P-Mikrocontroller basiert. Er fungiert als zentrales Steuerungssystem, das alle anderen Hardwarekomponenten überwacht und steuert. Durch seine Vielzahl an digitalen und analogen Eingängen und Ausgängen kann der Arduino Signale von Sensoren wie dem FSR402 aufnehmen, verarbeiten und darauf basierend Aktionen auslösen.
* Sensor Sharp GP2-0430K
 
* Simulink R2022b
* '''FSR402:''' Der FSR402 ist ein Force Sensing Resistor (FSR), der als Drucksensor fungiert. Seine Funktionsweise basiert auf der Änderung seines Widerstands in Abhängigkeit vom auf ihn ausgeübten Druck. Je stärker der Druck, desto geringer wird der Widerstand des Sensors. Diese Widerstandsänderung wird vom Arduino Uno erfasst, der sie in eine Kraftmessung umwandelt, die dann verarbeitet und angezeigt wird.
 
* '''Simulink R2022b:''' Simulink R2022b ist eine Software von MathWorks, die für die grafische Modellierung, Simulation und Analyse von Systemen verwendet wird. In Verbindung mit der Hardware wird Simulink genutzt, um Modelle der elektrischen Schaltungen und der Steuerungslogik zu erstellen und deren Verhalten zu simulieren.
 
* '''LCD-Display:''' Das LCD-Display wird zur Anzeige der gemessenen Kraft in Newton (N) verwendet. Es ermöglicht eine visuelle Rückmeldung in Echtzeit, indem die vom Arduino verarbeiteten Daten auf dem Display angezeigt werden. Dies hilft dem Benutzer, die aktuellen Messwerte leicht abzulesen und zu überwachen. Aufgrund der Komplexität bei der Verwendung des LCD-Displays wurde es in diesem Projekt nicht eingesetzt.
 
* '''Steckbrett:''' Das Steckbrett ist ein unverzichtbares Werkzeug für die Entwicklung und den Aufbau von Schaltungen. Es ermöglicht das unkomplizierte Einstecken und Verbinden von elektronischen Komponenten ohne die Notwendigkeit von Löten. Die auf dem Steckbrett aufgebaute Schaltung kann flexibel verändert und angepasst werden.
 
* '''Jumperkabel:''' Jumperkabel sind flexible Kabel, die verwendet werden, um Verbindungen zwischen den einzelnen Komponenten auf dem Steckbrett herzustellen. Sie ermöglichen es, Signale und Strom zwischen dem Arduino, dem Drucksensor, dem Display und anderen Bauteilen zu übertragen, und sorgen dafür, dass die Schaltung korrekt funktioniert.
 
* '''Buzzer:''' Der Buzzer ist ein akustisches Signalgebergerät, das Töne erzeugt. In diesem Setup wird der Buzzer verwendet, um einen Ton auszugeben, wenn eine bestimmte Kraft auf den Membransensor konstant gehalten wird. Dies dient als akustische Rückmeldung für den Benutzer, dass eine Kraft auf dem Drucksensor wirkt.
 
=== Technische Daten ===
{| class="wikitable"
|-
| Messbereich || 0.1&thinsp;N - 10&thinsp;N
|-
| Versorgungsspannung || 3.3&thinsp;V .. 5&thinsp;V
|-
| Wiederholgenauigkeit || ±2&thinsp;%
|-
| Widerstand ohne Belastung || 10&thinsp;MΩ
|-
| Kraftempfindlichkeitsbereich || 1&thinsp;kΩ
|-
| Gewicht || 0.5&thinsp;g
|-
| Getriebe || Kunststtoff
|-
| Arbeitstemperatur || -30&thinsp;°C .. +70&thinsp;°C
|-
| Dicke || 0.45&thinsp;mm
|-
| Durchmesser || 18.28&thinsp;mm
|}
=== Pinbelegung ===
{| class="wikitable"
! style="font-weight: bold;" | Pin
! style="font-weight: bold;" | Belegung
! style="font-weight: bold;" | Signal
|-
| 1 || Versorgungsspannung VCC  || 5&thinsp;V
|-
| 2 || Analoger Eingang (A0) || 0.3&thinsp;V .. 5&thinsp;V
|-
| 3 || Masse (GND)  || 0&thinsp;V
|}
 
== Funktionsweise Primärsensor ==
Der FSR402 ist ein Sensor, der zur Messung von Druck oder Kraft eingesetzt wird und auf dem Prinzip der Widerstandsänderung basiert. Die Funktionsweise des Drucksensors lässt sich wie folgt detailliert erklären:
=== Aufbau und Funktionsweise des FSR402 ===
'''1. Struktur des Sensors:'''
Der FSR402 besteht aus einer flexiblen Membran, die mit einer leitfähigen Schicht beschichtet ist. Diese Schicht ist in einer Weise angeordnet, um den Widerstand bei Druck zu verändern. Die Membran ist zwischen zwei elektrisch leitenden Schichten eingebettet. Bei Druck auf den Sensor, bilden sich Kontaktstellen.
 
'''2. Widerstandsänderung bei Druck:'''
Ohne Druckeinwirkung, im Ruhestand, hat der FSR402 einen relativ hohen Widerstand. Sobald Druck auf die Membran ausgeübt wird, verformt sich die Membran, und die leitfähige Schicht wird zusammengedrückt. Diese Verformung verringert den Widerstand der Schicht. Die Widerstandsänderung ist nicht linear - der Widerstand sinkt mit zunehmendem Druck exponentiell. Das hat zu Folge, dass kleine Änderungen im Druck größere Änderungen im Widerstand hervorrufen können.
 
'''3. Messung des Widerstands:'''
Der FSR402 wird typischerweise in einer Spannungsteilerschaltung verwendet, bei der der Sensor zusammen mit einem festen Widerstand in Serie geschaltet wird. Die Spannung, die über den FSR402 abfällt, verändert sich entsprechend der Widerstandsänderung. Der Arduino Uno misst diese Spannung, um die Widerstandsänderung des Sensors zu erfassen. Damit daraus der ausgeübte Druck oder die Kraft auf den Drucksensor berechnet werden kann.
 
'''4. Anwendung:'''
Um genaue Messwerte zu erhalten, wird der FSR402 oft kalibriert. Der Widerstand des Sensors kann in die entsprechende Kraft oder Druck umgerechnet werden. Dabei muss ein Kalibrierungsprozess durchgeführt werden, bei dem bekannte Kräfte auf den Sensor ausgeübt und die entsprechenden Widerstände gemessen werden. Diese Daten werden verwendet, um eine Umrechnungsformel zu erstellen, die es ermöglicht, die Widerstandsänderungen des Sensors in präzise Druck- oder Kraftwerte umzuwandeln.


== Versuchsaufbau und Durchführung ==
== Versuchsaufbau und Durchführung ==
=== 3.1 Versuchsaufbau ===
=== Versuchsaufbau ===
[[Datei:Schaltplan Sharp.jpg|thumb|rigth|450px|Abb. 1: Schaltplan]]
[[Datei:Steckplatine fsr.png|thumb|rigth|450px|Abb. 2: Anschlussplan]]
[[Datei:Anschlussplan Sharp.png|thumb|rigth|450px|Abb. 2: Anschlussplan]]
[[Datei:Schaltplan fsr.png|thumb|rigth|450px|Abb. 2: Schaltplan]]
[[Datei:Foto Sharp.png|thumb|rigth|450px|Abb. 3: Foto des Versuchsaufbaus]]
[[Datei:BildAufbau Kopie.jpg|thumb|rigth|450px|Abb. 4: Foto des Versuchsaufbaus]]
Der Versuchsaufbau wird durch einen Schaltplan (Abb. 1), Anschlussplan (Abb. 2) und Foto des Aufbaus (Abb. 3) dokumentiert.
Der Versuchsaufbau wird durch einen Schaltplan (Abb. 2), Anschlussplan (Abb. 3) und Foto des Aufbaus (Abb. 4) dokumentiert.


=== 3.2 Versuchsdurchführung ===
=== Versuchsdurchführung ===
[[Datei:Simulink Sharp.png|thumb|rigth|450px|Abb. 4: Simulink-Modell]]
[[Datei:Simulink modell.png|thumb|rigth|450px|Abb. 5: Simulink-Modell]]
Das Modell zur Datenverarbeitung wurde gemäß Abb. 4 in Simulink aufgebaut. Die Messdaten wurden aufgezeichnet. Ein Video der Versuchsdurchführung findet sich hier.
Das Modell zur Datenverarbeitung wurde gemäß Abb. 5 in Simulink aufgebaut. Die Messdaten wurden aufgezeichnet. Es wurde darauf verzichtet, ein Video des Versuchs zu erstellen, da die angezeigten Werte aufgrund der Messungenauigkeiten nicht korrekt waren.


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


=== 3.3 Versuchsbeobachtung ===
=== Versuchsbeobachtung ===
[[Datei:Sharp Ergebnis 1.png|thumb|rigth|450px|Abb. 5: Darstellung des Rohsignals des IR-Entfernungssensors (rote Kurve)]]
Während des Versuchs wurde beobachtet, dass der Buzzer einen Ton erzeugte, sobald Druck auf den FSR402-Sensor ausgeübt wurde. Es wurde jedoch festgestellt, dass die gemessenen Kräfte bei zunehmendem Druck auf den Sensor unerwarteterweise abnahmen. Dies deutet auf eine Anomalie in der Messung oder auf eine unzureichende Kalibrierung des Sensors hin.
[[Datei:Sharp Ergebnis 2.png |thumb|rigth|450px|Abb. 6: Darstellung von dynamischen Messwerten des IR-Entfernungssensors]]
[[Datei:Fsr_scope.png|thumb|rigth|450px|Abb. 6: Darstellung des Rohsignals des IR-Entfernungssensors (rote Kurve)]]
Das Signal des Sensors weist alle 40&thinsp;ms systematische Ausreisser auf (vgl. Abb. 5, rote Kurve).  
[[Datei:Fsr_scope2.png |thumb|rigth|450px|Abb. 7: Darstellung von dynamischen Messwerten des IR-Entfernungssensors]]
Das Signal des Sensors weist systematische Ausreisser auf (vgl. Abb. 6, blaue Kurve). Die gelbe Linie ist hierbei nicht relevant, da der Eingang zu Messzwecken nicht verwendet wurde.


== 4. Auswertung==
== Auswertung==
Die Messhypothese wurde verworfen. Der Sensor weist systematische Messwertausreisser auf.
In der durchgeführten Untersuchung wurde die ursprüngliche Messhypothese verworfen, da der FSR402-Sensor erhebliche Messwertausreißer aufwies. Diese Schwankungen in den Messergebnissen machten es schwierig, zuverlässige und konsistente Daten zu erhalten. Ein möglicher Ansatz zur Verbesserung der Messgenauigkeit wäre die Verwendung von Signalfiltern gewesen, um Rauschen und unerwünschte Schwankungen aus den Sensordaten zu eliminieren. Allerdings war es nicht möglich, diese Filter effektiv anzuwenden, da die entsprechenden Kenntnisse in der Signalverarbeitung fehlten.


Die Ausreisser lassen sich mit einem Signalfilter eliminieren. Hierzu eignet sich ein Rangordnungsfilter (z.&thinsp;B. Median-Filter). Das Filter wird hierzu auf eine Fensterbreite von 30 Werten
Trotz dieser Herausforderungen war es möglich, die gemessenen Widerstandswerte des FSR402 in Kraftwerte umzurechnen. Dabei zeigte sich jedoch ein unerwartetes Verhalten: Die Werte sanken bei zunehmendem Druck auf den Sensor, was auf eine nicht-lineare Charakteristik und möglicherweise auf eine nicht optimale Kalibrierung hindeutet. Die Kalibrierung des Sensors, die mit Hilfe von Simulink hätte durchgeführt werden können, wurde ebenfalls nicht erfolgreich abgeschlossen, da das notwendige Wissen zur korrekten Anwendung der Software fehlte.
eingestellt. Das zufriedenstellende Filterergebnis für statische Werte zeigt Abb. 5 als blaue Kurve. Es konnte mit dynamische Werten verifiziert werden (vgl. Abb. 6). Das Datenblatt ([2, S. 6]) belegt die Messungen und bezeichnet die Messausreisser als "instabile Ausgabe" für maximal 5&thinsp;ms alle 40&thinsp;ms. Mit 50 Werten erhöht sich die Filterwirkung, es entsteht jedoch ein Delay von 10&thinsp;ms. Mit 10 Werten ist die Filterwirkung zu gering.
 
== 5. Zusammenfassung und Ausblick ==
Zusammengefasst sind die erhaltenen Daten aufgrund der hohen Messwertausreißer und der fehlenden Kalibrierung mit Simulink nicht aussagekräftig genug, um eine präzise Kraftmessung zu gewährleisten. Zukünftige Untersuchungen sollten daher den Fokus auf eine verbesserte Signalverarbeitung und präzise Kalibrierung legen, um die Genauigkeit und Verlässlichkeit der Messergebnisse zu steigern.
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Testbericht gegen die Anforderungen&thinsp;</strong>
|-
| Der Test der Anforderungen wurden nicht explizit und nachvollziehbar dokumentiert. Anhand des Wiki-Artikels konnte nachfolgender Erfüllungsgrad abgelesen werden.
{| class="wikitable"
|+ Tabelle 1: Anforderungen
|-
! Req. !! Beschreibung !! Testergebnis
|-
| 1 || Die Kraft muss mit Kraftdrucksensor FSR402 mittels Arduino und Simulink gemessen werden.|| <span style="color:green">☑</span>
|-
| 2 || Der Messbereich muss bestimmt werden. || <span style="color:red">☒</span>
|-
| 3 || Die Messunsicherheit (1σ) muss für den Messbereich ermittelt und als Vertrauensbereich angezeigt werden. || <span style="color:red">☒</span>
|-
| 4 || Der Sensor muss kalibriert werden. || <span style="color:red">☒</span>
|-
| 5 || Für den Messbereich muss die Kraft referenziert werden. || <span style="color:red">☒</span>
|-
| 6 || Die Messwerte müssen über der Zeit gefiltert werden. || <span style="color:red">☒</span>
|-
| 7 || Ein Piepton muss anzeigen, wenn der Messwert stabil/konstant ist. || <span style="color:green">☑</span>
|-
| 8 || Das Sensorsystem muss die Kraft in N auf dem [[LCD_Modul_16x02_I2C|LCD-Display]] anzeigen. || <span style="color:red">☒</span>
|}
|}
 
== Zusammenfassung und Ausblick ==
* Zusammenfassung der Kapitel 1-4
* Zusammenfassung der Kapitel 1-4
* Diskussion der Ergebnisse
* Diskussion der Ergebnisse
* Ausblick
* Ausblick
* Selbstreflexion/Lessons learned
* Selbstreflexion/Lessons learned
== Ergebnisvideo ==
Binden Sie hier Ihr Ergebnisvideo ein.
Anleitung: [[Videos_einbinden|Videos im Wiki einbinden]]
== Lernzielkrontrolle ==
Beantworten Sie in Ihrem Artikel die Lernzielkontrollfragen.
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Lernzielkontrollfragen&thinsp;</strong>
|-
|
# Wie funktioniert der Primärsensor technisch?
# Welche Leistungsmerkmale hat der Sensor?
# Wie funktioniert die Umsetzerschaltung technisch?
# Wie kommuniziert der Sensor mit dem Arduino?
# Muss der Sensor kalibriert werden?
# Wie wird der Messwert in die zu messende physikalische Größe umgerechnet?
# Was nutzen Sie als Referenz?
# Benötigt der Sensor eine Kennlinie?
# Welchen Messbereich hat das Signal am Ende der Messkette?
# Welche Messunsicherheit und welcher Vertrauensbereich hat das Signal am Ende der Messkette für den gesamten Messbereich?
# Welche Auflösung hat das Signal am Ende der Messkette? Wodurch wird die Auflösung bedingt?
# Weist das Signal am Ende der Messkette einen systematischen oder zufälligen Fehler auf?
# Welche Fehlereinflüsse hat die Messung? Muss z.&#8239;B. die Temperatur der Messung berücksichtigt werden?
|}


== Literatur ==
== Literatur ==
Zitieren Sie nach [[Zitieren_nach_DIN1505|DIN ISO 690:2013-10]].
https://cdn.sparkfun.com/assets/8/a/1/2/0/2010-10-26-DataSheet-FSR402-Layout2.pdf
== Anhang ==
== Anhang ==
* Datenblätter
* Datenblätter
* Simulink-Modell
* Originaldateien (PAP, Schaltplan,... )
----
----
→ zurück zum Hauptartikel: [[BSE_Angewandte_Informatik_-_SoSe24|BSE Angewandte Informatik SoSe24]] | [[BSE_Angewandte_Informatik_-_SoSe24_-_Hausarbeit|Hausarbeit SoSe24]]
→ zurück zum Hauptartikel: [[BSE_Angewandte_Informatik_-_SoSe24|BSE Angewandte Informatik SoSe24]] | [[BSE_Angewandte_Informatik_-_SoSe24_-_Hausarbeit|Hausarbeit SoSe24]]

Aktuelle Version vom 10. August 2024, 09:25 Uhr

Abb. 1: Membran Drucksensor FSR402
Autorin: Dorothea Tege
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 diesem Projekt liegt der Fokus auf dem Aufbau und der Integration eines FSR402 (Force Sensitive Resistor) Sensors mit verschiedenen Hardwarekomponenten und der Programmierung in Simulink. Der FSR402 ist ein druckempfindlicher Sensor, der durch eine Änderung seines Widerstands auf ausgeübten Druck reagiert. Diese Widerstandsänderung wird in eine analoge Spannung umgewandelt, die proportional zur Druckkraft ist. Das Projekt umfasst die Verbindung des Sensors mit anderer Hardware, um ein funktionales System zu erstellen, und die Programmierung in Simulink, um die analoge Spannung zu erfassen und in Kraftwerte zu konvertieren. Ziel ist es, ein System zu entwickeln, das präzise Kraftmessungen ermöglicht und diese in Echtzeit verarbeitet.

Aufgabenstellung

Messen Sie die Kraft mittels Membransensor.

  • Thema/Fragestellung: Messung der Kraft mit dem Membransensor FSR402
  • Hypothese: Die Kraft lässt sich im Bereich von 0.1 N bis 10 N fehlerfrei messen.
  • Einordnung in den Lehrplan: Der Force Sensitive Resistor (FSR) ist ein wichtiger Bestandteil in vielen technischen und informatischen Anwendungen, da er die Messung von Kräften oder Druckveränderungen in verschiedenen Systemen ermöglicht. Er wird in Bereichen wie der Sensortechnik, Robotik und Mensch-Maschine-Interaktion verwendet, um präzise Daten über physische Kräfte zu sammeln und zu verarbeiten. In der Lernveranstaltung „Angewandte Informatik“ wird das Ziel verfolgt, Simulink mit Hardware zu integrieren und mathematische Programmierung zu nutzen. Durch diese Lernveranstaltung wird es möglich, Sensoren wie den FSR in Simulink einzulesen und zu steuern, was praktische Anwendungen in der Datenverarbeitung und Steuerungstechnik eröffnet.

Projektbeschreibung

Tabelle 2: Materialliste
# Anzahl Material
1 1 PC mit MATLAB/Simulink R2022b
2 1 FSR402
3 1 Arduino Uno R3
4 1 Streckbrett
5 5 Jumper Kabel, männlich/männlich, 20 cm
6 1 LCD-Dispaly
7 1 Buzzer

Beschreibung Funktionsweise der verwendeten Hard- und Software

  • Arduino Uno R3: Der Arduino Uno R3 ist ein vielseitiger Mikrocontroller, der auf dem ATmega328P-Mikrocontroller basiert. Er fungiert als zentrales Steuerungssystem, das alle anderen Hardwarekomponenten überwacht und steuert. Durch seine Vielzahl an digitalen und analogen Eingängen und Ausgängen kann der Arduino Signale von Sensoren wie dem FSR402 aufnehmen, verarbeiten und darauf basierend Aktionen auslösen.
  • FSR402: Der FSR402 ist ein Force Sensing Resistor (FSR), der als Drucksensor fungiert. Seine Funktionsweise basiert auf der Änderung seines Widerstands in Abhängigkeit vom auf ihn ausgeübten Druck. Je stärker der Druck, desto geringer wird der Widerstand des Sensors. Diese Widerstandsänderung wird vom Arduino Uno erfasst, der sie in eine Kraftmessung umwandelt, die dann verarbeitet und angezeigt wird.
  • Simulink R2022b: Simulink R2022b ist eine Software von MathWorks, die für die grafische Modellierung, Simulation und Analyse von Systemen verwendet wird. In Verbindung mit der Hardware wird Simulink genutzt, um Modelle der elektrischen Schaltungen und der Steuerungslogik zu erstellen und deren Verhalten zu simulieren.
  • LCD-Display: Das LCD-Display wird zur Anzeige der gemessenen Kraft in Newton (N) verwendet. Es ermöglicht eine visuelle Rückmeldung in Echtzeit, indem die vom Arduino verarbeiteten Daten auf dem Display angezeigt werden. Dies hilft dem Benutzer, die aktuellen Messwerte leicht abzulesen und zu überwachen. Aufgrund der Komplexität bei der Verwendung des LCD-Displays wurde es in diesem Projekt nicht eingesetzt.
  • Steckbrett: Das Steckbrett ist ein unverzichtbares Werkzeug für die Entwicklung und den Aufbau von Schaltungen. Es ermöglicht das unkomplizierte Einstecken und Verbinden von elektronischen Komponenten ohne die Notwendigkeit von Löten. Die auf dem Steckbrett aufgebaute Schaltung kann flexibel verändert und angepasst werden.
  • Jumperkabel: Jumperkabel sind flexible Kabel, die verwendet werden, um Verbindungen zwischen den einzelnen Komponenten auf dem Steckbrett herzustellen. Sie ermöglichen es, Signale und Strom zwischen dem Arduino, dem Drucksensor, dem Display und anderen Bauteilen zu übertragen, und sorgen dafür, dass die Schaltung korrekt funktioniert.
  • Buzzer: Der Buzzer ist ein akustisches Signalgebergerät, das Töne erzeugt. In diesem Setup wird der Buzzer verwendet, um einen Ton auszugeben, wenn eine bestimmte Kraft auf den Membransensor konstant gehalten wird. Dies dient als akustische Rückmeldung für den Benutzer, dass eine Kraft auf dem Drucksensor wirkt.

Technische Daten

Messbereich 0.1 N - 10 N
Versorgungsspannung 3.3 V .. 5 V
Wiederholgenauigkeit ±2 %
Widerstand ohne Belastung 10 MΩ
Kraftempfindlichkeitsbereich 1 kΩ
Gewicht 0.5 g
Getriebe Kunststtoff
Arbeitstemperatur -30 °C .. +70 °C
Dicke 0.45 mm
Durchmesser 18.28 mm

Pinbelegung

Pin Belegung Signal
1 Versorgungsspannung VCC 5 V
2 Analoger Eingang (A0) 0.3 V .. 5 V
3 Masse (GND) 0 V

Funktionsweise Primärsensor

Der FSR402 ist ein Sensor, der zur Messung von Druck oder Kraft eingesetzt wird und auf dem Prinzip der Widerstandsänderung basiert. Die Funktionsweise des Drucksensors lässt sich wie folgt detailliert erklären:

Aufbau und Funktionsweise des FSR402

1. Struktur des Sensors: Der FSR402 besteht aus einer flexiblen Membran, die mit einer leitfähigen Schicht beschichtet ist. Diese Schicht ist in einer Weise angeordnet, um den Widerstand bei Druck zu verändern. Die Membran ist zwischen zwei elektrisch leitenden Schichten eingebettet. Bei Druck auf den Sensor, bilden sich Kontaktstellen.

2. Widerstandsänderung bei Druck: Ohne Druckeinwirkung, im Ruhestand, hat der FSR402 einen relativ hohen Widerstand. Sobald Druck auf die Membran ausgeübt wird, verformt sich die Membran, und die leitfähige Schicht wird zusammengedrückt. Diese Verformung verringert den Widerstand der Schicht. Die Widerstandsänderung ist nicht linear - der Widerstand sinkt mit zunehmendem Druck exponentiell. Das hat zu Folge, dass kleine Änderungen im Druck größere Änderungen im Widerstand hervorrufen können.

3. Messung des Widerstands: Der FSR402 wird typischerweise in einer Spannungsteilerschaltung verwendet, bei der der Sensor zusammen mit einem festen Widerstand in Serie geschaltet wird. Die Spannung, die über den FSR402 abfällt, verändert sich entsprechend der Widerstandsänderung. Der Arduino Uno misst diese Spannung, um die Widerstandsänderung des Sensors zu erfassen. Damit daraus der ausgeübte Druck oder die Kraft auf den Drucksensor berechnet werden kann.

4. Anwendung: Um genaue Messwerte zu erhalten, wird der FSR402 oft kalibriert. Der Widerstand des Sensors kann in die entsprechende Kraft oder Druck umgerechnet werden. Dabei muss ein Kalibrierungsprozess durchgeführt werden, bei dem bekannte Kräfte auf den Sensor ausgeübt und die entsprechenden Widerstände gemessen werden. Diese Daten werden verwendet, um eine Umrechnungsformel zu erstellen, die es ermöglicht, die Widerstandsänderungen des Sensors in präzise Druck- oder Kraftwerte umzuwandeln.

Versuchsaufbau und Durchführung

Versuchsaufbau

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

Der Versuchsaufbau wird durch einen Schaltplan (Abb. 2), Anschlussplan (Abb. 3) und Foto des Aufbaus (Abb. 4) dokumentiert.

Versuchsdurchführung

Abb. 5: Simulink-Modell

Das Modell zur Datenverarbeitung wurde gemäß Abb. 5 in Simulink aufgebaut. Die Messdaten wurden aufgezeichnet. Es wurde darauf verzichtet, ein Video des Versuchs zu erstellen, da die angezeigten Werte aufgrund der Messungenauigkeiten nicht korrekt waren.

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

Versuchsbeobachtung

Während des Versuchs wurde beobachtet, dass der Buzzer einen Ton erzeugte, sobald Druck auf den FSR402-Sensor ausgeübt wurde. Es wurde jedoch festgestellt, dass die gemessenen Kräfte bei zunehmendem Druck auf den Sensor unerwarteterweise abnahmen. Dies deutet auf eine Anomalie in der Messung oder auf eine unzureichende Kalibrierung des Sensors hin.

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

Das Signal des Sensors weist systematische Ausreisser auf (vgl. Abb. 6, blaue Kurve). Die gelbe Linie ist hierbei nicht relevant, da der Eingang zu Messzwecken nicht verwendet wurde.

Auswertung

In der durchgeführten Untersuchung wurde die ursprüngliche Messhypothese verworfen, da der FSR402-Sensor erhebliche Messwertausreißer aufwies. Diese Schwankungen in den Messergebnissen machten es schwierig, zuverlässige und konsistente Daten zu erhalten. Ein möglicher Ansatz zur Verbesserung der Messgenauigkeit wäre die Verwendung von Signalfiltern gewesen, um Rauschen und unerwünschte Schwankungen aus den Sensordaten zu eliminieren. Allerdings war es nicht möglich, diese Filter effektiv anzuwenden, da die entsprechenden Kenntnisse in der Signalverarbeitung fehlten.

Trotz dieser Herausforderungen war es möglich, die gemessenen Widerstandswerte des FSR402 in Kraftwerte umzurechnen. Dabei zeigte sich jedoch ein unerwartetes Verhalten: Die Werte sanken bei zunehmendem Druck auf den Sensor, was auf eine nicht-lineare Charakteristik und möglicherweise auf eine nicht optimale Kalibrierung hindeutet. Die Kalibrierung des Sensors, die mit Hilfe von Simulink hätte durchgeführt werden können, wurde ebenfalls nicht erfolgreich abgeschlossen, da das notwendige Wissen zur korrekten Anwendung der Software fehlte.

Zusammengefasst sind die erhaltenen Daten aufgrund der hohen Messwertausreißer und der fehlenden Kalibrierung mit Simulink nicht aussagekräftig genug, um eine präzise Kraftmessung zu gewährleisten. Zukünftige Untersuchungen sollten daher den Fokus auf eine verbesserte Signalverarbeitung und präzise Kalibrierung legen, um die Genauigkeit und Verlässlichkeit der Messergebnisse zu steigern.

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 Artikel die Lernzielkontrollfragen.

Literatur

Zitieren Sie nach DIN ISO 690:2013-10.

https://cdn.sparkfun.com/assets/8/a/1/2/0/2010-10-26-DataSheet-FSR402-Layout2.pdf

Anhang

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

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