Nest Thermostat 设备将在“制冷”或“制热”状态下显示在屏幕上。如何通过 Nest API 获得这种状态?
该hvac_mode
属性似乎只是显示用户的恒温器能够控制什么,并且在冷却或加热发生时不会改变。
现在,我正在使用一个简单但并非完美的逻辑:
if (can_cool && target_temperature < ambient_temperature) --> isCooling
if (can_heat && target_temperature > ambient_temperature) --> isHeating
else --> isDoingNothing
我所说的并非完美无缺,是指我遇到过这种逻辑不正确的情况。例如,在ambient_temperature
is20 Celsius
和target_temperature
is21 Celsius
设置can_heat
为的给定情况下true
,我的 UI 会说 Thermostat 正在加热,而实际上并非如此。
这可能是因为目标温度和环境温度太接近了,但我不知道阈值是多少。
是否有另一种或更好的方法来计算加热和冷却状态?