基于微信小程序的智能家居系统

2021-01-12 11:44
关键词:物联智能家居界面

(辽宁工业大学 电子与信息工程学院,辽宁 锦州 121001)

目前对于智能家居将要达到什么样的需求水平还没有统一的标准[1],智能家居能够给人们提供什么样的服务也有待商榷。这种情况导致消费者的认知水平一直处在较为模糊的阶段层次。但随着科技全球化的到来,人们对于科技的满足感正发生着翻天覆地的重新认识,区别于以前传统工艺,科技的进步正在引导着人们朝着更加舒适与智能的方向前进[2]。于是方便、快捷、高效的小程序正是异军突起的最佳时刻。根据这样的市场现象,本文将微信小程序[3]与智能家居相结合,设计了一款基于微信小程序的智能家居系统[4]。

系统中的微信小程序方便用户远程管理并使用家中设备,提供了查看添加设备、远程控制功能和电器管理功能,使得用户可以随时查看家庭设备状态并对其进行有效控制,同时对家用电器还能做到有效的监管作用,达到用户统一管理的目的。

该系统使用微信web开发者工具进行开发,贝壳物联进行小程序与硬件的连接搭建。小程序使用户随用随停、随时随地对电器进行管理,内存占用量小,无需安装APP,最大地方便了用户。

1 概要设计

1.1 功能模块

用户端的系统功能结构如图1 所示。

基于微信的智能家居小程序采用多类型模式,系统包含以下6 个模块:智能照明、智能插座、智能窗帘、智能检测、常识普及和设备控制,可以供用户使用操作。

智能照明可对室内进行灯光调节,更加方便地调节灯光;智能插座控制可远距离地控制插座的开与关,增加安全性;智能窗帘控制可对窗帘进行开与关调节;烟雾检测可检测屋内有害气体是否超标,提醒用户是否处于危险当中;常识普及可对家具进行小常识的普及,让用户更加了解保护家居技巧;添加设备可对设备进行查看与增删。

1.2 硬件模块

硬件的系统模型搭建如图2 所示。

图2 为硬件的模型搭建图。将各个硬件放在了家居所在地,模拟了真实室内情况。继电器模块控制插座,进而控制家中使用电器,温湿度检测器检测室内温湿度,LED 灯显示亮度,烟雾检测器检测烟雾浓度,步进电机控制窗帘升降。

1.3 业务逻辑

软件业务逻辑如图3 所示。用户在小程序端注册后,登陆小程序,物联平台端会通过用户提供的指定ID、APIKEY 与硬件在贝壳物联上相互连接,同时将传感器采集到的信息传到平台,小程序端通过平台的数据接口获取单片机上传的数据,并进行检测与控制。

1.4 贝壳物联网平台

物联网作为新时代信息、通信技术的重要组成部分,在现代背景下有着可观的发展前景。贝壳物联网平台是一个使智能设备与物联网云平台沟通的“数据交互中心”。通过互联网以对话、遥控器等形式与智能设备聊天、发送指令,查看实时数据,同时还能根据实际需求去预设报警条件,再通过邮件、短信、APP、微信等方式去告知用户。

物联网以群智感知、模式识别及普适计算等通信感知技术,已经在网络中有着广泛的应用,也在慢慢地融入生产和生活之中,所有人们也常常把物联网技术称为继计算机、互联网之后世界信息产业发展的第三次浪潮。

1.5 系统设计

本项目采用贝壳物联作为中间件,连接微信小程序与硬件。微信小程序、硬件设备与贝壳物联相连接实行实时交换,微信小程序请求Web API 平台调取贝壳物联 JSON 数据,ESP8266[5]+arduinoUNO[6]利用贝壳物联平台进行数据交换。软件体系结构如图4 所示。

1.6 软件使用流程

根据基于微信小程序的智能家居系统的系统结构分析以及开发框架的特点,小程序设计了“主页面”、“常识”、“我的”3 个页面。用户在微信搜索小程序后会跳转至功能选择窗口,进行相应的操作。小程序的工作流程如图5 所示,用户对小程序的操作按照软件使用流程进行实现。

(1)开始时,用户登录微信搜索小程序,登录后进入功能选择界面。用户有“常识”、“主页”、“我的”3 个选项可以选择。

(2)用户点击主页,第一次使用需要添加设备,添加成功后便可对设备进行灯光、窗帘、插座、烟雾、温湿的控制。

(3)用户可以在“常识”界面进行常识和各种各样的生活实用小技巧的查看,方便用户在控制智能家居的同时了解更多知识。

(4)用户也可以在“我的”界面进行设备的管理,包括个人信息的查看、设备的管理等操作。

2 关键技术

2.1 Web API 架构设计

微信小程序开发以及多种功能的实现,首先是从数据的获取开始的,系统通过小程序请求Web API 平台获取JSON 数据,由于JSON 格式的接口不仅可以应用在常规的Web 业务系统还能有效地跨平台应用在安卓系统[7]、IOS 系统上[8]。在微信小程序上post 请求获取授权码(access_token),get 请求获取用户信息与设备信息,get 请求调取用户数据接口与历史数据,post 请求发送实时消息。关于POST 接口定义方式的代码如下:

2.2 硬件连接

硬件连接主要用到烟雾检测器、数据传输模块、主板、LED 照明灯、步进电机、温湿度检测器、继电器、蜂鸣器、步进电机驱动板。保证传输数据的稳定性,不会意外断线、掉线,在信号遭受干扰时仍能高效稳定地传输数据。

2.3 硬件传输与通讯

在硬件传输方面,Arduino 单片机作为硬件端,为了与物联平台进行数据传输,系统使用ESP8266网络模块,连接家中WIFI,通过编写请求格式,符合TCP 传输协议,进行数据传输。在硬件通讯方面,采用ESP8266+Arduino UNO 的方法,借助贝壳物联平台实现数据交换。调用贝壳物联上的接口,实现小程序与硬件实时通讯,并最后把数据显示在小程序端。

3 系统测试和界面展示

3.1 系统测试

系统的软件使用黑盒测试的方法进行测试。对软件的功能进行逐个测试,测试系统的合理和不合理输入数据时能否正常运行。同时,进行用户现场环境测试,对功能的安全性、可靠性、可使用性多个方面进行全面、严谨、规范的测试。测试结果表明,“基于微信小程序的智能家居系统”完全达到业务需求文档中的要求,并具有以下特点。

(1)功能全面。它包含了添加设备、灯光控制、插座控制、窗帘控制、烟雾检测、温湿查询等功能,具有很高的实用价值。

(2)软件微信小程序的系统安全性更好。该系统对于权限设置功能有更严格的要求,对于权限的设置进行了细化,使得不同的人有不同的权限功能,不同权限的人员只能看到自己有权限访问的字段内容,从而有效地保证了数据的安全性。

(3)微信小程序业务设置灵便。该小程序完全基于工作流程进行设计,系统业务功能操作简单。

(4)小程序可靠性高。对客户机的不当操作,如非法断电、网络故障等意外不当的行为进行有效避免。同时小程序采用数据校验机制,对用户输入进行判断,对错误数据给出了简洁、准确的提示信息,必要时给出帮助。

(5)小程序兼容性好。通过微信端保证系统可以在多种操作系统上达到兼容,同时系统设计灵便,可以保证与其他相关应用软件进行数据交互。

(6)小程序通过预测统计模型。通过对海量的税收数据进行预测,使得预测模型得到的数据与真实数据更加相近。大量的预警分析税收数据,显示预警结果正确。

(7)测试结论:通过。

3.2 界面展示

软件主界面如图6 所示。

微信小程序主界面分为3 个模块,分别为“主页”、“智能”、“我的”。首次登陆此界面用户可以对设备进行添加操作,添加完成后,即可以对智能家居做到有效控制,实时监控家里的所有家居设备情况,做到方便、快捷、高效的管理模式。

图7 为“智能”界面。

智能常识界面,在此界面中用户可在此对智能家居进行常识的普及,例如洗衣小技巧、电饭煲小技巧等一些科普知识,让用户在操作智能家居的同时,可以学习一些生活小知识,增加趣味性的同时开拓了用户的体验感。

图8 为“我的”界面。

在“我的”界面中,用户不仅可以对智能家居的设备进行查看,还可以添加设备编号,起到更加高效管理设备的作用,同时也方便了用户的查看。

4 结束语

通过基于微信小程序对于智能家居的开发和设计,帮助大家理解了Web API 设计框架、硬件的传输与通讯的技术要点。相比于原生态的APP,微信小程序表现出易开发、周期短的优势;主要有不需要安装下载,不占用手机内存,比原生态APP 更易传播和使用等优点。同时简单、方便、快捷、高效,不仅可以满足年轻人群的需要,对于知识水平相对落后的老年人也有较高使用价值。

猜你喜欢
物联智能家居界面
不同截面类型钢管RPC界面粘结性能对比研究
智能家居在室内设计中的应用研究
王永岗:改造物联服务链助力现代农业
微重力下两相控温型储液器内气液界面仿真分析
智能家居行业仍无“独角兽”
国企党委前置研究的“四个界面”
自安全物联感知网方案:让联接更可信
创享物联时代新风潮
基于Zigbee的智能家居系统的研究
智能家居未来感初体验