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

Tag 75 von 365 · Einsteiger · Monat 3: Erste Systeme

Tag und Nacht

Der Tageslichtsensor meldet über Activate, ob Sonne auf ihn fällt. Damit schaltest du Außenlicht – und mit einem Zähler baust du Zeitpläne.

Lektion 12 Min. Woche 11

Das lernst du heute

  • Tageslichtsensor auslesen
  • Licht bei Dunkelheit
  • Zeitplan mit Zähler

Draußen geht die Sonne unter, und der Weg zur Landeplattform liegt im Dunkeln. Ein Tageslichtsensor (StructureDaylightSensor) sagt dem Chip, wann es Zeit für Licht ist.

Was der Sensor meldet

LogicTypeBedeutung
Activate1, wenn Sonnenlicht auf den Sensor fällt, sonst 0
SolarIrradianceSonnenleistung in W, 0 ohne Sonnenlicht
SolarAngleWinkel zur Sonne in Grad
Horizontal, VerticalRichtung der Sonne in Grad

Für Tag und Nacht reicht Activate. Der Wert gilt für den Sensor selbst: Steht er im Schatten eines Gebäudes, ist für ihn Nacht. Bau ihn frei auf, mit Blick zum Himmel.

SolarIrradiance verrät mehr. Bei schlechtem Wetter sinkt der Wert, ohne dass Activate auf 0 springt. Wer schon bei trübem Himmel Licht will, vergleicht diesen Wert mit einer Grenze.

lbn sonne SENSOR HASH("Sonne") Activate Average
seqz dunkel sonne          # 1 = keine Sonne
sbn LAMPE HASH("Aussenlicht") On dunkel

Bei Ausfall lieber hell

Fehlt der Sensor, liefert Average NaN, und seqz macht daraus 0. Das Licht bliebe aus, und für Außenlicht ist das die falsche Richtung. Ein Licht, das tagsüber unnötig brennt, kostet ein paar Watt. Ein dunkler Weg kann dich einen Anzug kosten.

snan fehlt sonne
or dunkel dunkel fehlt     # kein Sensor: Licht an

Ein Zeitplan mit Zähler

Nicht alles richtet sich nach der Sonne. Pflanzenlicht etwa soll feste Zeiten haben. Dafür zählst du Takte. Ein Durchlauf mit einem yield dauert einen Takt, also 0,5 s:

add zeit zeit 1
mod zeit zeit PERIODE      # 0 bis PERIODE-1, dann von vorn
slt an zeit AN             # die ersten AN Takte: an

mod setzt den Zähler nach PERIODE Takten wieder auf 0. Mit PERIODE 7200 und AN 4800 bekommst du einen Stundentakt mit 40 Minuten Licht.

Ein Zähler kann auch messen: Wie lange ist es schon dunkel? Zähl hoch, solange es dunkel ist, und setz ihn bei Sonne auf 0. Eine Multiplikation spart dabei den Sprung:

add takte takte 1
mul takte takte dunkel     # bei Sonne: mal 0
Achtung

Im Spiel bleiben die Register erhalten, wenn du neuen Code aufspielst oder den Chip umsteckst. Nur sp und die Programmzeile gehen auf 0. Ein Zähler startet also mit dem alten Wert. Setz ihn deshalb vor dem Start-Label mit move auf 0. Der Simulator hier beginnt immer mit Nullen und verdeckt diesen Fehler.

Tipp

Überleg bei jedem Gerät, welcher Zustand bei einem Ausfall sicher ist. Heizung: aus. Außenlicht: an. In Woche 13 kommt das ausführlich.

Übung

Aufgabe

Ein Tageslichtsensor „Sonne“ und Wandleuchten „Aussenlicht“ hängen im Netz.

  • Fällt kein Sonnenlicht auf den Sensor (Activate = 0), sind die Leuchten an, sonst aus.
  • Die LED-Anzeige „Nachtzeit“ zeigt in Sekunden, wie lange es schon dunkel ist. Bei Sonne steht sie auf 0.
  • Fehlt der Sensor, ist das Licht an.

Hinweise

Hinweis 1

seqz dunkel sonne dreht 1 und 0 um.

Hinweis 2

snan fehlt sonne und or dunkel dunkel fehlt schalten bei fehlendem Sensor das Licht an.

Hinweis 3

Zähler: add takte takte 1, dann mul takte takte dunkel – Sekunden sind Takte mal 0,5.

Quiz

5 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