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

Tag 344 von 365 · Experte · Monat 12: Meisterstücke

Großprojekt: planen

Ein Großprojekt planen: Anforderungen als nummeriertes Lastenheft sammeln, eine Geräteliste anlegen und ein Namensschema festlegen, bevor die erste Zeile Code entsteht.

Lektion 20 Min. Woche 50

Das lernst du heute

  • Anforderungen sammeln
  • Geräteliste
  • Namensschema

Die letzten Wochen des Jahres gehören einem Großprojekt: einer Basisautomation mit Lebenserhaltung, Energie, Produktion, Logistik und einer Zentrale. Wer so etwas einfach drauflos baut, hat nach drei Abenden fünf Chips, die sich gegenseitig ins Gehege kommen. Deshalb beginnt die Arbeit mit Papier.

Anforderungen sammeln

Schreib auf, was die Anlage tun muss – kurz, prüfbar und nummeriert:

Nr.Anforderung
A1Alarm, wenn der Druck eines Raums unter 90 oder über 110 kPa liegt
A2Alarm, wenn der Sauerstoffanteil unter 19 % fällt
A3Alarm, wenn der Sensor eines Raums fehlt
A4Eine Anzeige zeigt, wie viele Räume im Alarm sind

„Prüfbar“ heißt: Zu jeder Zeile gibt es einen Testfall. „Die Luft soll gut sein“ ist keine Anforderung, „Sauerstoff mindestens 19 %“ schon. Die Nummern tauchen später im Code als Kommentar auf – so sieht man, welche Zeile welche Anforderung erfüllt.

Trenn dabei drei Sorten: was die Anlage muss, was schön wäre und was nie passieren darf. Die dritte Liste ist die wichtigste. Aus ihr werden die sicheren Zustände.

Die Geräteliste

Jedes Gerät bekommt eine Zeile: Raum, Aufgabe, Prefab, Name im Spiel. Die Liste ist die Bauanleitung für die Basis und der Kopfkommentar für die Chips. Was nicht in der Liste steht, wird nicht gebaut – und was gebaut ist, steht in der Liste.

Das Namensschema

Bei fünf Geräten reicht „Heizung“. Bei fünfzig nicht mehr. Ein Schema macht Namen vorhersagbar: Raum_Funktion für Geräte in Räumen, System_Wert für Schnittstellen.

NameBedeutung
„Wohn_Luft“Gassensor im Wohnraum
„Labor_Alarm“Blinklicht im Labor
„LS_Status“Status der Lebenserhaltung
„EN_Puls“Lebenszeichen der Energie

Mit dem Schema kann ein einziges Unterprogramm jeden Raum prüfen: Der Hauptteil übergibt nur die Namen, die Logik bleibt gleich.

sge alarm p P_MIN          # A1: Druck nicht zu niedrig
sle tmp p P_MAX            # A1: Druck nicht zu hoch
and alarm alarm tmp
sge tmp o2 O2_MIN          # A2: genug Sauerstoff
and alarm alarm tmp
seqz alarm alarm           # A3: NaN macht jede Pruefung falsch, also Alarm
Tipp

Halte die Namen kurz und ohne Umlaute. Sie stehen dutzendfach in HASH("…"), und jedes Zeichen zählt gegen die 4096.

Übung

Aufgabe

Setz das Lastenheft A1 bis A4 um. Zwei Räume nach dem Schema: Sensoren „Wohn_Luft“ und „Labor_Luft“, Blinklichter „Wohn_Alarm“ und „Labor_Alarm“, Anzeige „Alarme“. Ein Unterprogramm raum prüft einen Raum, der Hauptteil ruft es für beide auf.

Hinweise

Hinweis 1

Hauptteil: anzahl auf 0, dann je Raum zwei move mit HASH("…") und jal raum.

Hinweis 2

Im Unterprogramm „alles in Ordnung“ prüfen (sge, sle, and) und am Ende mit seqz umdrehen. NaN fällt dabei von selbst in den Alarm.

Hinweis 3

add anzahl anzahl alarm zählt die Räume, j ra springt zurück.

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