Google 致力于为黑人社区推动种族平等。查看具体举措

恒温器

恒温控制

鸟巢学习温控器™是一个互联网连接的设备是直观且易于使用,不断地学习关于在家庭的使用模式,以优化舒适性,节约能源。用户可以在可以访问 Internet 连接的任何地方控制他们的加热和冷却。

支持这些功能需要一个复杂的控制系统,它超越了简单的基于设定点的程序。鸟巢提供了广泛的算法(如在早期是真正的辐射气波™ )需要相比,大多数恒温器计算能力的显著量。 Nest Thermostat 具有提供这些高级功能所需的能力。

巢API被设计为允许产品来控制HVAC系统,而不破坏巢算法或奇与意外行为用户。它们可以访问 Nest Thermostat 的以下数据:

  • 结构名称和设备“where name”(在家中的位置)
  • 自定义恒温标签
  • 在线状态和上次连接信息
  • 当前和目标温度
  • 温度模式
  • 生态温度
  • 时间到温度
  • 温标(设定 F/C)
  • 温度锁定状态,如果锁定,最小/最大锁定温度值
  • 风扇定时器持续时间和 HVAC 模式
  • 湿度
  • 防晒霜

恒温器权限

对于读访问所有温控器API的数据值,选择温控器读取权限为您的客户。

对于读访问所有温控器API数据值和额外的写访问选择的值,选择温控器的读/写权限的客户端。此权限级别允许您更新以下内容:

  • 目标温度
  • 暖通空调模式
  • 风扇定时器

从 Thermostat 读/写 v5 开始,您还可以更新以下内容:

  • 温标
  • 温控器标签

恒温器标识符

设备

Nest 设备按类型作为 ID 数组列出,可用于通过设备路径唯一标识设备。所以恒温器ID "peyiJNo..."意味着你可以加载在恒温设备型号devices/thermostats/peyiJNo...通过API。

当一个设备连接到多个产品时,每个开发人员都会看到该设备的不同 ID。对于安装了来自同一开发者的多个产品的设备,开发者将看到相同的 ID。

名称

提供了两个名称属性。较短的name属性被显示在用户界面的标签,而name_long在长格式文本中使用。

name

在这些例子中, name是“走廊”或“走廊(西)”。

名称名字长

name_long

在这个例子中, name_long是“办公室(楼上)”。

消息中的长名称

标签

其中名称(标签)
其中名称(标签)

与年初权限版本V5 ,您可以通过API添加自定义标签的恒温。在 Nest 应用程序中,label 出现在括号中,在 where 名称之后。

与年初权限版本V6 ,你也可以阅读温控器标签。

在哪里

where_id

  • 代表一个唯一的,巢生成的标识符name
  • where_id是只读的,并在通话中自动创建创建自定义的地方name

了解更多关于哪里的名字 鸟巢恒温器巢保护巢凸轮

where_name

当选择任一的恒温器的权限,则可以访问设备where_name从设备对象( devices/thermostats )。

其他元数据

除非另有说明,否则所有数据值都是只读的。

数据值描述
locale分配给此设备的语言和国家/地区代码
software_version表示设备上当前安装的固件的字符串
structure_id唯一表示此结构的字符串;这是设备配对的结构
last_connection上次成功连接到 Nest 服务的时间戳
is_online在线状态。这是通过使用Nest确定last_connection时间,这是设备特定的预期的重新连接的窗口。

恒温器特点

恒温模式

HVAC系统具有四个“接通”状态( heatcoolheat-cooleco )和一个“关”状态( off )。我们利用这些国家通过管理舒适度和节能hvac_mode和温度的数据值。

  • 当加热或冷却模式( heatcool被选择),恒温器调整家到目标温度。
  • 当热•冷模式( heat-cool被选择),则恒温器将保持家舒适,优选的温度范围之内。
  • 环保温度(生态)时,恒温器将采用节能算法来保持房子的舒适和减少能源消耗。此模式下的恒温器显示 ECO。

结构有两种与存在相关的状态:在家或离开。当房子内没有感应到任何运动时,结构将从家里变为外出,并且家中的恒温器将自动启用生态温度。

如何hvac_mode和温度值共同努力

取决于的值hvac_mode ,只有一定的温度的数据值可以在API中进行访问:

暖通空调模式您可以访问的温度数据值
heatcool target_temperature_ftarget_temperature_c
heat-cool target_temperature_low_ftarget_temperature_high_f
或者
target_temperature_low_ctarget_temperature_high_c
eco eco_temperature_low_feco_temperature_high_f
或者
eco_temperature_low_ceco_temperature_high_c
off没有任何

在某些情况下,大约有变化的特殊规则hvac_mode

设想可以hvac_mode改变?
温度锁定启用是的
紧急切断活跃
急热启动
can_coolcan_heat值是false

生态温度

生态温度允许用户节省能源,无论他们是否在家。考虑切换hvac_modeeco在产品实现节能行为的时候。

生态温度终点是鸟巢API与温控器开始在提供读取和读/写权限V6。

在环保和非环保模式之间切换

您的产品应该不需要直接在 Eco 模式下管理目标温度。当家设置为离开时,不显示目标温度,而是根据用户选择在内部设置。当恒温器设置为关闭时,则不会观察到目标温度。

如果您绝对必须直接更改目标温度,请务必在两个单独的调用中进行更改:

  1. 更改hvac_mode ,除了任何其他价值eco
  2. 修改相应target_temperature数据值

与温控器开始读,读/写权限V6,您可以访问previous_hvac_mode通过API,以帮助暖通空调模式转换。 previous_hvac_mode用于存储所述hvac_mode所述装置的前它转换到“生态”。

例如,如果Nest Thermostat会使用环保温度( hvac_mode = "eco" ), previous_hvac_mode是可用的,并且您希望您的产品集target_temperature ,则必须首先:

  1. GET previous_hvac_mode
  2. hvac_modeprevious_hvac_mode
  3. 确认hvac_mode不再设置为“生态”

在这些步骤之后,根据需要设置目标温度。

根据hvac_mode值,这是多么previous_hvac_mode变化:

hvac_mode状态...然后, previous_hvac_mode可...
eco heatcoolheat-cooloff
heatcoolheat-cooloff空白/空

目标温度

目标温度是 HVAC 系统最重要的值 - 它是所需的温度,通常由用户设置。大多数行动和决定都基于它。通过 API,Works with Nest 产品可以将目标温度写入更大的流程中。

当系统开启时,总是有一个目标温度设置。

  • 当加热或冷却模式( heatcool被选择),一个单一的target_temperature是集
  • 当热•冷模式( heat-cool被选择),两个target_temperature值被设定,表示目标范围,一个更高的用于冷却和加热一个较低
  • 当节能模式( eco被选中)时,目标温度范围在内部设置

还有一些安全温度可以作为防止管道冻结或家中温度过高的保障。

当恒温器关闭时,不会设置目标温度。

时间到温度

时间-温度,您可以访问的HVAC系统这些数据值:

  • time_to_target -的时间,以分钟为单位,其将采取该结构达到目标温度
  • time_to_target_training
    • 训练状态
    • 当恒温器了解 HVAC 系统如何响应时,它会调整达到目标温度的估计值
    • 当温控器是相当确定的时间估计达到目标温度,状态会从trainingready

环境温度

在恒温器附近测量的温度。显示与用户首选温标对应的值。

温标

环境温度和目标温度变量按摄氏或华氏标度组织。该temperature_scale属性将会是“F”或“C”,这取决于用户的偏好。此属性由每个恒温器设置,因此在单个结构中,用户可能有两个恒温器​​,每个温标一个。保持用户的喜好记住显示温度值时。

与年初权限版本V5 ,您可以通过API改变温标。

目标和环境温度字段具有_f_c变体显示的温度时,以容纳一致舍入。

温度显示

恒温器

当显示目标温度信息,可以考虑这三个相关的值: temperature_scalehvac_mode和结构的away状态。

许多数据值共同确定 Nest Thermostat 显示屏上显示的内容及其行为方式。

  • hvac_mode被设置为heat-cool ,Nest Thermostat会显示在低和高设定点分离被子弹字符(•),否则巢恒温器只显示目标温度
  • hvac_mode设置为off ,显示在Nest Thermostat会单词“OFF”,在用户的首选语言
  • hvac_mode设为eco ,显示在Nest Thermostat会单词“ECO”,在用户的首选语言

显示温度格式还取决于所选的温标 (F/C)。

华氏温度显示为整数:

  • 目标温度:55°F
  • 环境温度:62°F

摄氏温度显示为整数或十进制值,最后一位数字设置为“.5”:

  • 目标温度:12°C
  • 环境温度:16.5°C

叶子

当叶图标是显示在恒温器的前部,恒温器被设定为节能温度,和has_leaf = true

叶子

温度锁定

用户可以锁定 Nest Thermostat,使其只能在有限的温度范围内进行调节。与年初权限版本V5 ,你可以看到,如果温度锁定是通过检查启用is_locked ,如果是,通过API读取温度锁定最小值/最大值:

锁的温度必须在对被指定,作为最大值和最小值,并且如果只能被写入is_locked = true

湿度

在设备上测量的湿度,以百分比 (%) 格式四舍五入到最接近的 5%。

防晒霜

防晒霜技术自动调整在巢温控器的温度,以补偿从所述单元上阳光直射发生热尖峰。

这些数据值将告诉您是否启用了防晒霜和/或主动校正温度。

扇子

许多HVAC系统具有集成的风扇,这意味着风扇不能被独立控制。集成风扇没有关闭模式,因为风扇需要在加热或冷却时运行。

但是,如果 HVAC 系统兼容,则可以通过 API 明确打开风扇,以使居住者更舒适,而无需使用完整的 HVAC 系统。

如果风扇可以独立地控制, has_fan将被设置为true ,并且以下的数据值可以与恒温器被设置的读/写权限:

  • fan_timer_active -布尔值,返回true ,如果风扇计时器被接合为预编程的持续时间
  • fan_timer_duration - INT,的时间长度(分钟),所述风扇设置为运行

将这些值一起使用以在特定时间段内启动风扇计时器(打开风扇)。您也可以使用fan_timer_timeout值来确定当风扇设置停止运行的时间戳。

请注意,您可以随时更改fan_timer_duration -它是独立的hvac_mode或结构的占用状态(离开)。

您可以期待这些成功或失败的响应:

  • 200 正常
  • 400 错误请求

如果打开风扇的命令没有产生预期的结果,可能是因为风扇已经启动(由用户手动操作,或按计划进行,或由于 HVAC 加热/冷却循环)。

速率限制

我们应用速率限制来防止过度调用设备,这可能会影响系统或电池性能。在正常情况下,Nest 设备通过加热和冷却系统上的低压电线为电池充电。但如果在短时间内拨打过多电话并且电池电量变低,Nest Thermostat 将关闭 Wi-Fi 以节省电量。

实际上,这意味着我们限制了在定义的时间段内可以对设备进行的调用次数。如果超出此限制,您将收到错误响应和一条消息,表明您已超出限制。

欲了解更多信息,请参阅数据速率限制

功率限制

在某些情况下,恒温器可能没有足够的电池电量来满足修改请求。在这种情况下,您将收到错误响应和一条消息,指示设备此时无法为请求提供服务。如果发生这种情况,请在重试之前给电池一些时间充电。

了解更多关于在鸟巢学习温控器电池电量不足的条件

错误信息

某些状态导致某些功能不可用。制定这些规则是为了节约能源或提供舒适和安全。

对于哪些API调用错误的含义及如何处理这些信息,请参阅错误信息

Wi-Fi/连接问题

如果设备离线,则不允许修改。您可以在数据模型中观察设备的在线状态并适当地显示 UI。