使用python-nest

时间:2017-12-09 15:01:10

标签: python api precision temperature nest-api

我正在尝试设置一些东西来绘制我的新巢学习恒温器(rev 3)中的数据。我找到了nest-python api package forked and enhanced by jkoelker。我希望数据尽可能精确。我从我自己的恒温器报告数据,但我得到的值总是整数,十进制十分值为零,如#34; XX.0"。例如:

$ ./runnest.py
Structure My Home
    Away: home
    Devices:
        Device: Hallway
            Temp: 66.0F
Structure   : My Home
 Postal Code                    : None
 Country                        : US
 num_thermostats                : 1
        Device: Hallway
        Where: Hallway
            Mode       : heat
            HVAC State : off
            Fan        : False
            Fan Timer  : 15
            Temp       : 66.0F
            Humidity   : 30.0%
            Target     : 67.0F
            Eco High   : 76.0F
            Eco Low    : 40.0F
            hvac_emer_heat_state  : False
            online                : True

$

我从documented page看到了这条评论:

  

utils函数使用decimal.Decimal来确保精度。

但我不确定如何使用它。我尝试过这样使用它:nest.utils.decimal.Decimal(device.temperature))但它仍然打印一个零点的整数(如68.0而不是67.8)。我可以检查墙单元并拉出Settings->Technical Info->Sensors并查看我想要的分辨率(十分之一华氏度),如66.4但是当我使用库轮询数据时,它总是像66.0那样出现。< / p>

我是否可以通过python-nest API从我的嵌套学习恒温器调整代码以获得温度值和测量精度的十分之一?

1 个答案:

答案 0 :(得分:0)

根据API documentation,它是F的预期行为:

  

ambient_temperature_f:   在设备上测量的温度,以华氏度(1°F)为单位。

对于Celsius:

  

ambient_temperature_c:   在器件处测量的温度为半摄氏度(0.5°C)。