Moin Moin,
ich würde gerne meine bisherige DOIF-basierende Lösung zur Steuerung meines Mischermotors für den FB-Kreis auf PID20 umstellen.
Dazu habe ich die folgende Definition verwendet:
Internals: 
   CFGFN 
   DEF        EG.Heizung.Mischer.Vorlauf:temperature.avg EG.HWR.Fussbodenmischer 
   NAME       PID_MischerCommands 
   NR         75899 
   NTFY_ORDER 50-PID_MischerCommands 
   STATE      processing 
   TYPE       PID20 
   VERSION    1.0.0.9 
   Readings: 
     2017-02-17 11:11:10   actuation       30 
     2017-02-17 11:11:10   actuationCalc   29.9645 
     2017-02-17 11:11:10   delta           1.133 
     2017-02-17 11:11:10   desired         30 
     2017-02-17 11:11:10   measured        28.867 
     2017-02-17 11:11:10   p_d             0 
     2017-02-17 11:11:10   p_i             1.6395 
     2017-02-17 11:11:10   p_p             28.325 
     2017-02-17 11:11:10   state           processing 
   Helper: 
     actor      EG.HWR.Fussbodenmischer 
     actorCommand 
     actorErrorAction errorPos 
     actorErrorPos 0 
     actorInterval 40 
     actorKeepAlive 1800 
     actorLimitLower 0 
     actorLimitUpper 100 
     actorThreshold 1 
     actorTimestamp 2017-02-17 11:11:10 
     actorValueDecPlaces 0 
     adjust 
     calcInterval 60 
     deltaGradient 0.00603217367605127 
     deltaOld   1.404 
     deltaOldTS 2017-02-17 11:11:42 
     deltaTreshold 0 
     desiredName desired 
     disable    0 
     factor_D   0 
     factor_I   0.25 
     factor_P   25 
     isWindUP 
     measuredName measured 
     reading    temperature.avg 
     regexp     ^([\+,\-]?\d+\.?\d*$) 
     reverseAction 0 
     sensor     EG.Heizung.Mischer.Vorlauf 
     sensorTimeout 3600 
     stopped    0 
     updateInterval 600 
Attributes: 
   pidActorErrorAction errorPos 
   pidActorErrorPos 0 
   pidActorInterval 40 
   pidActorValueDecPlaces 0 
   room       EG.HWR 
   verbose    5 
Dabei sind:
- EG.Heizung.Mischer.Vorlauf:temperature.avg: gleitender Mittelwert über die Vorlauftemperatur des Mischers
 - EG.HWR.Fussbodenmischer  Mischeransteuerung über das STELLMOTOR-Modul
 
Laut https://fhem.de/commandref.html#PID20 sollte jedoch der Aktor ein Reading haben: 
<actor:cmd >, ich verwende nur <actor>, das das STELLMOTOR-Modul mit
set EG.HWR.Fussbodenmischer <position>arbeitet, d.h. nur ein Argument möchte.
Leider funktioniert dies nicht wie gewünscht (und es liegt bestimmt an mir): Laut Logfile:
2017-02-17_10:38:38 PID_MischerCommands desired: 30
2017-02-17_10:38:38 PID_MischerCommands measured: 27.267
2017-02-17_10:38:38 PID_MischerCommands p_p: 68.325
2017-02-17_10:38:38 PID_MischerCommands p_d: 0
2017-02-17_10:38:38 PID_MischerCommands p_i: 1.34475
2017-02-17_10:38:38 PID_MischerCommands actuation: 67
2017-02-17_10:38:38 PID_MischerCommands actuationCalc: 69.66975
2017-02-17_10:38:38 PID_MischerCommands delta: 2.733
2017-02-17_10:38:38 PID_MischerCommands processing
2017-02-17_10:39:38 PID_MischerCommands desired: 30
2017-02-17_10:39:38 PID_MischerCommands measured: 27.512
2017-02-17_10:39:38 PID_MischerCommands p_p: 62.2
2017-02-17_10:39:38 PID_MischerCommands p_d: 0
2017-02-17_10:39:38 PID_MischerCommands p_i: 1.96675
2017-02-17_10:39:38 PID_MischerCommands actuation: 64
2017-02-17_10:39:38 PID_MischerCommands actuationCalc: 64.16675
2017-02-17_10:39:38 PID_MischerCommands delta: 2.488
2017-02-17_10:39:38 PID_MischerCommands processing
2017-02-17_10:40:38 PID_MischerCommands desired: 30
2017-02-17_10:40:38 PID_MischerCommands measured: 29.967
2017-02-17_10:40:38 PID_MischerCommands p_p: 0.825000000000031
2017-02-17_10:40:38 PID_MischerCommands p_d: 0
2017-02-17_10:40:38 PID_MischerCommands p_i: 1.975
2017-02-17_10:40:38 PID_MischerCommands actuation: 64
2017-02-17_10:40:38 PID_MischerCommands actuationCalc: 2.80000000000003
2017-02-17_10:40:38 PID_MischerCommands delta: 0.0330000000000013
2017-02-17_10:40:38 PID_MischerCommands processing
2017-02-17_10:41:39 PID_MischerCommands desired: 30
2017-02-17_10:41:39 PID_MischerCommands measured: 33.075
2017-02-17_10:41:39 PID_MischerCommands p_p: -76.8750000000001
2017-02-17_10:41:39 PID_MischerCommands p_d: 0
2017-02-17_10:41:39 PID_MischerCommands p_i: 1.20625
2017-02-17_10:41:39 PID_MischerCommands actuation: 0
2017-02-17_10:41:39 PID_MischerCommands actuationCalc: -75.6687500000001
2017-02-17_10:41:39 PID_MischerCommands delta: -3.075
2017-02-17_10:41:39 PID_MischerCommands processing
2017-02-17_10:42:40 PID_MischerCommands desired: 30
2017-02-17_10:42:40 PID_MischerCommands measured: 36.283
2017-02-17_10:42:40 PID_MischerCommands p_p: -157.075
2017-02-17_10:42:40 PID_MischerCommands p_d: 0
2017-02-17_10:42:40 PID_MischerCommands p_i: 1.20625
2017-02-17_10:42:40 PID_MischerCommands actuation: 0
2017-02-17_10:42:40 PID_MischerCommands actuationCalc: -155.86875
2017-02-17_10:42:40 PID_MischerCommands delta: -6.283
2017-02-17_10:42:40 PID_MischerCommands processing
2017-02-17_10:43:41 PID_MischerCommands desired: 30
2017-02-17_10:43:41 PID_MischerCommands measured: 39.404
2017-02-17_10:43:41 PID_MischerCommands p_p: -235.1
2017-02-17_10:43:41 PID_MischerCommands p_d: 0
2017-02-17_10:43:41 PID_MischerCommands p_i: 1.20625
2017-02-17_10:43:41 PID_MischerCommands actuation: 0
2017-02-17_10:43:41 PID_MischerCommands actuationCalc: -233.89375
2017-02-17_10:43:41 PID_MischerCommands delta: -9.404
2017-02-17_10:43:41 PID_MischerCommands processing
2017-02-17_10:44:43 PID_MischerCommands desired: 30
2017-02-17_10:44:43 PID_MischerCommands measured: 41.967
2017-02-17_10:44:43 PID_MischerCommands p_p: -299.175
2017-02-17_10:44:43 PID_MischerCommands p_d: 0
2017-02-17_10:44:43 PID_MischerCommands p_i: 1.20625
2017-02-17_10:44:43 PID_MischerCommands actuation: 0
2017-02-17_10:44:43 PID_MischerCommands actuationCalc: -297.96875
2017-02-17_10:44:43 PID_MischerCommands delta: -11.967
2017-02-17_10:44:43 PID_MischerCommands processing
2017-02-17_10:45:44 PID_MischerCommands desired: 30
2017-02-17_10:45:44 PID_MischerCommands measured: 42.212
2017-02-17_10:45:44 PID_MischerCommands p_p: -305.3
2017-02-17_10:45:44 PID_MischerCommands p_d: 0
2017-02-17_10:45:44 PID_MischerCommands p_i: 1.20625
2017-02-17_10:45:44 PID_MischerCommands actuation: 0
2017-02-17_10:45:44 PID_MischerCommands actuationCalc: -304.09375
2017-02-17_10:45:44 PID_MischerCommands delta: -12.212
2017-02-17_10:45:44 PID_MischerCommands processing
2017-02-17_10:46:46 PID_MischerCommands desired: 30
2017-02-17_10:46:46 PID_MischerCommands measured: 41.783
2017-02-17_10:46:46 PID_MischerCommands p_p: -294.575
2017-02-17_10:46:46 PID_MischerCommands p_d: 0
2017-02-17_10:46:46 PID_MischerCommands p_i: 1.20625
2017-02-17_10:46:46 PID_MischerCommands actuation: 0
2017-02-17_10:46:46 PID_MischerCommands actuationCalc: -293.36875
2017-02-17_10:46:46 PID_MischerCommands delta: -11.783
2017-02-17_10:46:46 PID_MischerCommands processing
2017-02-17_10:47:47 PID_MischerCommands desired: 30
2017-02-17_10:47:47 PID_MischerCommands measured: 41.371
2017-02-17_10:47:47 PID_MischerCommands p_p: -284.275
2017-02-17_10:47:47 PID_MischerCommands p_d: 0
2017-02-17_10:47:47 PID_MischerCommands p_i: 1.20625
2017-02-17_10:47:47 PID_MischerCommands actuation: 0
2017-02-17_10:47:47 PID_MischerCommands actuationCalc: -283.06875
2017-02-17_10:47:47 PID_MischerCommands delta: -11.371
2017-02-17_10:47:48 PID_MischerCommands processing
2017-02-17_10:48:48 PID_MischerCommands desired: 30
2017-02-17_10:48:48 PID_MischerCommands measured: 41.508
2017-02-17_10:48:48 PID_MischerCommands p_p: -287.7
2017-02-17_10:48:48 PID_MischerCommands p_d: 0
2017-02-17_10:48:48 PID_MischerCommands p_i: 1.20625
2017-02-17_10:48:48 PID_MischerCommands actuation: 0
2017-02-17_10:48:48 PID_MischerCommands actuationCalc: -286.49375
2017-02-17_10:48:48 PID_MischerCommands delta: -11.508
2017-02-17_10:48:48 PID_MischerCommands processing
2017-02-17_10:49:48 PID_MischerCommands desired: 30
2017-02-17_10:49:48 PID_MischerCommands measured: 42.171
2017-02-17_10:49:48 PID_MischerCommands p_p: -304.275
2017-02-17_10:49:48 PID_MischerCommands p_d: 0
2017-02-17_10:49:48 PID_MischerCommands p_i: 1.20625
2017-02-17_10:49:48 PID_MischerCommands actuation: 0
2017-02-17_10:49:48 PID_MischerCommands actuationCalc: -303.06875
2017-02-17_10:49:48 PID_MischerCommands delta: -12.171
2017-02-17_10:49:48 PID_MischerCommands processing
2017-02-17_10:50:49 PID_MischerCommands desired: 30
2017-02-17_10:50:49 PID_MischerCommands measured: 43.204
2017-02-17_10:50:49 PID_MischerCommands p_p: -330.1
2017-02-17_10:50:49 PID_MischerCommands p_d: 0
2017-02-17_10:50:49 PID_MischerCommands p_i: 1.20625
2017-02-17_10:50:49 PID_MischerCommands actuation: 0
2017-02-17_10:50:49 PID_MischerCommands actuationCalc: -328.89375
2017-02-17_10:50:49 PID_MischerCommands delta: -13.204
2017-02-17_10:50:49 PID_MischerCommands processing
2017-02-17_10:51:50 PID_MischerCommands desired: 30
2017-02-17_10:51:50 PID_MischerCommands measured: 44.442
2017-02-17_10:51:50 PID_MischerCommands p_p: -361.05
2017-02-17_10:51:50 PID_MischerCommands p_d: 0
2017-02-17_10:51:50 PID_MischerCommands p_i: 1.20625
2017-02-17_10:51:50 PID_MischerCommands actuation: 0
2017-02-17_10:51:50 PID_MischerCommands actuationCalc: -359.84375
2017-02-17_10:51:50 PID_MischerCommands delta: -14.442
2017-02-17_10:51:50 PID_MischerCommands processing
2017-02-17_10:52:51 PID_MischerCommands desired: 30
2017-02-17_10:52:51 PID_MischerCommands measured: 45.587
2017-02-17_10:52:51 PID_MischerCommands p_p: -389.675
2017-02-17_10:52:51 PID_MischerCommands p_d: 0
2017-02-17_10:52:51 PID_MischerCommands p_i: 1.20625
2017-02-17_10:52:51 PID_MischerCommands actuation: 0
2017-02-17_10:52:51 PID_MischerCommands actuationCalc: -388.46875
2017-02-17_10:52:51 PID_MischerCommands delta: -15.587
2017-02-17_10:52:51 PID_MischerCommands processing
2017-02-17_10:53:52 PID_MischerCommands desired: 30
2017-02-17_10:53:52 PID_MischerCommands measured: 46.263
2017-02-17_10:53:52 PID_MischerCommands p_p: -406.575
2017-02-17_10:53:52 PID_MischerCommands p_d: 0
2017-02-17_10:53:52 PID_MischerCommands p_i: 1.20625
2017-02-17_10:53:52 PID_MischerCommands actuation: 0
2017-02-17_10:53:52 PID_MischerCommands actuationCalc: -405.36875
2017-02-17_10:53:52 PID_MischerCommands delta: -16.263
2017-02-17_10:53:52 PID_MischerCommands processing
2017-02-17_10:54:53 PID_MischerCommands desired: 30
2017-02-17_10:54:53 PID_MischerCommands measured: 45.737
2017-02-17_10:54:53 PID_MischerCommands p_p: -393.425
2017-02-17_10:54:53 PID_MischerCommands p_d: 0
2017-02-17_10:54:53 PID_MischerCommands p_i: 1.20625
2017-02-17_10:54:53 PID_MischerCommands actuation: 0
2017-02-17_10:54:53 PID_MischerCommands actuationCalc: -392.21875
2017-02-17_10:54:53 PID_MischerCommands delta: -15.737
2017-02-17_10:54:53 PID_MischerCommands processing
2017-02-17_10:55:54 PID_MischerCommands desired: 30
2017-02-17_10:55:54 PID_MischerCommands measured: 45.038
2017-02-17_10:55:54 PID_MischerCommands p_p: -375.95
2017-02-17_10:55:54 PID_MischerCommands p_d: 0
2017-02-17_10:55:54 PID_MischerCommands p_i: 1.20625
2017-02-17_10:55:54 PID_MischerCommands actuation: 0
2017-02-17_10:55:54 PID_MischerCommands actuationCalc: -374.74375
2017-02-17_10:55:54 PID_MischerCommands delta: -15.038
2017-02-17_10:55:54 PID_MischerCommands processing
2017-02-17_10:56:55 PID_MischerCommands desired: 30
2017-02-17_10:56:55 PID_MischerCommands measured: 43.633
2017-02-17_10:56:55 PID_MischerCommands p_p: -340.825
2017-02-17_10:56:55 PID_MischerCommands p_d: 0
2017-02-17_10:56:55 PID_MischerCommands p_i: 1.20625
2017-02-17_10:56:55 PID_MischerCommands actuation: 0
2017-02-17_10:56:55 PID_MischerCommands actuationCalc: -339.61875
2017-02-17_10:56:55 PID_MischerCommands delta: -13.633
2017-02-17_10:56:55 PID_MischerCommands processing
2017-02-17_10:57:57 PID_MischerCommands desired: 30
2017-02-17_10:57:57 PID_MischerCommands measured: 41.883
2017-02-17_10:57:57 PID_MischerCommands p_p: -297.075
2017-02-17_10:57:57 PID_MischerCommands p_d: 0
2017-02-17_10:57:57 PID_MischerCommands p_i: 1.20625
2017-02-17_10:57:57 PID_MischerCommands actuation: 0
2017-02-17_10:57:57 PID_MischerCommands actuationCalc: -295.86875
2017-02-17_10:57:57 PID_MischerCommands delta: -11.883
2017-02-17_10:57:57 PID_MischerCommands processing
2017-02-17_10:58:58 PID_MischerCommands desired: 30
2017-02-17_10:58:58 PID_MischerCommands measured: 39.967
2017-02-17_10:58:58 PID_MischerCommands p_p: -249.175
2017-02-17_10:58:58 PID_MischerCommands p_d: 0
2017-02-17_10:58:58 PID_MischerCommands p_i: 1.20625
2017-02-17_10:58:58 PID_MischerCommands actuation: 0
2017-02-17_10:58:58 PID_MischerCommands actuationCalc: -247.96875
2017-02-17_10:58:58 PID_MischerCommands delta: -9.967
2017-02-17_10:58:58 PID_MischerCommands processing
2017-02-17_10:59:58 PID_MischerCommands desired: 30
2017-02-17_10:59:58 PID_MischerCommands measured: 38.767
2017-02-17_10:59:58 PID_MischerCommands p_p: -219.175
2017-02-17_10:59:58 PID_MischerCommands p_d: 0
2017-02-17_10:59:58 PID_MischerCommands p_i: 1.20625
2017-02-17_10:59:58 PID_MischerCommands actuation: 0
2017-02-17_10:59:58 PID_MischerCommands actuationCalc: -217.96875
2017-02-17_10:59:58 PID_MischerCommands delta: -8.767
2017-02-17_10:59:58 PID_MischerCommands processing
2017-02-17_11:00:59 PID_MischerCommands desired: 30
2017-02-17_11:00:59 PID_MischerCommands measured: 38.104
2017-02-17_11:00:59 PID_MischerCommands p_p: -202.6
2017-02-17_11:00:59 PID_MischerCommands p_d: 0
2017-02-17_11:00:59 PID_MischerCommands p_i: 1.20625
2017-02-17_11:00:59 PID_MischerCommands actuation: 0
2017-02-17_11:00:59 PID_MischerCommands actuationCalc: -201.39375
2017-02-17_11:00:59 PID_MischerCommands delta: -8.104
2017-02-17_11:00:59 PID_MischerCommands processing
Ist die Ventil-SOLL-Stellung 
actuation lange Zeit auf dem Wert 0, jedoch bleibt der STELLMOTOR und damit der Mischer auf hohen Werten:
017-02-17_10:27:05 EG.HWR.Fussbodenmischer position: 49
2017-02-17_10:30:00 EG.HWR.Fussbodenmischer position: 1   << addLog
2017-02-17_10:35:00 EG.HWR.Fussbodenmischer position: 1   << addLog
2017-02-17_10:37:38 EG.HWR.Fussbodenmischer position: 67
2017-02-17_10:40:00 EG.HWR.Fussbodenmischer position: 63   << addLog
2017-02-17_10:45:00 EG.HWR.Fussbodenmischer position: 63   << addLog
2017-02-17_10:50:00 EG.HWR.Fussbodenmischer position: 63   << addLog
2017-02-17_10:53:04 EG.HWR.Fussbodenmischer position: 44
2017-02-17_10:55:00 EG.HWR.Fussbodenmischer position: 44   << addLog
2017-02-17_10:59:59 EG.HWR.Fussbodenmischer position: 44   << addLog
Bis ich ihn um 10:53 auf 44 setze. Das funktioniert auch prima.
Anscheinend spricht meine Aktor-Definition nur kurz (beim Start Zielwert 67) mit dem STELLMOTOR/Mischer, kann diesen aber nur einmal auf 63 einstellen, obwohl der berechnete Zielwert 0 ist...
Was sollte ich anders machen?
Danke, -MN