2980020711 发表于 2019-7-25 11:12:21

echo控制OneNET硬件设备(语音入口)

前言:随着万物互联时代的到来,各种传统电器都开始支持联网。而智能音响把语音作为一个物联网的入口,带来不同的交互体验。amazon echo是目前最成熟的智能音响,因此选择echo来开发哒

先附上演示视频:

http://n.miaopai.com/media/Nj1dE6OkE64AsnzCMWnoV6CUENjB2zE7

1、BASIC
=========
先了解下概念呗

1.1你的开发基础:

1、熟练使用onenet,设备已经采用edp协议连接到onenet。
2、你已经拥有aws账号,会一点python,能看一点英语

辅助软件:postman (调试软件,模拟http,并且可以直接生成各种语言的代码)

现在开始吧!

1.2 什么是echo
一个拥有麦克风阵列的音响(采用adi芯片,拥有远场识别,回音消除...)

目前echo使用的语音助手叫做alexa,只支持英语。

1.3 什么是OneNET

你猜...

1.4 语音服务流程
http://upfiles.heclouds.com/forum-app/2018/01/16/fbd338f0319250861e44b73f120ad9cc.png


这个图要从南向北来看,首先使用avs服务将RAW DATA转换成文字信息,再使用alexa skill将文字信息转换成json格式的意图(in**s),最后将in**s送到aws lanbda中进行处理,并在aws lanbda中通过rest api的方式发送cmd到onenet,最后通过OneNET来控制设备。

----------

alexa voice service(avs):语音识别
alexa skill :经过用户配置的专用场景语义理解
aws lanbda:跑着代码的云服务器

----------
----------
## 2、开发 ##

2.1概述

而echo连接到onenet的逻辑如下:

*echo(麦克风进行声音拾取)- - - alexa(进行关键词提取,事件提取,并以json格式发送) - - - aws lanbda (根据alexa发送过来的事件进行处理,并在对应事件中调用onenet的API) - - - onenet收到发送过来的API后对设备进行命令下发*

要进行3份代码的撰写

这样分层是好事情~虽然麻烦一点,但每一层都简洁明了

1. alexa skill
2. aws lanbda
3. 设备端(stm32通过edp连接onenet)

2.1、alexa skill

主要看官方文档~写得很详细,这是我的步骤

http://blog.csdn.net/jo_joe/article/details/79038231

----------

2.2、lanbda处理

可以直接使用python的模板。

在blueprint蓝图中,选择alexa-skills-kit-color。这个是跑py的,根据自己的需要在里面添加修改就可以啦!

我在里面使用了一个request,用于给onenet发送cmd。可以参考

https://open.iot.10086.cn/bbs/thread-20030-1-1.html

python的部分

下面是我部分代码的截图:
1、写好 id 和api-key

http://upfiles.heclouds.com/forum-app/2018/01/16/d92b0277ea82c1836d4710016a586c38.png
-----------------------

2.写好welcome words



-------------------

3.写好开灯的语句



-------------------

4.写好关灯的语句

------------------

我也是直接在alexa-skills-kit-color这个blueprint里面直接改的...很多任务的名字都还是color-in**的名字,但并不要在意这些细节,先把代码跑起来撒~


PS: 使用request包的话要自己打包上传,lanbda里面没有提供这个。打包时要在一级目录下打包,不要返回上一级总目录下来打包

----------

2.3、如何使用OneNET Rest API(另外写篇文章来讲这个吧)

请看这篇~

[如何使用OneNET Rest API] https://open.iot.10086.cn/bbs/thread-20030-1-1.html

---------------

## 3、OVER ##

PS:文中的错别是是为了避免***的出现

------------------

未来趋势:

人工智能12345级:echo目前是1级,简单来说呢,就是很智障的意思...
我用的最多的功能除了听歌之外,就是“提醒我5分钟后去关火”这种功能...听起来好像用处不大

但科技发展这么快,未来物联网会搞成啥子样子谁也不知道,因此这个语音入口就别错过啦,先搞起来吧~

语音入口-->物联网

----------------
参考资料:

1、亚马逊官方文档
2、请直接搜索 “西红柿炖番茄”,他的博客黑不错
页: [1]
查看完整版本: echo控制OneNET硬件设备(语音入口)