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

Tag 311 von 365 · Experte · Monat 11: Optimierung und Fehlersuche

Sonden im Code

Sonden im Code: Zwischenwerte auf Anzeigen und aufs Gehäuse schreiben, LineNumber eines anderen Chips lesen und Zähler für Schaltvorgänge einbauen.

Lektion 16 Min. Woche 45

Das lernst du heute

  • Werte auf Anzeigen und db schreiben
  • LineNumber lesen
  • Zähler einbauen

Die Werkstattheizung schaltet. Aber wie oft? Zu oft, weil die Hysterese zu schmal ist? Ohne Messung rätst du nur. Eine Sonde ist eine Zeile, die einen Zwischenwert dorthin schreibt, wo du ihn sehen kannst – wie ein Messgerät, das du an eine Leitung klemmst.

Drei Orte für eine Sonde

OrtZeilegut für
Gehäuses db Setting r0einen Wert, ganz ohne zusätzliches Gerät
LED-Anzeigesbn ANZ HASH("Sonde1") Setting r0mehrere Werte gleichzeitig, mit Einheit über Mode
Logic Memorysbn SPEICHER HASH("Sonde2") Setting r0Werte, die ein zweiter Chip auswerten soll

Schreib den Wert so, wie der Chip ihn sieht, also vor jeder Umrechnung. Gerade dann fallen NaN, Kelvin statt Celsius und doppelte Summen sofort auf.

Achtung

s db Setting überschreibt das Setting des Gehäuses. Nutzt ein anderer Chip dieses Setting als Briefkasten, zerstört die Sonde seine Nachricht. Nimm dann eine eigene Anzeige.

LineNumber: Wo steht der Chip?

LineNumber eines Gehäuses ist die Zeile, auf der sein Chip gerade steht. Ein zweiter Chip kann sie lesen und anzeigen. Zeigt die Anzeige minutenlang dieselbe Zeile in einer Warteschleife, wartet der Chip dort auf eine Bedingung, die nie eintritt – etwa auf eine Tür, die schon offen ist.

define GEHAEUSE HASH("StructureCircuitHousing") # IC-Gehaeuse
lbn zeile GEHAEUSE HASH("Schleusenchip") LineNumber Average
sbn ANZ HASH("Sonde1") Setting zeile

Im Normalbetrieb wechselt der Wert ständig, meist steht dort die Stelle, an der der Chip auf den nächsten Takt wartet. Aussagekräftig wird LineNumber, wenn sie sich nicht mehr bewegt.

Zähler einbauen

Viele Fragen lauten „wie oft?“: Wie oft läuft die Schleife, wie oft schaltet die Heizung ein, wie lange bleibt ein Zustand? Ein Zähler beantwortet das.

add durchlauf durchlauf 1     # zaehlt jeden Takt
sgt flanke an alt           # 1 nur beim Wechsel von 0 auf 1
add starts starts flanke
move alt an

Der Flankenzähler zählt nur das Einschalten, nicht jeden Takt mit laufender Heizung. Steigt er alle paar Sekunden, ist die Hysterese zu schmal.

Tipp

Manche Sonden lohnen sich für immer. Eine Anzeige mit der Zahl der Einschaltvorgänge hängt in vielen Basen dauerhaft neben der Heizung.

Schaubild

Lesen mit l, Schreiben mit s Gas-Sensor (d0) Temperature 293.15 IC10 r0 = 293.15 Wandlampe (d1) On 1 l r0 d0 Temperature Gerät → Register s d1 On 1 Wert → Gerät
Eine Sonde ist ein zusätzliches s oder sbn: Der Chip schreibt einen Zwischenwert dorthin, wo du ihn ablesen kannst.

Übung

Aufgabe

Die Werkstattheizung läuft schon. Bau zwei Sonden ein: Das Gehäuse zeigt die gemessene Temperatur in Kelvin (bei fehlendem Sensor -1), die Anzeige „Schaltzahl“ zählt, wie oft die Heizung eingeschaltet wurde. Die Regelung selbst bleibt unverändert.

Hinweise

Hinweis 1

Erst select tmp ok temp -1, dann s db Setting tmp.

Hinweis 2

Einschalten erkennst du mit sgt flanke an alt: 1 nur, wenn an jetzt 1 und vorher 0 ist.

Hinweis 3

Nach dem Zählen move alt an, sonst zählt der Chip jeden Takt.

Quiz

4 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