您好, 访客   登录/注册

基于树莓派的智能家居系统设计

来源:用户上传      作者:

  摘 要:为满足人们对智能家居产品需求,基于树莓派设计了智能家居控制系统。综合使用WiFi、ZigBee技术,以树莓派作为系统核心,组建维护网络并整合数据,提供Web服务供用户访问,实现室内环境监测、安防监测、家居控制等智能方案,用戶可通过终端进行查询与控制。整个系统比传统的单一系统具有多通讯协议功能,同时成本低廉、集成度高,可满足物联网时代家居环境智能化、个性化要求。
  关键词:树莓派;WiFi;ZigBee;网关;物联网;智能家居
  DOI:10. 11907/rjdk. 192187 开放科学(资源服务)标识码(OSID):
  中图分类号:TP319 文献标识码:A 文章编号:1672-7800(2020)007-0094-05
  Design and Research of Smart Home System Based on Raspberry Pi
  YAN Min-ru1, ZHOU Ping2, WANG Kai2
  (1.School of Optpelectronic information and computer engineering, University of Shanghai for Science and Technology;
  2.Shanghai Publishing and Printing College, Shanghai 200093, China)
  Abstract: With the advancement of society and the development of science and technology, people's demand for convenient and efficient living is growing stronger. In order to meet the increasing demand for smart home products, the smart home control system based on the Raspberry Pi is desinged. The system has integrated use of WiFi and ZigBee technology, with the Raspberry Pi as the core of the system, builds and maintains network, integrates data to provide Web services for users to access. Finally, intelligent environmental solutions such as indoor environmental monitoring, security monitoring and home control are realized, and users can query and control through the terminal. Compared with traditional single system,the whole system has support multi-network, multi-communication protocol function,which has low cost and high integration, and can meet the intelligent and personalized requirements of home environment in the era of Internet of things.
  Key Words: Raspberry Pi; WiFi; Zigbee; gateway; Internet of Things; smart home
  0 引言
  通过传感技术、射频识别、无线通信技术等,把小巧智能的传感器加载到各种待检测装置中并联合控制端,形成可智能控制的物件,再经过有线或无线连接形成物与物(T2T)、物与人(T2H)、人与人(H2H)之间的互通网络,这就是传统意义的物联网[1]。目前,该网络结合互联网实现真正的物联网,成为打开工业甚至是全行业信息化局面的突破口。未来,物联网将与许多智能设备相结合,以达到顶级物联网。
  ZigBee技术[2]是一种具有自组网和自恢复功能的无线网络技术,与WiFi技术[3]一样是短距离无线传输技术,使用2.4Ghz频段,标准规范、速度快、可靠性高、不受布线限制、可扩展可移动,是智能家居常用的技术。但ZigBee传输速率不高,可在取电不方便的环境中优先使用。WiFi传输速率大,但功耗也大,广泛应用于对传输速率有要求或是取电方便的家庭设备中。
  随着物联网技术的发展,人们对工作及生活方式的需求和理念更加趋向于智能和便捷。牛奕翔[2]和牛国锋等[4]提出基于ZigBee由网关通过以太网、WiFi或GPRS等传输数据的系统解决方案,实现了单一组网情况下的智能系统,但是忽略了市场上智能家居产品多品牌之间兼容拓展性不强、人机互动附件过多等问题;文献[5]简单阐述了多网络融合方式的网关设计可行性;文献[6]分析了当前智能家居种常用的几种传输协议,结合硬件开发多模传输协议网关;文献[7]提出了多模传输协议转以太网协议,再传输至远程服务器的系统方案,具有很强的参考价值。但是上述几种系统均存在依靠外部服务器,性价比不高的问题。
  本文结合人机交互关系更系统,更兼容、更智能、可拓展需求,提出一种基于树莓派的智能家居系统总体设计方案。该方案以树莓派为中心网关配置路由功能替代家庭无线宽带路由器,提供Web服务器功能,即在消息解析、协议转换后直接传输至该服务端软件显示,不用另加服务器,大大减少了设计成本,比单一系统更具多网络、多通讯协议功能,最大程度满足现实生活中的高应用需求。   本文对系统在物联网的3层面进行分析,硬件设计部分详细说明系统各个硬件设备选型、节点设计;软件部分包括树莓派软件搭载、网关、节点消息传输、组网的软件实现。
  1 系统总体设计
  本系统支持WiFi网络和ZigBee網络传输协议,且以树莓派为中心网关,替代家庭无线宽带路由器,同时配置树莓派为可外网访问的Web服务器,在此基础上实现对室内环境、安防的实时监测,也可对家用电器及设备进行实时控制。
  该系统由感知控制层、网络通信层、应用层3部分组成,系统结构如图1所示。
  (1)感应控制层主要由室内各种终端节点组成,包括各类传感器。各节点收集数据通过WiFi或ZigBee网络传送至网关,并接收由网关传达的各种命令。连接执行机构的终端节点可以根据网关接受的命令进行相应操作,包括窗帘开关、电器开关定时等。
  (2)网络通信层解决感应控制层获取的数据传输问题,一般通过无线网络进行通信,如WiFi网络、ZigBee网络。
  (3)应用层对数据进行智能化管理与控制,解决人机界面问题。手机等终端通过连接Web服务端,远距离管理系统内受控节点。当脱离家庭内网时,通过外部网络,由APP或者网页登录控制,从而对智能家居系统进行实时监测与控制。
  操作流程如下:在室内监测控制点装载传感器节点、监测和控制装置,匹配相应的ZigBee节点和协调器,组成ZigBee网络,联合无线WiFi网络形成多网络内网[4]。运行过程中,各终端节点采集的数据控制信号经ZigBee网络或WiFi网络发送至网关,网关按照无线传输协议对数据进行解析与处理,转换成互联网协议识别的数据格式,提供给Web服务端软件以供访问。手机客户端或PC端可直接通过该设备连接至Internet,也可通过连接WiFi获取数据,随时通过远程登录服务端监控室内状态。为降低设计成本,所设计的树莓派网关都具有路由功能,可作家庭无线宽带路由器。
  2 系统硬件设计
  2.1 网关设计
  智能家居系统中心控制设备就是网关[8],网关控制整个网络数据,起到内外网络间信号连接并控制命令的转发与解析作用。对内将家居设备通过ZigBee网络、WiFi网络连成整体,对外连接Internet。由于网关是整个系统的核心,必须可靠、稳定,因此本设计以开源硬件树莓派为主体设备[9-10][7]。树莓派基于Linux操作系统,硬件集成度非常高、运行速度快,内含丰富的外设接口,便于进行功能扩展,支持Python、C、Java等语言,且内置了WiFi模块实现无线热点功能,降低设计成本。
  ZigBee协调器是节点中还未与其它网络连接的全功能设备节点,本系统采用CC2530芯片通过串口与树莓派连接。网关的硬件设计如图2所示。
  2.2 终端节点设计
  针对不同场合终端节点设计具体应用功能,环境检测终端节点主要对室内环境各项数据进行检测,包括室内温度、湿度、光照强度等;安防监测包括人体红外检测、门窗监测等,一旦出现安防情况就启动报警装置;家居控制包括灯光、电器、窗帘、家电的开关控制和定时功能;传感器模块是智能家居系统的底层,归属于感知层,要求低功耗、体积小,因此选用集成度高、网络容量大、功耗低的芯片。
  (1)ZigBee终端节点。ZigBee技术具有公开统一标准,符合ZigBee联盟规范的ZigBee终端节点在进行相关参数设定后均可加入该网络。本文设计的ZigBee终端节点采用TI公司的CC2530芯片[4]。CC2530 是用来实现 ZigBee 应用的片上系统,整合ZigBee射频前端、内存模块以及微控制器,具有优良的无线接收灵敏度和强大的抗干扰性,休眠模式耗能低,切换主动模式速度快,能够有效应用于室内乃至小区范围的网络互连。ZigBee终端节点硬件框图如图3所示。
  (2)WiFi终端节点。 不少基于WiFi的智能家居终端设备已经投入生产使用,如智能插座、摄像头等。该类设备或通过家庭无线宽带路由器访问厂商提供的云服务平台,也可通过云平台对设备执行读取和控制操作,或加入到家庭无线路由器组成的局域网供用户访问。因此,本系统方便第三方产品无线接入网关。
  本文所设计的WiFi终端节点集采集传输于一体,主要由微控制器、传感器、WiFi模块组成。微控制器采用内置多种功能的STM32F103芯片。WiFi模块采用低功耗的UART-WiFi透传模块ESP8266[11],通过串口与微控制器通信。WiFi终端节点设计框架如图4所示。
  3 系统软件设计
  树莓派(Raspberry Pi)运行Linux操作系统,软件开源,开发便捷。系统软件分为网关软件和终端软件,在功能上包含初始化模块、ZigBee无线组网通信模块、WiFi通信模块、Web服务端软件模块、终端节点消息处理模块等。
  3.1 网关软件设计
  网关开始工作后,首先进行初始化操作,包括各个通信模块、TCP/IP协议栈、ZigBee协议栈等。树莓派完成路由器和Web服务端软件搭建,并且存储处理数据,保证基于TCP的WiFi传输线程和基于ZigBee协议的多模式传输进程正常运行。具体如下:
  (1)协议解析与转换。ZigBee协议与TCP/IP协议并不兼容,接入互联网时需要进行协议转换[5]。通过网络ID号和网络地址分配进行连接,网关的底层开发保证多线程资源共享、线程同步,实现多协议情况下的网络融合。
  (2)数据收集与存储。传感器节点和用户终端产生的任何信号都可通过树莓派上的数据库进行存储。
  (3)Web服务端软件。本系统选择轻量级高性能的服务器框架,数据库Nginx、Sqlite、PHP在树莓派搭建Web服务器。终端节点消息发送至网关,解析消息含义,协议转换后传输至该服务端软件显示。当用户通过终端发出查询或控制消息时,Web服务端解析用户操作传输至网关,再将控制指令下发至终端节点。   (4)ZigBee网络管理与维护[4]。网关中的协调器是ZigBee网络核心,它完成组网、监听和管理网络中的各个节点、存储和处理数据信息等功能,负责整个网络的管理与维护。
  (5)路由功能。树莓派系统基于Linux,板载了无线网络适配器和陶瓷天线,可通过开启无线网络适配器的AP功能、设置静态IP、安装Hostapd、配置DHCP服务并开启IP路由转发,实现树莓派的无线路由功能,使数据高速率接入。网关程序流程如图5所示。
  3.2 ZigBee无线组网通信模块
  ZigBee无线组网流程如图6所示。启动协调器后初始化协议栈,按照预先写入的协议规则发起特定频段侦听网络信息,等待节点加入;当协调器收到信道请求就给申请节点分配地址,节点收到地址后回复信号给ZigBee协调器,当加入节点大于1则协调器组网成功[12-14]。
  3.3 WiFi通信模块
  WiFi射频模块初始化,配置网络参数操作[15],传感器节点入网形成网络。为实现节能,入网节点在无数据传输情况下进入休眠模式;当控制器发送信号,WiFi模块启动进入通信状态,连接家庭无线路由器,接入Internet,实现无线数据传输。
  3.4 终端节点消息处理
  (1)ZigBee节点消息处理。系统初始化后,ZigBee协调器存储各节点信息。在网关检测到接收的消息后存储到缓冲区,解析编码通过串口发送到对应的节点完成相应控制。当终端节点执行信息发送时,通过串口发送节点信息到协调器;当网关检测消息后,经处理发送出去[13]。ZigBee节点消息处理流程如图7所示。
  (2)WiFi节点消息处理。节点信息通过串口发送至WiFi控制器,该控制器内置于树莓派系统成为数据中心,通过WiFi模块传输数据信息到服务端软件。同样,服务端软件解析用户操作传送至控制器,根据通信协议进行数据处理,再将处理后的指令信息传送至节点进行继电器开关操作。WiFi节点消息处理流程如图8所示。
  4 系统实现与测试
  4.1 终端软件
  终端用户在室内短距离内通过WiFi、远程通过Internet直接访问树莓派搭建的Web服务器端,获取设计开发的用户界面[16],可视化监控家居状态,并通过继电器对家居设备进行远程开关定时控制。作为用户操作端,可设置登录界面,只有登录信息与预先注册的信息匹配,才可默认终端的操作。终端界面还包括环境检测、安防监测、家居控制、报警设置等模块。为方便手机用户使用,设计相应的UI软件终端,以便于用户进行智慧管理。UI界面如图9所示。
  4.2 系统测试
  为了测试系统运行效果,对系统进行相关功能测试,测试结果如表1所示。測试结果表明该系统各个功能模块均可正常运行,节点间数据传输未出现大的干扰。树莓派搭建的服务器由于树莓派本身性能和内存有一定限制,虽然功能存在不足但能完全满足本系统应用。系统预期功能完成度较好,运行良好。
  5 结语
  本文介绍了通过树莓派实现多功能智能家居系统的可行性,进行了硬件设计与软件方案实现。网关结构采用高集成的树莓派模块,利用树莓派搭建路由器替代家庭无线宽带路由器实现路由功能,高性价比且支持WiFi网络和ZigBee网络传输协议,同时可通过WiFi、Internet直接访问网页进行远近程全方位控制。该系统很好地满足了人们对家居系统智能化、个性化需求,且功能完备、网络扩展性强、成本低,具有较高的应用价值。未来在更多种智能终端加入的情况下可作为更大规模的家居系统基础框架,为未来智能家居系统研究与发展提供了具有参考价值的方案。
  参考文献:
  [1] 汪曙光,许令顺,郭志,等. 基于无线传感网的物联网应用技术研究[J]. 电子世界,2017(20):29-30.
  [2] 牛奕翔. 基于ZigBee的物联网智能家居系统设计[J]. 计算机技术与发展,2019 (11): 1-6.
  [3] 廖应生. 基于WiFi的花卉浇水远程控制系统的设计[J]. 木工机床, 2018 (4): 8-9, 13.
  [4] 牛国锋,张明新,郑金龙. 基于ZigBee的物联网智能家居设计[J].  常熟理工学院学报,2018,32(5): 51-55.
  [5] 何海燕. 基于树莓派的智能家居系统设计与实现[J]. 中国高新技术企业(中旬刊),2016(6): 11-12.
  [6] 杨荣,王明伟,张春梅. 基于多模传输协议的智能网关开发[J]. 实验室研究与探索,2018,37(8):126-129,148.
  [7] 赵小虎,王宽,沈雪茹,等. 面向煤矿井下的多协议融合网关设计[J]. 工矿自动化, 2019,45(1): 6-12.
  [8] 方正,武一,陈勇维. 基于openHAB的嵌入式智能家居网关设计[J]. 河北工业大学学报,2018, 47(3): 23-29.
  [9] 何静如. 基于树莓派的多功能智能家居系统[J]. 物联网技术, 2018,8(2):96-99,102.
  [10] 王洁松,韩树河. 基于RaspberryPi和ZigBee的智能家居控制系统[J]. 物联网技术,2019,9(6):46-49.
  [11] 罗俊,孙国耀. 基于WiFi无线传感器网络的工业环境监测平台系统设计[J]. 仪表技术与传感器,2018(8):65-68.
  [12] GAO X,ZHAO L. Research and design of smart home system based on Zigbee technology[C]. 2010 International Conference on Artificial Intelligence and Computational Intelligence,2010.
  [13] 杨晓莲,王凯. GPRS与ZigBee联合控制的智能家居系统设计[J]. 电子科技,2017,30(1):131-134,138.
  [14] 季建华. 基于物联网的智能家居远程监控系统设计与实现[J].  计算机应用与软件,2015,32(11):143-146.
  [15] 常欣,王琦. 用STM32和ESP8266实现的可扩展物联网系统[J].  单片机与嵌入式系统应用,2018,18(12):58-61.
  [16] 谭海燕,崔如春,文翰,等. 基于物联网技术的大型仪器设备智能监控管理系统设计与实现[J]. 软件导刊,2017,16(2):91-93.
  (责任编辑:杜能钢)
转载注明来源:https://www.xzbu.com/8/view-15285665.htm