Habe schon viele Anregungen von Euch erhalten - vielen Dank an die Autoren.
Weiß jemand von Euch, wie ein negativer Wert in einer Bedingung zu "verwursteln" ist, ohne erst eine Zwischenvariable zu bemühen?
Die dritte Zeile des folgenden Makros funktioniert nicht, ich muß sie entfernen, damit das ganze läuft.
(Die Zeile ist nur dazu gedacht, einen falschen Alarm wegen dem Startwert des Sensors zu unterdrücken.)
Code: Alles auswählen
**! ============================================================
**! OBJEKT AussenFrostUeberwachung
**! ============================================================
**! OBJEKT-TYP : Schalter
**! BEZEICHNUNG : Außenfrostüberwachung
**! STARTWERT : aus
**! ------------------------------------------------------------
**! AUSFÜHRUNGSINTERVALL : nein
**! AUSFÜHRUNG BEI EINGABE : ja
**! AUSFÜHRUNG BEI ÄNDERUNG : nein
**!
**! ============================================================
**! VARIABLENDEFINITIONEN
**! ============================================================
**! NAME TYP STARTWERT
**! ------------------------------------------------------------
**! FrostAlarm EAGeraet aus
**! Details Zeichen
SICHERN("AussenFrostUeberwachung")
WENN KS300Temp <= 0
UND KS300Temp > -100
UND AussenFrostUeberwachung EINGESCHALTET
DANN
WENN STOPPZEIT(Ansagetext.LetzterStart) > "00:05:00"
DANN
StartWin(",C:\Haussteuerung\Tools\,BildschirmAn.exe,")
Ansagetext.LetzterStart:=ZEIT
WARTE("00:00:03")
ENDEWENN
Ansagetext.LetzterStart:=ZEIT
Details := "Außentemperatur: "+KS300Temp+" Grad"
WENN FrostAlarm AUSGESCHALTET
DANN
Ansagetext := "ACHTUNG, ACHTUNG: Frostgefahr. ACHTUNG, ACHTUNG: Frostgefahr. " + Details
SONST
Ansagetext := "ACHTUNG, ACHTUNG: Aussenfrost. " + Details
ENDEWENN
FrostAlarm EINSCHALTEN
STARTE(ButtonAlarm)
ENDEWENN
WENN KS300Temp > 3
DANN
FrostAlarm AUSSCHALTEN
ENDEWENN
C.