Lokaler Fortschritt wird geladen…
PLC Gym
PLC Gym StartseiteLevel 1, 0 XP · dein Fortschritt
Mission 58 · PRO (braucht Pro)

Übung zu Mittelwert der letzten vier Messwerte: gleitender Mittelwert

Glätte einen verrauschten Füllstand. Behalte vier Messwerte, und lass jeden neuen den ältesten ersetzen.

Berechne SmoothedLevel als Mittelwert der letzten vier Level-Messwerte. Speichere sie in Readings, einem REAL-Array mit vier Plätzen, 0 bis 3. Solange Sample ON ist, nimm in jedem Zyklus einen Messwert. Leg ihn auf den Platz, auf den WriteIndex zeigt, und zähl WriteIndex dann um eins weiter. Setz WriteIndex nach Platz 3 zurück auf 0, sodass der neueste Messwert den ältesten ersetzt. Summier die vier Plätze mit einer FOR-Schleife und teile durch 4.

Diese Mission gehört zu ProErstelle ein kostenloses Konto: Jedes Konto bekommt bis 5. Dezember eine kostenlose Pro-Testphase.

Ohne Karte. Nichts zu zahlen. Nichts zu kündigen.

Official release: 5 December. Steh an dem Tag ganz oben in der Bestenliste und gewinn 3 Monate Pro, plus 2 Wochen Pro zum Verschenken an einen Freund. Platz 2 gewinnt 4 Wochen. Platz 3 gewinnt 2 Wochen. Regeln

  • Jede Lektion, ab null
  • Jede Mission und Lektion, mit jedem Level
  • Ein praktischer Test für jeden Titel, mit Zertifikat
  • Jeden Test zurückspulen, Zyklus für Zyklus
  • Musterlösungen, wenn du feststeckst
  • Der Code-Konverter, so oft du willst
Die 3D-Prozesstank, auf der diese Mission läuftPRO (braucht Pro) Mission
So läuft der Test ab

Vier Messwerte füllen das Fenster

Test 1 von 4
Vom Test gesetztVom Test geprüftSchritt 6 von 6 · 120 ms
Level
Angewendet
Zeit
Über uns 15 Min.
Belohnung
+350 XP
Anlage
3D-Prozesstank
Editoren: Siemens
SCL
Editoren: Rockwell
Strukturierter Text
Editoren: Beckhoff
Strukturierter Text
Stufe
18. Die neuesten Messwerte behalten
Gefordertes Verhalten

Mittelwert der letzten vier Messwerte: was dein Code tun muss

Ein verrauschter Füllstandswert springt herum. Glätten verhindert, dass spätere Logik auf jedes Flackern reagiert. Trends zeigt Level und SmoothedLevel nebeneinander, Zyklus für Zyklus. Das ist die erste von zwei Missionen zum selben Filter. Hier ist das Fenster, die Zahl der Messwerte, die du mittelst, fest auf vier eingestellt. Alle vier Plätze beginnen bei 0.0, also fallen die ersten drei Ergebnisse zu niedrig aus. Die nächste Mission behebt das und lässt das Fenster seine Größe ändern. Dein Filter berechnet nur eine Zahl für spätere Logik. Er schaltet weder Pumpe noch Ventil.

Sample
Sample ON nimmt in jedem Zyklus einen Level-Messwert. Sample OFF lässt SmoothedLevel, wie es ist.
Speichern und Umlaufen
Jeder Messwert kommt auf den nächsten der vier Plätze. Nach dem vierten geht es zurück zum ersten, sodass der neueste Messwert den ältesten ersetzt. Wie du den Puffer aufbaust, ist dir überlassen.
Mittelwert
Nach jedem Messwert ist SmoothedLevel die Summe der vier Plätze, geteilt durch 4. Behalte die Nachkommastellen.
Die ersten drei Messwerte
Alle vier Plätze beginnen bei 0.0, und SmoothedLevel auch. Ein leerer Platz zählt trotzdem als 0. Sind also erst 10 % und 30 % gespeichert, ist das Ergebnis 10 %: 40 geteilt durch 4.
Variablentabelle

Mittelwert der letzten vier Messwerte: Eingänge und Ausgänge

Dein Programm liest 2 Eingänge und setzt 1 Ausgang. Die Namen sind im Editor jedes Herstellers gleich.

VariableDatentypDein CodeWas es an der Maschine bedeutet
LevelREALLiestEin Eingang, den dein Code brauchtTankfüllstand, %
SampleBOOLLiestEin Eingang, den dein Code brauchtSolange ON, in jedem Zyklus einen Level-Messwert nehmen.
SmoothedLevelREALSchreibtEin Ausgang, den dein Code setztMittelwert der letzten vier Messwerte, in %.

In Siemens SCL schreibst du die eigenen Variablen eines Bausteins mit # davor, wie TIA Portal es tut: #Level. Rockwell und TwinCAT verwende einfach den Namen: Level.

Automatische Tests

Mittelwert der letzten vier Messwerte: was die Tests prüfen

  1. Nach jedem Messwert ist SmoothedLevel die Summe der vier Plätze, geteilt durch 4. Behalte die Nachkommastellen der Messwerte.
  2. Der fünfte Messwert ersetzt den ersten, und so weiter reihum durch die vier Plätze, egal wie viele Messwerte kommen.
  3. Mit Sample OFF bleibt der Mittelwert stehen. Mit Sample dauerhaft ON fügt jeder Zyklus einen Messwert hinzu.
  1. Ausprobieren Nutze die Tasten unter dem Modell und sieh, wie die Anlage reagiert.
  2. Lösung testen Jede Prüfung läuft mit einem Druck auf deinem Code.
  3. Zurückspulen PRO (braucht Pro) Wenn eine fehlschlägt, geh sie Zyklus für Zyklus zurück, um zu sehen, warum.

Hängst du bei dieser Mission fest? Frag die Mitglieder in der Umkleide.

Warum es wichtig ist

Wo du das im Betrieb sehen würdest

Wellen auf der Oberfläche lassen den Füllstandsmesswert eines Fabriktanks springen. Die Bedienperson möchte eine ruhigere Zahl auf der Anzeige.

Den Mittelwert der letzten vier Messwerte zu bilden, glättet die Wellen. Ein Messwert auf dem falschen Platz, oder einer, der nie ersetzt wird, gibt eine falsche Zahl, die eine echte Änderung verbirgt.

Wo du das findestEine Charge Getränk herstellen

In einer Getränkefabrik lassen Ventile abgemessene Mengen Wasser und Sirup in einen Mischbehälter. Ein elektrischer Mischer verrührt sie zu einer Charge. Ein Auslassventil schickt das Getränk dann in einen Lagertank. Von dort füllen Abfüllmaschinen es in Flaschen.

  1. ZutatentanksEnthalten Wasser und Sirup
  2. MischbehälterEine Charge füllen, mischen und abmessenDu bist hier
  3. LagertankHält das fertige Getränk bereit
  4. FlaschenabfüllerFüllt das Getränk in Flaschen
In einer echten Anlage: Orte, Teile und Sicherheit
  • Getränkefabrik — Wasser und Sirup mischen
  • Farbenfabrik — Zutaten zu einem gleichmäßigen Farbton mischen
  • Wasserwerk — eine abgemessene chemische Mischung ansetzen
  • Brauerei — Wasser zum Reinigen der Anlagen erhitzen

Ein voller Tank schließt seinen Zulauf nicht selbst. Wasser kommt weiter, bis das Ventil schließt, also kann ein offener Zulauf den Raum überfluten.

Eine Heizung, die nicht von Flüssigkeit bedeckt ist, kann überhitzen. Echte Tanks haben zusätzlich zum SPS-Programm eigene Sicherheitseinrichtungen.

Die Größen, Zeiten und Schnittansichten sind didaktische Entscheidungen, keine Zeichnung einer bestimmten echten Anlage.

Mach weiter

Als Nächstes auf dem Weg