[Gelöst] PID20 Problem mit Sensor Reading 0

Begonnen von Joachim, 12 November 2015, 20:23:26

Vorheriges Thema - Nächstes Thema

Joachim

Moin John, Moin @ all,
Für eine Vorlauftemperatursteuerung greife ich meine Ventilstellungen mit 39_VALVES.pm ab, und hier habe ich ein Problem.
Wenn alle Ventile geschlossen sind, steht valve_max natürlich auf 0, und das quittiert PID20 mit
alarm - no valve_max yet for Ventilstellung
um sicherzustellen, dass es nicht an VALVES liegt, habe ich mir einen dummy und ein at gebaut:

define alive dummy
attr alive room alive
attr alive setList 0 1

define at_alive at +*00:01:00 {if ("$value{alive}" == 0) {fhem("set alive 1")} else {fhem("set alive 0")}}
attr at_alive room alive

und diesen als Sensor definiert.
Wenn der dummy auf 1 steht funktioniert der PID20-Regler, wenn der dummy auf 0 steht kommt folgende Meldung:
alarm - no state yet for alive

Frage, ist da noch ein 60 cm Fehler, oder Bug oder future?

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

John

Hallo Joachim,

such mal im 98_PID20.pm nach Alarm:

ich kann kein Fragment finden, das eine derartige Meldung fabriziert:
Zitatalarm - no state yet for alive

man findet :
"alarm - no $reading yet for $sensor"
"alarm - dead sensor"
"alarm - missing desired"

Du bist im falschen Modul ???

John

PS: zeig mal die Log-Ausgabe
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

Joachim

#2
Nein John,
bin ich nicht, siehe Screenshot.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

John

#3
Ich bin beeindruckt.

"alarm - no $reading yet for $sensor"

ergibt mit alive:state

alarm - no state yet for alive


John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

Joachim

# $Id: 98_PID20.pm 7089 2014-11-29 10:58:10Z john99sr $

und das list:
Internals:
   CFGFN      ./FHEM/000_max.cfg
   DEF        alive:state Hz_PID_00_FW:desired
   NAME       Hz_PID_00_VLT
   NR         432
   NTFY_ORDER 50-Hz_PID_00_VLT
   STATE      alarm - no state yet for alive
   TYPE       PID20
   Readings:
     2015-11-12 20:51:32   actuation       21
     2015-11-12 20:51:32   actuationCalc   -3.12
     2015-11-12 20:50:59   delta           39
     2015-11-12 20:51:32   desired         40
     2015-11-12 20:50:59   measured        1
     2015-11-12 20:51:32   p_d             0
     2015-11-12 20:51:32   p_i             0
     2015-11-12 20:51:32   p_p             -3.12
     2015-11-12 20:51:32   state           alarm - no state yet for alive
   Helper:
     actor      Hz_PID_00_FW
     actorCommand desired
     actorErrorAction freeze
     actorErrorPos 0
     actorInterval 30
     actorKeepAlive 86400
     actorLimitLower 21
     actorLimitUpper 40
     actorThreshold 1
     actorTimestamp 2015-11-12 19:08:43
     actorValueDecPlaces 0
     adjust
     calcInterval 30
     deltaGradient 0.0157056881980701
     deltaOld   40
     deltaOldTS 2015-11-12 19:45:01
     deltaTreshold 0
     desiredName desired
     disable    0
     factor_D   0.0
     factor_I   0
     factor_P   0.08
     isWindUP   1
     measuredName measured
     reading    state
     regexp     ^([\+,\-]?\d+\.?\d*$)
     reverseAction 1
     sensor     alive
     sensorTimeout 86400
     stopped    0
     updateInterval 30
Attributes:
   disable    0
   event-min-interval actuation:3540,actuationCalc:3540,delta:3540,desired:3540,measured:3540,p_d:3540,p_i:3540,p_p:3540
   event-on-change-reading actuation,actuationCalc,delta,desired,measured,p_d,p_i,p_p
   pidActorInterval 30
   pidActorKeepAlive 86400
   pidActorLimitLower 21
   pidActorLimitUpper 40
   pidActorValueDecPlaces 0
   pidCalcInterval 30
   pidDeltaTreshold 0
   pidFactor_D 0.0
   pidFactor_I 0
   pidFactor_P 0.08
   pidReverseAction 1
   pidSensorTimeout 86400
   pidUpdateInterval 30
   room       00_PID20


zum nachstellen, wie oben geschrieben:
define alive dummy
attr alive room alive
attr alive setList 0 1

define at_alive at +*00:01:00 {if ("$value{alive}" == 0) {fhem("set alive 1")} else {fhem("set alive 0")}}
attr at_alive room alive


und den dummy als sensor.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

John

Ich kann das nachvollziehen.
Muss ich mir ansehen und melde mich sobald ich mehr weiss.

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

Joachim

Danke,
habe jetzt auch ein Update gemacht, bin also auch auf der aktuellen Version.
Danke für deine Hilfe.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

John

Hallo Joachim,

wäre schön, wenn du die neue Version (V1.0.0.6)  vorab testen könntest.

John
CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

Joachim

Geht los, Rückmeldung kommt vor 0:00 Uhr.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Joachim

Hallo John,
habe jetzt natürlich nicht auf weitere Nebenwirkungen, sondern nur auf mein Problem getestet.
Da funktioniert es auf 2 Systemen so wie es soll.

Vielen Dank für die schnelle Hilfe.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232