Prüfprozesse

Aus Technische Beeinflussbarkeit der Geschmacksache Kaffee
Version vom 17. Juni 2024, 10:23 Uhr von Ze Lee (Diskussion | Beiträge) (Software Dosierventil)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Ze Lee, 17.06.2024

Konzept für die Soft- und Hardware für die Prüfprozesse

Temperatursensor

Der Widerstand eines NTC-Thermistors ändert sich in Abhängigkeit der Temperatur. Um den Widerstandswert messen zu können, kommt ein Spannungsteiler zum Einsatz, der sich aus einer Reihenschaltung von zwei Widerständen mit dem gleichen Widerstandswert (10 kΩ) zusammensetzt, wobei ein Vorwiderstand vor dem NTC vorgeschaltet wird. Der Spannungsabfall am NTC wird an einem definierten Analogeingang am MCU (STM32H743ZI) erfasst. Um präzise Wandlungsergebnisse zu erzielen, wird eine 4096 mV Referenzspannungsquelle (MCP1541) vor dem 16-Bit-ADC geschaltet. Die anliegende Spannung lässt sich mit der folgenden Formel berechnen:

wobei die Speisespannung des Spannungsteilers 4,096 V beträgt und der gelesene Wert vom angegebenen analogen Pin. Die Reaktionszeit des Temperatorsensors wird über die NI-Messkarte des Pumpenprüfstands erfasst und mithilfe von MATLAB ausgewertet. Die Messschaltung wird auf einem Steckbrett aufgebaut. Es wird eine Messung mit 20000 Messwerten je Sekunden definiert. Das ergibt eine Zeitauflösung von 0,05 ms. Die Messung wird gestartet und der Prüfling schlagartig einer Temperaturänderung ausgesetzt, indem er in eine Tasse mit heißem Wasser getaucht wird. Die Messung dauert ca. 45 Sekunden. Ebenso wurde nach dem gleichen Prinzip die entgegengesetzte Richtung (von heiß nach kalt) untersucht. Aus den erfassten Daten lässt sich die Reaktionszeit, T65 ermitteln. Für die Kalibrierung werden die Zieltemperatur und die Anzahl der Kontrollpunkte in der GUI angegeben. Bei Erreichen einer stabilen Kontrolltemperatur an jedem Kontrollpunkt wird mit einem MicroPython Skript eine Messung über das STM32 ausgeführt. Beim Anklicken des nächsten Kontrollpunktes wird die Temperatur erhöht, gehalten und die Messschleife für die Zwischenstufe durchgeführt. Die Spannungswerte und die den einzelnen Spannungen zugeordneten Temperaturen werden gegenübergestellt und daraus wird eine Kalibrierkurve erstellt. Das bedeutet, dass bei der Initialisierung des Pumpenprüfstands die Verwendung der STM32 MCU berücksichtigt werden muss.

Hardware

Als Anforderung an die MCU wird ein Anschluss an einen ADC-Pin benötigt. Der Baustein MCP1541 benötigt eine Spannungsversorgung von 5 V. Der Einsatztemperaturbereich für den Betrieb der AVS Römer Außenzahnradpumpe beträgt bis + 95 °C. Angenommen liegt die minimale Wassertemperatur bei 10 °C (283,15 K) und die maximale bei 95 °C (368,15 K), lassen sich die Spannungswerte in dem zu erwartenden Temperaturbereich zurückrechnen. Diese liegen zwischen 0,3 V und 2,7 V. Da die I/O Struktur des PA0 Pins FT_a ist, was ein 5 V-toleranter Pin bedeutet, liegt der zu erwartende Spannungsbereich unter dem zulässigen Spannungswert, des PA0 Analogpins von 5,22 V.

Der Spannungswert ist im Datenblatt unter dem Abschnitt „6.3.1 General operating conditions“ zu entnehmen.

Software

Von MATLAB aus wird ein Pin als Analogeingang für die Spannungsmessung mit den Codezeilen

writeline(stm32, 'import machine‘);

writeline (stm32, 'adc = machine.ADC(machine.PIN(„PA0“))‘;

definiert. Dann wird der digitale Wert des ADCs zu den Zeitpunkten gelesen, zu denen die Spannungsmesswerte benötigt werden.

writeline(stm32, 'print(adc.read_u16())‘);

In der Datenverarbeitungsfunktion in der MATLAB-GUI, die der STM32 zugeordnet ist, wird der gelesene Wert in einen Spannungsmesswert umgerechnet und gepaart mit dem eingeregelten Temperaturmesswert des Pumpenprüfstands in eine .csv Datei geschrieben. Je Kontrolltemperatur werden 25 Spannungsmessungen durchgeführt, welche dann gemittelt und gepaart mit der Prüfstandtemperatur in eine .csv Datei abgelegt werden.

Drucksensor

Grundsätzlich ist der Nullpunkt- und Verstärkungsabgleich mit Multimeter durchzuführen. Um die Nullpunktabweichung zu ermitteln, wird der Drucksensor im unbelasteten Zustand (Relativdruck = 0 bar) an eine 5 V Spannungsversorgung angeschlossen. Die Ausgangsspannung soll an einem definierten Pin (PA1) des Mikrocontrollers null Volt betragen. Falls dennoch eine Spannung anliegt, ist diese mittels des Potentiometers auf der Verstärkerplatine so anzupassen, dass der Nullwert korrekt eingestellt wird.

Der Abgleich der Verstärkung des Drucksensors erfolgt ähnlich wie der Nullpunktabgleich. Dazu wird der Sensor mit dem Maximaldruck von 12 bar belastet und das Ausgangssignal wird so verstärkt, dass ein Spannungswert von 5 V am definierten Pin gemessen werden kann. Es ist bekannt, dass sich die gleichzeitige Justierung der Parameter gegenseitig beeinflussen kann. Daher muss der Abgleich der Potentiometer durch eine Versuchs- und Irrtumsmethode erfolgen. Nach jeder Justierung des einen Potentiometers wird überprüft, ob die andere Einstellung noch korrekt ist.

Hardware

Als Anforderung an der MCU wird ein Anschluss an einen ADC-Pin (PA1) benötigt. Der PA1 hat eine I/O Struktur von FT_ha. Unter FT ist nach der Pinoutangabe als 5 V tolerant I/O zu verstehen.

Die Messverstärkerplatine wird mit 5 V gespeist und es wird über zwei Potentiometer der Nullpunkt und die Verstärkung eingestellt.

Software

In der MATLAB GUI wird ein ADC-Pin (PA1) an der MCU definiert. Ähnlich dem Temperatursensor wird in der Pumpenprüfstandinitialisierung der Drucksensor mit beachtet werden. Der digitale Wert des ADCs wird zu den Zeitpunkten gelesen, zu denen die Spannungsmesswerte benötigt werden, also wenn bei jedem Kontrollpunkt der Kontrolldruck gefahren wird. In der Datenverarbeitungsfunktion in der MATLAB-GUI wird der gelesene Wert in einen Spannungsmesswert umgerechnet. Es wird ein Funktionsaufruf für externe MATLAB-Funktionen hinterlegt. Diese Funktion liegt als funktionslose Hülse immer vor und wird beim Aufruf gegen ein für die Datenerfassung funktionsfähiges Skript ausgetauscht. Je Kontrolldruck werden 25 Spannungsmessungen durchgeführt, welche dann gemittelt und gepaart mit der Prüfstanddruck in eine .csv Datei abgelegt werden.

Dosierventil

Der Kugelhahn des Dosierventils wird über eine Kupplung mit einem SM158-35S-75 Schrittmotor verbunden. Dieser Schrittmotor hat einen Schrittwinkel von 7,5°, was bedeutet, dass er 48 diskrete Schritte benötigt, um eine vollständige 360°-Drehung zu vollziehen. Zudem besitzt er ein Übersetzungsverhältnis von 75:1. Daher benötigt die Abtriebswelle im Vollschrittbetrieb 3600 Schritte für eine vollständige Umdrehung, wobei jeder Schritt die Abtriebswelle um 0,1° bewegt.

Im Halbschrittbetrieb halbiert sich der Schrittwinkel auf 3,75°, was zu 7200 Halbschritten für eine vollständige Umdrehung führt. Dies entspricht einer Bewegung der Abtriebswelle um 0,05° pro Halbschritt. Um den Kugelhahn vollständig zu öffnen oder zu schließen, ist eine Drehung von 90° erforderlich. Die dafür benötigte Schrittzahl ergibt sich aus dem Quotienten von 90° und 0,05°, was 1800 Halbschritte ergibt.

Bei der Initialisierung soll berücksichtigt werden, dass das Dosierventil sicher in eine der Endlagen gefahren wird. Es liegt bereits eine Initialisierungsroutine des Schrittmotors vor. Die Halbschrittzahl für die Ansteuerung des Schrittmotors für das Öffnen und Schließen des Dosierventils ist dementsprechend anzupassen. Es muss ermittelt werden, mit welcher Pausenzeit zwischen den Stellvorgängen gefahren wird.

Um die Funktion des Dosierventils zu überprüfen, wird der Kugelhahn schrittweise mit bestimmter Schrittzahl zugedreht, für eine definierte Zeit gehalten und der Druckanstieg im Druckmessstrang wird erfasst.

Hardware

Für die Ansteuerung des Schrittmotors beläuft sich der Spannungsbereich des Leistungstreibers („Driver Voltage Range“) zwischen 8 – 36 V. Da die vorhandene Schrittmotorsteuerung im Pumpenprüfstand mit 5 V gespeist wird, ist eine externe Schrittmotorsteuerung erforderlich, die mit 24 V vom Pumpenprüfstand eingespeist wird. Es gibt noch verfügbare Pins auf der MCU der Pumpe, die verwendet werden können, um den Schrittmotor anzusteuern. 4 Pins der MCU werden als digitale Ausgänge definiert und mit den Eingangspins (IN1, IN2, IN3 und IN4) des Motorleistungstreibers (L293D) verbunden. Am Treiber wird der Pin 8 (VS) mit der 24 V-Spannung vom Pumpenprüfstand versorgt, während Pin 16 (VSS) mit der 5 V-Logikspannung von der MCU verbunden wird. Für die Dosierventilversuche wird nicht die Funktionalität des Pumpenprüfstands verwendet, sondern es wird eine eigene Implementierung erforderlich sein.

Software

Im ersten Schritt werden die 4 Pins der MCU initialisiert und auf Logisch 0 gesetzt. Dann werden die Bestromungssequenzen der Motorwicklungen definiert. Nach diesen Sequenzen werden die Logikzuständen der vier für die Schrittmotorsteuerung definierten Digitalausgänge geschaltet. Die Funktionalitäten Zudrehen und Aufdrehen werden durch die Funktionen forwardStep und backwardStep realisiert. Für einen definierten Rundlauf des Schrittmotors muss ein Schritt nach dem anderen angesteuert werden.

Ze Lee, 31.05.2024

Reaktionszeitmessung für den ersten Prototyp des Temperatursensors

Versuchsbeschreibung

Der erste Prototyp des Temperatursensors wurde auf die Reaktionszeit getestet, mit der er auf Temperaturwechsel reagiert. Hierzu wurde die Messschaltung auf einem Steckbrett aufgebaut, die Spannung wurde über die NI-Messkatte des Pumpenprüfstands erfasst und mithilfe von MATLAB ausgewertet. Bei dem Versuch wurde der Temperatursensor in eine Tasse mit kaltem Wasser getaucht, die Messung in MATLAB® gestartet und dann wurde der Prüfling schlagartig einer Temperaturänderung ausgesetzt, indem er in eine Tasse mit heißem Wasser getaucht wurde. Die Messzeit wurde sinnvoll auf 45 s festgelegt. Ebenso wurde nach dem gleichen Prinzip die entgegengesetzte Richtung untersucht, in der der Sensor schlagartig von einem hohen Temperaturniveau, einer niedrigen Temperatur ausgesetzt. Die entstandenen Messdaten wurden mit Hilfe von MATLAB® geplottet, die Kurve geglättet und anschließend die Zeitkonstante der Sprungantwort ausgewertet. Diese wird auch als T65-Zeit bezeichnet und entspricht dem Zeitwert, bei dem der Sensor 65% des Endwertes erreicht hat.

Zielsetzung

Zielvorgabe von dem neuen Temperatursensor ist es, in etwa die Zeiten eines AVS-Römer Temperatursensors und eines in einer vorangegangenen Projektarbeit konstruierten Temperatursensors [122] von 0,459 s bzw. 1,470 s zu erreichen.

Testergebnis

Bei dem Versuch wurden 6 Messungen je Temperaturwechselrichtung durchgeführt. Bei der Zeitanalyse zeigte sich, dass der Sensor auf einen Temperaturwechsel von heiß nach kalt mit einer gemittelten Reaktionszeit von 2,48 s reagiert hat, während auf einen Temperaturwechsel von kalt nach heiß mit einer durchschnittlichen Reaktionszeit von 4,22 s.

Reaktionszeiten der durchgeführten Messungen für den ersten Prototyp des Temperatursensors
Messung Zeitkonstante, τ (heiß nach kalt) [s] Zeitkonstante, τ (kalt nach heiß) [s]
1 3,22 4,65
2 2,67 3,89
3 2,20 4,13
4 2,23 4,22
5 2,27 3,82
6 2,28 4,63
Mittelwert 2,48 4,22

Reaktionszeitmessung für den zweiten Prototyp des Temperatursensors

Versuchsbeschreibung

Der zweite Prototyp des Temperatursensors wurde nach dem gleichen Prinzip des ersten Versuchs auf die Reaktionszeit getestet. Die Messzeit wurde auf 20 s angepasst, da der Endwert ohne die Messinghülse schneller erreicht wurde.

Am Aufbau des Temperatursensors selbst fällt das Einkleben des NTCs in eine Messinghülse weg. Stattdessen wird eine Schicht Harz auf die Messstelle und ein Schrumpfschlauch um den Bereich zwischen der Messstelle und der Vergleichsstelle herum aufgebracht. Für den Versuch wird der Sensor bis zur Stelle des Schrumpfschlauchendes ins heiße und kalte Wasser abwechselnd eingetaucht.

Zielsetzung

Zielvorgabe von dem neuen Temperatursensor ist es, in etwa die Zeiten eines AVS-Römer Temperatursensors und eines in einer vorangegangenen Projektarbeit konstruierten Temperatursensors [122] von 0,459 s bzw. 1,470 s zu erreichen.

Testergebnis

Bei dem zweiten Versuch wurden 5 Messungen je Temperaturwechselrichtung durchgeführt. Bei der Zeitanalyse zeigte sich, dass der Sensor auf einen Temperaturwechsel von heiß nach kalt mit einer gemittelten Reaktionszeit von 1,58 s reagiert hat, während auf einen Temperaturwechsel von kalt nach heiß mit einer durchschnittlichen Reaktionszeit von 1,20 s.

Reaktionszeiten der durchgeführten Messungen für den zweiten Prototyp des Temperatursensors
Messung Zeitkonstante, τ (heiß nach kalt) [s] Zeitkonstante, τ (kalt nach heiß) [s]
1 1,92 0,94
2 1,49 1,27
3 1,50 1,21
4 1,48 1,30
5 1,49 1,28
Mittelwert 1,58 1,20

Armin Rohnen, 06.05.2024

Für die eigenentwicklungen des Temperatursensors, der Drucksensoren und des Dosierventils müssen Prüfprozesse entwickelt werden. Für diese Prüfprozesse wird der Pumpenprüfstand eingesetzt.