Dear all,
I have a umber of EnOcean valves, e.g.
define EnO_019A9D70 EnOcean 019A9D70
setuuid EnO_019A9D70 5c6e8005-f33f-5073-a64a-9517742096ec5ff8
attr EnO_019A9D70 IODev TCM_ESP3_0
attr EnO_019A9D70 manufID 7FF
attr EnO_019A9D70 room EnOcean
attr EnO_019A9D70 subType 4BS
my understanding is by default that they will use the FHEM PID for opening regulation. I saw it is possible to change the PID parameters of the valve. My question is: is the PID the same as the one from the PID20 module. It looks like the PID20 as more parameters that can be controlled.
If not, I would like to use the PID20 module to regulate the valve. How should I go about that ?
Thanks
Tomasz
Dear all,
I understood that the Enocean object seems to use the PID20 module.
I would like to confirm what the following parameters mean
Acoording to the ref
pidDeltaTreshold - if delta < delta-threshold the pid will enter idle state; default: 0
If I understand correctly if the error (difference between setpoint and measurement is less than delta-thresshold), the value of PiD doe snot change ? Can you confirm
pidActorTreshold - threshold to be reached before command will be sent to actor; default: 1
If I understand correctly the PID will not update the value of position of actor if the change is less than this value ? can you confoirm ?
Best
I have narrowed down the question. I am trying to improve the control for my valves
EnOcean
Heating Radiator Actuating Drive (EEP A5-20-04)
I would like the setpoint position sent to the valve to move by steps of 5 at least to avoid too frequent small changes of 1-2
I noticed the pidActorTreshold of the PID20 object to fulfill this goal. However, there is no such field on my Enocean object (most of the other pid attributes are there).
It is also not listed in the FHEM reference so I suppose it is normal, but is there a way to set it anyway (changing default value for this in all PID20 objects, using other attribute, using preprocessing attribute) ?
Any help would be much appreciated. Thx in advance
Hi Tomasz!
Are you looking for https://fhem.de/commandref.html#EnOcean_pidDeltaTreshold? (You mentioned it in your second post.)
I'm a little confused about
define EnO_019A9D70 EnOcean 019A9D70
setuuid EnO_019A9D70 5c6e8005-f33f-5073-a64a-9517742096ec5ff8
attr EnO_019A9D70 IODev TCM_ESP3_0
attr EnO_019A9D70 manufID 7FF
attr EnO_019A9D70 room EnOcean
attr EnO_019A9D70 subType 4BS
I think that's wrong. Or is it outdated?
Which device are you using? Holter Smart MX?
Can you please post the output of "list <device>"?
Regards, Christian
Thanks Christian for the reply
Here is the output of list <device>
Internals:
DEF 0196C6BD
FUUID 5d53c975-f33f-5a1e-1830-43c4a65dbf9a778b
IODev TCM_ESP3_0
LASTInputDev TCM_ESP3_0
MSGCNT 262
NAME EnO_0196C6BD
NR 35
NTFY_ORDER 50-EnO_0196C6BD
STATE T: 23.3 SPT: 18.0 SP: 15
TCM_ESP3_0_DestinationID FFFFFFFF
TCM_ESP3_0_MSGCNT 262
TCM_ESP3_0_PacketType 1
TCM_ESP3_0_RSSI -67
TCM_ESP3_0_ReceivingQuality excellent
TCM_ESP3_0_RepeatingCounter 0
TCM_ESP3_0_SubTelNum 2
TCM_ESP3_0_TIME 2019-09-20 07:30:45
TYPE EnOcean
OLDREADINGS:
READINGS:
2019-09-19 09:45:53 battery ok
2019-09-20 07:30:45 blockKey no
2019-09-20 07:32:27 delta -5.3
2019-09-20 07:30:45 feedTemp 36.9
2019-09-20 07:30:45 maintenanceMode off
2019-09-20 07:30:45 measurementState active
2019-09-20 07:30:45 operationMode setpointTemp
2019-09-20 07:32:27 p_d 0
2019-09-20 07:32:27 p_i 64.4250000000001
2019-09-20 07:32:27 p_p -53
2019-09-20 07:32:27 pidState processing
2019-09-20 07:30:45 roomTemp 23.3
2019-09-20 07:30:45 setpoint 15
2019-09-20 07:32:27 setpointCalc 11.425
2019-09-20 07:32:27 setpointSet 11
2019-09-20 07:30:45 setpointTemp 18.0
2019-09-20 07:25:39 setpointTempSet 18.0
2019-09-20 07:30:45 state T: 23.3 SPT: 18.0 SP: 15
2019-08-14 09:42:29 teach 4BS teach-in accepted EEP A5-20-04 Manufacturer: Holter Regelarmaturen GmbH Co. KG
2019-09-20 07:30:45 temperature 23.3
helper:
actorErrorAction freeze
actorErrorPos 0
actorInterval 10
actorKeepAlive 100
actorLimitLower 0
actorLimitUpper 100
actorThreshold 0
actorTimestamp 2019-09-20 07:32:27
actorValueDecPlaces 0
adjust
battery ok
calcInterval 100
deltaGradient 0.0003265140067478
deltaOld -5.3
deltaOldTS 2019-09-20 07:30:45
deltaTreshold 0
factor_D 0
factor_I 0.15
factor_P 10
isWindUP
reverseAction 0
sensorTimeout 1200
stopped 0
updateInterval 100
calcPID:
undef
HASH(0x2dc80c0)
periodic
Attributes:
IODev TCM_ESP3_0
comMode biDir
destinationID unicast
eep A5-20-04
manufID 045
pidActorLimitLower 0
pidFactor_I 0.15
pidFactor_P 10
room EnOcean
subDef FF904882
subType hvac.04
teachMethod 4BS
userattr mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttForward:all,none mqttPublish:textField-long mqttSubscribe:textField-long
webCmd setpointTemp
I also found the pidDeltaTreshold
attribute, but it is not doing the same thing if i understand correctly. The reference doc states it will not update the actor if delta < treshold with delta the difference between setpoint and value. Though this could somehow reduce also unnecessary actor changes when I am close to the setpoint, it is not what I want. The valves are from
https://www.enocean-alliance.org/product/hora_smartdrive_mx/ (https://www.enocean-alliance.org/product/hora_smartdrive_mx/)
Anybody ? In le list output, I see a actorTreshold field, any chance I can use this ?
Maybe I should create a new topic to start from scratch.
Tom
I apologize for not reacting. The "device" is ok in my opinion. But I have no idea how to solve your problem.
ZitatMaybe I should create a new topic to start from scratch.
I think so. :)
If it is only a EnOcean-problem start a topic in https://forum.fhem.de/index.php/board,27.0.html
Regards, Christian