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

标题: 用小爱同学控制美的(华凌)空调的简单方法 [打印本页]

作者: xjpz    时间: 2024-12-26 10:58
标题: 用小爱同学控制美的(华凌)空调的简单方法
本帖最后由 xjpz 于 2024-12-26 11:29 编辑

基础条件
1. 空调已接入HA
2. 有小米中枢网关且已通过ha_xiaomi_home接入HA

步骤 - 打开空调

1. 打开米家APP,点击右上角+,创建手动控制
             名称:打开主卧空调
             控制:选择中枢网关-产生虚拟事件,事件内容为 打开主卧空调
[attach]66369[/attach][attach]66356[/attach]



2. HA添加季节集成 设置-设备与服务-添加集成-季节(英文为:Season)
3. 添加HA自动化 设置-自动化与场景-创建自动化
         触发条件:当中枢网关 虚拟服务 虚拟事件发生的 事件名称 变化到 打开主卧空调
        
[attach]66357[/attach]
        执行操作: 添加组件 - [如果-就]
        执行操作1: 判断是冬季则打开空调制热
[attach]66363[/attach]
       执行操作2: 判断是夏季则打开空调制冷
[attach]66366[/attach]
执行操作3: 判断是春季或秋季,则打开空调自动模式
[attach]66367[/attach]
YAML内容如下
  1. alias: 打开主卧空调
  2. description: ""
  3. triggers:
  4.   - trigger: state
  5.     entity_id:
  6.       - event.xiaomi_cn_110488xxxxx_hub1_virtual_event_e_4_1
  7.     attribute: 事件名称
  8.     to: 打开主卧空调
  9. conditions: []
  10. actions:
  11.   - if:
  12.       - condition: state
  13.         entity_id: sensor.season
  14.         state: winter
  15.     then:
  16.       - device_id: 74cff96dca909fae8669600e07xxx
  17.         domain: climate
  18.         entity_id: b320cd713293ced405e14d4b0xxx
  19.         type: set_hvac_mode
  20.         hvac_mode: heat
  21.   - if:
  22.       - condition: state
  23.         entity_id: sensor.season
  24.         state: summer
  25.     then:
  26.       - device_id: 74cff96dca909fae8669600exxx
  27.         domain: climate
  28.         entity_id: b320cd713293ced405e14d4bxxx
  29.         type: set_hvac_mode
  30.         hvac_mode: cool
  31.   - if:
  32.       - condition: or
  33.         conditions:
  34.           - condition: state
  35.             entity_id: sensor.season
  36.             state: spring
  37.           - condition: state
  38.             entity_id: sensor.season
  39.             state: autumn
  40.     then:
  41.       - device_id: 74cff96dca909fae8669600xxxx
  42.         domain: climate
  43.         entity_id: b320cd713293ced405e14dxxxxx
  44.         type: set_hvac_mode
  45.         hvac_mode: auto
  46. mode: single
复制代码


步骤 - 关闭空调
1. 打开米家APP,点击右上角+,创建手动控制
             名称:关闭主卧空调
             控制:选择中枢网关-产生虚拟事件,事件内容为 关闭主卧空调


2. 添加HA自动化 设置-自动化与场景-创建自动化
         触发条件:当中枢网关 虚拟服务 虚拟事件发生的 事件名称 变化到 关闭主卧空调
        执行操作:  空调改为off
[attach]66368[/attach]
YAML如下
  1. alias: 关闭主卧空调
  2. description: ""
  3. triggers:
  4.   - trigger: state
  5.     entity_id:
  6.       - event.xiaomi_cn_11048xxxx_hub1_virtual_event_e_4_1
  7.     attribute: 事件名称
  8.     to: 关闭主卧空调
  9. conditions: []
  10. actions:
  11.   - device_id: 74cff96dca909fae8669600e07xxxx
  12.     domain: climate
  13.     entity_id: b320cd713293ced405e14d4b06xxxx
  14.     type: set_hvac_mode
  15.     hvac_mode: "off"
  16. mode: single
复制代码

打开空调就可以说 小爱同学  打开主卧空调
关闭空调就可以说 小爱同学  关闭主卧空调
就好了。







作者: aska    时间: 2024-12-26 11:09
感谢!!!原来是这样米家的虚拟事件联动到ha,折腾了好久没有结果。再请问,那如何从HA里产生虚拟事件,反向控制米家呢?
作者: zyf6578    时间: 2024-12-26 11:11
请问华菱空调控制这个还是红外控制吧?没有状态反馈的吧?
作者: xjpz    时间: 2024-12-26 11:12
本帖最后由 xjpz 于 2024-12-26 11:29 编辑
aska 发表于 2024-12-26 11:09
感谢!!!原来是这样米家的虚拟事件联动到ha,折腾了好久没有结果。再请问,那如何从HA里产生虚拟事件,反 ...

一样的,就是米家APP新建自动化,触发条件是中枢网关的虚拟事件,事件名称一致即可
作者: xjpz    时间: 2024-12-26 11:16
zyf6578 发表于 2024-12-26 11:11
请问华菱空调控制这个还是红外控制吧?没有状态反馈的吧?

华凌空调通过HA集成Midea AC LAN接入就行,接入后有状态反馈
作者: aska    时间: 2024-12-26 11:53
本帖最后由 aska 于 2024-12-26 11:57 编辑
xjpz 发表于 2024-12-26 11:12
一样的,就是米家APP新建自动化,触发条件是中枢网关的虚拟事件,事件名称一致即可 ...

从米家到HA,触发实体是成功的。[attach]66380[/attach]


但中枢实体如何作为执行目标?我搞不懂动如何做,之前一直没有用过HA的自动化,都是在NR里搞的,多谢,请教了!!!
[attach]66381[/attach]



作者: xjpz    时间: 2024-12-26 12:05
本帖最后由 xjpz 于 2024-12-26 12:16 编辑
aska 发表于 2024-12-26 11:53
从米家到HA,触发实体是成功的。

[attach]66382[/attach]
然后从米家APP新建自动化,触发是中枢网关虚拟事件,事件内容为 测试事件


作者: aska    时间: 2024-12-26 12:16
xjpz 发表于 2024-12-26 12:05
然后从米家APP新建自动化,触发是中枢网关虚拟事件,事件内容为 测试事件
...

非常感谢!!!现在这样,巴法可以不用了,米极桥也可以不用了,甚至易来S20 PRO也可以不用了
作者: karl321    时间: 2024-12-26 12:46
aska 发表于 2024-12-26 11:09
感谢!!!原来是这样米家的虚拟事件联动到ha,折腾了好久没有结果。再请问,那如何从HA里产生虚拟事件,反 ...

都接入米家了,那HA里也接入了,  直接HA做自动化就行了,没必要再反馈米家呀。
作者: aska    时间: 2024-12-26 13:08
之前习惯用NR,对HA的自动化不熟悉,而且大部分的自动化都写在极客版里了。
作者: 隔壁的王叔叔    时间: 2024-12-26 14:06
aska 发表于 2024-12-26 11:09
感谢!!!原来是这样米家的虚拟事件联动到ha,折腾了好久没有结果。再请问,那如何从HA里产生虚拟事件,反 ...

ha控米家,不需要虚拟事件啊
作者: aska    时间: 2024-12-26 15:11
隔壁的王叔叔 发表于 2024-12-26 14:06
ha控米家,不需要虚拟事件啊

如果自动化在HA或者NR是可以不用,我现在的绝大部分自动化都已迁移到极客版,所以要给一个触发,之前通过米极桥或设备状态灯等...现在能直接更好互动,更开放和好玩。
作者: karl321    时间: 2024-12-26 20:57
我今晚测试了下 米极桥确实不需要了。      但是有一个问题,比如说“15分钟后的打开循环系统”,小爱死活无法识别这句话,    我在训练里面加入这个,小爱仍然无法识别这句话产生虚拟时间
作者: xjpz    时间: 2024-12-27 10:03
karl321 发表于 2024-12-26 20:57
我今晚测试了下 米极桥确实不需要了。      但是有一个问题,比如说“15分钟后的打开循环系统”,小爱死活 ...

小爱读不懂的话,确实有点难。这句话应该分成两部分:15分钟后 和 打开循环系统 ,就好了。
还有虚拟事件不支持变量参数,比如空调调到X度,目前想到的是用穷举了。

作者: pronet    时间: 2024-12-27 15:35
学习到新的路子,有了xiaomi home之后很多事相对简单。
作者: 18775945806    时间: 2024-12-27 23:50
家里多个美的空调如何处理?另外这个方法我也试了,关闭光猫又开启,空调就会自动打开,这如何处理?
作者: xjpz    时间: 2024-12-28 14:30
控制多个空调的话,在米家APP手动控制名称和虚拟事件名称里加上房间名。比如  打开主卧空调 、打开客厅空调。我试了,重启路由器确实会重复产生上一次的虚拟事件,从HA日志里看到中枢网关也有重复的虚拟事件,这个感觉是ha_xiaomi_home集成的bug,已经提了issue。
作者: aska    时间: 2024-12-30 16:11
这个集成最大的问题,1周左右就要重新验证用户....
作者: xjpz    时间: 2024-12-30 16:19
aska 发表于 2024-12-30 16:11
这个集成最大的问题,1周左右就要重新验证用户....

还不成熟,有不少bug,本地中枢网关控制还没更新
作者: xjpz    时间: 2024-12-31 19:20
18775945806 发表于 2024-12-27 23:50
家里多个美的空调如何处理?另外这个方法我也试了,关闭光猫又开启,空调就会自动打开,这如何处理? ...

有网友提供了解决方法,事件发生后过10秒再发一个无实际用途的虚拟事件,那么网络重启后触发的就是那个无用的虚拟事件。
https://github.com/XiaoMi/ha_xiaomi_home/issues/482
作者: lusen0516    时间: 2025-1-2 10:29
为啥我的HA里面中枢网关没有虚拟事件?
作者: zioyi    时间: 2025-1-2 18:21
非常感谢,那如何实现小爱同学语音温度高一点,温度低一点命令
作者: v01    时间: 2025-1-3 22:18
感谢分享!~!~!
作者: asccs2007    时间: 2025-1-7 17:02
本帖最后由 asccs2007 于 2025-1-7 17:24 编辑

感谢楼主教程,纯小白,有个问题想请教一下,就是,我的这些流程都设置好了,那个yaml文件是一定要复制吗,还有里面涉及到了有些什么设备的id需要修改吗,还是说直接粘贴进去就行了?另外就是刚才我实验成功了,有个问题,温度不能调整?直接就制暖30度?


作者: xjpz    时间: 2025-1-7 17:45
asccs2007 发表于 2025-1-7 17:02
感谢楼主教程,纯小白,有个问题想请教一下,就是,我的这些流程都设置好了,那个yaml文件是一定要复制吗, ...

entity_id、device_id对应的设备id需要改,温度可以设置,就是在条件后面再新增逻辑设置打开时空调温度

[attach]66920[/attach]
作者: asccs2007    时间: 2025-1-7 17:52
xjpz 发表于 2025-1-7 17:45
entity_id、device_id对应的设备id需要改,温度可以设置,就是在条件后面再新增逻辑设置打开时空调温度

...

万分感谢
作者: xjpz    时间: 2025-1-7 17:59
lusen0516 发表于 2025-1-2 10:29
为啥我的HA里面中枢网关没有虚拟事件?

小米官方插件ha_xiaomi_home集成里的中枢是有虚拟事件
作者: xjpz    时间: 2025-1-7 18:01
zioyi 发表于 2025-1-2 18:21
非常感谢,那如何实现小爱同学语音温度高一点,温度低一点命令

通过虚拟事件调温度有点难,暂时没好办法
作者: asccs2007    时间: 2025-1-9 11:10
本帖最后由 asccs2007 于 2025-1-9 11:44 编辑

求助大神看下是什么情况啊 ,我设置好了自动化,运行也可以;但是我发现,我如果更新了米家xiaomi-home 里面的设备状态,
然后我书房设置好自动化的空调总是自动给我启动,是咋回事呢?
每次更新必启动!!
一共四个空调,写了8条自动化,4开4关,书房这个是第一条。


作者: xjpz    时间: 2025-1-9 12:15
asccs2007 发表于 2025-1-9 11:10
求助大神看下是什么情况啊 ,我设置好了自动化,运行也可以;但是我发现,我如果更新了米家xiaomi-home 里 ...

“更新了米家xiaomi-home 里面的设备状态” 是指什么?

是不是这里描述的情况  https://github.com/XiaoMi/ha_xiaomi_home/issues/482
作者: asccs2007    时间: 2025-1-9 12:26
xjpz 发表于 2025-1-9 12:15
“更新了米家xiaomi-home 里面的设备状态” 是指什么?

是不是这里描述的情况  https://github.com/Xiao ...

是在homeassisatant设备配置选项,更新设备状态的时候就会产生这个情况[attach]66998[/attach]
路由重启我还没注意到,但是我现在是这个状态。

作者: xjpz    时间: 2025-1-9 14:20
asccs2007 发表于 2025-1-9 12:26
是在homeassisatant设备配置选项,更新设备状态的时候就会产生这个情况
路由重启我还没注意到,但是我现在 ...

那跟这里的情况是一样的,https://github.com/XiaoMi/ha_xiaomi_home/issues/482
  1. alias: 事件置空
  2. description: ""
  3. triggers:
  4.   - trigger: state
  5.     entity_id:
  6.       - event.xiaomi_cn_000_hub1_virtual_event_e_4_1
  7.     for:
  8.       hours: 0
  9.       minutes: 0
  10.       seconds: 10
  11. conditions: []
  12. actions:
  13.   - if:
  14.       - condition: state
  15.         entity_id: event.xiaomi_cn_000_hub1_virtual_event_e_4_1
  16.         attribute: 事件名称
  17.         state: nop
  18.     then: []
  19.     else:
  20.       - action: notify.send_message
  21.         metadata: {}
  22.         data:
  23.           message: "["nop"]"
  24.         target:
  25.           entity_id: notify.xiaomi_cn_000_hub1_emit_virtual_event_a_4_1
  26. mode: single
复制代码
加个这个自动化试试

作者: asccs2007    时间: 2025-1-9 14:33
本帖最后由 asccs2007 于 2025-1-9 15:10 编辑
xjpz 发表于 2025-1-9 14:20
那跟这里的情况是一样的,https://github.com/XiaoMi/ha_xiaomi_home/issues/482
加个这个自动化试试
...

entity_id: notify.xiaomi_cn_000_hub1_emit_virtual_event_a_4_1
以上这个entity_id:后面的是不是应该换成我自己的
event.xiaomi_cn_1079064662_hub1_virtual_event_e_4_1


另外,我刚才实验了下直接把这个整个粘贴进去,提示我
解析 YAML 时出错:bad indentation of a mapping entry (行:23,列:23)
就是massage这个部分
参考链接里面的处理了一下,保存成功了,而且这个“事件空置”也跟着执行了,不过,为何更新了设备状态之后,空调还是又给打开了。。。。


作者: xjpz    时间: 2025-1-9 16:00
asccs2007 发表于 2025-1-9 14:33
entity_id: notify.xiaomi_cn_000_hub1_emit_virtual_event_a_4_1
以上这个entity_id:后面的是不是应该换 ...

那就非常奇怪了
作者: asccs2007    时间: 2025-1-9 16:05
xjpz 发表于 2025-1-9 16:00
那就非常奇怪了


中午的时候没注意,在外面调试设备更新状态,过了1个小时才发现 空调被打开了,家里没人

先暂停吧,等看怎么解决了再打开自动化
但是你这个方法绝妙!!!
作者: xjpz    时间: 2025-1-9 16:17
asccs2007 发表于 2025-1-9 16:05
中午的时候没注意,在外面调试设备更新状态,过了1个小时才发现 空调被打开了,家里没人

先暂停吧 ...

我后面加了打开空调推送到手机,防止不知情空调被打开
作者: pizigao    时间: 2025-1-9 17:14
家里正好有4台华菱空调,看看先
作者: skyyezhu    时间: 2025-1-30 15:16
感谢,早就不想用巴法了
作者: 578269496    时间: 2025-3-2 16:49
代码那几个ID是什么ID
作者: xjpz    时间: 2025-3-3 12:14
578269496 发表于 2025-3-2 16:49
代码那几个ID是什么ID

event.xiaomi_cn_110488xxxxx_hub1_virtual_event_e_4_1 xiaom 中枢网格虚拟事件实体id
sensor.season  是集成的季节插件 id
74cff96dca909fae8669600e07xxx 是空调设备 id
b320cd713293ced405e14d4b0xxx 是空调模式实体 id
作者: 578269496    时间: 2025-3-3 21:58
xjpz 发表于 2025-3-3 12:14
event.xiaomi_cn_110488xxxxx_hub1_virtual_event_e_4_1 xiaom 中枢网格虚拟事件实体id
sensor.season   ...

[attach]68741[/attach][attach]68740[/attach]是这个吗?

作者: 578269496    时间: 2025-3-3 23:24
成功了。但是在HA上能控制。在米家APP上就不行。还有我想问可以设置执行强劲风吗?怎么设备选择没有强劲风。
作者: xjpz    时间: 2025-3-4 12:54
578269496 发表于 2025-3-3 23:24
成功了。但是在HA上能控制。在米家APP上就不行。还有我想问可以设置执行强劲风吗?怎么设备选择没有强劲风 ...

先看下 HA 里空调设备有没有强风,通常你 HA 里能看到的空调属性都能控制,你可以在下面添加动作找找看。
[attach]68757[/attach]

作者: xhongjetol    时间: 2025-3-12 17:52
asccs2007 发表于 2025-1-9 14:33
entity_id: notify.xiaomi_cn_000_hub1_emit_virtual_event_a_4_1
以上这个entity_id:后面的是不是应该换 ...

我是在ha执行之后,给中枢网关触发一个虚拟事件,随便定义一个无效的值,感觉这样应该能解决突然打开的问题,或者重启后打开的问题




欢迎光临 『瀚思彼岸』» 智能家居技术论坛 (https://bbs.hassbian.com/) Powered by Discuz! X3.5