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

 找回密码
 立即注册
查看: 20763|回复: 16

[插件集成] 青萍检测仪NODERED大法接入HA

[复制链接]

9

主题

80

帖子

496

积分

论坛分享达人

积分
496
金钱
416
HASS币
0
发表于 2020-11-15 14:03:56 | 显示全部楼层 |阅读模式
本帖最后由 anschein 于 2020-11-22 15:41 编辑

在论坛中学习了很久,感谢各位大佬对我这个不懂代码的小白的耐心解答,然后参照各位大佬的NODERED接入,今天研究出通过NODERED接入青萍空气检测仪的方法特来回馈一下青萍在NODERED里面响应node-red-contrib-mi-miio  的控制,如果直接使用GET的话输出的是undifined,但是如果用MIIO命令加get_prop的话是可以直接输出数据的

                               
登录/注册后可看大图

首先附上流

图中第一个POLL我是设置的10秒一刷,有需要可以自己改,然后检测仪位置的节点改为自己的IP和TOKEN,最后MQTT输出改为自己的MQTT节点,NODERED这一侧的工作就完成了
HA侧代码如下,大家按需修改
另外咨询两个问题,一个是有没有关于template 的用法教程?还有就是比如像青萍这个,在HA中生成了很多实体,但是实体如何整合成一个设备?
    #青萍空气检测仪
    - platform: mqtt
      state_topic: 'air'
      name: 'temperature'
      unit_of_measurement: '°C'
      value_template: '{{ value_json.temperature }}'
      unique_id: "airsensor_temperature"
    - platform: mqtt
      state_topic: 'air'
      name: 'co2'
      unit_of_measurement: 'ppm'
      value_template: '{{ value_json.co2 }}'
      unique_id: "airsensor_co2"
    - platform: mqtt
      state_topic: 'air'
      name: 'PM2.5'
      unit_of_measurement: 'ug/m3'
      value_template: '{{ value_json.pm25 }}'
      unique_id: "airsensor_pm25"
    - platform: mqtt
      state_topic: 'air'
      name: 'humidity'
      unit_of_measurement: '%'
      value_template: '{{ value_json.humidity }}'
      unique_id: "airsensor_humidity"
    - platform: mqtt
      state_topic: 'air'
      name: 'tvoc'
      unit_of_measurement: 'mg/m3'
      value_template: '{{ value_json.tvoc }}'
      unique_id: "airsensor_tvoc"
    - platform: mqtt
      state_topic: 'air'
      name: 'battery'
      unit_of_measurement: '%'
      value_template: '{{ value_json.battery }}'
      unique_id: "airsensor_battery"
这个的灵感来源于另外一个通过MQTT BROKER来接入青萍的帖子,他里面对于TVOC进行了一个除以218.77的处理,想请教一下这个处理的原因是什么?直接通过青萍输出的TVOC是个100多的整数,但是APP上显示的是0.几几几的MG/M3含量,如果用218.77来转换的依据是什么?


捕获.PNG

flows (1).json

2.78 KB, 下载次数: 60

回复

使用道具 举报

15

主题

158

帖子

1368

积分

论坛技术达人

积分
1368
金钱
1200
HASS币
40
发表于 2020-11-16 09:58:42 | 显示全部楼层
微信截图_20201116095303.png
我猜这个数是别人换算后的系数,理论上sgp30的示数是要根据参数计算换算的
回复

使用道具 举报

0

主题

56

帖子

2440

积分

金牌会员

Rank: 6Rank: 6

积分
2440
金钱
2384
HASS币
0
发表于 2020-11-16 12:38:05 | 显示全部楼层
谢谢大佬 设备已经接入 还顺便学习了mqtt node的安装配置
回复

使用道具 举报

6

主题

78

帖子

1812

积分

金牌会员

Rank: 6Rank: 6

积分
1812
金钱
1734
HASS币
0
发表于 2020-11-19 22:43:41 | 显示全部楼层
大佬求教ha里所有参数都是unknown,是mqtt没有获取到node发送的么?
回复

使用道具 举报

6

主题

78

帖子

1812

积分

金牌会员

Rank: 6Rank: 6

积分
1812
金钱
1734
HASS币
0
发表于 2020-11-20 23:10:31 | 显示全部楼层
大佬,我发现青萍不相应nodered的miio节点啊?提示msg: "Error: Call to device timed out"
回复

使用道具 举报

9

主题

80

帖子

496

积分

论坛分享达人

积分
496
金钱
416
HASS币
0
 楼主| 发表于 2020-11-21 12:33:28 | 显示全部楼层
zets 发表于 2020-11-19 22:43
大佬求教ha里所有参数都是unknown,是mqtt没有获取到node发送的么?

先在NR里面加个调试输出,看是不是UNKOWN,我之前也是UNKOWN弄了半天,你导入的是我的流么
回复

使用道具 举报

9

主题

80

帖子

496

积分

论坛分享达人

积分
496
金钱
416
HASS币
0
 楼主| 发表于 2020-11-21 12:34:36 | 显示全部楼层
zets 发表于 2020-11-20 23:10
大佬,我发现青萍不相应nodered的miio节点啊?提示msg: "Error: Call to device timed out"
...

用的命令是啥?MIIO命令么
回复

使用道具 举报

6

主题

78

帖子

1812

积分

金牌会员

Rank: 6Rank: 6

积分
1812
金钱
1734
HASS币
0
发表于 2020-11-22 15:24:21 | 显示全部楼层
anschein 发表于 2020-11-21 12:34
用的命令是啥?MIIO命令么

是的,用的就是你的流,只是把检测仪的IP换成了我的青萍的地址。这样操作的话你原来流里面的debug调试直接不出任何反馈,我在检测仪那建了个debug监视提示连接超时。如果检测仪那添的是小米网关的地址,那么就输出NAN的空值。。。。
回复

使用道具 举报

9

主题

80

帖子

496

积分

论坛分享达人

积分
496
金钱
416
HASS币
0
 楼主| 发表于 2020-11-22 15:37:46 | 显示全部楼层
zets 发表于 2020-11-22 15:24
是的,用的就是你的流,只是把检测仪的IP换成了我的青萍的地址。这样操作的话你原来流里面的debug调试直 ...

青萍跟网关没有交互的,你把TOKEN加进去试试?
回复

使用道具 举报

9

主题

80

帖子

496

积分

论坛分享达人

积分
496
金钱
416
HASS币
0
 楼主| 发表于 2020-11-22 15:40:44 | 显示全部楼层
anschein 发表于 2020-11-22 15:37
青萍跟网关没有交互的,你把TOKEN加进去试试?

我也试了一下应该是TOKEN的问题,可能更新了个啥,我改改我的贴子
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-28 02:36 , Processed in 0.076214 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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