Systemsoftware: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 45: | Zeile 45: | ||
== Prioritätsangabe == | == Prioritätsangabe == | ||
Prio 1 - Abarbeitung zeitnah erforderlich | Prio 1 - Abarbeitung zeitnah erforderlich<br> | ||
Prio 2 - Abarbeitung erforderlich | Prio 2 - Abarbeitung erforderlich<br> | ||
Prio 3 - Abarbeitung kann warten | Prio 3 - Abarbeitung kann warten<br> | ||
Prio 99 - Abarbeitung erfordert Vorarbeiten | Prio 99 - Abarbeitung erfordert Vorarbeiten<br> | ||
== Status == | == Status == | ||
10 - Erfasst | 10 - Erfasst<br> | ||
30 - in Bearbeitung | 30 - in Bearbeitung<br> | ||
50 - Lösung definiert | 50 - Lösung definiert<br> | ||
70 - in Umsetzung | 70 - in Umsetzung<br> | ||
90 - Umsetzung abgeschlossen | 90 - Umsetzung abgeschlossen<br> | ||
99 - Abbruch per Beschluss (Dokumentation dazu erforderlich) | 99 - Abbruch per Beschluss (Dokumentation dazu erforderlich)<br> | ||
100 - Maßnahme bestätigt | 100 - Maßnahme bestätigt<br> | ||
= ToDo-Liste: Allgemeines = | = ToDo-Liste: Allgemeines = | ||
Zeile 109: | Zeile 109: | ||
! Arbeitspaket !! Wer !! Prio !! Status !! WV | ! Arbeitspaket !! Wer !! Prio !! Status !! WV | ||
|- | |- | ||
| [[Füllstandsregler Basisboard Multi-MCU]] || || | | [[Füllstandsregler Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Regler Boilerdruck Messplatine Multi-MCU]] || || | | [[Regler Boilerdruck Messplatine Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Mischregler Basisboard Multi-MCU]] || || | | [[Mischregler Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Durchflussregler Basisboard Multi-MCU]] || || | | [[Durchflussregler Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Preinfusion Basisboard Multi-MCU]] || || | | [[Preinfusion Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[einfacher (manueller) Kaffeebezug Basisboard Multi-MCU]] || || | | [[einfacher (manueller) Kaffeebezug Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Kaffeebezug Basisboard Multi-MCU]] || || | | [[Kaffeebezug Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Wasserbezug Basisboard Multi-MCU]] || || | | [[Wasserbezug Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Dampfbezug Basisboard Multi-MCU]] || || | | [[Dampfbezug Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Spülvorgänge Basisboard Multi-MCU]] || || | | [[Spülvorgänge Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Grundreinigung Basisboard Multi-MCU]] || || | | [[Grundreinigung Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |- | ||
| [[Tastenbedienung Basisboard Multi-MCU]] || || 99 || 10 || | | [[Tastenbedienung Basisboard Multi-MCU]] || || 2 || 10 || | ||
|- | |||
| || || || || | |||
|} | |||
= ToDo-Liste: MATLAB®-Funktionen und GUI = | |||
{| class="wikitable sortable" | |||
|- | |||
! Arbeitspaket !! Wer !! Prio !! Status !! WV | |||
|- | |||
| Messwerte erfassen (Labor) || || 1 || 70 || | |||
|- | |||
| Messwerte erfassen Multi-MCU || || 1 || 10 || | |||
|- | |||
| Pumpenansteuerung (Labor) || || || 100 || | |||
|- | |||
| Pumpenansteuerung Multi-MCU || || 1 || 10 || | |||
|- | |||
| Füllstandsregler (Labor) || || || 100 || | |||
|- | |||
| Füllstandsregler Multi-MCU || || 1 || 10 || | |||
|- | |||
| Regler Boilerdruck (Labor) || || || 100 || | |||
|- | |||
| Regler Boilerdruck Multi-MCU || || 1 || 10 || | |||
|- | |||
| Mischregler (Labor) || || 1 || 70 || | |||
|- | |||
| Mischregler Multi-MCU || || 1 || 10 || | |||
|- | |||
| Durchflussregler (Labor) || || 1 || 70 || | |||
|- | |||
| Durchflussregler Multi-MCU || || 1 || 10 || | |||
|- | |||
| Preinfusion Multi-MCU || || 99 || 10 || | |||
|- | |||
| einfacher Kaffeebezug (Labor) || || || 100 || | |||
|- | |||
| einfacher Kaffeebezug Multi-MCU || || 1 || 10 || | |||
|- | |||
| Kaffeebezug (Labor) || || || 99 || | |||
|- | |||
| Kaffeebezug Multi-MCU || || 2 || 10 || | |||
|- | |||
| Wasserbezug (Labor) || || || 99 || | |||
|- | |||
| Wasserbezug Multi-MCU || || 1 || 10 || | |||
|- | |||
| Dampfbezug || || || 100 || | |||
|- | |||
| Dampfbezug Multi-MCU || || 1 || 10 || | |||
|- | |||
| Spülvorgänge (Labor) || || || 99 || | |||
|- | |||
| Spülvorgänge Multi-MCU || || 1 || 10 || | |||
|- | |||
| Grundreinigung Multi-MCU || || 2 || 10 || | |||
|- | |||
| Tastenbedienung (Labor) || || || 99 || | |||
|- | |||
| Tastenbedienung Multi-MCUv || || 3 || 10 || | |||
|- | |||
| Anpassungen für Schrittmotorensteuerung || || 1 || 70 || | |||
|- | |||
| Adaption an Multi-MCU || || 1 || 10 || | |||
|- | |||
| || || || || | |||
|} | |||
= ToDo-Liste: APP = | |||
{| class="wikitable sortable" | |||
|- | |||
! Arbeitspaket !! Wer !! Prio !! Status !! WV | |||
|- | |||
| APP - Konzept || || 2 || 10 || | |||
|- | |||
| Messwerte erfassen APP || || 99 || 10 || | |||
|- | |||
| Preset / Profilverwaltung || || 99 || 10 || | |||
|- | |- | ||
| || || || || | | || || || || | ||
|} | |} |
Version vom 28. März 2023, 21:59 Uhr
Die Systemsoftware lässt sich nicht ohne die Beachtung der Systemelektronik erstellen.
Für die Systemsoftware wurde ein mehrstufiger Entwicklungsprozess definiert:
- Nutzung einer MCU auf der MicroPython verwendet werden kann. Dies ist durch das STM32F411 nucleo Board der Basiselektronik bzw. durch den Raspberry Pi Pico der Multi-MCU-Elektronik gegeben.
- Auf der MCU werden lediglich die elementaren Grundfunktionen (GPIO schalten und erfassen, Messwert erfassen, PWM Ausgeben, Sollwert ausgeben, etc.) realisiert und über eine MicroPython zu MATLAB® Schnittstelle [41] wird die Funktionalität in einer MATLAB® GUI hergestellt.
- Die Softwareentwicklung startet mit der labortechnischen Espressomaschine und wird auf die weiteren Projekte schrittweise transportiert. Dazu ist die Maschinenelektronik gleich zu halten und es sind die gleichen Anschluss-Pins zu verwenden.
- Nach Abschluss der Testphase der MATLAB® Bedienung wird schrittweise die Betriebssoftware in MicroPython auf der MCU implementiert, so dass am Ende dieses Prozessschrittes die MATLAB®-Verbindung lediglich für weiterführende Datenerfassung und grafische Darstellungen verwendet wird, welche nicht mit dem Display der Maschine möglich ist oder dort nicht dargestellt werden soll.
- Ob eine Portierung des MicroPython-Codes nach Microcontroller C durchgeführt wird, ist derzeit nicht entschieden.
Es wurden mehrere, die Softwareentwicklung vorbereitende FMEAs durchgeführt. Die hierdurch entstandenen Dokumentation befinden sich in der Dokumentationsauflistung. Im weiteren wurde eine Projektarbeit zur Konzeptfindung für die Badienung durchgeführt. Auch die hierdurch entstandenen, teilweise auf die FMEA aufbauenden Dokumente befinden sich in der Dokumentationsliste.
Projektdokumentationen und Beschreibungen
- Konzeptbeschreibung Systemelektronik
- Workflow Embedded Systems
- Funktionsanalyse Boilerbefüllung, Tassenwärmung, Milchschäumen
- Funktionsanalyse zur halbautomatischen Entkalkung
- Funktionsanalyse Rückspülung und Spülung
- Funktionsanalyse Espresso und Teewasserbezug
- Funktionsanalyse Energieeffizienz
- Funktionsanalyse Bedienung
- Funktionsanalyse Abbildung aller Maschinen
- Fehleranalyse Entschichtung
- Fehleranalyse Brühgruppe und Dampfbezug
- Fehleranalyse Mischer und Magnetventile
- Fehleranalyse Boiler
- Dichtheitsprüfung
- Prüfkonzepte Magnetventile und Mischer
- Maßnahmen Boiler
- Maßnahmen Entschichtung
- Maßnahmen Brühgruppe und Dampf
- FMEA Tabelle
- PPT Simulation des Bedienkonzeptes
- Bedienkonzept Funktionsliste
- Bedienkonzept Projektdokumentation
- MATLAB® GUI
- Entwicklung Systemsoftware SoSe2022
- Entwicklung Systemsoftware SoSe2023
Programmcode
Aktueller Programmcode und Änderungsdokumentation ab Jan 2023
Software-Bugfixes
ToDo-Liste(n) Systemsoftware
Prioritätsangabe
Prio 1 - Abarbeitung zeitnah erforderlich
Prio 2 - Abarbeitung erforderlich
Prio 3 - Abarbeitung kann warten
Prio 99 - Abarbeitung erfordert Vorarbeiten
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: Allgemeines
Arbeitspaket | Wer | Prio | Status | WV |
---|---|---|---|---|
Sicherheitsfunktionen | 99 | 50 | ||
Übersicht über verbaute Aktorik und Sensorik in Tabellenform | 2 | 90 | ||
Stromsparmodus | 99 | 10 | ||
ToDo-Liste: MCUs - Hardwarenahe Software
Arbeitspaket | Wer | Prio | Status | WV |
---|---|---|---|---|
Grundfunktionen der MCU und mehrere MCUs | Armin Rohnen | 1 | 70 | |
UART-Kommunikation Multi-MCU | 3 | 10 | ||
Basisboard: Schalten Magnetventile (Labor) STM32-Basisboard MATLAB®GUI | 100 | |||
Basisboard: Pumpenansteuerung Basisboard Multi-MCU | 1 | 10 | ||
Basisboard: Schrittmotorsteuerungen Basisboard Multi-MCU | 1 | 10 | ||
Basisboard: Tastenerkennung Basisboard Multi-MCU | 3 | 10 | ||
Basisboard: Füllstandserkennung Basisboard Multi-MCU | 1 | 10 | ||
Basisboard: Durchflussmessung Basisnoard Multi-MCU | 1 | 10 | ||
SSR-Platine: Schalten Magnetventile SSR-Platine Multi-MCU | 1 | 10 | ||
SSR-Platine: Schrittmotorsteuerungen SSR-Platine Multi-MCU | 1 | 10 | ||
Messplatine: Messdatenerfassung Multi-MCU | 1 | 10 | ||
ToDo-Liste: MCUs - Realisierung und Übernahme der Funktionen
ToDo-Liste: MATLAB®-Funktionen und GUI
Arbeitspaket | Wer | Prio | Status | WV |
---|---|---|---|---|
Messwerte erfassen (Labor) | 1 | 70 | ||
Messwerte erfassen Multi-MCU | 1 | 10 | ||
Pumpenansteuerung (Labor) | 100 | |||
Pumpenansteuerung Multi-MCU | 1 | 10 | ||
Füllstandsregler (Labor) | 100 | |||
Füllstandsregler Multi-MCU | 1 | 10 | ||
Regler Boilerdruck (Labor) | 100 | |||
Regler Boilerdruck Multi-MCU | 1 | 10 | ||
Mischregler (Labor) | 1 | 70 | ||
Mischregler Multi-MCU | 1 | 10 | ||
Durchflussregler (Labor) | 1 | 70 | ||
Durchflussregler Multi-MCU | 1 | 10 | ||
Preinfusion Multi-MCU | 99 | 10 | ||
einfacher Kaffeebezug (Labor) | 100 | |||
einfacher Kaffeebezug Multi-MCU | 1 | 10 | ||
Kaffeebezug (Labor) | 99 | |||
Kaffeebezug Multi-MCU | 2 | 10 | ||
Wasserbezug (Labor) | 99 | |||
Wasserbezug Multi-MCU | 1 | 10 | ||
Dampfbezug | 100 | |||
Dampfbezug Multi-MCU | 1 | 10 | ||
Spülvorgänge (Labor) | 99 | |||
Spülvorgänge Multi-MCU | 1 | 10 | ||
Grundreinigung Multi-MCU | 2 | 10 | ||
Tastenbedienung (Labor) | 99 | |||
Tastenbedienung Multi-MCUv | 3 | 10 | ||
Anpassungen für Schrittmotorensteuerung | 1 | 70 | ||
Adaption an Multi-MCU | 1 | 10 | ||
ToDo-Liste: APP
Arbeitspaket | Wer | Prio | Status | WV |
---|---|---|---|---|
APP - Konzept | 2 | 10 | ||
Messwerte erfassen APP | 99 | 10 | ||
Preset / Profilverwaltung | 99 | 10 | ||