Es läuft was!

Schon lange kein C++ mehr gemacht. Java ist schon sauberer; aber alles lösbar.

Einige Highlights der Steuersoftware:

  • Steuerdatei, lässt sich im Betrieb tauschen
  • wird 1x pro Sekunde durchlaufen
  • die Scriptsprache in der Steuerdatei setzt die Aktoren auf ein wenn die Bedingungen der Scriptzeile "true" ist
  • Verknüpfungen mit beliebigen Sensorwerten möglich
  • Variablen, die von einem Scriptlauf zum nächsten bestehen bleiben
  • Netzwerk-Befehle im Script empfangbar
  • Sonnenstand abfragbar
  • Zeit und Datum abfragbar
  • Timer

Testprogramme konnten u.a. schon folgendes:

  • alle Aktoren per Netzwerkbefehl ein (z.B. alle Lampen an), aus, Automatik
  • Blink-Timer
  • Blink-Timer durch Bedingung aktiviert (Netzwerk und Helligkeit getestet)
  • Aktor durch Helligkeit und Timer gesteuert

Wobei Sensor und Aktor zur Zeit nur die Debug-Ausgaben sind, dass diese gelesen und gesetzt werden. Die Hardware fehlt noch vollständig.

Besonderes Augenmerk habe ich auf die Speicherverwaltung gelegt. Speicher wird nur beim Start, d.h. beim Einlesen der Steuerdatei angefordert. Alle späteren Aktionen laufen ohne malloc() und sind damit näher an der Echtzeitfähigkeit. Ein Test gegen Memory-Leaks findet zur Zeit keine mehr, wird aber regelmäßig wiederholt und gefundene Stellen werden korrigiert. Dies ist vor allem bei wiederholten Einlesen der Steuerdatei wichtig, aber auch bei Netzwerkaktivitäten.