APP下载

基于STM32的智能家居控制系统

2017-05-04李润宁杨建豪光金正方国好

智能计算机与应用 2017年2期
关键词:智能家居

李润宁+杨建豪+光金正+方国好

摘 要: 本设计以STM32为控制核心,手机APP为人机交互界面、互联网作为信号传输媒介、STM32接收端进行红外信号转换、家中电器设备作为执行机构,通过该系统用户可以通过手机APP远程控制家中NEC红外电器设备,突破红外遥控的距离限制,该控制系统创造性地将网络信号转化成红外信号,无需电器设备的升级换代,即可实现互联网远程控制红外电器设备,通过手机APP控制具有控制方便,操作简单等特点,互联网传输控制指令具有传输距离远,数据安全快速等优势,将网络信号转化成红外信号可以最大限度地降低家居智能化成本 。

关键词: 智能家居;红外控制;网络通讯

中图分类号:TP242.6

文献标志码:A

文章编号:2095-2163(2017)02-0131-04

Abstract:The paper proposes this design, which takes the STM32 as the core, a mobile phone APP for human-computer interaction interface, Internet as a signal transmission medium, STM32 receiver as infrared signal conversion, and home electrical equipment as actuator. Through the system, user can applies the phone APP to realize remote control of home NEC infrared appliances equipment, so break through the infrared remote control distance limit.In the control system, network signal is creatively converted into the infrared signal, without electrical equipment upgrading, it can be achieved that applying Internet effectively provides remote control of infrared electrical equipment. The advantages of the system are as follows: the introduction of the mobile phone APP is easy to control and operate etc., the Internet transferring control instruction has such features as long transmission distance, fast and secure data, and the function that the network signal is converted into intelligent infrared signals can maximumly reduce household costs.

Keywords:smart home; infrared control; Internet communication

0 引 言

隨着网络和嵌入式技术的发展,智能家居得到了有利兴起契机,并已然成为物联网的重要功能方向之一。但是,目前的智能家居系统主要用在一些高档社区,却并未进入普通家庭。究其原因,分析可得2条主要制约因素,一是现有技术对传统设备的难以兼容,设备必须升级换代接入互联网才能实现智能化控制,二是系统操作复杂,不易推广。目前智能家居领域迫切需要研发推出一定意义上优质实用的智能家居控制系统解决方案,不仅能够呈现出较高稳定性,而且成本低廉,操作方便。为此,本文即设计提出了一种基于智能手机的智能家居控制系统,以手机APP作为智能家居控制终端,以互联网为媒介,以STM32嵌入式系统为接收端,STM32接收端可将APP的网络信号转换成红外信号发送出去,因此能够兼容目前市面上的绝大多数的NEC红外设备,最大限度地降低用户构建智能家居使用成本。用户通过手机就能够随时随地查看家居的实时状态并进行操控管理,实现了对家居用电的无条件自由在线管控,减少了家居能源的消耗成本,该智能家居控制系统操作简单,具有极强的兼容性软件设计。

1 控制系统设计概述

基于红外控制的智能家居网络系统包括手机APP客户端,网络服务器和STM32接收端。用户通过智能手机APP的交互界面发送控制指令至网络服务器,网络服务器则将接收到的控制指令转发到家中的STM32接收设备,STM32接收端在将来自服务器的网络指令解析和处理之后即以红外信号发送到家中电气设备,轻松实现用户对电气设备的远程控制。研究可得控制系统框图如图1所示。

2 硬件设计

STM接收端主要以STM32嵌入式控制芯片作为主控制器,外接各种传感器模块,通讯模块而共同构建组成。这里,则给出接收端的结构设计框图具体如图2所示。

2.1 控制器

近年来,各种款型微处理器陆续进入实践选择范畴,其中的ARM 系列芯片即已成为应用广泛且位居潮流顶端的处理器之一。 本文采用的是意法半导体(ST)公司生产的 STM32F407芯片,该芯片采用ARM Cortex-M4内核,主频高达168 MHz,配备了14个定时器,144个接口,具有低功耗、低调试成本、 处理速度快、集成度高等众多优点。 作为 ARM 系列的优秀一员,鉴于其强大功能、及出众性价比等品质表现,即使得其在本次研发中高度吻合并满足了围绕核心关键系统所生成的重点设计要求和实际应用。

2.2 网络模块

网络模块选择ATK-ESP8266模块,这是ALIENTEK设计提供的一款高性能的UART-WIFI(串口-无线)模块。该模块获得了FCCCE认证,通过采用串口与MCU通信,内置TCP/IP协议栈,能够实现串口与WIFI之间的转换。借助ATK-ESP8266模块,串口设备仅仅需要根据模块通信协议,进行串口配置,即可通过网络( WIFI)传输自身的数据。同时,模块还支持串口转WIFI STA、串口转AP和WIFI STA+WIFI AP等多种处理模式。至此,研究可得ESP8266网络模块电路如图3所示,而网络模块与STM32芯片的硬件连接则如图4所示。

2.3 NEC红外模块

红外模块选择NEC红外发射模块,该模块内置硬件NEC协议可以节省单片机资源,提升控制系统的运行速度。单片机通过串口和红外模块相连,红外 NEC模块将单片机的指令以红外信号发射给电器设备。本次系统研发实现中,NEC红外模块电路设计如图5所示。同时,还进一步设计提供了红外模块和STM32芯片硬件连接如图6所示。

3 软件设计

3.1 APP设计

Android的APP客户端控制系统的研究关键可重点分为用户界面UI、Socket通信、SQLite数据库的设计。Android应用程序由多个组件构成,其中包括activities、services、content providers、broadcast receivers等组件,每个组件在应用程序中执行不同的任务。APP操作界面如图7所示。

3.2 基于Socket通信

在网络编程方面,Android设置了良好支持。对于TCP传输,Android提供Socket和SetverSocket类。对于UDP传输,提供DatagramSocket和DatagramPackage类。Socket编程是底层的网络编程方式,是建立与其他应用协议的基础。通过建立Socket对象,就可以指定打开输入输出流来开展有效通信。客户端和服务器之间通信的实现一般需要9个基本步骤,具体如下:

1)建立Serversocket类对象,初始化服务器,等待客户端发出连接请求;

2)建立Socket类对象,初始化客户端,同时向服务器发出连接请求;

3)服务器响应客户端请求并且搭建服务器与客户端的连接;

4)客户端发出命令和数据给服务器;

5)服务器响应客户端请求;

6)服务器返回并处理客户端的结果;

7)客户端接收服务器返回的结果;

8)重复4)至7)步,直至客户端结束对话;

9)中断连接,结束通信。

3.3 SQLite数据库

由于智能家居各种信息数据量较小,时期较短,无需更大的数据库,所以本应用程序使用了Android平台内置的SQLite数据库。SQLite可以减少应用程序管理数据的开销,对于SQLite的操作,Android还定制研发了SQLiteDambase类和SQLiteOpenHelper类。其中,SQLiteOpenHelper类提供2个方法—onCreat()和onUpgrade()对SQLite数据库进行创建和更新,此外又提供有getWritableDatabase()方法来获得数据库对象。SQLiteDatabase类则提供一些方法,可以用于创建、删除、处理SQL指令、连同统筹规划常规数据库的机制管理,如execSQL()可以执行SQL语句,insert()可以插入表项,update()可以更新表项等。而数据库将主要用于存储如下信息,分别是:设备号、家用电器设备类型、各个设备的信息状态。

3.4 STM32接收端软件设计

软件设计的思想是,单片机通过ESP8266网络模块对TCP/IP协议族的ARP、IP、ICMP、TCP、UDP、DHCP协议依次实现指定配置。在TCP-CLIENT模式下,STM32接收端主动向远端服务器发出连接请求,远端服务器相应的监听程序在运行时,则建立连接。连接建立后,接收端与远程服务器可以进行双向的数据传输,在与手机APP转入通讯链接之后,将APP的网络信号以红外信号的形式发出。软件设计流程如图8所示。

4 结束语

将开发完成的APP安装在手机上,经多次测试,可以通[CM(26]过Internet上的服务器实现家居电器设备的远程控制。通过

[CM)][LL]本系统研发设计家居电器设备的集中控制,得到当前家居设备运行最新状况。采用智能手机软件控制+接收端信号转化控制,和当前其他的几种终端控制方式相比优势明显。采用的手机软件具有通用性,利于移植;市场的应用价值高,易于推广。本系统所需硬件简单易用、稳定可靠,智能家居成本大大降低。

参考文献:

[1]戴敏,王宜怀,潘启勇. 基于 ZigBee 技术的智能家居系统设计[J]. 计算机测量与控制,2013,21(3):706-708.

[2] 董亮,张灵, 陈云华. 基于限制广播的 ZigBee 分布式动态能量均衡协议[J]. 传感技术学报,2014,27(8):1120-1124.

[3] 俞文俊,凌志浩. 一種物联网智能家居系统的研究[J]. 自动化仪表,2011,32(8):56-59.

[4] 王云良,王敏其,程凌. 智能家居网络系统的优化及控制稳定性分析[J]. 自动化仪表,2014,35(8):79-82.

猜你喜欢

智能家居
智能家居行业仍无“独角兽”
智能家居产业现状和发展趋势
苹果新专利 拟开发智能家居系统
智能家居 走向星辰大海
悄然开启的智能家庭时代
2018年中国智能家居市场累计出货量同比增长36.7%
2018年智能家居市场出货量 同比增长35.9%
智能家居与我们的未来
IDC:全球智能家居设备出货量将大幅增加
智能家居或变身“间谍”,如何破