Adaption an Multi-MCU - Neuprogrammierung MATLAB® GUI: Unterschied zwischen den Versionen

Aus Technische Beeinflussbarkeit der Geschmacksache Kaffee
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
= Melina Scherf, 14.05.2023 =
Mit der neuen GUI-Oberfläche ist nun die Initialisierung der MCUs, die Verarbeitung der MWP-Messwerte und die automatische sowie manuelle Datensicherung möglich.
= Melina Scherf, 14.05.2023 =
= Melina Scherf, 14.05.2023 =
Die Messwerte werden nun im Messwert-Puffer gespeichert und können von anderen functions verarbeitet werden.
Die Messwerte werden nun im Messwert-Puffer gespeichert und können von anderen functions verarbeitet werden.

Version vom 18. Mai 2023, 17:05 Uhr

Melina Scherf, 14.05.2023

Mit der neuen GUI-Oberfläche ist nun die Initialisierung der MCUs, die Verarbeitung der MWP-Messwerte und die automatische sowie manuelle Datensicherung möglich.

Melina Scherf, 14.05.2023

Die Messwerte werden nun im Messwert-Puffer gespeichert und können von anderen functions verarbeitet werden.

Melina Scherf, 13.05.2023

In der MATLAB® GUI wurde die Verarbeitungsfunktion der Messwert-Platine erstellt. Diese kann nun einkommende Messwerte von Fehlern und Codezeilen unterscheiden.

Melina Scherf, 07.05.2023

Das von Armin Rohnen erstellte Programm zur simulierten Messdatenerfassung wurde eingepflegt und kann über einen Knopf gestartet und beendet werden.

Melina Scherf, 06.05.2023

Die Initialisierung aller vier MCUs ist nun möglich.
Wichtig ist hierbei, dass die if-Abfrage der Funktion, die die Ports hochzählt, eine zusätzliche Variable aufweist. Diese verhindert das hochzählen bevor die Microcontroller-Verarbeitung abgeschlossen ist. Dies wurde im Code wie folgt realisiert:

Hochzählen-Funktion:

  if contains(app.zeile_char,'ssr') && app.ssr_init == 0
       (...)                   
       app.next = 1;
  end


Hochzählen-Funktion:

  if app.port_nummer < length(app.ports) && app.next == 1
       app.next = 0;
       (...)
  end

Die UND-Bedingung in der Hochzählen-Funktion verhindert, die Bearbeitung des nächsten Ports bevor der aktuelle Port abgeschlossen wurde.

Melina Scherf, 28.04.2023

Während der Neuprogrammierung der MATLAB® GUI ist so vorzugehen, dass jeder hinzugefügte Codeabschnitt zunächst mit Versuchs-Microcontrollern getestet wird. Dazu wurden Melina Scherf 4 Versuchs-Microcontroller übergeben.
Um die Kommunikation zwischen MATLAB® und MicroPython zu ermöglichen, müssen die MCUs initialisiert werden. Dazu wurde mit Armin Rohnen eine Workshop durchgeführt, in welchem das Vorgehen zur Initialisierung vorgestellt wurde. Anschließend wurde von Melina Scherf diese in den neuen Code eingepflegt. Die MCUs heißen im Code nun ssr_platine, bas_platine, mwp_platine, rpi_platine nach zuvor festgelegten Definition der Benennungen. So wird die Ansprache der alten STM32 zukünftig auf unterschiedliche MCUs aufgeteilt werden.

Melina Scherf, 16.04.2023

Als Vereinfachungspotential wurde zum einen die generelle Übersichtlichkeit des Codes festgestellt. Um dies zu verbessern, wird mit größeren Einzügen gearbeitet, um die übergeordneten Funktionen auf einen Blick zu erkennen. Die Reihenfolge der functions wird zudem thematisch sinnvoll gegliedert, vorläufig in:

  • Programme
  • Regler
  • Kommunikation mit MCU
  • Aktoren

Dazu wurde am Anfang der methods im Code ein Inhaltsverzeichnis und über den jeweiligen Abschnitten Überschriften eingefügt.
Das Programm des Mischwasserbezugs besteht im vorhanden Code aus 8 Funktionen, diese sollen zusammengekürzt und (sofern möglich) in einer Funktion zusammengefasst werden.

Melina Scherf, 01.04.2023

Die Neuprogrammierung der MATLAB® GUI wird von Madita vom Stein und Melina Scherf durchgeführt.
Dabei wird Madita vom Stein die graphische Oberfläche der App erstellen. Es soll versucht werden eine übersichtlichere und ansprechendere Ansicht insbesondere des manuellen Modus' zu erarbeiten.
Melina Scherf wird sich in den bereits bestehenden Code einarbeiten und Vereinfachungs- und Verbesserungspotentiale identifizieren. Diese sollen in die neue MATLAB® GUI einfließen.

Melina Scherf, 31.03.2023

Um den aktuellen Projektteilnehmern einen besseren Überblick zu gewähren, wurde beschlossen die MATLAB® GUI neu zu programmieren. Dies soll dazu beitragen die Lesbarkeit des Codes zu erhöhen.

Melina Scherf, 24.03.2023

Ein Einführungsworkshop wurde durch Armin Rohnen durchgeführt. Dieser diente dazu, den Projektteilnehmern einen ersten Einblick in die Programmierung von MATLAB® in Kombination mit MicroPython zu geben.
Es wurde die generelle Funktion des MATLAB® App Designers vorgestellt und dafür eine erste Testoberfläche erstellt, welche einen Raspberry Pi initialisiert und eine Lampe per Schalter an- und ausschaltet.
Der dabei entstandene Code wurde von Melina Scherf kommentiert, um den anderen Projektteilnehmern, die zuvor noch nicht mit (Micro)Python gearbeitet hatten, eine eigenständige Nacharbeitung zu ermöglichen

Armin Rohnen, 16.02.2023

Für die Inbetriebnahme der Multi-MCU-Elektronik muss der Programmcode der MATLAB®-GUI entsprechend angepasst werden. Die bisherige Datenverarbeitung der STM32-MCU wird dabei auf drei Datenverarbeitungen aufgeteilt. Die angeschlossenen MCUs müssen dabei eindeutig identifiziert werden.