Hello all,
im using an openhabian and have a rule to automatically open and close hatches due to temperature and/or Rain.
Theres also a setting to do this manually with a switch. Suddenly i cannot switch back to Auromtic mode and recive the following logentry:
2020-04-02 18:23:34.716 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule ‘Manuellaus’: The name ‘Temp3’ cannot be resolved to an item or type; line 168, column 7, length 5
2020-04-02 18:23:34.716 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule ‘Manuellaus’: The name ‘Temp3’ cannot be resolved to an item or type; line 201, column 7, length 5
The Rules is as follows below hopefully someone can tell me why this happens now.
var Number Tempa = 24 var Number Tempb = 26 var Number Tempc = 28 var Number Tempd = 30 var Number
Tempe = 23 var Number Tempf = 25 var Number Tempg = 27 var Number Temph = 29
rule Temperaturschalter1
when
Item Regensensor changed from CLOSED to OPEN
then
Tempa = 150
Tempb = 150
Tempc = 150
Tempd = 150
Tempe = -150
Tempf = -150
Tempg = -150
Temph = -150
Relais7.sendCommand(ON)
Relais8.sendCommand(ON)
createTimer(now.plusMillis(30000), [|
Relais8.sendCommand(OFF)
Relais7.sendCommand(OFF)
])
end
rule Temperaturschalter2
when
Item Regensensor changed from OPEN to CLOSED
then
if (Temp3.state > 30 ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(20000), [|
Relais8.sendCommand(OFF) ])
Tempd = 150
Temph = 29
} else if(Temp3.state > 28) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(15000), [|
Relais8.sendCommand(OFF) ])
Tempc = 150
Tempd = 30
Tempg = 27
} else if(Temp3.state > 26) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(10000), [|
Relais8.sendCommand(OFF) ])
Tempb = 150
Tempc = 28
Tempf = 25
} else if(Temp3.state > 24) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF) ])
Tempa = 150
Tempb = 26
Tempe = 23
}
end
rule Temperaturschalter3
when
Item Temp3 changed then if (Temp3.state > Tempa ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF)
])
Tempa = 150
Tempb = 26
Tempe = 23
}
if (Temp3.state > Tempb ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF)
])
Tempb = 150
Tempc = 28
Tempf = 25
createTimer(now.plusMillis(10000), [| ])
}
if (Temp3.state > Tempc ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF)
])
Tempc = 150
Tempd = 30
Tempg = 27
createTimer(now.plusMillis(10000), [| ])
}
if (Temp3.state > Tempd ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF)
])
Tempd = 150
Temph = 29
createTimer(now.plusMillis(10000), [| ])
}
if (Temp3.state < Tempe ) {
Relais7.sendCommand(ON)
Relais8.sendCommand(ON)
createTimer(now.plusMillis(15000), [|
Relais8.sendCommand(OFF)
Relais7.sendCommand(OFF)
])
Tempe = -150
Tempa = 24
createTimer(now.plusMillis(10000), [| ])
}
if (Temp3.state < Tempf ) {
Relais7.sendCommand(ON)
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais7.sendCommand(OFF)
Relais8.sendCommand(OFF)
])
Tempf = -150
Tempb = 26
createTimer(now.plusMillis(10000), [| ])
}
if (Temp3.state < Tempg ) {
Relais7.sendCommand(ON)
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF)
Relais7.sendCommand(OFF)
])
Tempg = -150
Tempc = 28
createTimer(now.plusMillis(10000), [| ])
}
if (Temp3.state < Temph ) {
Relais7.sendCommand(ON)
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF)
Relais7.sendCommand(OFF)
])
Temph = -150
Tempd = 30
}
end
rule Manuellan
when
Item Manuell changed from CLOSED to OPEN then
Relais7.sendCommand(ON)
Tempa = 150
Tempb = 150
Tempc = 150
Tempd = 150
Tempe = -150
Tempf = -150
Tempg = -150
Temph = -150 end rule Manuellaus when
Item Manuell changed from OPEN to CLOSED then
Relais7.sendCommand(OFF)
if (Temp3.state > 30 ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(20000), [|
Relais8.sendCommand(OFF) ])
Tempd = 150
Temph = 29
} else if(Temp3.state > 28) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(15000), [|
Relais8.sendCommand(OFF) ])
Tempc = 150
Tempd = 30
Tempg = 27
} else if(Temp3.state > 26) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(10000), [|
Relais8.sendCommand(OFF) ])
Tempb = 150
Tempc = 28
Tempf = 25
} else if(Temp3.state > 24) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF) ])
Tempa = 150
Tempb = 26
Tempe = 23
}
end
rule Manuellaus when
Item Manuell changed from OPEN to CLOSED then
Relais7.sendCommand(OFF)
if (Temp3.state > 30 ) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(20000), [|
Relais8.sendCommand(OFF) ])
Tempd = 150
Temph = 29
} else if(Temp3.state > 28) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(15000), [|
Relais8.sendCommand(OFF) ])
Tempc = 150
Tempd = 30
Tempg = 27
} else if(Temp3.state > 26) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(10000), [|
Relais8.sendCommand(OFF) ])
Tempb = 150
Tempc = 28
Tempf = 25
} else if(Temp3.state > 24) {
Relais8.sendCommand(ON)
createTimer(now.plusMillis(5000), [|
Relais8.sendCommand(OFF) ])
Tempa = 150
Tempb = 26
Tempe = 23
}
end
Is there maybe a hardware defect? cause this happened suddenly and after 1 year of use or more.