stationeers.de Mod-Werkstatt · Dominik1199
EN Anmelden
  1. Start
  2. IC10-Akademie
  3. Tag 269

Tag 269 von 365 · Profi · Monat 9: Logistik und Gewächshaus

Mustersammlung Profi

Die Muster der Profi-Stufe als Bausteine: Nachführung, Lastabwurf, Zielmenge und Sammelalarm – und eine Hysterese als Unterprogramm, das alle drei Regelungen bedient.

Lektion 22 Min. Woche 39

Das lernst du heute

  • Nachführung und Lastabwurf als Bausteine
  • Zielmengen und Sammelalarm als Bausteine
  • Bausteine kombinieren

Wer viele Anlagen gebaut hat, merkt: Es sind immer wieder dieselben Formen. Ein Profi schreibt sie nicht jedes Mal neu, sondern erkennt sie als Bausteine und setzt sie zusammen.

Vier Bausteine der Profi-Stufe

BausteinFormBeispiel
NachführungSollwert lesen, umrechnen, an alle schreibenSolarpanels folgen der Sonne
LastabwurfHysterese, Ausgang „an“ oberhalbKomfort aus bei wenig Reserve
ZielmengeHysterese, Ausgang „an“ unterhalbOfen bis 200 Barren
Sammelalarmviele Bedingungen, ein Signaleine Lampe für alles

Die Nachführung hat immer dieselbe Gestalt, egal ob Panels, Leuchten oder Ventile folgen:

lbn soll SENSOR HASH("Sonne") Horizontal Average
jal umrechnen                # passend zur Bauweise
select soll nacht PARK soll   # nachts parken
sb PANEL Horizontal soll

Die Umrechnung hängt von der Bauweise ab – für Solarpanels kennst du sie aus Tag 186. Nachts schickt ein select die Geräte in eine Parkstellung.

Ein Baustein für drei Regelungen

Generator, Lastabwurf und Zielmenge sehen verschieden aus, sind aber dieselbe Hysterese: „an unter der unteren Grenze, aus ab der oberen“. Beim Lastabwurf ist nur der Ausgang umgedreht – abgeworfen wird unter der Grenze, die Lampe ist das Gegenteil davon.

Also schreibst du die Hysterese einmal als Unterprogramm. Vor jedem Aufruf legst du vier Register fest:

RegisterInhalt
wertder Messwert
untendarunter geht es an
obenab hier geht es aus
zustder bisherige Zustand, danach der neue
move wert stand
move unten GEN_AN
move oben GEN_AUS
move zust gen
jal hyst
move gen zust

Der bisherige Zustand jeder Regelung bleibt in einem eigenen Register (gen, abwurf, ofen). Das Unterprogramm arbeitet nur auf zust.

Bausteine kombinieren

Ein Sammelalarm verbindet Bausteine, die nichts voneinander wissen: Akkus fehlen, Lager fehlt. Jede Bedingung wird zu 0 oder 1, or fasst sie zusammen. Zusätzlich bekommt jede Regelung ihre eigene sichere Richtung: Ohne Akkuwert läuft der Generator, ohne Lager steht der Ofen.

Achtung

Ein Unterprogramm darf keine Register überschreiben, die der Aufrufer noch braucht. Deshalb hat die Hysterese ihr eigenes Hilfsregister h und rührt tmp nicht an.

Schaubild

Aufruf und Rücksprung eines Unterprogramms Hauptschleife 2 l r0 d0 Temperature 3 jal celsius 4 s d2 Setting r1 5 l r0 d1 Temperature 6 jal celsius 7 s d3 Setting r1 8 j start celsius: sub r1 r0 273.15 j ra ra = 4 zurück zu Zeile ra
Drei Aufrufe, ein Unterprogramm: Nur die Register wert, unten, oben und zust ändern sich.

Übung

Aufgabe

Schreibe das Unterprogramm hyst (an unter unten, aus ab oben, Zustand in zust) und benutze es dreimal:

  • Generator „Notstrom“: Akku-Ratio, 30 % / 90 %, ohne Akku an
  • Lastabwurf: Akku-Ratio, 25 % / 40 %, Lampe „Komfort“ ist das Gegenteil, ohne Akku aus
  • Zielmenge: Barren in Slot 0 des Spinds „Barren“, 50 / 200, Lichtbogenofen „Huette“ (On als Freigabe, die Stapel startet ein anderer Chip), ohne Spind aus
  • Lampe „Sammel“ an, wenn Akku oder Spind fehlen

Hinweise

Hinweis 1

Das Unterprogramm hat vier Zeilen plus j ra: slt h wert oben, and zust zust h, slt h wert unten, or zust zust h.

Hinweis 2

Vor jedem jal hyst: wert, unten, oben und zust setzen. Danach den Zustand zurück in gen, abwurf oder ofen.

Hinweis 3

Die Komfortlampe ist seqz tmp abwurf.

Quiz

3 Fragen. Ab 60 % ist das Quiz bestanden – die Auswertung macht der Server.

Tag abschließen

  • Übung im Simulator bestanden
  • Quiz mit mindestens 60 % bestanden

Ohne Konto wird der Fortschritt nur in diesem Browser gespeichert.

Fehler in dieser Lektion melden

Zum Melden bitte anmelden. Anmelden

Esc
↑ ↓ wählenEnter öffnen/ öffnet die Suche überall