溫度設(shè)置完全指南:climate.set_temperature 動(dòng)作詳解)
Home Assistant 恒溫器目標(biāo)溫度設(shè)置完全指南climate.set_temperature 動(dòng)作詳解【免費(fèi)下載鏈接】home-assistant.io:blue_book: Home Assistant User documentation項(xiàng)目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io本指南以 Home Assistant 官方文檔倉(cāng)庫(kù)home-assistant.io中的 climate.set_temperature 動(dòng)作文檔 為核心系統(tǒng)講解如何通過(guò)用戶界面與 YAML 兩種方式設(shè)置溫控設(shè)備恒溫器、空調(diào)等 HVAC 設(shè)備的目標(biāo)溫度涵蓋單點(diǎn)溫度與溫度區(qū)間heat/cool 模式的完整參數(shù)體系、目標(biāo)選擇Targets機(jī)制、以及可直接復(fù)制的實(shí)戰(zhàn)自動(dòng)化示例。讀完本篇你將能夠在自動(dòng)化、腳本中熟練、準(zhǔn)確地調(diào)用climate.set_temperature并理解它與hvac_mode、target_temp_high、target_temp_low等參數(shù)之間的配合關(guān)系。動(dòng)作概述climate.set_temperature是 Home Assistant 內(nèi)置 Climate 域domain提供的標(biāo)準(zhǔn)動(dòng)作action用于設(shè)置氣候設(shè)備的目標(biāo)溫度例如把房間加熱到舒適溫度。該動(dòng)作屬于 Climate 集成 的一部分Climate 集成負(fù)責(zé)控制與監(jiān)控 HVAC供暖、通風(fēng)和空調(diào)設(shè)備及恒溫器。從該動(dòng)作文檔的元信息front matter可以看到它的基本定義動(dòng)作名稱climate.set_temperature所屬域climate官方描述設(shè)置氣候設(shè)備的目標(biāo)溫度Sets the target temperature of a climate device關(guān)聯(lián)動(dòng)作climate.set_hvac_mode、climate.set_humidity、climate.set_preset_modeHome Assistant 支持在 UI 中可視化地構(gòu)建該動(dòng)作也支持在 YAML 中直接引用下面分別說(shuō)明。通過(guò)用戶界面設(shè)置目標(biāo)溫度如果你傾向于可視化地構(gòu)建自動(dòng)化與腳本無(wú)需掌握任何 YAML 知識(shí)即可完成配置。官方文檔給出了完整的操作步驟進(jìn)入設(shè)置Settings自動(dòng)化與場(chǎng)景Automations scenes。打開(kāi)現(xiàn)有的自動(dòng)化或腳本若為新建選擇創(chuàng)建自動(dòng)化Create automation創(chuàng)建新自動(dòng)化Create new automation。若正在配置新的自動(dòng)化需在When觸發(fā)條件部分添加觸發(fā)器腳本則不需要觸發(fā)器——它們?cè)诒黄渌麅?nèi)容調(diào)用時(shí)才運(yùn)行。在Then do然后執(zhí)行部分選擇添加動(dòng)作Add action。在按目標(biāo)By target下參見(jiàn)下文 Targets動(dòng)作的目標(biāo)選擇要控制的溫控設(shè)備。從該目標(biāo)展示的動(dòng)作列表中選擇設(shè)置恒溫器目標(biāo)溫度Set thermostat target temperature。設(shè)置要應(yīng)用的溫度選項(xiàng)。選擇保存Save。UI 中的選項(xiàng)在 UI 中該動(dòng)作提供以下可選配置項(xiàng)均為可選非必填選項(xiàng)說(shuō)明是否必填目標(biāo)溫度Target temperature溫度設(shè)定點(diǎn)。當(dāng)設(shè)備以單一溫度為目標(biāo)時(shí)使用。否目標(biāo)溫度上限Upper target temperature目標(biāo)區(qū)間中的最高溫度。當(dāng)設(shè)備以溫度區(qū)間為目標(biāo)時(shí)例如 heat/cool 模式與目標(biāo)溫度下限一起使用。否目標(biāo)溫度下限Lower target temperature目標(biāo)區(qū)間中的最低溫度。當(dāng)設(shè)備以溫度區(qū)間為目標(biāo)時(shí)例如 heat/cool 模式與目標(biāo)溫度上限一起使用。否HVAC 模式HVAC mode應(yīng)用溫度前要切換到的 HVAC 模式。若未設(shè)置則保持當(dāng)前模式。否在 YAML 中使用該動(dòng)作如果你直接編寫(xiě) YAML或想確切了解 Home Assistant 底層執(zhí)行邏輯文檔提供了完整的字段級(jí)技術(shù)參考字段名、類型、是否必填。YAML 參數(shù)詳解參數(shù)類型是否必填說(shuō)明temperaturefloat否溫度設(shè)定點(diǎn)。當(dāng)設(shè)備以單一溫度為目標(biāo)時(shí)使用。不要與target_temp_high、target_temp_low同時(shí)使用。target_temp_highfloat否目標(biāo)區(qū)間中的最高溫度。當(dāng)設(shè)備以溫度區(qū)間為目標(biāo)時(shí)如 heat/cool 模式須與target_temp_low一起使用。target_temp_lowfloat否目標(biāo)區(qū)間中的最低溫度。當(dāng)設(shè)備以溫度區(qū)間為目標(biāo)時(shí)如 heat/cool 模式須與target_temp_high一起使用。hvac_modestring否應(yīng)用溫度前要切換到的 HVAC 模式。若未設(shè)置則保持當(dāng)前模式?;A(chǔ)示例設(shè)置單一目標(biāo)溫度action: climate.set_temperature target: entity_id: climate.living_room data: temperature: 21 hvac_mode: heat該示例將climate.living_room設(shè)置為以 21 度為目標(biāo)進(jìn)行加熱heat。區(qū)間示例heat/cool 模式下的溫度范圍action: climate.set_temperature target: entity_id: climate.living_room data: target_temp_high: 24 target_temp_low: 20 hvac_mode: heat_cool該示例將climate.living_room設(shè)置為 heat/cool 模式目標(biāo)溫度區(qū)間為 2024 度。關(guān)于hvac_mode的取值hvac_mode的可用取值取決于具體溫控設(shè)備。參考同倉(cāng)庫(kù)的 climate.set_hvac_mode 動(dòng)作文檔 以及 Climate 集成文檔常見(jiàn)模式包括off設(shè)備關(guān)閉heat加熱到目標(biāo)溫度cool制冷到目標(biāo)溫度heat_cool在目標(biāo)溫度區(qū)間內(nèi)加熱/制冷auto按日程、學(xué)習(xí)行為或 AI 自動(dòng)運(yùn)行dry干燥/除濕模式fan_only僅開(kāi)啟風(fēng)扇不進(jìn)行加熱或制冷需要特別注意的是若在climate.set_temperature中省略hvac_modeHome Assistant 會(huì)保持當(dāng)前模式若提供該參數(shù)則會(huì)在應(yīng)用溫度之前先切換模式。Targets動(dòng)作的目標(biāo)該動(dòng)作必須有目標(biāo)target。目標(biāo)即動(dòng)作的作用對(duì)象可以把動(dòng)作指向單個(gè)實(shí)體entity、設(shè)備device、區(qū)域area、樓層floor或標(biāo)簽labelHome Assistant 會(huì)對(duì)目標(biāo)背后的每一個(gè)匹配的climate實(shí)體執(zhí)行動(dòng)作??捎玫哪繕?biāo)類型來(lái)自 targets.md實(shí)體Entity單個(gè)具體的climate實(shí)體如climate.living_room。設(shè)備Device屬于某設(shè)備的全部climate實(shí)體。區(qū)域Area某房間/區(qū)域內(nèi)的全部climate實(shí)體。樓層Floor某樓層上的全部climate實(shí)體。標(biāo)簽Label共享某標(biāo)簽的全部climate實(shí)體。你還可以在同一個(gè)動(dòng)作中混合多種目標(biāo)類型例如同時(shí)把某個(gè)具體實(shí)體和某個(gè)區(qū)域作為目標(biāo)一次執(zhí)行同時(shí)作用于兩者。實(shí)戰(zhàn)示例夜間降低溫度官方文檔提供了一個(gè)非常實(shí)用的場(chǎng)景在就寢時(shí)間將溫控設(shè)備調(diào)至較低溫度以在夜間節(jié)省能源。觸發(fā)器Trigger時(shí)間 22:30動(dòng)作Action設(shè)置恒溫器目標(biāo)溫度目標(biāo)Target客廳恒溫器目標(biāo)溫度Target temperature18完整的自動(dòng)化 YAML 如下automation: - alias: Lower the living room temperature at night triggers: - trigger: time at: 22:30:00 actions: - action: climate.set_temperature target: entity_id: climate.living_room data: temperature: 18結(jié)合climate.set_hvac_mode文檔中的另一個(gè)思路你還可以把室內(nèi)溫度超過(guò)閾值就切換制冷等模式切換動(dòng)作與溫度設(shè)置動(dòng)作組合使用構(gòu)建更復(fù)雜的溫控邏輯。理解底層Climate 實(shí)體的狀態(tài)與屬性為了讓climate.set_temperature用得更準(zhǔn)確有必要理解溫控實(shí)體的狀態(tài)模型來(lái)自 Climate 集成文檔。實(shí)體狀態(tài)StateHVAC 實(shí)體依據(jù)具體設(shè)備及其能力可能處于以下?tīng)顟B(tài)Off設(shè)備已關(guān)閉Heat設(shè)備已設(shè)置為加熱到目標(biāo)溫度Cool設(shè)備已設(shè)置為制冷到目標(biāo)溫度Heat/Cool設(shè)備已設(shè)置為在目標(biāo)溫度區(qū)間內(nèi)加熱/制冷Auto設(shè)備已設(shè)置為按日程、學(xué)習(xí)行為或 AI 自動(dòng)運(yùn)行Dry設(shè)備已設(shè)置為干燥/除濕模式Fan only僅風(fēng)扇開(kāi)啟不進(jìn)行加熱或制冷Unavailable實(shí)體當(dāng)前不可用Unknown狀態(tài)尚未知曉不同恒溫器可用的狀態(tài)集合不同具體取決于你使用的設(shè)備。實(shí)體屬性AttributesClimate 實(shí)體還有額外的屬性來(lái)表示恒溫器的運(yùn)行狀態(tài)名稱說(shuō)明hvac_action當(dāng)前運(yùn)行狀態(tài)heating/cooling/idlefan_mode風(fēng)扇當(dāng)前是否開(kāi)啟on/off理解這些狀態(tài)與屬性有助于你在自動(dòng)化觸發(fā)條件中判斷設(shè)備當(dāng)前是否真的在加熱/制冷從而與climate.set_temperature動(dòng)作形成感知—決策—執(zhí)行的完整閉環(huán)。在開(kāi)發(fā)工具中立即測(cè)試無(wú)需編寫(xiě)任何 YAML你就可以在真實(shí)的實(shí)體上驗(yàn)證該動(dòng)作的效果打開(kāi)設(shè)置Settings工具Tools動(dòng)作Actions搜索climate.set_temperature填寫(xiě)字段后選擇執(zhí)行動(dòng)作Perform action即可在真實(shí)實(shí)體上看到結(jié)果參見(jiàn) try_it.md。動(dòng)作使用要點(diǎn)Good to know單一溫度 vs. 溫度區(qū)間根據(jù)設(shè)備支持的能力選擇其一。若設(shè)備支持 heat/cool 模式則應(yīng)同時(shí)使用target_temp_high與target_temp_low構(gòu)成區(qū)間否則使用單個(gè)temperature。temperature與區(qū)間參數(shù)互斥不要將temperature與target_temp_high/target_temp_low混用。hvac_mode為可選省略時(shí)保持當(dāng)前模式提供時(shí)先切換模式再應(yīng)用溫度。區(qū)間參數(shù)成對(duì)使用target_temp_high與target_temp_low必須一起出現(xiàn)才能構(gòu)成有效的目標(biāo)區(qū)間。相關(guān)動(dòng)作以下動(dòng)作與本動(dòng)作配合使用效果最佳設(shè)置恒溫器 HVAC 模式climate.set_hvac_mode切換溫控設(shè)備的工作模式例如在制熱、制冷、關(guān)閉之間切換。climate.set_humidity設(shè)置氣候設(shè)備的濕度目標(biāo)。climate.set_preset_mode設(shè)置氣候設(shè)備的預(yù)設(shè)模式如節(jié)能、舒適等。典型組合思路先用climate.set_hvac_mode把設(shè)備切入正確模式再用climate.set_temperature下發(fā)目標(biāo)溫度或?qū)烧吆喜ⅰ赾limate.set_temperature中直接攜帶hvac_mode參數(shù)一步完成。常見(jiàn)問(wèn)題排查如果在實(shí)際使用中動(dòng)作沒(méi)有生效可依次檢查目標(biāo)是否有效target.entity_id是否真實(shí)存在且處于可用非Unavailable/Unknown狀態(tài)。參數(shù)組合是否正確是否誤將temperature與區(qū)間參數(shù)混用或區(qū)間參數(shù)是否成對(duì)出現(xiàn)。設(shè)備能力限制目標(biāo)設(shè)備是否支持你傳入的hvac_mode及單點(diǎn)/區(qū)間溫度能力——不同溫控設(shè)備的能力差異較大。模式優(yōu)先級(jí)若同時(shí)傳入hvac_mode與溫度參數(shù)注意動(dòng)作會(huì)先切換模式再應(yīng)用溫度請(qǐng)確認(rèn)最終期望的行為。若問(wèn)題依舊可前往 Home Assistant 社區(qū)論壇community.home-assistant.io附上你調(diào)用的動(dòng)作與預(yù)期結(jié)果尋求幫助也可以借助 AI 助手用自然語(yǔ)言描述需求來(lái)獲得動(dòng)作建議參見(jiàn) stuck.md。【免費(fèi)下載鏈接】home-assistant.io:blue_book: Home Assistant User documentation項(xiàng)目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考