- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于微信平台的智能家居系统.doc
一种基于微信平台的智能家居系统
摘 要:随着物联网技术的发展,智能家居的应用也愈加广泛。文中设计和实现了一款基于微信公众平台的智能家居系统。该系统包括手机微信端、服务器和安卓单片机控制端三部分。用户通过订阅指定的微信号,输入相关指令就可控制室内灯光的开关并查询室内的温湿度情况。该设计具有开发周期短、价格低廉、简单实用、用户体验好等优点。
关键词:智能家居;微信公众平台;Arduino单片机;智能灯光控制;环境查询
中图分类号:TN911;TP393 文献标识码:A 文章编号:2095-1302(2016)12-00-03
0 引 言
智能家居即普通住宅通过布线将住宅里的电器、安防报警设备连接到控制器和网络上,用户通过网络对住宅进行远程控制和管理并监视住宅情况,使住宅环境保持舒适协调,为屋主提供一个适合生活、学习及工作的智能家居环境[1-3]。智能家居的概念符合当下人们对住宅环境的高要求,但由于目前智能家居技术还处于发展阶段,各方面技术还不完善导致智能家居的性价比较低,市面上的智能家居产品也五花八门,使智能家居难以得到广泛应用[4,5]。
本文设计并实现了一个性价比较高的智能家居控制系统,其低廉的价格更容易为普通家庭所接受,由于系统的开源性,用户也可以对该系统自定义设置,添加自己需要的设备。市面上有不少基于App平台的智能家居产品,但App面对不同的设备和系统时需考虑兼容问题,设计较为复杂。本设计用微信公众平台作为控制终端,虽然操作界面不比App,但由于大多数智能手机均可安装微信客户端,所以不用考虑兼容性问题,大大缩短了开发周期,也为用户的使用提供了方便。
1 基于微信的智能家居系统设计
本智能家居系统包括手机微信子系统、服务器和安卓单片机子系统三部分。在该设计中用户只需通过订阅指定的微信号,就可以实现对住宅灯光的控制和对室内环境的查询。本系统选用的处理器为Arduino UNO硬件平台,开发了远程开/关LED灯和温湿度查询功能。本系统微信的开发使用了PHP+MySQL组合,并在Arduino IDE的开发环境下编写了Arduino程序。
1.1 硬件设计
本设计要完成以下两个任务:
(1)采集环境的温湿度并将温湿度数据上传;
(2)获取服务器传来的开关灯指令从而控制LED灯的开闭。本设计的控制终端选用Arduino UNO作为主控制器,DHT11数字温湿度传感器作为温湿度采集器,其他包括Arduino Ethernet Shield以太网卡与LED灯、电阻和其它连线。系统的连接示意图如图1所示。
1.2 系统软件设计
根据系统所完成的任务,本系统软件的设计主要涉及搭建服务器、设计微信公众号平台和编写Arduino单片机端的通信程序。
1.2.1 服务器的搭建
使用微信公众平台的开发者模式需要服务器的支持,开发者需首先搭建好公网服务器,这里选择百度开放云BAE。打开https://网站,用百度账号登录,实名认证后便可以使用。打开“应用引擎基础版”添加部署,填写好相应配置之后点击“下一步”完成部署。
本文设计的简易智能家居系统需要传输温度、湿度和开关状态这三类数据。微信或者Arduino单片机数据通过网络上传至数据库,另一端再通过网络下载相应的数据。将温湿度和灯光状态存储到数据库上,首先对MySQL数据库初始化,在“添加部署”完成后,“扩展服务”里就会自动生成一个MySQL数据库,名称、用户名和密码均已设置,不可修改。通过phpMyAdmin图形化管理工具打开MySQL,新建三个字段数为3的数据表名称,分别为switch、humdsensor和tempsensor,除“数据表名”不同,其他参数都一样。设置完成后在各数据表中插入一条ID为1的记录,data或state的值不为空即可。至此,数据库初始化完成。
此外,服务器端需要完成两个方面的代码设计,一方面连接微信,另一方面连接Arduino单片机,均用PHP编写。
连接微信的代码可以参考微信官网提供的示例代码。连接微信的代码设计如下:
(1)判断是否为第一次接入,若是,则进行验证,否则无需验证。
(2)判断接收的消息类型,若为“subscribe”类型,则向用户回复消息,即在用户关注公众号时回复消息。
(3)用switch()结构判断接收的文本消息的内容。若为“开灯”,则更新MySQL数据库switch表单里ID为1的记录时间,将该记录state的值更新为1,并向用户回复开灯完成的提示;若为“关灯”,则更新MySQL数据库switch表单里ID为1的记录时间,将该记录state的值更新为0,并向用户回复关灯完成的提示;若为“温度”,则从MySQ
您可能关注的文档
- 《网页制作》课程“精讲热练”教学模式的探索与设计.doc
- 《网页设计与制作》课程建设的认知与实践.doc
- 《莎菲女士的日记》与《觉醒》的比较阅读.doc
- 《虹》的圣经原型解读.doc
- 《蝇王》中猪崽子的悲剧解析.doc
- 《街头争霸V》之布鲁克林猛攻.doc
- 《计算机基础》课程探讨.doc
- 《计算机应用基础》微课设计与制作实践.doc
- 《计算机应用基础》课程教学的想法.doc
- 《计算机电路基础》课程教学方法的探索.doc
- 中国长江三峡工程开发总公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版及参考.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解带答案.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解必考题.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解推荐.docx
- 中国长江三峡工程开发总公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版及答案.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解含答案.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解含答案.docx
- 中国长城计算机集团公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版最新.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解一套.docx
- 中国长城计算机集团公司校园招聘模拟试题附带答案详解完整.docx
文档评论(0)