智能家居-1.基于esp8266的语音控制系统(开篇)

智能家居-2.基于esp8266的语音控制系统(硬件篇)

智能家居-3.基于esp8266的语音控制系统(软件篇)

apache-apollo安装包 -window(使用jdk1.7) 提取码:3gzp

源码下载:

源码-智能家居硬件程序 (arduino_esp8266) -> 提取码

源码-智能家居APP(homeapp)-> 提取码

源码-智能家居服务器程序(mqttagent) -> 提取码

源码-智能家居服务器程序(restserver) -> 提取码

源码-智能家居sql文件(smarthome.sql) -> 提取码

QQ:505645074

实现效果

利用家庭中的WiFi网络,通过App语音控制电器(空调,电视,风扇),参考叮咚音箱,天猫精灵,小爱同学

演示视频:

http://v.youku.com/v_show/id_XNDAwNTg5OTI4MA==.html?spm=a2hzp.8253869.0.0

硬件设备(仅供参考):

1. ESP8266

https://detail.tmall.com/item.htm?id=535433433157&spm=a1z09.2.0.0.7df62e8dNadcfo&_u=bakr23dca41

2. 红外接收 and 红外发射管

https://item.taobao.com/item.htm?spm=a1z09.2.0.0.7df62e8dNadcfo&id=569416560538&_u=bakr23dc089

https://detail.tmall.com/item.htm?id=40273482493&spm=a1z09.2.0.0.7df62e8dNadcfo&_u=bakr23dedf3

3.红外解码模块(用于测试)

https://item.taobao.com/item.htm?spm=a1z09.2.0.0.640c2e8dEwAQU0&id=527293996698&_u=bakr23decff

4.杜邦线

https://detail.tmall.com/item.htm?id=41065178536&spm=a1z09.2.0.0.640c2e8dEwAQU0&_u=bakr23d811b&sku_properties=122216547:20213

5. 树莓派 or 电脑(用于充当网关)

6. android手机(APP控制)

实现原理

1.通过ESP8266的智能配网连接家里的WIFI;

2.通过MQTT协议的订阅和发布功能,手机App和ESP8266都连接到网关,两者能互相通信;

3.通过app的语音识别/语音合成,解析语音信息,进行命令控制;

4.通过IRremoteESP8266-master库进行电器的红外学习,红外控制;

5.通过SPIFFS存储/读取红外编码

开发环境配置

1.下载并安装Arduino IDE

下载地址1:
windows版下载
mac os版下载

下载地址2:
百度云盘下载

2.配置arduino ide for esp8266

打开arduino ide->首选项->“附加开发板管理器网址”输入http://wechat.doit.am/package_esp8266com_index.json如下

注意,如果已经输入过别的网址,多个网址之间以逗号间隔。

如果在下一步中无法下载,可尝试修改为

http://wechat.doit.am/package_esp8266com_index.json

重启ide,打开:工具->板->boards manager(开放板管理)

稍等,下拉到最下面

如果失败,多点几次,等待安装完毕

最后可以看到:

3.搭建mqtt环境

下载apache-apollo-1.7.1-windows-distro.zip,下载后解压到D盘

apollo运行成功的提示,如下图所示

4.搭建android开发环境(Android Studio)

智能家居-1.基于esp8266的语音控制系统(开篇)的更多相关文章

  1. Diy智能家居-1.基于esp8266的语音控制系统(开篇)

    目录Diy智能家居-1.基于esp8266的语音控制系统(开篇) https://blog.csdn.net/arno1988/article/details/82628589 Diy智能家居-2.基 ...

  2. 智能家居-3.基于esp8266的语音控制系统(软件篇)

    智能家居-1.基于esp8266的语音控制系统(开篇) 智能家居-2.基于esp8266的语音控制系统(硬件篇) 智能家居-3.基于esp8266的语音控制系统(软件篇) 赞赏支持 QQ:505645 ...

  3. 智能家居-2.基于esp8266的语音控制系统(硬件篇)

    智能家居-1.基于esp8266的语音控制系统(开篇) 智能家居-2.基于esp8266的语音控制系统(硬件篇) 智能家居-3.基于esp8266的语音控制系统(软件篇) 赞赏支持 QQ:505645 ...

  4. 基于ZigBee和STM32的智能家居控制系统的设计与实现(三)

    基于ZigBee和STM32的智能家居控制系统的设计与实现(三) 自从前两篇博客介绍了智能家居系统的基本实现机理后,收到了好多朋友的来信,和我讨论了好多的这方面的知识,在此很高兴,虽然自己做的这个所谓 ...

  5. 基于能量收集的智能家居-2013国家级大学生创业实践项目申报_商业计划书_V0.2

    SmartHome项目商业计划 基于能量收集的 免电池无线智能家居系统    IA-SmartHome团队    2012.12     l  基于无线的智能家居解决方案,节省施工成本: l  基于能 ...

  6. 基于Linux的智能家居的设计(5)

    4  软件设计 软件设计部分主要包含uboot移植.内核编译.系统移植.设备驱动编程.应用程序编程(QT编程.mysql数据库编程.控制系统编程).各个模块的功能函数(部分是在windows以下的IA ...

  7. 基于ESP32的智能家居管理系统的设计与实现

    基于ESP32的智能家居管理系统的设计与实现 ESP32的智能家居管理系统访问链接: https://www.cnblogs.com/easyidea/p/13101165.html 一.需求分析 1 ...

  8. 一百元的智能家居——Asp.Net Mvc Api+讯飞语音+Android+Arduino

    大半夜的,先说些废话提提神 如今智能家居已经不再停留在概念阶段,高大上的科技公司都已经推出了自己的部分或全套的智能家居解决方案,不过就目前的现状而言,大多还停留在展厅阶段,还没有广泛的推广起来,有人说 ...

  9. 基于Laravel+Swoole开发智能家居后端

    基于Laravel+Swoole开发智能家居后端 在上一篇<Laravel如何优雅的使用Swoole>中我已经大概谈到了Laravel结合Swoole的用法. 今天,我参与的智能家居项目基 ...

随机推荐

  1. Oracle 12c报错:ORA-01078和LRM-00109的解决办法

    Oracle 12c报错:ORA-01078和LRM-00109的解决办法 2017-12-17 10:25:30 lemon_love1 阅读数 4336  收藏 更多 分类专栏: oracle   ...

  2. 设备树处理之——device_node转换成platform_device【转】

    转自:https://www.cnblogs.com/downey-blog/p/10486568.html 以下讨论基于linux4.14,arm平台 platform device 设备树的产生就 ...

  3. react中antd的表格自定义展开

    antd的表格官方案例中给出的都是固定的图表展开,在做需求的时候,需要使用点击最后一列,然后出现展开内容,实现效果图如下 在最开始设置一个全局变量 const keys = [];在设置列参数的函数中 ...

  4. eslint代码规范检测

    1.如果在 vue init webpack projectname 时选择了eslint(Yes),则   npm uninstall eslint 2.在webpack.base.conf.js里 ...

  5. [C7] 支持向量机(Support Vector Machines) (待整理)

    支持向量机(Support Vector Machines) 优化目标(Optimization Objective) 到目前为止,你已经见过一系列不同的学习算法.在监督学习中,许多学习算法的性能都非 ...

  6. jQuery中的筛选(六)

    1. eq(index|-index) 获取当前链式操作中第N个jQuery对象,返回jQuery对象,当参数大于等于0时为正向选取,比如0代表第一个,1代表第二个.当参数为负数时为反向选取,比如-1 ...

  7. Unity S老师系列课程学习

    AssetBundle(创建打包)入门学习(基于Unity2017) (已看) 分组策略 逻辑实体分组 按照类型分组 按照使用分组 分组策略----总结 把经常更新的资源放在一个单独的包里面,跟不经常 ...

  8. golang--单元测试综合实例

    实例说明: (1)一个Monster结构体,字段Name,Age,Skill (2)Monster有一个Store方法,可以将一个Monster对象序列化后保存在文件中: (3)Monster有一个R ...

  9. client-go客户端自定义开发Kubernetes及源码分析

    介绍 client-go 是一种能够与 Kubernetes 集群通信的客户端,通过它可以对 Kubernetes 集群中各资源类型进行 CRUD 操作,它有三大 client 类,分别为:Clien ...

  10. jquery ajax怎么使用jsonp跨域访问

    在项目中使用接口的比较多,在客户端跨域访问,jquery中只能使用jquery ajax的jsonp方法. 值得注意的是,jQuery.ajax()只支持get方式的跨域,post的方式是不支持的.& ...