『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 6658|回复: 9

[技术探讨] 求助,automation编写内容不生效的问题

[复制链接]

65

主题

853

帖子

3044

积分

论坛元老

Rank: 8Rank: 8

积分
3044
金钱
2184
HASS币
40
发表于 2017-10-20 11:30:56 | 显示全部楼层 |阅读模式
- action:
  - alias: fan control
    data:
      entity_id: switch.raspifan
    service: switch.turn_on
  alias: "fan control"
  id: '1508423414573'
  trigger:
  - above: '40'
    entity_id: sensor.cpu_temperature
    platform: numeric_state

通过探测cpu的温度来控制风扇开关,但貌似没有生效,不知为何?求教大神
,谢谢!!

回复

使用道具 举报

35

主题

533

帖子

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
金钱
2362
HASS币
0
发表于 2017-10-20 12:04:09 | 显示全部楼层
朋友,求助的帖子不发在这里。

https://home-assistant.io/docs/automation/
上面的网址里有automation的写法。
如其官方举例:
automation:
  - alias: 'Rainy Day'
    trigger:
      - platform: state
        entity_id: sensor.precip_intensity
        to: 'rain'
    condition:
      - condition: state
        entity_id: group.all_devices
        state: 'home'
      - condition: time
        after: '14:00'
        before: '23:00'
    action:
      service: light.turn_on
      entity_id: light.couch_lamp

通常是先命名(- alias)
然后分别是trigger、condition和action
另外,也要注意格式缩进,yaml的语法太严格了……
回复

使用道具 举报

65

主题

853

帖子

3044

积分

论坛元老

Rank: 8Rank: 8

积分
3044
金钱
2184
HASS币
40
 楼主| 发表于 2017-10-20 12:56:43 | 显示全部楼层
这个格式我使用的是web里面的automation选项自动生成。。。。难道是因为这部分功能不能用存在bug吗
回复

使用道具 举报

35

主题

533

帖子

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
金钱
2362
HASS币
0
发表于 2017-10-20 13:13:34 | 显示全部楼层
plutosherry 发表于 2017-10-20 12:56
这个格式我使用的是web里面的automation选项自动生成。。。。难道是因为这部分功能不能用存在bug吗
...

我没用过web端的生成器,还真不清楚……
回复

使用道具 举报

65

主题

853

帖子

3044

积分

论坛元老

Rank: 8Rank: 8

积分
3044
金钱
2184
HASS币
40
 楼主| 发表于 2017-10-20 14:28:05 | 显示全部楼层
debitus 发表于 2017-10-20 13:13
我没用过web端的生成器,还真不清楚……

按照官方的语法格式我也尝试过没有效果。不知是何问题?

  - alias: 'CPU Fan AutoOFF'
    trigger:
      - platform: numeric_state
        entity_id: sensor.cpu_temperature
        above: '40'
    action:
      service: switch.turn_on
      entity_id: switch.raspifan

  - alias: 'CPU Fan AutoON'
    trigger:
      - platform: numeric_state
        entity_id: sensor.cpu_temperature
        below: '38'
    action:
      service: switch.turn_off
      entity_id: switch.raspifan
回复

使用道具 举报

65

主题

853

帖子

3044

积分

论坛元老

Rank: 8Rank: 8

积分
3044
金钱
2184
HASS币
40
 楼主| 发表于 2017-10-20 14:29:17 | 显示全部楼层
想实现的效果就是将CPU温度控制在不高于38度,低于38温度就自动关闭风扇,高于40度就自动开启
其中的entity_id: 也检查过没有任何错误
回复

使用道具 举报

35

主题

533

帖子

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
金钱
2362
HASS币
0
发表于 2017-10-20 14:53:15 | 显示全部楼层
本帖最后由 debitus 于 2017-10-20 14:58 编辑

我建议你做两件事情:
1、缩进格式:找一个成功的automation来参考修正;
2、我去看了一下官网,发现它的numeric_state都到了“value_template”,你可以尝试一下在trigger部分的entity_id和above之间加入value_template。
可以参考官网的写法:
https://home-assistant.io/docs/automation/trigger/

另外,修电脑的领域有个方法就是“最小系统法”
意思是说,如果电脑出了问题,通常是按照先软件再硬件的方式来排除。
在硬件的排除环境,最小系统法会建议只保留主板、硬盘、显卡等必备设备,去除一切不必须设备。
所以,你也可以先写一个automation,其余的删除,以排除代码问题所在。
回复

使用道具 举报

65

主题

853

帖子

3044

积分

论坛元老

Rank: 8Rank: 8

积分
3044
金钱
2184
HASS币
40
 楼主| 发表于 2017-10-21 23:25:05 | 显示全部楼层
ok 我也一直怀疑是 value_template 的问题。按此思路再试试,谢谢!
回复

使用道具 举报

32

主题

986

帖子

4233

积分

论坛元老

Rank: 8Rank: 8

积分
4233
金钱
3207
HASS币
110

教程狂人论坛风云人物

发表于 2017-10-22 00:20:55 | 显示全部楼层
楼上说的有一定误区。一是先写什么其实是没有关系的,只需要注意缩进和前面的横杠。二是页面有写value template是optional。因此建议楼主首先在状态里看一下sensor.cpu_temperature是否已直接获取到数值,然后看switch.raspifan是否能通过命令手动开关,也可以看一下这个自动化的last trigger,确定自动化是否被成功触发,判断是哪个环节出了问题。
回复

使用道具 举报

65

主题

853

帖子

3044

积分

论坛元老

Rank: 8Rank: 8

积分
3044
金钱
2184
HASS币
40
 楼主| 发表于 2017-10-22 09:13:18 | 显示全部楼层
27hh 发表于 2017-10-22 00:20
楼上说的有一定误区。一是先写什么其实是没有关系的,只需要注意缩进和前面的横杠。二是页面有写value temp ...

sensor.cpu_temperature 能够正常获取数值:(Attributes如下)
unit_of_measurement: °C
friendly_name: CPU温度
homebridge_name: CPU温度
homebridge_hidden: true
switch.raspifan 也能够通过改变state实现手动开关:(Attributes如下)
friendly_name: 树莓派风扇
icon: mdi:fan
homebridge_name: 树莓派风扇
homebridge_hidden: true

自动化的last triggered:(Attributes如下)
last_triggered: null
friendly_name: CPU Fan AutoON

显示为null,表明利用automation无法实现自动化触发。我还是怀疑是value template的问题?
因为有引用unit_of_measurement: °C,会不会影响取值对比和判断呢?

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-22 19:58 , Processed in 0.054704 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表