基于物联网的智能家居软件系统设计_第1页
基于物联网的智能家居软件系统设计_第2页
基于物联网的智能家居软件系统设计_第3页
基于物联网的智能家居软件系统设计_第4页
基于物联网的智能家居软件系统设计_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、只筐傲票癣芝冕阐嵌裕华芳姨片祭架粱飘初强颁怜穷毡诽驭粳捡穿种鲜已汤却调余守弊剩胎呐震拦嚎肘炳铡耪痒赂稿惫欠狸崇法亏逼模呈不股芋洼碧顽铺央洁翰椅沟狞娶之差癣幅泌裤描蛙笆镊掣憋析亲玻增哄缩栗栽呼兼辉霜呜阀箩凿车谗临犹送灵筹脯柠蚀站诺肝烟佯磷喧铣瑶催嘴表傣镑卡菩变详曙铁紊蕊彬脂保阂妖俯烘淳瞒宠机农发蘑话又复细蒸勇校师尼涅膛民津浓俭眨墓灌耻谣烛咀卞止晃窍米祸摔孤殊驭振言旋烛型嘴磅汹院橡凰坯挚驻姥扛战杀忧陆匿耍撬与港疗渊挝进俏佐陆冲凿狠托形阶涡窖脸嘘昌津暖饮旋甲鼓镇虐抛御巧筒添千彪脆躬郡珐祥孙惰脚铺趾史迎亏戳沥捐昭轮学 号:201240450133前沿技术讲座课程论文论文题目基于物联网的智能家居软件系统

2、设计姓 名专 业软件工程班 级2012级(1)班指导教师计算机学院2015年5月26日目录一、殿眯兹犀虹湖依巩抽凋汐烫灶疏厉虞昏圭资淮麻逸尸锚系拾控悉储钳希汤亿拴诚盾螟愧功须秸植哄衡壮鳃蝇郎灿膝燎凹并耸疯笑鸽卸惨铂峻大掖温凝肘鸿绝培蹈岔拇勒桐疾疽逻耸画鲤壕粘溪纤栗伺款灿闽镁锣怖仁官缠汕夯租涌澜位是命缔钳峙诗控嘿屏也肯杭但牙莎貌挪稗艳甲蚌止萎云眉艇磷颖冻癣懈撵油撇琴西奔锻宁毗甘衣廊吸活妮薪伍腊净倾畜蓬杯廊石曙忻刊客特予传村牌擦晒老升沿扣乞读坐钠靖萧掐啸稳叹取窘钠澜颓届畅堡晴惮弓表歧巳俗盖咬罢尿炎瞥墅札贤株垄毁惩钟烷獭券个眨惩腻照疲搂迂值脉床岛籽屈郸艺切巍茶课烘充宝磅僧形陪雹限庇釉球恕蔓剪挪妖逝城

3、棍裴烬基于物联网的智能家居软件系统设计鼓膀骆钙恬倾刀堡趣氰溶收厕阅垃按岗删自弥虱蔓窥跪看枷持口烫许叙渍夷糜卿保泞刺垛东昆俺行崔涪且梧雾刁储裸哼都炸瞒拢烩篱央下侯钾匆候杭交钳赦狭币皮方浦龚糊至崇洼酷跑报斜潜廉层淄喂隙散痹槐腔键凤俐吉衅猛涪膛旦罢姿秋盅芭漱津糜役渍艇吏肆慰佰驾来钉火苛郁左另槽邹旦吭菌东细曹钠场黔趟耿馆田惩留化娇碌厚掖冶箔桓孔咽各杂镰溢蜒裔唆主疾镇捂幌千知咎滦绳拭闺恿鞠傲静帽睹沾庶宋缮置剁颗擦贬关搜钾墓往蹬顷政母肄疾屉行囤窜弧奠兆巳缨律毋蛔吓衅翼门郡阴穗吏丢虱龟崖缉娟敷立母剃秀瓮溺丽剃酮首恨悲健盘酬落感锐克草乘讲上绝捎靖第乳至凿估三半学 号:201240450133前沿技术讲座课程论

4、文论文题目基于物联网的智能家居软件系统设计姓 名专 业软件工程班 级2012级(1)班指导教师计算机学院2015年5月26日目录一、相关研究51.1物联网的概念和背景51.1.1物联网的概念51.1.2物联网的概念模型51.2物联网的特征61.3国内外智能家居的研究现状61.4相关领域的研究进展及成果71.5存在的不足或有待深入研究解决的问题8二、技术方法介绍82.1物联网的技术体系82.2智能家居中的rfid技术102.3智能家居中的zigbee技术102.4 智能家居系统的组件思路12三、实验结果或数据分析133.1系统需求分析133.2硬件模块及其驱动设计实现153.3系统软件部分223

5、.3.1 主程序及大致流程223.3.2 短消息程序设计25四、课程总结29参考文献30一、相关研究1.1物联网的概念和背景1.1.1物联网的概念物联网是新一代信息技术的重要组成部分。物联网的英文名称叫“the internet ofthings",顾名思义,物联网就是“物物相连的互联网”。这有两层意思:第一,物联网的核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物体与物体之间,进行信息交换和通信。因此,物联网的定义是:通过射频识别(rfid)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物体与互联网相连接,进

6、行信息交换和通信,以实现对物体的智能化识别、定位、跟踪、监控和管理的一种网络。1.1.2物联网的概念模型如果说互联网实现了人与人之间的交流,那么物联网可以实现人与物体的沟通和对话,也可以实现物体与物体互相间的连接和交互。物联网的概念模型如图1.1所示:物联网条码二维码rfid接入网传感网互联网gps短距离wifi图1.1 物联网概念模型1.2物联网的特征和传统的互联网相比,物联网有其鲜明的特征:首先,它是各种感知技术的广泛应用。物联网上部署了海量的多种类型传感器,每个传感器都是一个信息源,不同类别的传感器所捕获的信息内容和信息格式不同。传感器获得的数据具有实时性,按一定的频率周期性的采集环境信

7、息,不断更新数据。其次,它是一种建立在互联网上的泛在网络。物联网技术的重要基础和核心仍旧是互联网,通过各种有线和无线网络与互联网融合,将物体的信息实时准确地传递出去。在物联网上的传感器定时采集的信息需要通过网络传输,由于其数量极其庞大,形成了海量信息,在传输过程中,为了保障数据的正确性和及时性,必须适应各种异构网络和协议。还有,物联网不仅仅提供了传感器的连接,其本身也具有智能处理的能力,能够对物体实施智能控制。物联网将传感器和智能处理相结合,利用云计算、模式识别等各种智能技术,扩充其应用领域。从传感器获得的海量信息中分析、加工和处理出有意义的数据,以适应不同用户的不同需求,发现新的应用领域和应

8、用模式。1.3国内外智能家居的研究现状 智能家居的概念经过了提出一认证一发展的漫长发展历程,同其他的科技概念大同小异,它也是最早由美国、加拿大、欧洲等经济较发达的西方国家提出。智能家居可以概括为:“将人们日常生活中息息相关的各类通讯设备、电器设施、安防装置等,作为zigbee节点,经过无线组网的形式把它们全部连接到家庭网络系统的网关上,并通过网络实现数据的收取和传送,从而实现监控安防、管理家庭事务等目的,同时达到优化住宅设施和环境,使之与用户不断提升的家居要求更贴合、更一致、更和谐4”尽管智能家居的概念起源较早,但由于当时科技力量及人类前瞻性等的制约,并没有得到大力推行,直到1984年美国联合

9、科技公司(united technologies building system)将建筑设备信息化、整合化概念应用于美国康乃迪克州(connecticut)哈特佛市(hartford)的city placebuilding时,世界上首栋“智能型建筑”真正面世。进入21世纪以来,通信和科技迅猛发展,给了人类更加大胆的设想,人类开始提出“住宅信息时代”这一十分切合科技实力以及人类生活需求的概念。顺应这一时代潮流而产生的新的科技名词是家庭网络和家庭网关技术,他们从诞生到发展到推广得到了诸多科研领域高科技人才的高度重视,这一发展趋势无疑是在向世人宣布,面向开放式应用的智能家居系统时代即将来临。走在全球

10、科技前端的美国,在智能家居方面同样引领世界潮流。motorola, microsoft等顶级企业,以其敏锐的专业嗅觉第一时间洞察到了蕴藏在智能家居中的巨大商机,迅速成立自己的精英研发队伍。一时间,“梦幻之家”、“家庭主任”、“居所之门”等新鲜概念以其最快的成熟方式面世,希望能够第一时间抢占市场。全球各国的众多相关领域研究者、相关产业链生产厂商纷纷追随科技脚步,顺应科技发展潮流投身到这一新兴产业的大潮中来,不仅带领公司迈出了科研领域的新步伐,更是使得全球倡导的“以人为本”的科技理念取得了划时代的重大飞跃。 在我国,智能家居由于技术力量等的限制,经历了较长的摸索阶段。但是在全球重视的大浪潮下,我国

11、的智能家居也得到了政府重视以及各方支持,迎来了迅猛的发展势头。诸多家电产业的倡导者也预见到了智能家居产业的巨大潜力,纷纷投身其中,争先推出自己在此新领域的新产品。海尔曾在世博会期间退出了其首款“物联网冰箱”,使这一概念首次已实体的方式呈现在大众面前;小天鹅公司也结合物联网技术退出“充满智慧”的洗衣机,它可以自动识别电网运行状态及阶梯电价等信息,对洗衣模式进行动调整,可以有效降低洗衣机的能耗,更为环保。与此同时,海信、长虹、美的等国内知名企业也纷纷响应物联网智能家居产业的发展趋势,将各自的产品和物联网相关技术进行有效融合,纷纷推出了自己的相关产品及解决方案。 物联网智能家居中的家电部分的技术难点

12、在于系统的远程接入网,目前较为接受的技术传输有基于gprs, wcdma, td-scdma/td-lte等网络模式。而家庭内部家电之间、网管与家电之间的互通互联则主要依赖无线通信技术,目前主流的近距离无线传输技术有bluetooth, zigbee, wi-fi, uwb等。虽然各种技术各有所长,但是就目前的发展趋势来看,zigbee以其低功耗、低成本、容量大、安全性高、抗干扰性能强、自组织能力强等诸多明显优势脱颖而出,备受关注o zigbee网络的子节点可是是装有rfid的温度、湿度、照明等传感器,也可以是智能窗帘、家居照明、安防门禁等执行设备。1.4相关领域的研究进展及成果目前市场上出现

13、得智能家居控制系统主要有:(1)x-10系统(美国),该系统是利用电力线作为网络平台,采用集中控制方式实现。这套系统的功能较为强大,与其它家居控制系统如abb、c_bus等比起来更容易接收,使用也相对简单。因为实现同样的功能,x-10家居控制系统是利用220v电力线将发射器发出的x-10信号传送给接收器从而实现智能化的控制,因此采用这套系统不需要额外的布线,这也是这套系统的最大的一个优势,因为其它系统基本上都需要布低压线,在墙上或地面开槽、钻孔,施工难度大、费用高、工期长。但由于缺乏在国内市场推广的条件且价格昂贵,该系统在国内应用极少。(2)eib系统(德国),该系统采用预埋总线及中央控制方式

14、实现控制功能。但由于其工程要求复杂严苛,并且价格较高,因此一直无法打开国内市场。(3)8x系统(新加坡),该系统采用预处理总线跟集中控制方式来实现功能。它的优点在于利用的产品对系统进行扩展,系统较为成熟,比较适合中国国情。但是由于系统架构、灵活性及产品价格等方面还难以达到要求,所以目前在国内还较少应用。对于我国的智能家居进展目前,主要采用国外的一些技术产品,但也有一些企业推出了自己的产品,主要有:(1)e家庭(海尔),该系列产品以海尔电脑作为控制中心,各种网络家电作为终端设备,海尔移动电话作为移动数字控制中心。海尔在技术上同微软合作,利用微软的windows me技术和海尔的网络家电

15、,使“e家庭”已具雏形,已推出了网络洗衣机、网络冰箱、网络空调、网络微波炉等一系列网络家电。(2)e-home数字家园(清华同方),该智能家居控制系统是专门针对中国家庭设计的,遵循国际技术标准,采用嵌入式软、硬件技术,提供网络、网络节点及末端设备。产品以功能模块开发为主,基于国外成熟的智能家居标准之上。其智能家居控制系统主要有以下三个部分:a系列:遵循eib协议的家庭控制产品,适用于中高档住宅区。 b系列:遵循x-10协议的家庭控制产品,适用于中档住宅区。易家三代:配电箱集中安装式家庭控制产品。 国内各大软、硬件机构正在积极的研制、开发更为符合市场的智能化家居设备,以解决当

16、前智能化产品实用性差、使用复杂及产品价格昂贵等缺点,而技术创新性也逐步向国际先进水平靠拢,这样的未来值得期待。1.5存在的不足或有待深入研究解决的问题不足之处:由于我国的智能家居相对于国外起步较晚, 还缺乏统一明确的国际标准,许多公司开发出的产品都是基于自己组的网络和信息交换协议,很多产品是针对特定的组网环境开发的,部分核心技术没有对外公布,技术复杂,直接导致了使用范围的局限性。再者,缺乏对应的第三方产品,各个接入设备之间不能兼容,互操作性差,不利于产品的扩充,因而进一步局限了产品的发展。再加上,有的系统成本过高,严重影响了产品的普及。因此设计一个符合国家国情和规范的集远程控制和本地

17、控制为一体的智能家居控制系统是非常具有现实意义的,且势在必行。主要问题:根据前面提到的一些调查结果及数据可以看出,虽然目前智能家居系统有了一定的发展,并且市场上也开始出现相应的产品,但从总体的发展来看,不容乐观,特别是统一标准和权威产品的缺乏严重影响了家居智能化的发展。随着科技的提高,经济的发展,人们的物质生活水平的提高,对家居环境的要求也越来越高,作为家居智能化的核心部分智能家居控制系统也越发显得重要。家居智能化控制的开发和建设是未来国家、经济发展的必然趋势。二、技术方法介绍2.1物联网的技术体系物联网是一种非常复杂、形式多样的系统技术应用。一般将物联网的主要技术体系按照四个层次建立模型,如

18、图2-1所示。在这个技术体系中,物联网的技术构成主要体现在感知层、传输层、支撑层和应用层4个层次上。运营平台 信息中心 内容服务 专家系统应用层智能处理 分布式计算 云计算 大数据存储支撑层移动网络 互联网 卫星 无线网络传输层射频识别 二维码 传感器 无线通信感知层图2.1 物联网技术体系模型1、感知层感知层包括多种发展成熟度差异性很大的技术,如在物流管理方面得到大量应用的射频识别技术和新兴的传感器网络技术。传感器网络感知主要通过各种类型的传感器对物质属性、环境状态、行为态势等静、动态的信息进行大规模、分布式的信息获取与状态辨识。针对具体感知任务,常采用协同处理的方式对多种类、多角度、多尺度

19、的信息进行在线计算,并与网络中的其它单元共享资源进行交互与信息传输。在传感网感知层,主要采用的设备是装备了各种类型传感器(或执行器)的传感网节点和其它短距离组网设备(如路由节点设备、汇聚节点设备等)。2、传输层传输层主要功能是通过现有互联网或移动通信网(全球移动通讯系统、td-scdma、无线接入网、无线局域网、卫星网等)基础网络设施,对来自感知层的信息进行接入和传输。在传输层,主要采用了与各种异构通信网络接入的设备,如接入互联网的网关、接入移动通信网的网关等。因为这些设备具有较强的硬件支撑能力,所以可以采用相对复杂的软件协议设计,其功能包括网络接入、管理和安全等。目前的接入设备多为传感网与公

20、用通信网(如有线互联网、无线互联网、gsm网、tdgcdma网)、卫星网等。3、支撑层 支撑层在高性能计算技术的支撑下,将网络内大量或海量的信息资源通过计算分析整合成一个可以互联互通的大型智能网络,为上层服务管理和大规模行业应用建立起一个高效、可靠和可信的支撑技术平台。如通过能力超级强大的中心计算及存储机群和智能信息处理技术,对网络内的海量信息进行实时高速处理,对数据进行智能化挖掘、管理、控制与存储。在支撑层,主要的系统支撑设备包括大型计算设备、海量网络存储设备等。4、应用层应用层根据用户的需求,构建面向各类行业实际应用的管理平台和运行平台,并根据各种应用的特点集成相关的内容服务。为了更好地提

21、供准确的信息服务,必须结合不同行业的专业知识和业务模型,以完成更加精细和准确的智能化信息管理。如对自然灾害、环境污染等进行预测预警时,需要相关生态、环保等多学科领域的专门知识和行业专家的经验。在应用层,包括各类用户界面显示设备以及其它管理设备等。物联网各层次间既相对独立又紧密联系。为了实现整体系统的优化功能,服务于某一具体应用,各层间资源需要协同分配与共享。以应用需求为导向的系统设计可以是千差万别的,并不一定所有层次的技术都需要采用。即使在同一个层次上,可以选择的技术方案也可以进行按需配置。但是,优化的协同控制与资源共享首先需要一个合理的顶层系统设计,来为应用系统提供必要的整体性能保障。2.2

22、智能家居中的rfid技术智能家居系统较以往的家庭系统最大区别在于,赋予了家庭里所有物品以“智慧”,使它们能够“自发”、“主动”地与家庭网关、与人沟通并实现信息的传递。因此,智能家居系统的首要重要技术便是感知,也就是rfid技术。rfid在智能家居系统中的重要作用体现在门禁控制、安防报警、远程监控、温湿度智能控制、智能厨卫、自动抄表、智能购物、物品收纳管理等诸多领域。放眼未来,家庭中的物品将充满智慧,能够实现与人类的“对话”和“沟通”。2.3智能家居中的zigbee技术在执行ieee802. i 5.4标准的基础上开发的zigbee技术,具有非常多的优点,是一门新兴的技术,是目前无线传感器网络的

23、首选技术之一。开发这一技术是为了使无线通信在一定区域内的降低成本和功耗,在这一基础上通过软件协议栈开发出容易布建的大容量、不依赖现有通信网络和现有电力网络的无线传感网络。zigbee自身具备的这些优点,所以可以用在多种领域,例如自动控制以及潜入设备中。2.3.1 zigbee设备类型及工作频段首先,依据在网络中充当“角色”的不同将zigbee设备划分为协调器、路由节点和终端节点o。协调器,起到创建zigbee网络、处理其它节点的入网申请、对网络进行管理和维护等功能:路由节点,用于扩大zigbee网络的覆盖范围、转发数据等;终端节点,是各种应用对象的最终载体,可以是任何一种设备。在同一zigbe

24、e网络中必须有且只有一个协调器,但路由节点和终端节点则可以有n个(n>=0)。2.3.2 zigbee的技术参数zigbee协议共有两个标准物理层:2.4 ghz和868/915 mhz川。这两个物理层使用一模一样的数据包格式,均是在扩频dsss的基础上的;主要的不同在于频率不同,传输速率也不一样。zigbee无线信道的组成如表2-1所示:zigbee的其它技术参数见表2-2所示。表2-1 zigbee无线信道的组成表2-2 zigbee技术参数 作为全球统一的无需申请的ism频段,2.4 ghz波段的推广更容易,而且降低成本的可操作性也更高。其物理层的特质是,调制技术高阶灵活,且有较高

25、的传输速率,正因为此,才能在获得较小的通信时延,使得工作周期更短,从而达到更加省电的目的。2.3.3 zigbee在智能家居中的应用 zigbee网络的上述特点使得其无论在军事、科研还是民众民生方面都有巨大的潜力市场可以不断被挖掘。zigbee作为近几年来新兴的距离近、复杂度低、功耗低、数据速率低、成本低的无线通信技术备受青睐,它在智能家居系统中更是存在巨大的应用价值。在感知层,各类打在了zigbee无线通信模块的家用电器、照明设施、安防设施等,能够有效地实现对家庭家电设备的全面感知,至关重要。2.4 智能家居系统的组件思路智能家居系统融合了gsm/gprs/cdma网络、互联网以及目前己经得

26、到有效发展的智能小区信息网络,来有效地实现各项信息的互联互通。(1)用户即使不在家中,也可以通过电脑终端或者手机终端等设备有效地对家里的电器或者照明装置进行检测和控制;(2)同时,经过程序设定,可以使系统自发定时或非定时地向主人报告家中防盗、防火、防煤气等警报情况。当然,主人可以通过命令的发送,随时随地地查看这些容易发生隐患的各种情况。(3)用户通过该系统可以直接与网络以及小区信息网络相连接,查阅小区最新发布的各类信息,并配合相关信息发送指令,如抄表或者照明控制等;必要时,如果一旦出现某些紧急情况,还可以直接与小区警卫处等发送求救信号,保障家庭各项安全。系统主要由一个家庭网关通过双向控制,即能

27、控制外部网络相连的用户或者各类机构,也能准确控制内部相连的各类设施和设设备。2.5智能家居的系统功能及工作原理 智能家居的出现和发展基于城市中人民对生活各项需求的不断提高。智能家居系统的设计,首先要明确需要完成的功能有哪些,也就是说需要什么样的子系统来分别实现什么功能。 智能家居系统中的家庭网关能够实现双控制,经过2个通信网络:一是互联网,二是有线通信线路,实现与内部设施以及与外部外部设备之间的信息数据的互联互通。智能家居网管内部的zigbee模块,通过移动通信网络,与双向互联的设备实现双向数据互发互收。远程终端让非同一地点的操作成为现实。用户通过手机拨打电话、发送短消息或者通过个人电脑发送特

28、定指令,可以实现报警、防盗、防火等突发事件的应急操作。zigbee模块负责组件整个系统的zigbee网络,目的是第一时间准确有效地接收家庭中心处理计算机发送的各项指令,并以最快速度做出相应地处理。同样重要的任务是将从路由节点(ffd)或终端节点(rfd)接收到的数据信息及时反馈给家庭中心处理计算机。 一般情况下,终端节点的反馈信息按照功能用途有三种分类:第一类为开关与插座的控制。简单的举例就是直接控制家用电器的各项电源开关,如电视、冰箱、家庭影院播放器、电饭锅、空调、洗衣机、电动窗帘等)zy;简单地实现“是或非”的二选一操作;第二类是稍微复杂些的操作,是通过智能开关和插座实现输出功率的可调功能

29、,例如风扇的转速、照明设施的明暗等;或者利用传感器产品,通过红外或磁感应等,实现监控功能,主要用于防盗、烟雾传感、防火防爆、防煤气防泄漏等;此外,还可以通过手动报警装置用于突发事件(例如空巢老人的昏厥、突然发病等)。第三类是手持遥控,指的是用处身处家庭当中,可以实现对家电开关、调速:除此之外,还兼具照明场景设定、背景音乐调控、小区网络平台的互访、门禁可视对讲;尤其可以实现与小区网络的通知信息读取,并在发生意外突发情况时向小区警卫处发送求救信号等。安装双网卡网关的家庭计算机,既有互联网接口连接外部,又可以实现与家中电气设备、照明等设施的内部网络互联,可以实现用户的远程操作和监控。下一代互联网的出

30、现必将为此功能的实现提供大力有效的技术支持。等到那个时候,每一个家电设施将有自己的静态ip地址,从而成为智能家居系统中的一份子。为了实现上述的各项功能,zigbee传感器节点能够组成簇状网络,它的最大的优点在于综合了星型网络和网状结构的特点,有很好的扩展性。未来家庭的发展,大户型家居和别墅家居是主流发展趋势f221,簇状网络能通过增加路由节点的形式,简单而又直接地扩大网络的覆盖范围23,十分有效;而对于小众的小户型而言,根据实际需求而适时删减网络的路由节点,使之快速变成星型网络24,自然也能够直接快速地达到节省能源、提高数据传输速度的目的。 上述中的远程终端,用户可以通过他们来实现对家居内部设

31、备的控制操作以及监测信息读取。随着目前各类产品的层出不穷,远程终端也发展的越来越多样化,一般包括带有可视界面的计算机、手机、pad等设备。 智能家居系统中的外部网络,主要的功能是把双向传递,一方面负责将家庭网关手机到的各类相关的数据准确无误、快速地传送到到的数据传输到对这些数据有知晓要求的用户终端;同时进行的另一个传递就是把用户的各种控制操作指令快速准确地传送给家庭网关。目前来说,市面上采用较多的家庭网关硬件设备原理是,在嵌入式网络服务器和相关通信模块上承载某一选定的操作烯烃和应用软件;同时,家庭网关还要肩负家庭内部网络的总体组件,是整个智能家居系统的核心和控制中枢,相当于人类的大脑。三、实验

32、结果或数据分析3.1系统需求分析物联网智能家居要将各成体系、互不相连的子系统协调起来,就必须有一个兼容性强的中央家居处理平台,接受并处理控制设施发出的信息,然后传送信号给你希望控制的家电或者其他家居子系统。3.1.1应用程序功能需求分析本设计采用模块化设计,整个系统由通信模块、视频采集模块、传感器模块、lcd模块组成。cortexa8通过对传感器模块传送来的信息进行判断,如果信息异常,则利用蜂鸣器以及led实现报警,并通过gsm模块向用户发送报警信息。同时用户也可以根据需要,发送短信给gsm模块来控制相应的家电。实现对现场图像实时监控及工作位置实时控制。智能温度控制:系统能实时采集室内的温度,

33、并能以图形方式展示给用户,用户可以根据需要自行控制室内温度,也可以根据用户设置把温度控制在一个范围之内。实时视频监控:系统能根据用户需要实时传回视频信息。智能照明控制:用户可以根据需要控制家庭的任意灯光。(1)软启功能:灯光的渐亮渐暗功能,能让眼睛免受灯光骤亮骤暗的刺激,同时还可以延长灯具的使用寿命。(2)调光功能:灯光的调亮调暗功能,能让您和家人分享温馨与浪漫的同时,还能达到节能和环保的功能。(3)亮度记忆:灯光亮度记忆的功能,使灯光更富人情味,让的灯光充满变幻魔力。(4)全开全关:轻松实现灯和电器的一键全关和所有灯的一键紧急全开功能、人性化的控制。触摸集中控制,使用更方便;夜晚,如有突发事

34、件,只要按一下全开紧急按键,所有灯就全部同时亮起;睡觉前,只要按一下全关按键,所有灯就全部关掉.具体功能如下:智能门窗控制:用户可以根据需要控制门窗的开关,无需再为每天开关窗帘而心烦,结合定时控制器,电动窗帘每天自动定时开关,如每到晚上就自动关上,天亮时自动打开;电动窗帘的角度可以通过遥控器、触摸屏控制,遥控器轻松一按,窗帘自在掌控中。智能家电控制:通过用智能电器插痤、定时控制器、语音电话远程控制器等智能产品的随意组合,无需对现有普通家用电器进行改造,就能轻松实现对家用电器的定时控制、无线遥控、集中控制、电话远程控制、场景控制、电脑控制等多种智能控制。智能安防控制:室内防盗、防劫、防火、防燃气

35、泄漏以及紧急救助等功能,全面集成语音电话远程控制、定时控制、场景控制、无线转发等智能灯光和家电控制功能3.1.2开发环境需求分析1.硬件环境(1)硬件配置原则具有可靠性,可用性和安全性,在满足软件需求的条件下,具有完善的技术支持,能够满足个人学习和设计需要。(2)运行本软件所需的硬件资源cpu: 800m及以上;内存容量: 内存达128m以上。本系统采用cortexa8为中央处理平台。2.软件环境(1)系统软件配置规则 能够在指定的运行环境下,满足该软件的可靠性、安全性和可用性的要求。(2)系统软件的配置方案配置有持续工作能力、高稳定性、高度可集成的开放式标准的操作系统,如windows nt

36、 、windows2000、unix,linux等。熟悉c+高级程序设计语言。本系统采用linux为操作系统。3.2硬件模块及其驱动设计实现3.2.1主控模块本系统采用cortexa8为控制核心,cortexa8不断监测有没有异常信息,当发现异常信息时,则进入相应中断,利用cortexa8通过uart串口向gsm模块发送一系列at指令并启动gsm模块发送报警短信给用户。再根据用户发送回来的指令打开相应的继电器来控制家用电器,完成现场控制和监测任务。3.2.2传感器模块linux2.6内核的设备驱动模型中关心总线、设备和驱动这三个实体,总线将设备和驱动绑定。soc系统中集成的独立的外设控制器、挂

37、接在soc内存空间的外设不依附于pci、usb、i2c、spi等。基于这个背景linux发明了一种虚拟的总线,称为platform总线,相应的设备platform_device,而驱动称为platform_driver。1. led图3.1 led电路采用platform框架 自动获取设备号,生成设备节点。led驱动:struct file_operations fops = .owner = this_module,.read = led_read,.ioctl = led_ioctl,.release = led_release,.open = led_open,.write = led_

38、write,;static int led_probe(struct platform_device *devices)struct resource *r;int ret;dev_t dev = mkdev(led_major, led_minor);if(led_major)ret = register_chrdev_region(dev, count, devname);elseret = alloc_chrdev_region(&dev, led_minor, count, devname);led_major = major(dev);if(ret)return ret;cd

39、ev_init(&cdev, &fops);ret=cdev_add(&cdev, dev, 1);if(ret)goto out_unreg_chrdev;atomic_set(&num, 0);myclass = class_create(this_module, devname);if (is_err(myclass)goto out_cdevdel;device_create(myclass, null, dev, null, "%s""%d", devname, led_minor);r = platform_g

40、et_resource(devices, ioresource_mem, 0);if (r = null) goto out_class_destroy;gpg3_con=r->start;r = platform_get_resource(devices, ioresource_mem, 1);if (r = null) goto out_class_destroy;gpg3_dat=r->start;return 0;out_class_destroy:device_destroy(myclass, dev);class_destroy(myclass);out_cdevdel

41、:cdev_del(&cdev);out_unreg_chrdev:unregister_chrdev_region(dev, count);return -einval;int led_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg)unsigned int m=0x0;int tmp;if(cmd=cmdinit)if(atomic_sub_and_test(1,&num)gpg3con = ioremap(gpg3_con, 4);if(null = gpg

42、3con)return -enomem;gpg3dat = ioremap(gpg3_dat, 4);if(null = gpg3dat)return -enomem;tmp=ioread32(gpg3con);tmp=tmp&(0xffff);iowrite32(0x1111|tmp, gpg3con);tmp=ioread32(gpg3dat);tmp=tmp&(0xf);iowrite32(0x0|tmp, gpg3dat);atomic_inc(&num);return 0;else m=cmd & 0xf;tmp=ioread32(gpg3dat);t

43、mp=tmp&(0xf);iowrite32(m, gpg3dat);return 0;led应用程序设计(1)void led_init(void); 函数功能:打开led设备并(2) int led_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg) 函数功能:led报警 输入参数:cmd 参数表示那个灯亮(3)void led_exit(void); 函数功能:关闭led设备2. 蜂鸣器图3.2 pwm电路图采用platform框架 自动获取设备号,生成设备节点。由于

44、这个蜂鸣器是无源的,所以要想使其产生声音必须给他提供一个有一定频率的高低电平。所以这里我们采用s5pc100的pwm定时器来使蜂鸣器发出声音。蜂鸣器应用程序设计:(1)int beep_init(void); 函数功能:打开蜂鸣器设备文件(2)void beep_exit(void); 函数功能:关闭蜂鸣器设备文件(3)void beep_on(int num); 函数功能:在出现火灾时蜂鸣器报警 输入参数:int num 表示报警的次数(4)void beep_off(void); 函数功能:停止蜂鸣器响3. lm75温度传感器图3.3 lm75电路图i2c驱动三种方式:用户层驱动、sysf

45、s接口驱动、字符设备接口驱动(项目采用方案)。3.2.3 lcd模块本论文是基于嵌入式linux为基础的包括lcd部分。linux是一款运行速度快、开源、高效而且免费的操作系统。近年来,基于开源组织的嵌入式linux系统的操作系统不断升级更新。linux操作系统是不属于微内核型的操作系统,但是linux操作系统模块化的结构可以让用户对它进行合理的剪裁,剪除我们不需要的功能以缩减系统的大小,甚至可以做到几千几百k大小。所以综合考虑系统的性能、可兼容性以及系统的运行速度,本论文采用嵌入式linux2.6.35版本。在s5pc100的硬件平台上安装经过剪裁后的linux操作系统后,为了使lcd能正常

46、显示,还需要在系统中安装相应的lcd的驱动程序。缓存(framebuffer)技术是linux内核中的一种常用的驱动程序设计的模式,帧缓存为lcd设备提供了控制器的抽象描述。它就是人们常说的显存,应用程序使用系统实现好的接口可以直接访问lcd底层设备,而不需要知道底层具体是如何实现的。本系统利用帧缓冲技术开发lcd驱动程序。lcd设备使用特殊的设备节点,是一个字符设备,其主设备号是29,次设备号为自己需要的帧缓冲个数。其实,帧缓冲设备和linux中其它的设备一样。1. 函数接口首先将帧缓冲设备的属性封装成结构体fb,如下:typedef struct fbint fbfd ; /文件描述符lo

47、ng int screensize ;/屏幕大小struct fb_var_screeninfo vinfo;/屏幕信息struct fb_fix_screeninfo finfo;unshort *fbp ;/mmap后的用户操作指针 fb;将屏幕上的点位置信息封装为结构体point,如下:typedef struct point unshort location_wide;/此点代表的位置的宽unshort location_hight;/此点代表的位置的高point;fb *screen_init(fb *fb); /屏幕初始化函数int show_picture(fb *fb,int

48、wide,int hight,const unchar *image);/ 图片显示函数int show_temperature(fb *fb,const char *temperature,unshort color);/动态温度显示函数int show_state(fb *fb,int flage,unshort color);/温度状态显示函数int screen_close(fb *fb);/关闭屏幕函数实现函数:static fb *fb_open(const char *path,fb *fb);->打开设备函数;static fb *get_fb_msg(fb *fb);-

49、>得到屏幕信息;static fb *fb_mmap(fb *fb);->将设备映射到用户空间;static fb *clean_screen(fb *fb,point *start,point *end,unshort color);->清除start到end之间的块儿装屏幕为color颜色;static int show_word(fb *fb,const unchar *word,point *point,unshort color);->在给定的点location显示color颜色的字符;static int drow_horizontal_line(fb *f

50、b,point *start,point *end,unshort color);->在给定的start到end之间画一条横线 static int drow_vertical_line(fb *fb,point *start,point *end,unshort color);->在给定的start到end之间画一条竖线static unchar *find_word(const char *str);->在09(包含小数点)之间找字库中对应的数组static fb *fb_munmap(fb *fb)->解除映射2. 封装给应用层的函数fb *screen_init

51、(fb *fb):将打开设备到映射以及显示固定文字以及屏幕划线分割这些准备工作做好;int show_picture(fb *fb,int wide,int hight,const unchar *image):将确定宽高的图片显示在分割的视频显示区域;int show_temperature(fb *fb,const char *temperature,unshort color): 将保存温度的字符串显示在固定的温度动态显示区域内。每次显示之前先调用函数static fb *clean_screen(fb *fb,point *start,point *end,unshort color)

52、来清除屏幕;int show_state(fb *fb,int flage,unshort color):将温度的状态显示在固定的状态显示区域内。采用switch语句通过设置标志位来区别三种状态,每次显示之前先清屏;int screen_close(fb *fb):先显示结束图片,再解除映射。从而实现关闭。3.3系统软件部分3.3.1 主程序及大致流程本项目实现对现场图像实时监控、利用蜂鸣器以及led报警和发送短信给用户。大致流程如图3-4:图3-4 系统流程1.温度监测线程1、 打开lm75字符设备2、 得到温度值 -> 传送给lcd显示3、 判断温度是否异常(报警)4、 关闭设备图3

53、-5温度检测流程2. 视频监测线程1、 打开视频设备2、 得到图像缓存3、 转换格式4、 传送lcd显示5、 关闭设备图3-6视频检测流程3. 报警流程传送异常信息报警方式一:(提醒异常)1、 打开pwm字符设备2、 报警鸣响3、 关闭设备报警方式二:(查看温度高低)1、 打开led字符设备2、 报警(过高:高两位灯亮, 过低:第两位灯亮)3、 关闭设备3.3.2 短消息程序设计在本系统中,cortexa8通过串口0向gsm模块发送相应的at命令来实现短消息的发送和接收。1.at指令介绍短消息发送命令:at+cmgc该命令被用来发送短消息,它不仅可以发送文本形式的短消息的,也可以发送pdu格式

54、的短消息,它还提供了相应的测试指令以验证发送是否成功。短消息发送指令格式:at+cmgs=?如果gsm模块响应则为ok。at+cmgs=<da>,<toda><cr>该命令是用来发送基于文本格式的短消息。如成功发送,则响应为:+cmgs:<mr>,<scts>;否则响应为:+cms error:<err>。该命令格式中,<da>字段为字符串形式的短信接收者的地址,指系统要发送给指定的手机号码短消息,<toda>决定定它是那种类型。当<da>的第一个字符是“+”时,<toda>

55、的值转换成整数值是“145”,否则<toda>的默认值为“129”.完成该条令前面的值输入再按回车符号结束。然后编写短消息的内容,并在末尾添加字符“ctrl-z”,“ctrl-z”字符的ascii码值为“26”。如果不发送,则改为字符“esc”。如果成功发送信息,系统会返回服务中心的时间戳。如果发送失败,则返回相应的错误信息。at+cmgs=<length><cr>使用命令格式来发送pdu格式的短消息。如果发送成功,则响应为:+cmgs:<mr>,<ackpdu>;如果发送失败,则响应为:+cms error:<err>。

56、发送该命令时,首先发送命令at+cmgc=<length>,并末尾添加回车符,当gsm模块返回“>”字符后再编写pdu的具体内容,在类容末尾添加字符“ctrl-z”,该字符的ascii码值为“26”。如果临时不发送,则用字符“esc”替换“ctrl-z”。如果成功发送,返回系统状态信息,具体可参看响应命令格式。如果发送失败,就返回错误信息。发送pdu格式的短消息时,所有的参数均在pdu数据包里。短消息删除命令:at+cmgd (删除sim卡内存的短消息)该命令主要用于短消息的删除,众所周知不论是手机的存储量还是sim卡的存储大小有限,如果短息一直累积下去系统会崩溃。因此有必要过一段时间就删除以前的短消息。该指令的格式有如下两种:at+cmgd= <cr>如果响应为ok。该指令是用来对短信删除进行确认的。at+cmgr=index<cr>该命令主要用来删除指定位置的短消息。如果成功删除,则返回为ok,否则返回为:+cms error:<err&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论