如果是“冷却”或“加热”,巢式恒温器将显示在屏幕上。如何通过Nest获得此状态?
hvac_mode属性似乎简单地显示了用户的恒温器能够控制什么,并且在冷却或加热发生时不会改变。
现在,我使用的是一个简单但并非完美无缺的逻辑:
if (can_cool && target_temperature < ambient_temperature) --> isCooling
if (can_heat && target_temperature > ambient_temperature) --> isHeating
else --> isDoingNothing不是完美无缺的,我的意思是我遇到了这种逻辑是不正确的情况。例如,在给定的情况下,ambient_temperature是20 Celsius,而target_temperature是21 Celsius,can_heat设置为true,我的UI会说温控器在加热,而实际上并非如此。
这可能是因为目标温度和环境温度太近了,但我不知道阈值是多少。
还有其他或更好的方法来了解加热和冷却状态吗?
发布于 2015-06-12 10:40:54
截至2015年5月,Nest现在正式报告了hvac_state属性。这个数值将是“加热”、“冷却”或“关闭”之一。
数据模型中的新字段: hvac_state。您将使用hvac_state来了解家庭暖通空调系统是否处于主动加热、冷却或关闭状态。
发布于 2014-10-16 23:50:58
从API的角度来看,它们没有提供任何方法来识别恒温器是否真的在加热。最接近你能识别的是你现在写的东西。
如果设备本身能够显示它的加热或冷却,它们必须有不同的代码或不同的方法(例如内部电子学)来识别它。
发布于 2014-10-27 13:04:08
遗憾的是,您是正确的- API没有显示这一信息。
在我的申请中,我实现了与您相同的逻辑,并且注意到了关于边缘情况的相同问题。我怀疑,当环境温度刚好超出目标温度一度或更低时,它可能存在时间因素。
https://stackoverflow.com/questions/26415239
复制相似问题