天猫精灵通过Node 您所在的位置:网站首页 dayband手环怎么使用天猫精灵 天猫精灵通过Node

天猫精灵通过Node

2024-05-22 02:12| 来源: 网络整理| 查看: 265

本帖最后由 hcfong2020 于 2022-5-2 22:28 编辑

家里有天猫精灵,但是天猫的场景功能非常薄弱,很多设备无法控制。所以在家里的黑群晖上添加安装了homeassistant,随着homeassistant的不断深入了解,发现功能非常强大,可以实现很多天猫精灵不能实现的功能。所以想着用天猫精灵的简单语音指令来控制homeassistant的场景或者实体的。 家庭现有环境是一台黑群晖,有天猫精灵,书房里面有一个升降幕布(433遥控器控制),有一个投影仪(红外遥控),有音响(遥控),一台博联的rm pro4(红外和射频发射器),书房的灯(使用的博联插座控制) 目的实现以下功能: 使用天猫精灵语音指令“打开娱乐模式”,实现 幕布下降,投影仪打开,音响打开,将音响音量增加8,关闭书房的灯。 使用天猫精灵语音指令“关闭娱乐模式”实现幕布上升,投影仪关闭,音响关闭,打开书房灯。 方法一、使用天猫精灵自带的模式控制1、使用博联的app创建,音响的遥控,幕布遥控,投影遥控。 2、博联app添加灯的插座 3、在天猫精灵app的技能广场中添加博联的账号绑定 4、按照天猫精灵场景中的一个个添加设备开关顺序 这个方法基本能够实现傻瓜模式的场景,为什么说是傻瓜模式的场景呢,幕布,音响,投影仪都是通过遥控器实现的,天猫精灵是无法判断设备的开关机状态的,这种方法当你单独打开一个设备的时候,天猫精灵的场景模式就会失效了。因为当你通过天猫场景打开音响的时候,因为之前开过音响,而音响又是通过红外遥控控制开关的,因为开和关是同个按键,导致想开的时候,可以就直接关闭音响了。导致场景模式出现混乱。另外天猫精灵对一些自定义的按键的控制是不支持的,比如说无法在场景中设置调大音量。 方法二、通过阿里云的飞燕平台创建一个虚拟设备,通过控制虚拟设备的开关homgassistant中的场景。 1、安装homeassistant:黑群晖docker中安装homeassistant,这个就不过多介绍了。 2、安装node-red:黑群晖docker中安装node-red,参考:Node-red 添加 home-assistant-websocket 节点,获取和控制homeassitant 3、添加红外和射频设备:在homeassistant中添加博联的设备,因为有些是红外或者射频的设备所以需要用到博联的遥控学习功能。参考:broadlink(博联)射频码学习,参考:博联RMpro接入homeassistant(红外射频均适用) 4、在homeassistant中添加娱乐模式和休息模式: (注:homeassitant中的模式是将设备调整到模式的设定状态,执行的时候会判断设备的当前状态,跟天猫精灵的场景模式是不一样的) 我把音响中的开关,调大音量、调小音量,幕布的上升,下降,投影仪的开关,都单独设置成了脚本,这样单独可以调用。投影仪的开关因为关闭的时候需要同个按钮按两次,所以设置了两个同样的脚本,不同的名字。开关都直接调用一次。因为开的时候按两次也不会影响投影仪的正常运行。 通过设置后,我的homeassistant中有了,yinxiang,mubu,touyin,touyin1,这4个实例。这4个实例都有自己的开关状态。 娱乐模式就是:yixiang:状态开,mubu:状态开(=下降),touyin:状态开,touyin1:状态开 休息模式就是:yixiang:状态关,mubu:状态关(=上升),touyin:状态关,touyin1:状态关 5、创建阿里云账号:(可以用淘宝账号直接登陆)在阿里云飞燕平台使用天猫精灵绑定的淘宝账号登陆。6、创建虚拟设备:在飞燕创建产品,在产品里面创建设备。参考node-red接入阿里飞燕平台同时接入天猫精灵语控。这个帖子只要学习里面的创建产品创建设备。 (创建产品和设备的要点:产品的联网方式选择2G3G4G,选择交互的客户端的时候选择使用公版的app,就是云智能) 7、获取虚拟设备用于app添加设备的二维码:因为飞燕的节点不能使用,所以原本教程中的二维码是不会生成的。我们只需要在生成产品的最后一步的时候点

配网+App下载二维码,会出现一个模糊的二维码,在二维码下方的输入框内,输入你定义的设备ID,就可了。然后下载云智能app,用你绑定天猫精灵的淘宝账号登陆云智能app,然后用云智能app扫码就可以添加这个虚拟设备了。(当时这个二维码我找了很久,因为我用的笔记本屏幕很小,这个输入框没有,找了半天原来才原来下拉一下就有输入框了。)8、node-red中添加homeassistant节点:参考:Node-red 添加 home-assistant-websocket 节点,获取和控制homeassitant 9、云智能app添加虚拟设备:手机下载云智能app,用app扫描刚才创建的虚拟设备的二维码,就可以直接添加了,添加后你的天猫精灵app中就可以看到这个设备了。 10、控制原理介绍:参考:天猫精灵接入nodered控制homeassistant任何品牌的设备 11、在node-red中创建flows控制homeassistant场景:创建一个mqttin,配置联通新创建的虚拟设备(这一步不会的多看看第10点的视频),当天猫精灵下达打开虚拟设备的时候,mqttin会收到一个json反馈,里面会包含powerstate:0或者powerstate:1,通过node-red中的switch功能分别连接homeassistant节点下的call servies功能,call servies功能非常强大,可以调用homeassistant的实体,因为场景模式也是一种实体,所以也能直接调用。通过调用homeassistant的实体功能和直接在homeassistant的一样的,实体的状态也会同步变话,所以就不会不出现天猫精灵场景控制的尴尬情况。视频中用到的topic:/sys/{$ProductKey}/${deviceName}/thing/service/property/set,{$ProductKey}是产品的key,${deviceName}是自己设置的设备名,也就是二维码中设置中用到的。实现的流程: 云智能中将添加的虚拟设备直接改名成“娱乐模式",天猫精灵app中对应的设备也会直接变成”娱乐模式“,对着天猫精灵直接喊 打开娱乐模式,阿里云平台就会接收到打开你创建的那个虚拟设备,通过nodered中订阅的topic:/sys/{$ProductKey}/${deviceName}/thing/service/property/set,接收到powerstate:1,直接会启动homeassistant中的娱乐模式。同样天猫精灵喊 关闭娱乐模式,阿里云平台就会接收到关闭你的那个虚拟设备,同样nodered中的topic接收到powerstate:0,就会启动homeassistant中的休息模式。 (注意点:阿里云平台和飞燕平台是有区别的,飞燕平台主要是对产品的设计,登陆阿里云飞燕平台,阿里云平台可以看到设备的mqtt。登陆:阿里物联网平台) 以上功能实现后,就能通过天猫精灵直接控制homeassistant的场景了。以下部分属于进阶。 12、虚拟产品增加自定义属性:飞燕平台中在功能定义中可以自定义产品的属性,因为目前云智能app,不能添加投影仪音响等虚拟设备,可以添加灯这类的虚拟设备,所以你可以把你需要控制的功能自定义在灯这个设备里面。 13、mqttout功能使用:在创建虚拟产品的时候,每个产品是可以自定义参数的,这些参数也是可以通过mqttout功能传到阿里云的服务器的。json的格式参考:alink协议。里面有具体参数的说明。你只要把自定义的属性通过固定的json格式,通过mqttout功能回传阿里云服务器。回传的数据也会体现到你的云智能app上面。 使用mqttout功能用到的topic:/sys/{$ProductKey}/${deviceName}/thing/service/property/post { "id": "123", "version": "1.0", "sys":{ "ack":0 }, "params": { "Power": { "value": "on", "time": 1524448722000 }, "WF": { "value": 23.6, "time": 1524448722000 } }, "method": "thing.event.property.post" } 参考资料: 1、Node-red 添加 home-assistant-websocket 节点,获取和控制homeassitant 2、node-red接入阿里飞燕平台同时接入天猫精灵语控 3、天猫精灵接入nodered控制homeassistant任何品牌的设备 4、阿里云飞燕平台 5、如何安装node-red 6、broadlink(博联)射频码学习7、小爱同学小度音箱天猫精灵多平台语音对接教程–nodered版本(缺点部分免费,智能控制固定的几个类型,不支持场景的控制)7、博联RMpro接入homeassistant(红外射频均适用)

帖子大部分是写给自己看的,以便后面能够重复操作的时候顺利上手,所以就不用图片了。看不懂的可以发私信或者回帖,我会回复的。 屏幕截图 2022-05-02 210948.png 登录/注册后可看大图

屏幕截图 2022-05-02 210948.png (113.75 KB, 下载次数: 0)

下载附件

2022-5-2 21:10 上传

天猫精灵设备 登录/注册后可看大图

1.jpg (155.91 KB, 下载次数: 0)

下载附件

天猫精灵设备

2022-5-2 21:26 上传

云智能设备 登录/注册后可看大图

微信图片_20220502212242.jpg (116.21 KB, 下载次数: 0)

下载附件

云智能设备

2022-5-2 21:26 上传

设备界面 登录/注册后可看大图

微信图片_20220502212724.jpg (124.64 KB, 下载次数: 0)

下载附件

设备界面

2022-5-2 21:28 上传

下面的图片显示的是回传设备状态的flows图。 阿里云 登录/注册后可看大图

屏幕截图 2022-05-02 222735.png (53.27 KB, 下载次数: 0)

下载附件

阿里云

2022-5-2 22:27 上传

阿里云显示的设备状态 回传flows 登录/注册后可看大图

屏幕截图 2022-05-02 222530.png (69.01 KB, 下载次数: 0)

下载附件

回传flows

2022-5-2 22:27 上传

带设备消息回传的flows图



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有