Systemelektronik

Aus Technische Beeinflussbarkeit der Geschmacksache Kaffee
Zur Navigation springen Zur Suche springen

Breites Logoband.png


Armin Rohnen, 05.10.2023

Auf Basis der bisherigen Erfahrungen und der Anforderung(en) durch mehrgruppige Maschinentypen wie z. B. die 2-Zylinder Glasboilermaschine ist das finale Elektronik-Konzept [[[Datei:20230909 Elektronik-Konzeptbeschreibung.pdf|mini]]] entsanden.

Armin Rohnen, 23.02.2023 - STEP-Dateien der Platinen

In den STEP-Dateien der Platinen sind einige Bauelemente, insb. die Federklemmen nicht in der waren Größe abgebildet. In den einzelnen Wiki-Seiten sind die relevanten Datenblätter verlinkt, bzw. hier:

Armin Rohnen, 07.02.2023

Grundlegend kann die Systemelektronik nicht ohne die Systemsoftware betrachtet werden.

Die aktuell verwendete und leider nur sehr gering dokumentierte Elektronik wird aus mehreren Gründen auf eine Multi-MCU-Elektronik umgestellt. Zum einen bestehen immer wieder Lieferengpässe bei verfügbaren MCU-Evaluationsboards, was dazu geführt hat, dass sich für das am wahrscheinlichsten verfügbare und obendrein auch relativ kostengünstige Raspberry Pi Pico Board endschieden wurde. Dies ist mit und ohne W-Lan verfügbar.

Zum Anderen erfordert ein MCU-Wechsel auch immer eine Anpassung der Systemelektronik, so dass die Überlegung nach der wahrscheinlich verfügbarsten MCU wichtig für die Projektweiterführung ist.

Als weiterer technischer Aspekt für die Entscheidung der überarbeiteten Systemelektronik ist die Entscheidung bezüglich einiger steuerbarer Ventile in den Maschinen. Es werden nun mehrere Schrittmotorsteuerungen benötigt, welche den Ausführungstask auf dem jeweiligen Prozessor(kern) bis zu 1 Sekunde blockieren können. Dies würde die Systemsteuerung nicht unerheblich blockieren.

Schema der Systemsteuerung

Abbildung 1) Schema der Multi-MCU-Systemelektronik
Abbildung 1) Schema der Multi-MCU-Systemelektronik

Die Multi-MCU-Elektronik (Abbildung 1) besteht im Kern aus drei Systemboards, welche jeweils mit einem Raspberry Pi Pico als MCU bestückt sind. Während der Entwicklungsphase erfolgt für jedes der drei Boards eine eigenständige USB-Verbindung zu einem übergeordneten PC mit einer MATLAB®-GUI. Im Produktivbetrieb soll dies für die Labormaschine lediglich über das Basisboard erfolgen. Eventuell kann im Produktivbetrieb gänzlich auf eine USB-Verbindung verzichtet werden, wenn per W-LAN oder Bluetooth ein Datenaustausch ermöglicht werden kann. Prinzipiell ist ein Datenaustausch im Produktivbetrieb via MQTT darstellbar.

Unterschied Entwicklungsbetrieb / Produktivbetrieb

Für die Systemsoftware wurde ein mehrstufiger Entwicklungsprozess definiert:

  1. Nutzung von MCUs welche mit MicroPython programmiert werden können.
  2. Auf den MCUs werden lediglich die elementaren Grundfunktionen (GPIO schalten und erfassen, Messwert erfassen, PWM Ausgeben, Sollwert ausgeben, etc.) realisiert und über die MATLAB® meets MicroPython - Schnittstelle [41] wird die Funktionalität in einer MATLAB® GUI hergestellt.
  3. Die Softwareentwicklung startet mit der labortechnischen Espressomaschine und wird auf die weiteren Projekte schrittweise transportiert.
  4. Nach Abschluss der Testphase der MATLAB® Bedienung wird schrittweise die Betriebssoftware in MicroPython auf der MCU implementiert, so dass am Ende dieses Prozessschrittes ein Produktivbetrieb ohne MATLAB®-Verbindung möglich ist. Die MATLAB®-Verbindung dient dann lediglich für weiterführende Datenerfassung, grafische Darstellungen, welche nicht mit dem Display der Maschine möglich ist oder dort nicht dargestellt werden soll und Servicefunktionen.

Eine Portierung der Software nach C ist nicht vorgesehen.

Basisboard

Die für den Betrieb der Kaffeemaschine wichtigen Steuerungen und Regelungen

  • Pumpensteuerung
  • Füllstandsregler
  • Durchflussregler
  • Mischtemperaturregler

und die Funktionssteuerung mit

  • Preinfusion
  • Kaffeebezug
  • Wasserbezug
  • Dampfbezug
  • Spülen (Rückspülreinigung)
  • Grundreinigung

werden auf der MCU des Basisboards durchgeführt. Die Verwaltung von Presets kann für wenige Presets auf diesem Board stattfinden, umfangreichere Datensammlungen müssen jedoch auf einem übergeordnetem System stattfinden.

Ziel ist, dass im Produktivbetrieb eine MATLAB®-Verbindung nicht erforderlich ist. Optional soll im Produktivbetrieb über USB eine MATLAB®-GUI angesschlossen werden können.

Über die UART1-Schnittstelle werden die Anweisungen zum Magnetventilschalten, die Initialisierungen von Dampfhahn und Dosierventil sowie die Positionierung von Dampfhahn und Dosierventil übermittelt.

Die UART2-Schnittstelle dient der Kommunikation mit der Messplatine. Die Messplatine sendet in einem definierten Takt kontinuierlich die Messdaten an das Basisboard. Umgekehrt erfolgt lediglich eine Kommunikation bei Änderung der Sollwerteinstellungen für den Boilerdruck und der Solltemperatur am Tassenwärmer.

Das Basisboard verfügt über einen 24 V Spannungsverteiler sowie über den 5 V Spannungsregler und Spannungsverteiler. Es dient zur Ermittlung der Flowrate über das Flowmeter, der Erkennung der Füllstände (Tank min., Tank max. Abwasser max., Boiler max.) und der Bedientastenerkennung inkl. Drehinkrementerkennung. Es werden die selten zu betätigenden Schrittmotoren der Brühgruppendrossel und des Pumpenbypasses angesteuert sowie der Pumpensollwert (0 - 5 V) ausgegeben.

SSR-Platine

Die SSR-Platine schaltet die Magnetventile mit 24 V DC Magnetspulen, die beiden 230 V AC XSSRs sowie die Schrittmotorsteuerung für das Dosierventil und den Dampfhahn.

Schaltkommandos dazu erfolgen über die UART1-Schnittstelle von der Basisplatine für die Schrittmotoren und die Magnetventile, während für die XSSRs das Steuersignal, üblich PWM, über eine Kabelverbindung von der Messplatine erfolgt.


Messplatine

Auf der Messplatine werden an insgesamt 8 Eingängen über einen 16-Bit-ADS1115 ADC mit vorgeschaltetem Multiplexer kontinuierlich Messdaten erfasst. Die Messdaten werden über die UART1-Schnittstelle an das Basisboard zur Weiterverarbeitung übermittelt.

Die Messplatine führt die Regelungen für den Boilerdruck und den Tassenwärmer durch. Die Sollwerte hierzu werden über die UART1-Schnittstelle vom Basisboard übermittelt. Wert 0 bedeutet dabei die Deaktivierung des Reglers. Initial sind die Regler mit Sollwert = 0 deaktiviert. Die Stellwerte der regler sind PWM-Signale, welche an die SSR-Platine per Hardwareleitung übertragen werden, um dort XSSRs zu steuern.

Bisherige Steuerungselektronik(en)

Eine Dokumentation der bisherigen Varianten der Steuerungselektronik wird im Wiki nicht mehr nagezogen.


Armin Rohnen, 15.01.2022

Telefonat mit einem Dienstleister zur Elektronikentwicklung

Manfred Eggersdorf, eggersdorf.com, 033233 40 94 70

Seiner Einschätzung nach wären 3 bis 4 Entwicklungsschleifen erforderlich- Aufgrund der aktuellen Situation in der Bauelementeverfügbarkeit müssen dafür 12 bis 18 Monate Entwicklungszeitraum einkalkuliert werden.

Er schätzt die Entwicklungskosten (ohne Platinen, Bauelemente etc.) auf ca. 40 k€.

Die Kosten kommen aus einem Vergleich mit einem anderen Projekt. Schaltpläne sowie Infos zu bekannten Fehlern, Verbesserungsvorschläge, etc. werden natürlich benötigt.

Vor der nächsten Entwicklungsschleife der Elektronik muss der Funktionsumfang, Sensoreingänge, Ausgänge, etc. fix definiert sein.

Die Elektronik muss eigenständig CE geprüft sein. Die Kosten dazu betragen ca. 5 k€.

Armin Rohnen, 15.01.2022

Einschätzung zur weiteren Elektronikentwicklung von Marius Ghica, der die aktuelle Elektronik entwickelt hat. Es sind noch drei weitere Entwicklungsschleifen erforderlich. Je Entwicklungsschleife würde er ca. 50 Arbeitsstunden benötigen. Ein neu beauftragter Dienstleister sollte für seine erste Entwciklungsschleife mit der doppelten Arbeitszeit zurecht kommen. Daraus leitet sich sich ab:

  1. Entwicklungsschleife 15 k€
  2. Entwicklungsschleife 7,5 k€
  3. Entwicklungsschleife 7,5 k€
  4. CE 5 k€

ergibt in Summe: 35 k€

Auch Marius Ghica weist darauf hin, dass zur nächsten Entwicklungsschleife die Ein- und Ausgänge zur Elektronik definiert sein müssen und es danach keine Veränderungen in der Spezifikation mehr geben darf.

ToDo Systemelektronik

Status

10 - Erfasst
30 - in Bearbeitung
50 - Lösung definiert
70 - in Umsetzung
90 - Umsetzung abgeschlossen
99 - Abbruch per Beschluss (Dokumentation dazu erforderlich)
100 - Maßnahme bestätigt

ToDo-Liste Systemelektronik

lfd-Nr. Arbeitspaket ToDo Wer Status WV
1 Basisboard Multi-MCU-Elektronik:Basisboard 100
2 Messplatine Multi-MCU-Elektronik:Messplatine 100
3 SSR-Platine Multi-MCU-Elektronik:SSR-Platine 100
4 Schrittmotor Schrittmotor-Treiber 100