基于android的智能家居系统设计与实现

基于android的智能家居系统设计与实现

ID:35010254

大小:6.72 MB

页数:64页

时间:2019-03-16

上传者:U-56225
基于android的智能家居系统设计与实现_第1页
基于android的智能家居系统设计与实现_第2页
基于android的智能家居系统设计与实现_第3页
基于android的智能家居系统设计与实现_第4页
基于android的智能家居系统设计与实现_第5页
资源描述:

《基于android的智能家居系统设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

系州A聲3SOOCHOWUNIVERSITY硕±专业学位论文I论文题目基于Android的智能家居1^系统设计与实现硏究生姓名唐红纪指导教师姓名mm专业名称电子与通信工程硏究方向电子信息技术应用论文提交日期2015年12月蠢I 基于Android的智能家居系统设计与实现中文摘要基于Android的智能家居系统设计与实现中文摘要随着Android手机的普及,越来越多的老百姓都丢掉了功能机,使用上了智能手机,同时传统的生活模式已经满足不了我们的需求,智能家居开始步入我们的生活中,基于Android的智能家居系统让我们的生活更加便利、安全。ZigBee和Bluetooth是无线通信方式较常用的两种方式,ZigBee是一种新兴的物联网技术,具有成本低、可靠性好、时延短,网络容量大、覆盖范围广等优点。Bluetooth也推出了低功耗版本,成为Android手机的标准配置。USB是有线通信方式中最常用的一种方式,具有接口统一,传输可靠,布局方便等优点。将这三种常用的技术有效的运用到智能家居系统,能够有效的降低智能家居的成本,并且能够提供多样化的控制方式。本论文研究的智能家居控制系统,用户可以通过有线和无线两种方式对家用电器进行控制,满足了各类人群的需求。基于USB有线通信方式,用户可以使用PC应用软件对家用电器进行控制,面向的用户群体是经常使用电脑的年轻一族;基于Android系统和Bluetooth通信方式,用户可以使用Android客户端对家用电器进行控制,面向的用户群体是赶潮流的年轻人和中年人;基于ZigBee通信方式,用户可以通过便携式ZigBee硬件开关对家用电器进行控制,面向的群体是不会使用电脑和智能手机的老年人。本论文设计的ZigBee和Bluetooth传输模块共用一块PCB板,大大降低了整个系统硬件成本。文中给出了硬件开关装置和无线传输通信模块的软硬件设计方案以及上位机控制软件和Android客户端软件的设计方案。经实际测试,该系统运行稳定。该设计方案是以智能家居控制系统为依托的,为类似的监控系统也提供了很好的参考,具有很好的实际应用价值。关键词:智能家居、USB、ZigBee、Bluetooth、Android作者:唐红红指导老师:黄鹤I AbstractDesignandimplementationofsmarthomesystembasedonAndroidDesignandimplementationofsmarthomesystembasedonAndroidAbstractWiththepopularityofAndroidmobilephones,moreandmorepeopleusethesmartphonesandlostfunctionphones,Traditionallifecannotsatisfytherequirement,smarthomeentersintoourlife,smarthomesystembasedonAndroidletourlifemoreconvenientandsafe.ZigBeeandBluetoothwirelesscommunicationmodeiscommonlyusedintwoways,Asanemergingwirelesstechnology,ZigBeetechnologyhasmeritsoflowcost,highreliability,short-timedelay,largenetworkcapacityandwidelycoveredrange.,Bluetoothalsointroducedalow-powerversions.USBcablecommunicationisthemostcommonlyusedinaway,aunifiedinterface,reliabletransmission,convenientlayout.thethreekindsofcommonlyusedtechnologiesappliedeffectivelytothesmarthomesystem,caneffectivelyreducethecostofsmarthome,andcanprovideavarietyofcontrolmode.Thistopicresearchofintelligenthomecontrolsystem,usingthewiredandwirelesstwowaystocontroltheelectricequipment,YoungpeoplecanusePCcontrolelectricequipmentwithUSBcablecommunication.Keepupwiththetrendoftheyoungandmiddle-agedpeoplecontrolelectricequipmentwithAndroidphone,whichbasedontheAndroidsystemandtheBluetoothcommunicationmode.OldpeoplecanuseportableZigBeeswitchtocontrolelectricequipment.ThedesignofZigBeeandBluetoothtransmissionmoduleuseaPCBboard,greatlyreducethehardwarecost.Byactualtest,thesystemrunsstably.Thedesignisbasedonintelligenthomecontrolsystem,butforthesimilarmonitoringsystem,hasgreatvalueinpracticalapplication.Keywords:Smarthome,USB,ZigBee,Bluetooth,AndroidWrittenby:TangHongHongSupervisedby:HuangHeII 目录第一章绪论............................................................................................................................11.1本课题研究背景及意义..............................................................................................11.2国内外研究现状..........................................................................................................21.2.1国外研究现状.......................................................................................................21.2.2国内研究现状.......................................................................................................31.3本论文研究内容及主要工作......................................................................................51.4本论文的组织结构......................................................................................................6第二章智能家居系统的总体设计....................................................................................82.1智能家居系统的设计总体方案..................................................................................82.2智能家居系统设计原则..............................................................................................92.2.1智能家居系统的硬件设计原则..........................................................................102.2.2智能家居系统的软件设计原则.........................................................................102.3本章小结...................................................................................................................11第三章智能家居系统硬件设计......................................................................................123.1智能家居控制系统硬件总体结构...........................................................................123.2智能家居的控制系统中数据控制硬件设计...........................................................133.2.1ZigBee便携硬件开关.........................................................................................133.2.2I/O继电器控制模块...........................................................................................153.3智能家居控制系统数据传输硬件设计...................................................................163.3.1ZigBee传输模块.................................................................................................163.3.2Bluetooth传输模块.............................................................................................193.4本章小结...................................................................................................................20第四章智能家居系统有线传输软件设计......................................................................214.1有线传输软件总体方案...........................................................................................214.2USB固件程序实现...................................................................................................224.2.1USBDevice协议栈实现....................................................................................22 4.2.2USBDevice应用程序实现................................................................................234.3PC应用程序实现......................................................................................................284.4本章小结....................................................................................................................31第五章智能家居系统无线传输软件设计......................................................................325.1Zigbee无线传输软件设计........................................................................................325.1.1ZigBee介绍........................................................................................................325.1.2I/OoverZigBee实现..........................................................................................355.2I/OoverBluetooth实现.............................................................................................395.2.1Bluetooth介绍.....................................................................................................395.2.2Bluetooth软件实现.............................................................................................415.2.3Android客户端应用程序实现...........................................................................435.3本章小结....................................................................................................................45第六章系统测试..............................................................................................................466.1PC通过USB控制家用电器.....................................................................................466.2ZigBee便携开关控制家用电器...............................................................................476.2.1ZigBee通讯距离测试.........................................................................................486.2.2ZigBee通讯误码率测试.....................................................................................486.3Android手机软开关控制家用电器..........................................................................486.3.1Bluetooth通讯距离测试.....................................................................................506.3.2Bluetooth通讯误码率测试.................................................................................506.4本章小结....................................................................................................................51第七章总结与展望..........................................................................................................527.1全文小结...................................................................................................................527.2将来的工作设想.......................................................................................................52参考文献..............................................................................................................................54致谢..................................................................................................................................56 基于Android的智能家居系统设计与实现第一章绪论第一章绪论1.1本课题研究背景及意义在美国康涅狄格州风靡一时的“都市办公大楼(CityPlaceBuilding)”的项目使用的是美国联合技术建筑系统公司(UnitedTechnologiesBuildingSystem)将建筑设备信[1]息化、整合化的概念。通过对老式大楼进行改造到一定程度后,再使用计算机系统对大楼中的电梯、排风系统、照明等所有的设备进行监测与控制,在信息服务上主要提供的是语音通信、新闻和电子邮件方向的信息。通过这样的改造,此楼成为世界上第一座“智能大厦”。此后,日本、德国、瑞士及一些发达国家相继推出了各种各样的智能家居的样板房,向人们展示了未来住房的前景和计算机技术新型的发展趋势。当今社会比尔盖茨的豪宅是以智能家居闻名的。《未来之路》的作者比尔盖茨在他的这本书中用很多的篇幅刻画了他的私人豪宅。他采用前沿的理念和现代化的技术建造了一个智能住宅,经过多年的建设,他的豪宅顺利完工。他的这个住所以智能家居的思想建造,不仅仅有高速连接网络的线路,而且可以使用一台计算机来控制所有的电器、窗户和大门等,并且能够使用一个高性能、低功耗的服务器来管理整个系统。智能住宅又名智能家居,或者称为数字家庭,英文简称SmartHome,在台湾和[2]香港地区也被叫做数码家居或者数码家庭。简单的说,智能家居是这样一种技术,它采用网络通信技术、嵌入式软件、计算机设备,将住宅中所有的设备如安防,排风系统、温控设备、饮水机、洗衣机、电动窗帘等一切电器通过网络连接起来。智能家居的出现,一方面可以让用户使用更有效的方式如无线遥控器、手机、语音识别等手段来控制家用电器,并可以设定一定的场景,来完成复杂的功能;另一方面,连接到同一网络的所有智能家居设备,他们之间可以通过网络相互进行通信,不需要用户的干预也能很好的根据不同的状态很好的运转。从而给使用者带来最完美舒适的体验。智能家居的出现,优化了人们的生活方式,增加了生活的舒适度,并且可以提高人们对时间的利用率,能够使得家庭与外界的信息交流更为畅通。在当今社会,1 第一章绪论基于Android的智能家居系统设计与实现国家提倡建设创新型社会和节能型社会的大环境下,如何提升住宅的标准和档次,如何提升建筑品牌的知名度,推动和发展智能家居,使智能家居称为当前社会的主流,是必然的一个发展方向。本课题将最新的技术、理论、方法相融合,设计了一套智能家居控制系统,其成果具有广阔的应用场景。不仅可以用于智能住宅、也适用于其他相关类似场合如农业监测灌溉系统、畜牧场所无线温度控制系统等。1.2国内外研究现状随着智能家居越来越受到欢迎,技术也越来越完善,这样技术在国内外越来越受到欢迎和普及。不同国家具有不同的国情,导致各个国家的智能家居的风格也不尽相同。1.2.1国外研究现状美国的智能家居比较侧重于豪华感,追求整体的舒适度,但是这样必然带来大量的能耗,不符合当今社会低碳环保、可持续发展的理念。德国的智能家居则比较传统,延续了其一贯思想,侧重于基本功能实用性,同时会根据特殊需求来实现特定的功能。澳洲利亚智能家居的需求中安全问题是放在首位的,也是智能家居的一个竞争力,因而使得在澳大利亚的家里传感器是最多的,当有任何不明异物飞入时,都能立即感应出来。日本的智能家居注重于实用性,也可以说为以人为本,同时也符合当下的环境需求低碳环保,因此使用了大量的新材料和新技术,为实现房屋现代化,还大量利用人工智能、网络、通讯等技术。日本不但在房屋内使用智能家居,屋外还实现了人脸的自动识别技术,通过对人脸的识别来确认居民身份,来判断是否将门打开。韩国的智能家居以实用主义为主,韩国政府规定在首尔等特大城市中新建的小区如果支持智能家居系统,则政府将会采取相应优惠政策进行支持。正是由于政府的大力支持,所以韩国当前90%的新建住宅都配有智能家居系统。比如,韩国电信2 基于Android的智能家居系统设计与实现第一章绪论提出了4A概念,来描述智能家居所应具有的特征,即AnyTime、AnyService、Any[3]Device、AnyWhere,这个概念非常形象地描绘了智能家居系统的便捷性,它可以让用户在任何地点和任何时间控制家中的任何智能电器,从而获得想要的任何服务。智能电器加上一套监视系统,使得人们可以通过Android或者iPhone手机,利用4G或者Wifi无线网络来远程监控,这样的生活场景就是韩国智能家居产业所憧憬的未来智能化的家庭生活方式。当前,比较具有代表性的国外智能家居系统有、MavHome智能家居、HAL公司的ALdeluxe、美国杜克大学的HomeDepot智能家居、Vantage公司的Vantage家居自动化系统、NEYWELL公司的智能家庭产品、三星公司的homevita家庭控制解决方案、HAL公司的NI智能家居系统、科罗拉多大学计算机系和认知科学学院的“NeuralNetworkHouse”数字家庭模型、LG公司的LGHomeNet智能家居系统、美国的佛罗里达大学的移动和普适计算实验室的“GatorTechSmartHouse”数字家庭[4]模型。1.2.2国内研究现状国内智能家居在起步上发展比较晚,但其发展的速度还是很迅猛的。上世纪末,国家政府多个机构联合在全国建立并实施相关智能家居的技术工程.这个项目的启动是在中国历史上智能家居发展的里程碑。随着各大公司加入到智能化家居的开发和应用的行业中来。近期的市场中不断的有各大公司、集团自主研发的智能家居系统的诞生,给行业以一定的刺激,从而形成了各种各样的标准,以下是中国的集中智能化家居系统。[5]①海信集团的DNet-home海信集团的DNet-Home是基于IPV4/6协议的新一代智能家居网络设计方案,海信的这款产品将PLC、ZigBee和Wifi三种无线通信方式进行有机融合,实现了视频流,音频流、信息流的完美组合。海信集团在整个产品的研发过程中,不断地进行技术和产品创新,开发了一套完整的系统,包括媒体中心、智能机顶盒、智能空调、智能冰箱、智能管家以及视频监控等一系列智能家居产品。DNet-home智能家居系统让住宅中所有的电器不仅具备他们本身的功能,还能够将他们通过网络连接起来,3 第一章绪论基于Android的智能家居系统设计与实现实现一些未曾有过的功能,从而使得整个系统使用更加便捷。同时由于该款产品采用了PLC和无线的方式,使得用户不需要额外布线,就可以实现智能家居。[6]②海尔集团的U-home海尔集团的U-home方案采用了无线和有线相结合的布线方式,符合当前物联网时代的理念,所有的电器设备通过网络连接在一切,实现了家庭小网、社区中网、世界大网的互联。通过无线传感器网络技术,将海尔集团的各类3C产品连接起来,实行归一化的管理和识别,从而构建出所有视频音频等媒体信息共享的智能家居系统。[7]③美的公司的智能家居系统Media公司的智能家居系统以网络为基础,住宅为平台,融合信息、通信、计算机等技术,实现对家用电器设备的管理和控制,并组成与外界信息交互的通道,满足人们舒适、安全、便捷的生活需求的居住环境。该系统主要包括控制设备、安防门禁、家居应用、娱乐信息和社区管理五部分。控制设备将智能家电、灯光、窗帘及其他自动化设备进行联网,使主人在家里、家外都能便捷地操作这些设备,其控制方式包含多点控制、远程控制、预约控制、和集中控制五种;如果家中有煤气泄漏或者门窗非法进入等事件,系统会第一时间监测到,并汇报给主人,主人收到信息后,可以及时报警,并提供相关有力证据;娱乐信息是通过手机、电脑、智能电视等设备向用户定时推送娱乐信息,使用户及时了解最新的娱乐动态。社区管理是指包括电子监控、电子巡更、门禁管理、停车场管理等一系列社区服务,以此为业主提供方便安全的社区生活环境。[8]④智能生活专家KOTIKOTI的智能家居系统提供了一整套集中控制的解决方案,这套系统能够对各类照明灯具、家居常用电器以及电动窗帘等设备进行控制,用户可以通过便携式遥控器或者智能手机对设备进行操作和控制。同时KOTI智能家居系统提供远程操作功能,用户可以在下班的路上使用手机开启电饭煲、空调、饮水机等,回到家时,便可以立马享受到智能家居带来的方便。[9]⑤鹭岛国际别墅鹭岛国际别墅智能家居是由天津市泰益通科技有限公司为鹭岛国际定制的一套4 基于Android的智能家居系统设计与实现第一章绪论智能家居解决方案,该方案主要有八个功能,介绍如下:a)遥控控制功能。用户可以使用智能遥控器来管理和控制家中的任何智能电器。b)定时控制功能。用户家中的智能电器具有定时功能,用户可以自行设定开启关闭时间。c)集中控制功能。智能家居系统包含各种各样的传感器,可以检测到用户是否回家,若已回家,可以自动打开走廊的电灯,在夜间,如果用户起床上厕所,也可以自动为用户开灯,用完厕所后,用户离开,系统自动检测到这一状态,并关闭电灯。d)远程控制功能。用户可以使用智能手机,远程控制家中的电器。e)场景功能。用户设置不同的场景模式,如果有客人来,可以设置成会客场景、如果到了吃饭时间,可以设置为就餐场景、如果到了休息时间可以设置为休息场景等。不同的场景都会依据这个场景的需求做相对应的反馈。f)网络控制功能。智能家居提供以太网、无线网,LTE网络,所以无论用户只需要在有网的环境下,就可以控制家中的一切电器。g)指纹密码和人脸识别功能。用户如果不小心将钥匙落在家里,则可以通过密码、指纹、人脸识别的方式打开房门。h)电动天蓬帘。使用者可以通过遥控器对窗帘进行遥控。以上介绍了几个具有代表性的智能家居系统,目前智能家居系统的标准还未统一,各个厂家也在积极的沟通与合作,共同寻求更为合理的、开放的、可扩展的、互相兼容的智能家居方案。通过对国内外的研究现状进行分析对比,可以得出将IOT技术运用于智能家居具有广阔的前景,目前无论是国内还是国外,智能家居的研究均处于起步阶段,因此,本课题基于国内外研究的基础之上,将ZigBee、Bluetooth、Android等时下最流行的技术应用于智能家居系统,以最低的成本让普通民众也能享受智能家居所带来的便利与享受。1.3本论文研究内容及主要工作智能家居控制系统面向的用户多种多样,所以首先要考虑一个智能家居系统如何能够做到大多数用户都可以方便的使用。当前Android手机已经普及到大多数普5 第一章绪论基于Android的智能家居系统设计与实现通家庭,本文以Android技术为基础,使用USB、ZigBee、Bluetooth三种通信方式实现了一种智能家居控制系统,满足不同种类用户的需求。智能家居控制系统的设计包括系统硬件设计、嵌入式软件设计、上位机软件设计和Android客户端软件设计。本论文详细描述了基于ZigBee的便携式硬件开关、通用I/O继电器模块、USB传输模块、Bluetooth传输模块、ZigBee传输模块硬件的实现,同时详细介绍了USBDevice端固件程序、ZigBee通信软件、Bluetooth通信软件的实现,本论文对PC应用软件和Android客户端软件实现也进行了介绍。本论文设计的智能家居控制系统涵盖有线和无线两种通信方式,有线方式使用目前主流的USB通信方式,布局简单,可扩展性强,稳定性高;无线方式采用ZigBee和Bluetooth两种通信方式,ZigBee方式主要用于便携式硬件开关的实现,Bluetooth主要用于Android手机软开关的实现,所以本论文设计的智能家居控制方式包括硬开关和软开关两种方式,囊括了各类人群的需求,对于年轻一族,可以使用PC应用软件或者Android客户端对家电进行远程控制,而对于老年一族,则可以使用便携式硬件开关对家电进行管理和控制。1.4本论文的组织结构本文以智能家居无线控制系统为应用背景,阐述了基于Android的智能家居无线控制系统设计的整体方案,详细描述了无线控制系统的软件和硬件设计、调试和实现的过程,最后给出了相对应的测试结果。第一章为绪论,讲述了本文研究项目的应用背景及意义,智能化家居系统在国内外的研究发展现状,提出了本项目的侧重点以及要解决的问题和实现的方式方法;第二章主要针对智能化家居控制系统的具体应用背景,写出了智能化家居控制总系统的解决方案,包括硬件平台、软件平台以及软件和硬件设计的原则;第三章阐述了系统的硬件设计,将硬件分为控制硬件和传输硬件两个部分,控制硬件用来传输控制信号,传输硬件用来传输具体的数据;第四章阐述了系统的有线传输软件设计,这里有线的载体是USB,详细介绍了USB的协议及Device端协议栈的实现,最后介绍了PC端USBHostI/O驱动的实现;第五章阐述了系统的无线传输软件设计,这里无线传输的载体是ZigBee和6 基于Android的智能家居系统设计与实现第一章绪论Bluetooth,详细介绍了ZigBee和Bluetooth的相关知识,并介绍了I/OOverZigBee/Bluetooth的实现,以及Android手机客户端Bluetooth应用程序的实现;第六章对整个无线控制系统进行了测试验证,包含三种传输方式USB/ZigBee/Bluetooth,USB的方式是通过PC上的应用软件来控制家电的关闭,ZigBee的方式是通过ZigBee便携硬件开关来控制家电的关闭,而Bluetooth的方式是通过Android手机客户端这种软开关来控制家电的关闭。第七章对全文进行了全面的总结,并提出了后续可以改进的方面和继续研究的方向。7 第二章智能家居系统总体设计基于Android的智能家居系统设计与实现第二章智能家居系统的总体设计2.1智能家居系统的设计总体方案住宅是人们居住的最基本单元场所,随着社会通信网络不断的发展和智能手机的普及,越来越多的人希望通过现有的科技将被动的静止的物品转化为具有能动性的智能工具,从而可以有一个全方面的信息交流平台,有助于内外部的信息沟通交流,优化了居民的生活方式,帮忙人类有效合理的对时间进行安排,居住的安全性也提高了,还可以节约各式各样的费用和能源。基于这样一种背景,设计了以一种基于Android的智能家居无线控制系统解决方案,可以通过我们的手机、PC或者便携式开关来控制家中的电灯、电饭锅、电视、空调、电风扇等家用电器。针对智能家居系统中无线控制系统设计了一套完整的解决方案。整个系统包括两大核心模块信号发射器和信号接收器以及通用的I/O继电器控制模块。信号发射器和接收器均支持三种通信方式:USB、Bluetooth和ZigBee。在系统当中,Bluetooth芯片选择CC2540,ZigBee芯片选择CC2531,这两款芯片均带有USB控制器,且外围电路基本一致,可以制作一块单板,只需焊接不同的芯片(CC2540或者CC2531)来实现不同的通信方式(Bluetooth或者ZigBee),这样有效的节省了整个系统的成本。系统中还包含一个单独的继电器模块,对外引出I/O接口,接不同的模块(Bluetooth或者ZigBee)实现不同通信方式控制电器的功能。整个系统的工作原理如下:1.系统中可分为三种不同的布线方式:USB,ZigBee,Bluetooth;2.使用者通过一个USB的I/ODongle将所需要控制的家电通过USB线的方法连接到PC上,由PC统一进行管理,用户可以通过PC上的应用软件来分别控制家中电器打开与关闭;3.家中的电器可以外接一个CC2531ZigBee继电器模块,用来接收ZigBee控制信号,这样用户就可以使用ZigBee无线便携开关发射ZigBee开关信号给8 基于Android的智能家居系统设计与实现第二章智能家居系统总体设计ZigBeeI/O继电器模块,从而来控制家中的电器的打开与关闭,将这种方式[10]成为硬开关控制模式;4.家中的电器同样可以外接一个CC2540Bluetooth继电器模块,这样用户就可以通过Android手机的Bluetooth应用程序连接蓝牙继电器模块,从而[10]控制家中的电器的打开与关闭,将这种方式称为软开关控制模式。整个系统的框图如图2-1所示:图2-1系统的总体设计框架图2.2智能家居系统设计原则考虑到智能家居应用的背景,一般是民用住宅,所以硬件设计时,首先要考虑它的经济性,在这方面做了以下设计:首先,将继电器设计成单独的一个公共模块,供各个部分使用;其次,将USBZigBee/Bluetooth/IODongle三种Dongle合一,CC2531和CC2540有着高度的引脚兼容性,同时其外部电路也有高度的兼容性,这样就可以只设计一块PCB板,在这个PCB板上焊接CC2531就是USBZigBeeDongle,焊接CC2540就是USBBluetoothDongle,并且这两个芯片都带有USB控制器,所以将其I/O引脚引出,两种dongle又同时可以用作USBI/ODongle的功能;最后,还会在Dongle上预留按键接口,这样不焊接USB接口,USBZigBee/Bluetooth/I/ODongle就变成了相应的ZigBee/BluetoothI/O模块,如果在焊上按键,那么这中dongle摇身一变,就成为了便携式硬件开关。所以总结下来,系统只需要设计两个硬件模块:1.USB/ZigBee/BluetoothDongle模块和继电器模块。这样就大大的节约了硬件成本。9 第二章智能家居系统总体设计基于Android的智能家居系统设计与实现2.2.1智能家居系统的硬件设计原则除了经济性之外,还要考虑一些硬件的设计原则,我们的生活环境中充斥的各种各样的无线信号如Wifi,TDDLTE等,而硬件也是射频模块,需要做一些抗干扰设计。要解决干扰问题,需要遵循以下设计的几个原则:抑制已知的干扰源,切断滋扰源的传播途径,增强敏感元器件抗滋扰的性能。一般常见的有马达、闪电、可控硅、雷电、高频时钟等都非常有可能是干扰源,通过降低滋扰源地电压和电流的变化频率,尽可能的稳定其参数。由于系统中存在高频模块,所以在传输线上要分外注意,必须将传输线内侧设在接地面,电路板应使用多层板,传输线应使用带状线,带状线在基板内封闭电磁场,具有传输损耗小的优点。低频电路设计要求较低,元器件通过导线连接起来组成一个系统,在大部分情况下都可以使用并满足要求,但是对于高频模块,PCB的印制图案也会影响性能,在印制图案之间要接入接地图案,有电位差的信号线要尽量分开排列。除了以上这些应当注意的点外,我们还需要严格参照器件手册对芯片进行选取和采购,相关要求精度高的元器件必须要满足其精度要求。2.2.2智能家居系统的软件设计原则智能家居控制系统高可靠性,不能因为一个电器出现问题,就会导致整个住宅的电器都无法工作。基于此,智能家居系统软件需要遵循以下几个基本原则:智能家居系统软件首先具有高度扩展性。后期用户会购买新的电器,系统软件要能在不升级的情况下,能够对新加入电器的支持。其次,智能家居系统软件应具有高度可靠性。一个电器出现问题不会影响其他的电器,同时,如果系统软件由于突然断电或者其他异常原因等导致死机时,在一定时间内,系统软件应该能够及时自我恢复。再者,智能家居系统软件应具有高度抗干扰性。目前无线产品越来越多,用户的住宅中充斥着各种各样的无线信号,有Wifi、蓝牙、ZigBee、LTE还有其他很多我们不知道的射频信号,如果这些信号影响了系统的功能,系统软件应能及时检测到这一状态,并进行错误自恢复。其中当CPU收到信号滋扰时,会使得整个系统失控,10 基于Android的智能家居系统设计与实现第二章智能家居系统总体设计最不堪的结果就是家中的电器设备损坏。这样的损失是我们不能接受的,导致这样问题的原因,最常见的是破坏了程序计数器中PC的状态值,直接使得程序“跑飞”[11]或是陷入死循环。除了抗干扰性,软件还需要友好性,普通市民不一定会使用太高深的软件,所以还要给用户提供一种简单易用的交互界面。2.3本章小结本章首先介绍了智能家居的应用背景,紧接着提出了系统的设计方案,使用三种方式(USB、ZigBee、Bluetooth)来控制家中电器,而这三种方式使用同一块PCB板即可实现,大大地降低了硬件设计的成本,最后介绍了整个智能家居系统中硬件和软件设计时应当注意的一些规则。11 第三章智能家居系统硬件设计基于Android的智能家居系统设计与实现第三章智能家居系统硬件设计3.1智能家居控制系统硬件总体结构本文设计了一种具有多种多样的控制方式的智能家居控制系统,用户可以通过PC机、硬件开关以及Android手机三种方式的任一种方式控制家中的电器,不同的方式面向不同的人群,当年轻人在家中使用PC的时候可以使用PC控制电器,而年轻人或者中年人在家中使用Android手机的时候,可以使用Android手机控制电器,而对于老年人,可能不会使用智能手机,那么则可以使用便携式硬件开关来控制电器。整个智能家居控制系统的硬件系统的框图如图3-1所示:图3-1硬件系统框图本系统中涉及到的硬件归类成为两种模式的硬件:数据控制硬件与数据传输硬[12]件。硬件框图中的ZigBee便携开关和IO继电器模块属于数据控制硬件,用来发送控制信号和控制电器;而硬件框图中的ZigBee传输模块和Bluetooth传输模块属于数据传输硬件,用来接收和传输数据控制硬件发过来的信号。图中的ZigBee传输12 基于Android的智能家居系统设计与实现第三章智能家居系统硬件设计模块有两种连接方式,一种是使用USB线与PC相连,一种是使用ZigBee与硬开关相连;Bluetooth传输模块通过USB有线方式与PC相连,通过Bluetooth方式与Android手机相连,同时,ZigBee传输模块的SOC选用CC2531,Bluetooth传输模块的SOC选用CC2540,两者外围电路基本一致,所以这两种传输模块可共用一块PCB,节省硬件成本,下面一一介绍各模块具体硬件实现。3.2智能家居的控制系统中数据控制硬件设计这一小节主要介绍数据控制硬件的设计,包括芯片的选型、介绍,原理框图,原理图的详细设计,电阻电容的选择等。3.2.1ZigBee便携硬件开关数据控制硬件中的ZigBee便携硬件开关主要用来发射ZigBee信号给数据传输硬件ZigBeeI/O继电器模块,从而来控制家中电器的打开与关闭,作为便携式硬件开关,其功能十分简单,主要包含了SOC模块的最小系统,按键模块和电源模块。其总体框架图如图3-2所示:3-2ZigBee便携硬件开关硬件框图SOC模块选用的是TI公司所研发的CC2531芯片,CC2531是TI公司推出的符合13 第三章智能家居系统硬件设计基于Android的智能家居系统设计与实现[13]2.4GHz/IEEE802.15.1.4标准的射频收发器。它的特性是低功耗特性、非常棒的接收灵敏性和鲁棒性,输出功率最高可以达到4.5dBm,虽然外部元件很少,但结合RF类收发器与市场中标准增强型8051微控器的性能,从而具有256KB的ROM与8KB的RAM,此RAM具备在各种不同供电模式下的数据保护能力,同时还有多样的运行模式,并且运行模式之间的切换时间非常短,从而见证了低能耗的特性。CC2531芯片提供了101dB的通讯链路质量及较多的外设集合,包括两路串口,8路[14]12位ADC,21个GPIO口,和安全协处理器,同时一个看门狗定时器,具有捕获能力的32KHz定时器,采用CC2531芯片组成的最小系统原理图如图3-3所示:图3-3CC2531芯片最小系统的原理图SOC模块是其中硬件开关的核心,主要由CC2531芯片和它外围电路所构成,完成此硬件开关数据的保存、收发以及处理工作。最小系统电路中包含晶振电路,晶振电路用于提供时钟信号;debug电路,用于调试单板;Reset电路,主要用于实现整个硬件开关的复位,并初始化系统。按键模块如图3-4所示,配备了两个按键,一个用做打开功能,一个用于关闭功能,同时各配备了一个LED灯,用于指示用。14 基于Android的智能家居系统设计与实现第三章智能家居系统硬件设计图3-4按键模块原理图3.2.2I/O继电器控制模块I/O继电器用于控制家用电器的打开和关闭,主要由光耦模块,继电器模块等组成,其硬件框架如图3-5所示:图3-5I/O继电器控制模块的硬件框图继电器控制模块原理图如图3-6所示,TP-521芯片被我们用于光耦隔离模块,此芯片在各个行业中广泛应用,如测量设备、电脑终端机、可控硅系统设备领域,继电器选用的是的松乐牌SRD-05VDC10A/250V/AC继电器,在继电器断电的一瞬间,产生了一个与原电压极性正好相反的反向电动势,这个反向电动势与继电器的线圈正常通电时所产生的极性相反,由于该反向电动势会造成驱动继电器的三极管损坏,原理图中所并联的二极管1N4148的作用是过流保护,来减弱该反向电动势所产生的不利影响。当TLP521-1的输入引脚输入低电平信号时,光耦模块TLP521-1导通,此时继电器闭合;反而,当TLP521-1的输入引脚输入高电平时,光耦模块TLP521-1不导通,此时继电器开关断开。15 第三章智能家居系统硬件设计基于Android的智能家居系统设计与实现图3-6I/O继电器控制模块原理图3.3智能家居控制系统数据传输硬件设计数据传输硬件主要包括ZigBee传输模块和Bluetooth传输模块,下面分别介绍。3.3.1ZigBee传输模块ZigBee模块负责ZigBee数据的传输,总体硬件实现框图如图3-7所示,主要有SOC最小系统、USB接口模块、射频模块、输出模块、电源模块组成。图3-7ZigBee传输模块框图SOC最小系统采用的是由TI公司生产的CC2531芯片构成的最小系统,CC253116 基于Android的智能家居系统设计与实现第三章智能家居系统硬件设计最大的一个优势在于它具有一个USB2.0的device控制器,能够满足需求,SOC最小系统的原理图和ZigBee硬件开关的最小系统图类似,这里不再赘述。下面先介绍一下电源模块,电源模块采用5V电源,5V电源使用两节5号电池供电,因为ZigBee传输模块功耗较低,使用两节5号电池可以维持一年左右的使用时间,并且可以集成到家中现有的电器中去,两节5号的电池输出的5V电压通过直流-直流变换器后得到了3.3V工作电压,电源电路如图3-8所示:图3-8ZigBee传输模块电源原理图电源芯片选择使用的是TPS76933芯片,TPS76933芯片具有低压降的电压稳压的功能,其中此芯片还具有低压降和超低功耗还有封装最小化的特点,和常用的LDO稳压器相对比,这样的稳压器有非常低的降落电压与超低的静态电流,而且提供5端小型的集成电路中的SOT-23封装,能更加理想地被用于微功率的运行;TPS76933[15]还备有逻辑使能的睡眠模式,当稳压器关闭时,在TJ=25度的时候,静态电流只有1uA,而且它可以适应广泛的工作温度范围,在零下40℃到零上150℃之间的温度范围内均可以正常工作,但是为了改善瞬态响应与抑制噪声,在IN和GND中间连接一个1uf的陶瓷电容,同样的原理为了稳定内部环路控制,需要在OUT引脚和GND引脚中间增加一4.7uF的电解电容,同时还需串联一2欧姆的电阻,用来确保[16]其稳定性电容的ESR(等效串联电阻)。USB接口模块很简单,由于是USB2.0高速设备,因此需要在D+上接一上拉电阻,告诉主机我们是一个高速USB设备,如果同时在D+和D-上各加一路旁路电容,17 第三章智能家居系统硬件设计基于Android的智能家居系统设计与实现是用来保证数据传输的稳定性,具体原理图如图3-9所示:图3-9USB部分原理图射频模块采用了JTI2450芯片和倒F天线设计,JTI2450巴伦芯片不仅减少了原理图设计的复杂度,同时将少PCB布线的面积,同时还提供了RF的性能。无线系统中最为关键的一个部件是天线,天线用于接收和发射射频信号,射频信号的载体是电磁波,因此天线是射频信号的出口和入口,是用来转换导行波和自由空间波的[17]一个器件。对于射频发射端来说,高频的射频信号通过快线传输到天线,天线将高频信号转换为电磁波,向空间发射出去;对于射频接收端来说,是将空间的电磁波转换为高频信号,通过天线传输给接收机处理电路。天线的形状可以多种多样,有PCB天线,也有SMA天线。倒F天线、螺旋天线都属于PCB天线,杆状天线属于SMA天线。ZigBee传输模块所接受的信号来自四面八方,所以常常使用单极子天线、偶极子天线或者倒F天线,从经济成本、系统性能、模块尺寸三方面综合考虑,本论文设计的ZigBee传输模块使用倒F天线。ZigBee传输模块的原理图如图3-10所示:18 基于Android的智能家居系统设计与实现第三章智能家居系统硬件设计图3-10ZigBee射频部分原理图3.3.2Bluetooth传输模块Bluetooth传输模块采用的无线传输技术是低功耗蓝牙技术(BluetoothLow[18]Energy),它具有更高的传输速率,并且功耗也很低,同时能够方便的与现在有的Android手机进行配对连接,实现真正的家居智能化,这个传输模块采用TI公司生产的CC2540芯片,这款芯片不仅支持最新的蓝牙4.0协议,同时它具有一个最大的优点就是与CC2531的芯片引脚相兼容,而且外围电路也基本相同,其最小系统原理图如图3-11-1&图3-11-2所示:图3-11-1Bluetooth传输模块原理图19 第三章智能家居系统硬件设计基于Android的智能家居系统设计与实现图3-11-2Bluetooth传输模块原理图3.4本章小结本章首先介绍了整个智能家居系统中总体的硬件框图,将整个硬件系统分为两大部分:数据控制硬件和数据传输硬件。数据控制硬件着重介绍了ZigBee便携式硬件开关和I/O继电器原理图的实现及相关芯片的选择,以及设计过程需要注意的地方;紧接着又介绍了数据输出硬件,数据传输硬件分为ZigBee传输硬件和Bluetooth传输硬件,两种硬件选的主芯片虽然不同,但是引脚兼容,且外围电路相同,只需设计一块电路板即可实现两种功能,大大地降低了成本。20 基于Android的智能家居系统设计与实现第四章智能家居系统有线传输软件设计第四章智能家居系统有线传输软件设计4.1有线传输软件总体方案本系统的有线传输使用的是USB的通信方式,USB是通用串行总线(Universal[19]SerialBus)的缩写,它的出现简化了个人计算机与外围设备的连接,增加了易用性,还支持热插拔。USB1.0和USB1.1协议只支持1.5Mbps的低速设备和12Mbps的全速设备,USB2.0协议支持480Mbps的高速设备,而且USB2.0协议向前兼容USB1.x协议,目前最新的USB协议已经达到USB3.1,接口也新增了Type-C接口,使用起来不分正反面,更加方便。有线传输软件分为两部分,Host端的PC应用软件和Device端的固件程序。整个有线传输软件的框图如图4-1所示:图4-1有线传输软件总体框架21 第四章智能家居系统有线传输软件设计基于Android的智能家居系统设计与实现Host端的有线软件由USB主机控制器驱动,USB核心层,libUSB层和应用层组[20]成,前面三层Windows中本身都具有,不需要额外实现,本系统只需要调用libUSB库提供的接口实现相应的应用程序即可。Device端的有线软件由USBDevice控制器驱动,USBCore层,CDC驱动和应用程序组成,这四个部分都需要自行实现。Host端和Device端通过CDC协议进行交互,Host端将控制信号包含在CDC标准帧里,发给Device端,Device端收到之后,进行解析发出控制信号对其进行控制。本文的智能家居控制系统使用的是USB2.0通信协议,是由于选用的SOC只具有USB2.0的控制器,所以USBHost和USBDevice端实现的均为USB2.0协议。下面首先介绍USBDevice端软件实现。4.2USB固件程序实现本系统实现了一个简单的USBDevice协议栈,并在此基础上实现了CDC驱动,用于接收并解析Host发过来的控制信号。4.2.1USBDevice协议栈实现实现一个简单的USBDevice协议栈,其框架如下图4-2所示:图4-2USB协议栈实现框图22 基于Android的智能家居系统设计与实现第四章智能家居系统有线传输软件设计整个USBDevice协议栈分为4层。USB驱动层包括三个文件:Hardware.c、ISR.c和EP.c,Hardware.c与具体的硬件相关,不同硬件都需要实现不同的Hardware.c。Hardware.c主要实现硬件的初始化,包括关闭看门狗,配置时钟,使能USB控制器和其它相关的外围设备控制器,最后需要使能中断;ISR.c主要实现系统中断的处理,包括USB接收发送数据包中断、USB断开连接中断、USB挂起、恢复和唤醒等中断的处理;EP.c主要用来实现EndPoint相关功能的实现,如EndPoint初始化函数、EndPoint读写函数、选择EndPoint函数、获取EndPoint大小函数、获取EndPoint类型函数、设置EndPoint地址函数、EndPoint禁使能函数等。USB核心层用来实现USB协议,包括USB.c和Ctrl.c两个文件。USB.c主要实现USB传输函数、USB初始化函数、USB轮询函数,其中USB轮询函数是最核心的一个函数,它会一直检测是否有USB数据需要读取、是否有USB数据需要发送或者是否有控制传输的请求等;Ctrl.c主要用来处理枚举结果的请求,如返回设备描述符、返回配置描述符、设置地址、设置配置、返回状态等。USBClass层根据不同的需求需要实现不同的类,智能家居控制系统用来传输控制信号,所以实现一个简单的CDC类,主机会将控制信号包装在USB数据包里,通过USB传输给设备,这时,如果收到SetLineCoding请求,会根据控制信号来控制GPIO输出高电平还是低电平,进一步来控制家用电器的开关。4.2.2USBDevice应用程序实现本系统将USBDevice设备虚拟成一个串口设备,所以控制数据将会被包含在CDC帧里进行传输。[21]USB的CDC类是USB通信设备类(CommunicationDeviceClass)的简称。CDC类是国际USB组织所定义出来的一个子类,它就是专用于各种通信设备(电信和中速网络通信设备)使用的USB子类。CDC类可以依据通信设备的种类又可被分成以下三种模型:USB网络模型,USBISDN模型和USB传统纯电话业务模型。其中,USB23 第四章智能家居系统有线传输软件设计基于Android的智能家居系统设计与实现传统纯电话业务模型,有可分为直接线控制模型(DirectLineControlModel)、抽象[22]控制模型(AbstractControlModel)和USB电话模型(USBTelephoneModel),本论文所使用到的USB虚拟串口就属于USB传统纯电话业务模型下的抽象控制模型。4.2.2.1设备描述符实现要将USB设备虚拟成串口,首先要实现其设备描述符,将设备描述符中的bDeviceClass字段指定为0x02(通信设备类的类代码)。当指定了设备类型为通信设备类之后,子类和所使用的协议都必须指定为0,如表4-1所示。表4-1设备描述符关键字段bDeviceClass0x02通信设备类bDeviceSubClass0x00必须为0bDeviceProtocol0x00必须为0对于CDC类来说,其除了需要具有一些常规的描述之外,其还具有两个接口,CDC类接口和数据类接口。在CDC设备中,必须要有一个CDC类接口,以供数据接口依附。在CDC类接口描述符必须指定使用CDC接口类以及AbstractControlModel子类和CommonATCommands协议。实际实现的CDC接口描述符如表4-2所示:表4-2CDC接口描述符关键字段bInterfaceClass0x02CDC接口类bInterfaceSubClass0x02抽象控制模型子类bInterfaceProtocol0x01通用AT命令协议除了以上几个描述符之外,功能描述符也是必须要实现的,功能描述符主要用来描述接口的功能,通常置于CDCD接口之后,功能描述符的第一个字节为该功能描述符的长度bFunctionLength,第二字节为该描述符bDescriptorType,固定为0X24(CS_INTERFACE的编码),第三字节为描述符子类型bDescriptorSubtype,可以选择具体的功能描述符。剩余的数据和所选的描述符子类有关。在抽象控制模型中经常用到的功能描述符基本有以下几个:HeaderFunctionalDescriptor(0x00)、CallManagementFunctionalDescriptor(0x01)、AbstractControlManagementFunctionalDescriptor(0x02)和UnionFunctionalDescriptor(0x06).后面括号中的数字表示该描述符子类的编号,他们将出现在功能描述符的bDescriptorSubtype字段中。24 基于Android的智能家居系统设计与实现第四章智能家居系统有线传输软件设计功能描述符的第一个描述符必须是HeaderFunctionalDescriptor,总共有5字节,前3字节分别为bFunctionLength、bDescriptorType和bDescriptorSubtype三个字段。后面2字节为USB通讯设备协议的版本号,我们所参考的协议版本为1.1版,所以取0x0110。CallManagementFunctionalDescriptor有5字节,前3字节的意义已经介绍过了,这里只说后面2字节。第四字节为bmCapabilities,它描述设备的能力,只有最后两位的D0和D1有意义,其余位为保留值0。D0为0,表示设备自己不处理调用管理(callmanagement),D0为1时,表示自己处理。当D0为0时,D1将被忽略。D1表示调用管理通过通讯类接口还是数据类接口,1表示可通过数据类接口,0表示仅通过通讯类接口。在这里,我们将D0和D1都设置为0,即设备自己不处理调用管理。第五字节为bDatainterface,表示选择用来做调用管理的数据类接口编号,由于我们不使用数据类接口作调用管理,因而该字节设置为0。AbstractControlManagementFunctionalDescriptor有4字节,第四字节为bmCapailities,描述设备的能力。D4~D7位为保留位,设置为0。D0位表示是否支持以下请求:Set_Comm_Feature、Clear_Comm_Feature、Get_Comm_feature为1表示支持。D1位表示是否支持Set_Line_Coding、Set_control_Line_State、Get_Line_Coding请求和Serial_State通知,为1表示支持。D2表示是否支持Send_Break,为1表示支持。D3表示是否支持Network_Connection通知,为1表示支持。本项目仅将D1设置为1,即支持Set_Line_Coding、Set_Control_Line_State、Get_Line_Coding请求和Serial_State通知,其他请求和通知不支持。UnionFunctionalDescriptor至少有5字节,它描述一组接口之间的关系可以被当作为一个功能单元来看待。这些接口中有一个作为主接口(master),其他的作为从接口(slave),可以有多个从接口。第四字节为主接口编号,第五字节为第一个从接口编号,第六字节为第二个从接口编号,以此类推。本项目只有一个从接口——数据接口。关键的功能描述符字段如表4-3所示25 第四章智能家居系统有线传输软件设计基于Android的智能家居系统设计与实现表4-3功能描述符关键字段bFunctionLength0x04描述符长度bDescriptorType0x24类特殊接口CS_INTERFACEbDescriptorSubtype0x02ACM子类bmCapabilities0x02支持GetLineCoding请求4.2.2.2类请求实现本系统主要借用CDC类的类请求来实现控制信号的传输,如图4-3所示:图4-3类请求实现框图SetLineCoding请求是主机设置串口属性的请求,包括波特率设置、停止位位数、校验类型以及数据位位数。其请求的结构如表4-4所示:表4-4SetLineCoding请求结构bmRequestTypebRequestwValuewIndexwLengthData00100001BSET_LINE_CODINGZeroInterfaceSizeofLineStructureCodingStructure该请求的建立过程数据包如表4-5所示:表4-5SetLineCoding请求包内容0x210x200x000x000x000x000x070x10/0x00其中,第一个字节0x21表示发送到接口的类输入请求;第二个字节0x20为26 基于Android的智能家居系统设计与实现第四章智能家居系统有线传输软件设计SetLineCoding请求的编码;接下来的两字节为wValue字段,值为0;接下来后面的两个字节为wIndex字段,它的作用是指明发送到哪个接口的,这里是发送到接口0;接着两个字节表示发送数据的长度wLength为0x7个字节,最后为发送的数据内容,这里发送的值为0x10或者0x00,0x10代表打开电器,0x00代表关闭电器。在本系统中,是将停止位的含义虚拟成开关量,这里看看LineCodingStructure的定义,如表4-6所示:表4-6LineCoding结构体OffsetFieldSizeValueDescription0dwDTERate4NumberDataterminalrate,inbitspersecondStopbits0-1Stopbit4bCharFormat1Number1-1.5Stopbits2-2StopbitsParity0-None1-Odd5bParityType1Number2-Even3-Mark4-Space6bDataBits1NumberDatabits(5,6,7,8or16)可知,这里讲bCharFormat设为0或者1,来代表打开或者关闭电器,因此,是将此位表示停止位的含义虚拟成开关量的含义,后面GetLineCoding请求需要解析此位即可。GetLineCoding请求是主机获取串口属性的请求,包括波特率设置、停止位位数、校验类型以及数据位位数,其请求结构如表4-7所示:表4-7GetLineCoding请求结构bmRequestTypebRequestwValuewIndexWiengthDatasizeofLineCoding10100001BGET_LINE_CODINGZeroInterfaceStructureStructure所请求的建立过程数据包具体如表4-8所示:表4-8GetLineCoding请求包内容0xA10x210x000x000x000x000x070x0027 第四章智能家居系统有线传输软件设计基于Android的智能家居系统设计与实现其中,第一个字节0xA1表示发送到接口的类输入请求;第二个字节0x21为GetLineCoding请求的编码;接下来的两字节为wValue字段,值为0;再接下来的两个字节为wIndex字段,它是指明发送到哪个接口的,这里为发送到接口0;接着两个字节表示请求返回数据的长度wLength为0x7个字节,最后的Data字段是要设备返回的。其核心的请求代码如图4-4所示:图4-4请求核心代码4.3PC应用程序实现USBDevice实现之后,还要实现USBHost端驱动,这里依赖libusb-win32库,libusb是一个针对USB通讯的库,要学会使用它,操作系统中的细节你根本不需要清楚或模糊的知道,你只需要对它USB有足够多的了解就可以了,同时它更不需要你去写驱动代码什么的,所有的动作都是可以在用户态完成,其使用方法非常的简单。整个PC应用软件的框架图如图4-5所示:28 基于Android的智能家居系统设计与实现第四章智能家居系统有线传输软件设计图4-5PC应用软件框图利用libusb提供的接口,可以很方便地对USB进行操作,首先调用usb_init()函数初始化接口,其次调用usb_find_busses()寻找系统上的USB总线,再使用usb_find_devices()寻找总线上的USB设备,之后就可以调用usb_open()打开USB设备,打开设备之后,就可以在的应用程序里调用usb_control_msg()接口将控制信息发出去,从而控制家用电器的打开与关闭,使用完之后,调用usb_close()关闭USB设备即可,真个流程图如图4-6所示:图4-6流程图29 第四章智能家居系统有线传输软件设计基于Android的智能家居系统设计与实现PC上控制端采用C++编写,主要是画一个控制界面方便用户的操作,会设计一些按钮,并注册按钮的回调函数,包括打开/查找/关闭设备的按钮,打开/关闭各个电器的按钮,其中核心的打开各个电器按钮的回调函数程序如图4-7所示:图4-7按键回调函数关键代码段程序中调用usb_control_msg()函数接口向USB设备下发一个标准的SET_LINE_CODING请求,数值为1,表示要打开电器,界面的设计效果如图4-8:4-8PC应用软件界面效果图30 基于Android的智能家居系统设计与实现第四章智能家居系统有线传输软件设计4.4本章小结本章首先介绍了有线传输软件的总体架构,紧接着介绍了一个简易的USBDevice协议栈的实现,然后介绍了USBDevice端的应用程序,如何利用CDC协议,将控制数据封装在CDC帧中进行传输,最后介绍了利用libUSB开源库,如果实现PC上的应用程序。31 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计5.1ZigBee无线传输软件设计5.1.1ZigBee介绍目前短距离的无线网络主要分为无线局域网络WLANs(WirelessLocalAreaNetworks,WLANs)和无线个人局域网通讯技术WPANs(WirelessPersonalArea[23]NetworkCommunicationTechnologies),其分类如图5-1所示。图5-1无线网络分类HR-WPANs的速度达到11-55Mbps,一般可以用来视频传输;MR-WPANs的速度在1-3Mbps,典型的应用是蓝牙耳机;LR-WPANs的速度在250kbps。ZigBee就是LR-WPANs的一种,它是一种短距离、低复杂度、低速率、自组织、[24]低功耗、低成本的近距离无线通信技术,主要配合在一些自动控制和远程控制相关的领域等,还可以嵌入到各种各样的设备中。总体说来,ZigBee就是一种十分便宜的,而且是低功耗的短距离无线组网通信技术。[25]ZigBee它和IEEE802.15.4一起构成无线传感器网络的标准通信协议,适合于承载数据流量小、需要数据采集或监控网点多、地形复杂、低成本和可靠性业务中,IEEE802.15.4标准定义出协议中的MAC层和物理层,ZigBee协议定义出网络层、应用层和安全服务层的标准,ZigBee的协议栈如图5-2所示:32 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计图5-2ZigBee协议栈ZigBee应用层由应用安全子层、应用框架、ZigBee设备对象只厂商自定义的应[26]用对象组成。APS自层连接应用层和网络层,负责维护设备间的绑定表,两个服务和需求相互匹配的设备,彼此绑定后根据绑定表进行通信。应用框架是应用对象的环境,应用对象通过APS接收和发送数据,控制和管理应用对象由ZDO负责,其负责定义设备在网络中的角色,比如是作为协调器、路由器还是终端设备。ZigBee网络层负责设备到设备之间的通信,并负责网络拓扑的搭建、设备寻址、[27]消息路由和网络发现,属于通用的网络层功能范畴。ZigBee设备以应用对象的形式实现,一个设备可以包含多个应用对象。端点是硬件也能够是对象的实例,每个端点就是一个相对应的应用对象,这样的一个应用对象根据端点不同的地址从而得到区分。ZigBee联盟规定端点的地址范围是0~255,端点0用于ZigBee设备对象配置和管理设备,端点255用于向所有端点广播,端点241~254是保留端点,不能被用户使用。设备间的通信是端点和端点之间的通信,在通信之前必须指定设备profile,应用profile是为了多个设备、各个厂家的设备能互联、互通而制定的约束。Profile可以是公有的,也可以是私人制定的。Profile由profile标识符指定,每一个profile标识符定义了设备描述和簇标识符,端点之间的通信就是通过簇来实现的,簇是应用对象之间共享信息所需的全部属性的容器,端点间根据簇进行通信,具体传输的数据就是属性值,每个端点都有用于输入或输出的簇,发送数据时根据指定的簇的属性发送数据,接收数据时的簇必须与发送方对应。33 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现[28]在IEEE802.15.4中有两种设备,分别是全功能设备FFD和精简功能设备RFD,FFD可以执行任何功能,而RFD只能执行部分功能。例如全功能设备可以和任何设备进行通信,而精简功能设备只能和全功能设备进行通信。所以RFD一般面向比较简单的应用如开关,RFD的功耗和内存大小要比FFD小很多。而在ZigBee协议中将网络节点包含三种类型:Coordinator,Router,Device,如图5-3所示:图5-3ZigBee节点类型所有的ZigBee网络中都必须有一个且只能有一个Coordinator节点。Coordinator节点主要有以下作用:1.选择网络使用的频率,遍历所有频点,选择最畅通的频段;2.启动网络;3.将其他节点加入网络;4.提供信息路由、安全管理和其他的服务。Route节点有以下功能:1.在节点间转发信息;2.允许子节点通过路由节点加入网络;EndDevice节点主要的任务就是发送和接收数据,EndDevice节点不能转发信息,也不能让其他节点加入网络。34 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计5.1.2I/OoverZigBee实现5.1.2.1CC2531软件开发环境CC2531软件开发环境采用的是IAR7.60,IAR最大的优势就是能够使用TI公司提供的协议栈Z-Stack进行开发,需要实现ZigBee无线控制功能,只需要调用API接口函数即可,其编程环境如图5-4所示:图5-4ZigBee软件开发环境5.1.2.2Z-Stack介绍Z-StackTI公司推出的一款半开源ZigBee协议栈,用户使用特定的开发环境,并基于这个协议栈,可以很方便的开发出特有功能的应用程序。Z-Stack协议栈中包含一个简单的操作系统,名叫OSAL,用户不必关心其内部实现的细节,只需调用相关的接口,便可以完成各个节点的应用程序。OSAL实现了一个简单的调度程序,而35 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现ZigBee协议栈的代码不对用户开放,而是以库的形式提供给用户。TI公司的Zigbee2007协议栈如图5-5所示:图5-5Z-Stack协议栈用户利用Z-Stack实现一个简单的无线通信的一般步骤如下:1.组网:用户调用协议栈的组网函数接口、首先创建一个ZigBee网络,对于协调器来说,其调用监听函数接口,如果发现有中继器或者终端节点请求加入网络,则接受,并分配一个地址,用于后续通信使用,而终端节点或者中继器则调用发现网络接口,来发现ZigBee网络,一旦发现网络,立刻调用加入网络函数接口,来实现网络的组件和节点的加入;2.发送:当有数据需要发送时,用户可以调用发送数据接口,将相应的数据,地址端点信息封装在数据包里,协议栈会解析这些数据,并传送到正确的节点上。3.接收:当有数据需要接收时,接收节点调用接收函数接口,接收数据包,并将其中的数据解析出来,根据数据的含义,实现不同的功能,如采集温度、湿度、光照等。本系统所实现的功能比较简单,通过编写便携式硬件开关上的软件,通过按键来控制家中所有的智能电器,这里将便携开关作为发送端,将Zigbee继电器模块作为接收端,按下便携开关的打开按键,家用电器就会打开,按下便携开关的关闭按36 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计键,家用电器就会关闭。5.1.2.3便携开关的软件实现便携开关主要实现实时检测按键是否被按下,如果被按下,是打开开关被按下还是关闭开关被按下,并将开关按键值通过无线发送出去,其流程图如图5-6所示:图5-6ZigBee便携开关软件流程图其核心代码实现如图5-7所示:图5-7便携开关核心程序37 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现5.1.2.4ZigBee继电器软件实现ZigBee继电器主要用来接收便携开关发过来的开关信号,根据开关信号去实际控制电器的开关与关闭,其流程图如图5-8所示:图5-8ZigBee继电器软件流程图其核心代码如图5-9所示:图5-9ZigBee继电器核心程序38 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计5.2I/OoverBluetooth实现5.2.1Bluetooth介绍低功耗蓝牙(BluetoothLowEnergy,BLE)是一种新型的超低功耗无线传输技术,主要针对低成本、低复杂度的无线体域网和无线个域网设计,主要的卖点之一就是可以用纽扣电池给低功耗蓝牙芯片供电,结合微型传感器构建出各种嵌入式或者可穿戴式传感器与传感器网络应用。为了提供软硬件设计时的重用率,低功耗蓝牙在协议设计时尽可能继承了传统蓝牙的组件,但对协议栈进行了简化设计。此外,低功耗蓝牙还在物理层和链路层引入了一些重要的变化。首先,两种蓝牙都工作在2.4GHzISM频段,但低功耗蓝牙将频段重新划分为带宽为2MHz的40个信道(传统[29]蓝牙为79个信道),其中3个为广播信道,其余为数据信道。广播信道的引入加快了设备查找和接入操作,主设备和从设备在广播信道上分别执行发起和广播便能够实现快速连接,连接完成后两者角色无需强制转换,低功耗蓝牙完成连接的时间最快可以达到3ms,而传统蓝牙的连接建立过程通常需要数秒。其次,低功耗蓝牙虽然继承了传统蓝牙的跳频机制,但其在每个信道停留的时间更长,对定时器要求相对宽松,因此可以采用成本更低廉的元器件。再次,两类蓝牙技术均支持星型拓[30]扑,但是传统蓝牙最多允许一个主设备连接7个从设备,而低功耗蓝牙没有该限制,理论上支持无限个设备进行连接。最后,低功耗蓝牙的状态机更为简单,只有Standby,Advertising,initiating,scanning,connection5种状态,一方面简化了蓝牙协议栈的设计,提升了效率;另一方面设备在进入连接状态后即刻进入周期性睡眠模式,而非传统蓝牙则需要进入Park状态才能执行休眠,从而大大降低了功耗。协议是一系列通信标准的集合,通信双方必须共同遵守这一标准协议,才可以进行数据的正常发送和接收。而协议栈则是协议具体的实现方式,用通俗点的话来说就是用户和协议之间的一个接口,开发人员可以通过使用协议栈来间接地使用这个协议,从而实现无线数据的接收和发送。BLE协议栈架构如图5-10所示:39 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现图5-10BLE协议栈协议栈包括两个部分:控制器和主机。所有的配置文件和应用程序都建立在GAP和GATT这两层协议之上。PHY层:1Mbps自适应跳频GFSK,运行在2.4GHz频段;LL层:RF控制器,控制设备处于准备、广播、扫描、初始化、连接这5种状态的一种;HCI层:是中间接口层,应用程序通过调用HCI层的接口来控制外部的硬件;L2CAP层:它为上层提供数据封装功能,允许逻辑意义上的端到端数据通信;SM层:提供密钥分发和配对服务,实现数据交换和安全连接;GAP层:通过GAP层可以处理应用程序或配置文件,来完成发现和连接的相关功能;ATT层:导出特定的数据到其他设备;GATT层:定义了使用ATT的配置文件和服务框架的结构。BLE中所有的数据通信都必须要经过GATT层,TI公司的CC2540SOC可以做到单芯片实现低功耗蓝牙协议结构框图中的所有的组件和应用程序。40 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计5.2.2Bluetooth软件实现在Bluetooth协调器上开发程序,依然使用的是IAR集成开发环境,IAR开发的最大优势就是能够直接使用TI公司提供的BLE协议栈进行开发,只需要调用API接口函数就可以实现想要的功能。BLE协议栈选用BLE-CC254x-1.4.0版本。其中BTool文件夹为BLE设备PC端的使用工具,从上图可以看到Projects文件夹下有很多工程,其中有4个角色:SimpleBLEBroadcaster、SimpleBLECentral、SimpleBLEObserver、SimpleBLEPeripheral。他们都有各自的特点:Broadcaster广播员:非连接性的信号装置;Observer观察者:扫描得到,但不能够连接;Peripheral从机:可以被连接,在单个链路层连接中作为从机;Central主机:主动扫描蓝牙设备并发起连接请求,在链路层里作为主机角色。将Bluetooth协调器做为从机,向外广播信号,通知其它蓝牙设备说我在这里,谁需要就可以申请连接,所以这里基于协议栈自带的SimpleBLEPeripheral例程添加了相关程序,使得其和主机连接之后,能够通过蓝牙接受蓝牙主机发过来的指令,从而来控制电器的打开与关闭,其程序的流程图如图5-11所示:图5-11BLE从机软件流程图41 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现首先,会对CC2240进行硬件初始化,然后初始化调度系统OSAL,再初始化蓝牙协议栈,并将蓝牙继电器设定为从机角色,之后便会一直等待其他蓝牙设备的连接请求,一旦有从机连接请求,蓝牙继电器便与请求连接的蓝牙设备相连接,连接建立完成之后,便会接收和处理对端蓝牙设备发送过来的相关控制指令,通过解析控制指令,来控制家中智能电器的打开与关闭。基于TI提供的SimpleBLE例程,做一定的修改即可实现蓝牙的相关功能,首先在SimpleBLEPeripheral_Init初始化函数中添加对继电器IO口P1.3的初始化代码,这里讲继电器IO口设置为输出,同时将其输出值设为0,默认为关闭状态,核心代码如图5-12所示:图5-12继电器初始化代码从机如果收到主机的信息,即CHAR1值得改变,则执行改变连接继电器电路的IO口状态,核心代码如图5-13所示:图5-13蓝牙处理函数核心代码42 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计5.2.3Android客户端应用程序实现基于Android的智能家用电器控制软件设计主要包括用户界面UI模块设计、主程序模块设计、蓝牙通信模块设计、指令收发模块设计。Android的应用程序由一个或者多个组件组成,包括services、activities、broadcastreceivers、Intent、contentprovides等,每个组件在应用程序中都有不同的作用,利用这些组件就可以设计客户端应用程序了。主程序主要用到的Android组件是Activity和BluetoothService类,主要包含5个文件:MainActivity.java,DeviceListActivity.java,ShowDevice.java,BluetoothRecei-e.java和SendMessage.java。MainActivity.java是客户端的主Activity,包括UI界面的设计和操作的Activity类;DeviceListActivity.java为device相关界面实现的代码,主要用来获取和显示已配对完成的蓝牙继电器设备列表,同时也可以搜索可连接的但是未曾与本机配对过的蓝牙继电器设备列表,同时还提供连接蓝牙继电器设备按钮的钩子函数,用来发出配对请求与继电器设备相连接的功能;ShowDevice.java文件主要用来显示已配对设备的名称以及Mac地址;BluetoothReceive.java文件用来完成蓝牙设备间配对、建立、传递信息等行为;SendMessage.java文件主要用来建立和管理连接蓝牙的线程并发送实际的控制命令给对端设备。最新的Android4.0以上的版本支持低功耗蓝牙协议栈,利用BluetoothService类提供的接口,可以轻松的实现两个蓝牙设备之间的无线数据通信,实现蓝牙设备间的通信可以分为以下几个步骤:1.打开蓝牙设备;2.寻找附近的其他蓝牙设备;3.查询配对的蓝牙设备;4.与配对的蓝牙设备建立RFCOMM通信;5.在两个不同的蓝牙设备之间进行数据传输;6.管理多个蓝牙设备的连接。整个蓝牙客户端的软件流程图如图5-14所示:43 第五章智能家居系统无线传输软件设计基于Android的智能家居系统设计与实现图5-14Android客户端应用软件流程图系统提供了一个简洁化的界面,界面中仅包含两个按钮,一个关闭按钮和一个打开按钮,此外还有一个TEXT对话框,用来向对端发送蓝牙消息,蓝牙主机发送大写数字1给从机,告诉从机需要打开电器开关;蓝牙主机发送数字0给从机,告诉从机需要关闭电器开关,同时点击Android的设置按钮,还可以扫描周围的蓝牙设备,并显示它们的名称和MAC地址,整个界面如图5-15所示:44 基于Android的智能家居系统设计与实现第五章智能家居系统无线传输软件设计图5-15Android客户端应用程序界面5.3本章小结本章首先介绍了ZigBee协议的基本内容,紧接着介绍了基于ZigBee协议的I/OOverZigBee软件的实现,主要包括便携开关软件和I/O继电器软件的实现;其次,介绍了Bluetooth协议的基本内容,紧接着介绍了基于Bluetooth协议的I/OOverBluetooth软件的实现,包括Bluetooth从机软件的实现和基于Android的Bluetooth主机客户端软件实现。45 第六章系统测试基于Android的智能家居系统设计与实现第六章系统测试6.1PC通过USB控制家用电器将USB/IO继电器通过USB线连接PC,PC上打开USBRelay应用软件,选择com13,然后打开端口,关闭继电器,台灯不亮,效果如图6-1所示:图6-1PC软件控制台灯关闭然后通过PC应用软件打开USB/IO继电器,台灯点亮,效果如图6-2所示:图6-2PC软件控制台灯打开46 基于Android的智能家居系统设计与实现第六章系统测试6.2ZigBee便携开关控制家用电器将ZigBee/IO继电器通过USBAdapter供电,ZigBee便携开关通过移动电源供电,按下ZigBee便携开关上的关闭按键,台灯关闭,如图6-3所示:图6-3ZigBee便携开关关闭台灯按下ZigBee便携开关上的打开按键,台灯亮起,效果如图6-4所示:图6-4ZigBee便携开关开关台灯47 第六章系统测试基于Android的智能家居系统设计与实现6.2.1ZigBee通讯距离测试测试的环境选择空旷的场地和有建筑物遮挡的场地,具体测试结果如下表6-1所示:表6-1通讯距离测试结果测试序号12345测试环境空旷场地128119137124130建筑物遮挡场地109113104120110由以上的测试结果可以得出,ZigBee通讯距离是可以维持在100米以上,当有建筑物遮挡的时候,通讯距离有减短的趋势,但不会有非常大的影响。6.2.2ZigBee通讯误码率测试在同一距离测试100次,收集正确信号的传输信息的次数,具体测试结果如下表6-2所示:表6-2误码率测试结果测试距离5075100125150测试环境空旷场地1001001009580建筑物遮挡场地100100988350由以上的测试结果可以得出,ZigBee通讯距离是可以维持在100米内,当有建筑物遮挡的时候,距离达到150米时,误码率达到了50%,几乎失效。6.3Android手机软开关控制家用电器通过USBAdapter给Bluetooth/IO继电器供电,通过Android手机客户端连接蓝牙继电器,连接上的效果如图6-5所示:48 基于Android的智能家居系统设计与实现第六章系统测试图6-5Android手机连接蓝牙继电器通过BluetoothCommication软件,发送0给蓝牙继电器,电灯熄灭,效果如图6-6所示:图6-6android控制台灯熄灭通过BluetoothCommication软件,发送1给蓝牙继电器,电灯亮起,效果如图6-7所示:49 第六章系统测试基于Android的智能家居系统设计与实现图6-7android控制台灯点亮6.3.1Bluetooth通讯距离测试测试的环境选择一般的三室两厅的房屋,具体测试结果如下表6-3所示:表6-3通讯距离测试结果测试序号12345测试距离(米)121110.51311.5由以上的测试结果可以得出,Bluetooth通讯距离是可以维持在10米以上,符合我们日常生活家居的需求。6.3.2Bluetooth通讯误码率测试在同一距离测试100次,收集正确信号的传输信息的次数,具体测试结果如下表6-4所示:50 基于Android的智能家居系统设计与实现第六章系统测试表6-4误码率测试结果测试距离25101215测试环境三室两厅的房屋100100987540由以上的测试结果可以得出,Bluetooth通讯距离是可以维持在10米内,当距离达到15米时,误码率达到了60%,几乎失效。6.4本章小结本章在实验室里构建了基于Android的智能家居系统平台,并分别对通过PC、ZigBee便携开关和Android手机来控制电灯点亮与熄灭进行了实验,详细介绍了各个实验的内容、步骤、方法、过程及结果,测试了ZigBee和Bluetooth的通讯距离和误码率。实验结果表明本文设计的智能家居系统达到了预期的效果和要求。51 第七章总结与展望基于Android的智能家居系统设计与实现第七章总结与展望7.1全文小结随着Android手机的全面普及,将Android手机引入智能家居系统中,将会得到很好的推广,并容易被普通老百姓所接受。本文在研究了国内外智能家居控制系统的发展现状之后,提出了一套有线和无线相融合的方式,设计并研制了适应国内现状和未来发展要求,同时制作和运行成本均较低的一种智能家居控制系统,总结本文工作主要有一下几点:1)本文介绍了智能家居系统的总体框架以及相关硬件和软件设计时应当遵循的准则。在对智能家居系统研究的基础之上,给出了整个智能家居控制系统的整体设计方案及各个模块具体实现方案,主要包括IO继电器模块、ZigBee便携式开关模块、蓝牙IO继电器模块,PCUSB软件设计框架、Android手机软件设计框架;2)本文创造性的设计了一块PCB板,通过更换SOC的方式实现了ZigBee继电器模块和蓝牙继电器模块的兼容,大大地降低了硬件成本;3)本文同时对USBDevice协议栈进行了深入的挖掘,实现了一套轻量型的USBDevice协议栈;4)本文基于目前流行的Android系统,设计了一套蓝牙通信软件,通过蓝牙的方式来无线的控制电器的打开与关闭,较轻易的被市场所接受;5)本文最后对整个Android智能家居控制系统进行了搭建与测试,均达到了预期的效果与要求。7.2将来的工作设想本文的研究,倾注了大量的心血,圆满完成了课题所规定的研究内容,达到了预期的指标要求,但仍然有许多后继工作要做,主要包括以下几个方面:1)本文的通信方式繁多,涉及到USB、ZigBee、蓝牙,每种方式都有独有的软件,能否将软件统一,一个软件就可以控制这三种类型的硬件;52 基于Android的智能家居系统设计与实现第七章总结与展望2)目前Wifi也是比较流行的通信方式,能否将wifi通信方式引进到智能家居系统中来;3)目前系统只局限于本地化的管理与控制,能否将电器的状态主动内反馈给主人,一旦电器有异常,能够将异常状态反馈给主人,主人在通过相应的控制软件来远程解决异常,这些都是本文所设计的智能家居控制系统所发展和扩展的方向。53 参考文献基于Android的智能家居系统设计与实现参考文献[1]刘志斌.X-10协议及其在智能家居系统中的应用[J].微电子学与计算机,2004,21(3):5-8,24.[2]杨佳.看互联网巨头如何撬开智能家居的嘴[J].A&S:安全&自动化,2014,3(4):34-37.[3]黎连业,郭存芳,向东明.无线网络及其应用技术[M].北京:清华大学出版社,2004,45-56.[4]高静,王福豹,段渭军.面向智能家居的嵌入式传感器网关的研究与设计[J].现代电子技术,2011,4[5]TingHan,BingjunHan,etal.CoexistenceStudyforWiFiandZigBeeunderSmartHomeScenarios.20123rdIEEEInternationalConferenceonNetworkInfrastructureandDigitalContent.[6]靳岩,姚尚朗.Android开发入门与实践[M].北京:人民邮电出版社2009.7.50~70[7]WeiWang,GuangyuHe,JunliWan.ResearchonZigbeewirelesscommunicationtechnology.2011[8]Mao-ChengHuang,Jyun-CiangHuang,Jing-CyunYou,Gwo-JiaJong.TheWirelessSensorNetworkforHome-CareSystemUsingZigBee.IntelligentInformationHidingandMultimediaSignalProcessing.2007[9]徐静,徐杰.嵌入式系统在监控系统应用领域科技现状及发展趋势[J].神州,2014(06):53-55.[10]LanZhang,HenryLeung.SmartAlarmClock-ANetworkedHomeAppliancewithBluetoothConnection..2004[11]张俊.SMS短消息传输的远端控制技术及其实现[J].仪器仪表学报,2003:29-31.[12]钟雄林.基于ARM9的无线智能家居控制系统[J].信息科技,2010,9[13]PannaR,ThesrumlukR,ChantrapornchaiC.DevelopmentofEnergySavingSmartHomePrototype[J].InternationalJournalofSmartHome,2013,7(1):1-6.[14]谢自美.电子线路设计[M].武汉:华中科技大学出版社,2000:122-128.[15]杨浩杰,韩秀玲.一种智能家居监控系统的设计[J].微型电脑应用,2011,4[16]Dae-ManHan,Jae-HyunLim.DesignandimplementationofsmarthomeenergymanagementsystemsbasedonZigbee.IEEETransactionsonConsumerElectronics.201054 基于Android的智能家居系统设计与实现参考文献[17]李鸿.几种智能家居网络控制系统方案的分析与比较[J].现代电子技术.2010(03)[18]段维宁,赵鑫,吴峥.智能家居现状与发展浅析以及对电信运营商的启示[J].信息通信技术,2014,3(3):1-5.[19]毛飞,蒋挺,周正,方勇.基于蓝牙的无线传感器网络[J].系统工程与电子技术,2005,27(6):5-8,1138-1145[20]蔡型,张思全.短距离无线通信技术综述[J].现代电子技术,2004,70(3):65-76.[21]祝忠方,基于Android的移动互联终端的设计和实现[D].北方工业大学2014[22]岳祝强,基于无线传感器网络的智能家居终端的研究[D].河北工程大学2011[23]刘海亮,曹家年,郭逢丽.嵌入式智能家居安防系统的研究与实现[J].应用科技.2011(02)[24]GilK,Shuang-HuaYang,FangYao,xinLu.AZigBee-basedhomeautomationsystem[J].ConsumerElectronics.2009[25]黄磊.基于IEEE802.15.4/ZigBee技术的智能家居方案研究[D].武汉科技大学2009[26]I.A.Zualkernan,A.R.Al-Ali,M.A.Jabbar,I.Zabalawi,A.Wasfy.InfoPods:Zigbee-basedremoteinformationmonitoringdevicesforsmart-homes.IEEETransactionsonConsumerElectronics.2009[27]Shahin,Farahani.ZigBeeWirelessNetworksandTransceivers.LibraryofCongressCataloging-in-PublicationData.[28]高雨明.浅析ZigBee无线传输技术及其应用[J].信息与电脑,2010,8[29]BehmannF,SemiconductorF.Impactofwireless(Wi-Fi,WiMAX)on3Gandnextgeneration—Aninitialassessment.JournalofWomensHealth.2005[30]廖惜春.蓝牙技术在智能家居系统中的应用[J].电测与仪表.2004(11)55 致谢基于Android的智能家居系统设计与实现致谢首先,衷心的感谢我的导师黄鹤老师,在整个毕业设计中黄老师教会了我做事的方法,并让我养成了一些很好的习惯,最重要的是让我明白了一些道理,让我学会如何去思考问题,如何去学渔而非得鱼。同时要感谢马老师,在我遇到问题的时候,马老师总是能耐心的给我讲解,并提供一些帮助和思路,给了我信心,引导我进入开发产品的大门,使我的毕业设计得以顺利的完成。其次,感谢研究生学长。感谢他们对我的帮助。特别要感谢黄得铭学长,在论文的准备和课题的整个实施过程中对我给予了很大的帮助,并提供了很多好的建议,并让我从中学到了很多东西。再者,感谢我同组的陈迪亮同学,与他们的交流令人愉快而获益匪浅,使我在许多方面都受到启发。最后,感谢我的父母家人及朋友在我的学习、工作和生活上给我的精神和物质上的巨大支持和帮助。56 苏州大学mm硕壬专业潍駐HH|I*一■■"‘早护立片。I.*<-..".',>..、...、/。'垃助一气,,证必;.iV二占-■—,-?、<',■,一?,-,,二-":'…J—:异:。。韦,一--泌抑_-一^…—一命-。苏州大学研究生部统--印制,古苗-飞

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭