您好,欢迎来到九壹网。
搜索
您的当前位置:首页基于ARM和Android的智能家居控制系统设计

基于ARM和Android的智能家居控制系统设计

来源:九壹网
Hardware and Architecture 基于ARM和Android的智能家居控制系统设计 徐宏宇,程武,张博 (沈阳航空航天大学电子信息工程学院,辽宁沈阳110136) 摘 要:针对传统智能家居控制系统采用有线组网、布线繁琐、系统中的家用电器需要Pc进行控制、移动性较差等问题,提出了 一种基于ARM嵌入式处理器和Android技术的智能家居控制系统的设计方案。该方案首先通过ZigBee无线技术组建家庭内 的传感器网络和家用电器控制网络。然后,以S3C2440处理器为硬件平台,并搭载了嵌入式Linux操作系统来设计家庭网关。 最后,编写了基于Android系统的APP(应用软件),使用Android系统的智能手机安装这个APP就可以通过3G/4G/WiFi网络获 取室内的健康状况并远程控制家电。实验结果表明,该系统布线简单,移动性好,能够较好地实现智能家居系统的本地和远程 无线控制。 关键词:智能家居;ARM;远程控制;Android;ZigBee;嵌入式处理器;Linux 中图分类号:TP311 文献标识码:A DOI:10.19358/j.issn.1674—7720.2017.03.009 引用格式:徐宏宇,程武,张博.基于ARM和Android的智能家居控制系统设计[J].微型机与应用,2017,36(3):29—32. Design of smart home control system based on ARM and Android Xu Hongyu,Cheng Wu,Zhang Bo (School of Electronic and Information Engineering,Shenyang Aerospace University,Shenyang 110136,China) Abstract:Traditional wired smart home control system which using cumbersome system requires household appliances in PC control,less mo— bile features.This paper presented a new design which based on ARM embedded processor and Android technologies.The method uses ZigBee wireless sensor technology to ste up the family network and home appliances control network.Then,using¥3C2440 processor hardware platform which equipped with embedded Linux operating system to design the residential gateway.Finally,the Android APP(application software)is developed,smartphone powered by Android system installed this APP can be available through 3G/4G/WiFi network to indoor health and con— trol home appliances remotely.Experimental results show that the system has a simple wiring,good mobility,and can be used to implement lo— cal and remote wireless control of smart home system. Key words:smart home;ARM;remote control;Android;ZigBee;embedded processor;Linux O 引言 随着人们对高品质生活的不断探索,对居住环境的要 机通过无线网络就可以远程获取室内状况信息并控制家 电。 求也向着安全舒适并且智能化和自动化的方向发展。智 能家居已成为当今社会研究的热门话题。成本低廉、性能 1 系统的功能和总体结构 1.1 系统的功能 优良并且扩展性较好的系统是研究人员急需解决的问题。 传统的智能家居控制系统一般通过有线…方式组建 并且通过PC控制,这种方式通常需要部署很多线缆。当 需要增减设备时又要重新布线,既影响了室内的美观又增 用户通过Android手机或Internet远程连接到家庭网 关,实现对室内的温度、湿度、光照强度、烟雾浓度的实时 获取和对灯光、音乐播放器、门禁、窗帘等家电的控制 。 1.2系统的总体结构 加了开销;通过PC控制家电,增加了使用者的学习成本, 便携性也很差,无论是升级和维护都相当不便。基于以上 本文设计的智能家居控制系统包括3大部分(如图1 所示),分别是家庭内网、家庭网关和手机客户端APP。其 事实,本文结合ZigBee技术建立智能家居系统的传感器 网络和家电控制网络(这两种网络称之为家庭内网),分 中家庭内网包含传感器网络和家电控制网络,分别用于检 测室内状况,控制家用电器;而家庭网关则是整个家庭网 络的核心,对外连接到公网上,处理来自用户手机端的数 别用于检测室内的健康状况和控制家电 ;然后以ARM 嵌入式处理器为核心,建立智能家居系统的网关枢纽—— 家庭网关(向外连接公网,向内连接家庭内网);最后,基 于Android平台开发智能手机的客户端软件,用户使用手 据和命令请求,对内连接到家庭内网上,处理来自传感器 网络和家电控制网络的数据;手机用户通过手机APP即 可实时地远程控制家电并实时监控室内安全状况 。 《微型机与应用))2017年第36卷第3期 欢迎网上投稿WWW.pcachina.corn 29 Hardware and Architecture 图1 系统总体结构图 2 系统的硬件设计 2.1 家庭网关的设计 家庭网关的核心是一个基于TCP/IP协议的嵌入式 Web服务器,本文采用三星公司的ARM9处理器S3C2440 作为硬件平台(如图2所示),该芯片本身集成了包括存 储器接口、通信接口(SPI、RS232、12C等)和AD等在内的 丰富的硬件资源,可大大简化外围设备和处理器的连接程 度,提高系统的稳定性和可靠性。 图2 智能家居系统家庭网关硬件框图 2.2家庭内网的设计 智能家居控制系统的最终环节就是室内环境监 测、安防监测报警和家电远程控制。所以,家庭内网的 设计包括两大部分:传感器网络和家电控制网络。为 了摆脱传统线缆的束缚,综合考虑到功耗、复杂度和速 率,系统采用ZigBee技术搭建传感器网络和家电控制 网络。ZigBee技术是一种近距离、低功耗、基于 IEEE802.15.4标准的局域网协议无线通信技术。其 特点是近距离、低复杂度、自组织组网,非常适合用在 室内环境下 。 市面上基于ZigBee技术的解决方案有很多,也很成 熟。本文中选用的主控模块其核心部分是Chipcon公司 生产的一款符合IEEES02.15.4规范的2.4 GHz的射频芯 片CC2430。该芯片整合了ZigBee RF前端、内存和基于增 强型51内核的微控制器等。硬件支持载波监听多路访 问/冲突检测(CSMA/CA),2~3.6 V的工作电压有利于 系统实现低功耗。基于该ZigBee模块搭建的传感器节点 和家电控制节点如 图3所示。 ZigBee协调器节点 各子节点通过 连接到ZigBee协调 Zi器节点,从而使传感 二 终端1gBee I l I1终端2 l ZigBee l l ZigBee l lZigBee =  I终端3¨终端4 器节点和家电控制 温湿度I传感= 工 节点连接到家庭网 器l  ll光线I传感器l  —l室内灯l I音乐 l播放器 关上,进而连接到互 图3 ZigBee节点连接框图 30 联网。 3 系统的软件设计 系统软件设计包括家庭网关软件设计、智能终端节点 软件设计和智能手机APP设计三大部分。家庭网关是以 ARM9处理器为控制核心,其软件设计包括移植嵌入式 Linux操作系统、Linux下基于TCP/IP协议的Web服务器 应用软件设计和ZigBee协调器节点程序设计。智能终端 节点的控制一般使用MCU即可,其应用软件就是一个循 环的控制程序。智能手机APP部分是在Android操作系 统平台下基于Google官方的开发工具包(Android SDK)进 行开发。 3.1 移植嵌入式Linux操作系统 尽管现在Linux内核的版本已经更新到了4.4,但是 在嵌入式Linux领域依然大量使用2.6的内核。所以,本 设计依旧采用2.6内核的Linux操作系统,然后将它移植 到S3C2440平台上。 首先,从https://www.kerne1.org/pub/linux/kernel下 载内核源码,然后解压源码,进入内核源码的根目录,修改 Makefile文件,设置对应的目标平台和交叉编译器,然后 配置并编译内核,编译成功后会得到内核镜像文件zIm. age。最后通过uboot的命令行菜单将镜像文件烧写到 NAND Flash存储器中即可。 3.2 基于TCP/IP协议的Web服务器设计 在ARM+Linux开发平台下,常用的Web服务器有 Httpd、Thttpd和Boa。其中Boa服务器支持CGI(公共网关 接口),功能较强。为了实现动态Web技术,本文基于Boa 编写了家庭网关的服务器。首先建立服务器端Socket,然 后绑定服务器的IP地址,并循环监听服务器的一个端 口 。当有客户端请求连入时,服务器端会开启一个子进 程处理请求并完成与客户端的数据通信,具体的软件设计 流程如图4所示。 3.3 ZigBee协调器节点程序设计 在系统中,ZigBee协调器节点主要用于创建无线网 络,分配ZigBee终端节点的网络地址,然后向终端节点发 送控制命令并接收来自终端节点的环境信息,将接收到的 数据全部上传至家庭网关中,最后通过公用以太网传送至 用户手机的APP上。协调器首先会进行应用层的初始 化,然后初始化端口并打开全局中断。接着协调器初始化 一个信道并建立一个ZigBee网络,这时ZigBee终端节点 就可以通过认证加人到该网络中并进行数据的交换,具体 过程如图5所示。 3.4 智能终端节点程序设计 智能终端节点是指由ZigBee终端控制的节点,在 系统中主要是传感器节点和家电控制节点。ZigBee终 端节点初始化同样包括应用层初始化、I/O端口初始 化和打开全局中断,之后尝试加入由ZigBee协调器创 《微型机与应用>>2017年第36卷第3期 硬件与结构 Hardware and Architecture 如图6所永。 图6 ZigBee终端节点程序流程图 l到4 智能家居家庭网关服务器I:作流程罔 3.5智能手机APP设计 用户对整个智能家居控制系统的操作最终是通过智 能手机来完成的。为此,笔者开发了基于AIldroid智能手 机操作系统平台的APP。APP的设汁包括APP界面前端 和后台的开发。其中,APP的前端即UI(用户界面)设计, 是通过建立一个XML文件,在这个XMI 文件下根据一定 的布局编写相应的控件,然后在MainActivity代码中将这 个XMI 文件进行绑定即可 ;而APP的后台代码设计,主 要通过歼肩一个子线程,然后在子线程巾建 基于TCP/IP 协议的Socket连接, 成功连接到家庭网关 后即可通过点击uI 界面上的按钮等控件 来控制家电或者接收 来自于窜内传感器的 数据,并显示侄手机 l璺j 5 ZigBee协调器节点程J 梳程嘲 界面上。APP的主界 面如图7所示 建的无线网络中,特别要注意的是:只有与ZigBee协调 器设置一致参数的终端节点才能加入到网络中。成功 加入到网络后,ZigBee终端节点会将其注册信息发送 给ZigBee协调器,然后ZigBee协调器完成对终端节点 的注册 。 4系统测试 系统软硬件设计 完成后,在实验室条 件下进行r测试。测 试系统由一个ZigBee 协调器、两个ZigBee ZigBee终端节点每隔一定的时间(很短),完成一 次数据的采集,并将该数据信息发送给协调器。对于 来自于家庭网关的家电控制命令,ZigBee 调器会将 其发送给家电终端控制节点,终端节点则通过中断的 方式获取该信息并完成对家电的控制。具体实现过程 终端节点(分别是温 @ 图7 智能手机At I】主界面示意图 湿度传感器节点和音 乐播放器节点)、一 《微型机与应用>>2017年第36卷第3期 欢迎网上投稿WWW.pcachina.com 3 1 硬件与结构 Hardware and Architecture 个由s3C2440平台搭建的家庭网关、一部无线路由器(用 于连接Internet)和一部Android智能手机组成。其中,Zig Bee协调器与ZigBee终端节点距离为10 ITI,相邻的ZigBee 终端节点距离为15 m;家庭网关通过网口连接到无线路 由器,进而连接到互联网上。经测试,截取了家庭网关的 参考文献 [1]陈发才,王仁波.基于SC1128电力线载波芯片的智能家居 系统没计[J],微型机 应用,2009,28(20):16-l 8. [2]尹纪庭,袁佳,焦志曼,等.基于ARM和ZigBee的智能家居 控制系统研究与开发[j].计算机测量与控制,20l3, 21(9):2451—2454. 后台服务器部分运行数据,如图8所示。可以看出,系统 运行稳定,信息采集及时准确,执行结构反应迅速,达到了 家庭网络化、自动化的目标。 [3]叶高扬,毕冉.基于物联刚的智能家居系统设计与实现[J]. 计算机应用,2014,31(S1):3l8—319. [4]HAN D M,LIM J H.Design and implementation of smart home energy management systems based 0n ZigBee[J].IEEE Trans・ actions on Consumer Electronics,20l0,56(3):1417—1425. [5]徐书芳,王金海,宫玉龙.荩丁ZigBee的智能家居控制系统 的研究与设计[J].电子技术应用,20l3,39(8):81—83. [6]关永,张杰,师怡爽.基于ARM的嵌入式WEB服务器研 究[J].电子器件,2006,29(2):42-45. [7]纪金水.基于ZigBee无线传感器网络技术的系统设计[J]. 计算机工程与设计,2007,28(2):22—25. [8]杨威,高文华.基于Android的智能家居终端设计与研 究[J].计算机技术与发展,20l 3,23(7):189—192. (收稿日期:2016—08—06) 图8 家庭网关后台服务器部分运行数据 憩图 作者简介: 5 结束语 本文将嵌入式ARM技术与ZigBee无线通信技术相 结合,基于Android平台,开发了智能手机的APP进行人 机交互。系统功能强大,后期扩展性强,功耗低,达到了对 徐宏字(1965一),男,学士,副教授,主要研究方向:信息获 取与处理、电子技术与应用。 程武(1992一),通信作者,男,硕士研究生,主要研究方向: 信息获取与处理、嵌入式系统与应用。E—mail:1637557819@qq. com 0 家庭设备智能化管理和远程监控的目的,具有较为广阔的 应用前景。 张博(1992一),女,硕士研究生,主要研究方向:信息获取与 处理。 (上接第28页) 多种安全问题,保密和保护机制的灵活应用可为基于Ki— netis的应用在安全设计方面提供良好的技术基础。 参考文献 [1]王宦怀,吴瑾,蒋银珍.嵌入式系统原理与实践一ARMCortex— M4Kinetis微控制器[M].北京:电了工业出版社,2012. [2]Freescale Semiconductor,lnc..K60 Sub—family re'Fence manu— al Rev 6[DB/OL].(201 1—11—06)[2016-06—20].http:// WWW.freescale.con. (3)目的与用途:保密旨在防止恶意者通过外部接口 非法读出Flash内容,不影响CPU读写Flash。为防止芯 片内容被非法读出后被“暴力”写入到同类芯片运行,Ki— netis还提供了芯片唯一标识符UID可进行唯一性验证, 可配合保密机制阻止非法程序运行’ 。保护旨在防止 CPU对内部Flash意外擦除和写入。 (4)方向性:保密针对外部接口,保护针对CPU。 (5)寄存器与读写性:保密特性基于FTFL—FSEC,保 护特性基于FTFL—FPROTn。FTFL—FSEC寄存器是只渎 的,FPROTn寄存器是可凑叮写的,在运行过程中可以更 改其内部配置,具体方法与工作模式有关。 4 结论 本文深入分析了Kinetis系列MCU的保密和保护特 [3]Freescale Semiconductor,lnc..Using the Kinetis security and Flash protection features(AN4507)[DB/OL].(201 2-01-06) 『2016-06—20].http://www.freeseale.tom.2012/2016.6. [4]NXP Semiconductors.How to address the challenge of security/ privacy with Kinetis?(REV 0)[I)B/OI ].[2016-06—10].h卜 tp://www.nxp.corn/.2014. (收稿日期:2Ol6—10—11) 性,阐述了保密和保护的工作原理、应用场合、配置方法与 注意事项等。保密特性禁用外部端口,使得软件固件被锁 定,免受外部攻击,保护特性可防止对特定Flash区域进 行擦除,免受内部CPU误操作的影响,二者结合可以应对 32 作者简介: 王玉丽(1984一),女, 学硕士,讲师,主要研究方向:嵌入 式系统应用。 《微型机与应用>>2017年第36卷第3期 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务