基于WindowsCE的智能家居模拟系统61.docx
《基于WindowsCE的智能家居模拟系统61.docx》由会员分享,可在线阅读,更多相关《基于WindowsCE的智能家居模拟系统61.docx(61页珍藏版)》请在三一办公上搜索。
1、2010年广东省电子设计竞赛智能家居方案书题目:智能家居模拟系统Simulating System of Intelligent Home姓 名: 刘永鑫,王文雄,江泽良 学院: 华南农业大学 工程学院 指导老师: 俞龙 日期: 2010-9-11 目 录摘 要41.系统方案设计51.1.项目背景与需求分析51.2.系统概述51.3.系统功能与指标51.4.方案比较与选择61.4.1.处理器比较61.4.2.硬件系统通信方案比较61.4.3.操作系统比较71.4.4.Windwos CE平台软件开发语言比较71.4.5.Windwos CE平台Web服务方案比较71.5.系统架构82.系统实现
2、原理92.1.基于Windows CE嵌入式Web服务器(用户接口层)91.4.6.服务器软件概览91.4.7.主控模块101.4.8.Web服务模块131.4.9.短信查询与控制服务151.4.10.状态监视服务172.2.命令数据交换器(软交换层)182.2.1.命令数据交换器软件流程图说明192.2.2.命令数据交换器硬件电路说明192.2.3.协议帧1说明212.2.4.协议帧2说明232.2.5.RS485总线网设计方案252.3.执行机构实现原理(命令执行层)272.3.1.软件流程272.3.2.硬件电路283.系统测试313.1.本地用户接口测试313.2.Web服务测试333
3、.2.1.PC端测试333.2.2.手机远程访问Web服务器测试363.3.手机短信控制测试373.4.系统实际工作效果图394.特色405.原创性声明406.附录416.1附录1 Abstract416.2附录2 查新报告426.3附录3 参考文献436.4附录4 关键程序源代码446.4.1.软交换层与命令执行层软件代码446.4.2.用户接口层程序代码526.5附录5 系统实物图596.6附录6 TQ2440开发平台60摘 要智能家居,目的是综合运用各种技术手段使人类家居中各组成部分变得智能化和人性化。基于这种理念,本智能家居模拟系统运用Web服务技术,为用户提供一套对家居各种构件,如灯
4、光、水龙头、空调、等进行远程实时闭环监控的报告的解决方案。用户可以通过电脑、移动终端等任何可访Web服务的设备,登录本系统指定的Web站点,通过网页操作方式对家居中上述构件进行操作和状态查询,在此基础上,本系统还提供了手机短息查询与控制功能。具有较强的灵活性和较高的可靠性。关键词: 智能家居 状态监控 Web服务 手机短信控制1. 系统方案设计1.1. 项目背景与需求分析随着现代家居中电气化程度的逐渐提高,对家中的各种电器进行统一调控,尤其是远程控制,逐渐成为一种迫切的需求。也成为了智能家居技术研究的一大热点。综观目前市场上形形色色的家居电器智能化控制管理装置,均极少能为用户提供网页管理与控制
5、的接口。本文智能家居模拟系统(简称智能家居,下同)在这方面给出了一个实用性较强的方案,并扩展了短信功能,介绍如下:1.2. 系统概述本智能家居模拟系统是一个住房的微缩模型。在设计本模型时,硬件上,只抽象出一般家居内所具有的基本设施,这些基本设施包括灯光照明、空调制冷、水阀、窗帘和门禁5个部分,并在本系统中对其进行模型化,进而控制。本模拟系统硬件上使用高亮度发光二极管模拟实际家居中的照明灯具,用制冷片和温度传感器模拟生活中的空调,用电磁阀模拟生活中的浴缸水龙头等。软件上,则按照一个完整的智能家居控制系统的需求来进行系统规划与编码实现。1.3. 系统功能与指标本模拟系统旨在为用户提供一个对家居住房
6、里基本设施的工作状态进行监测和控制的平台,如图 1所示,包括以下几个部分:(1) 提供两种远程控制方式和一个图形化的本地控制界面,远程控制方式有: Web网页的方式和用手机短信方式。(2) 模拟操作包括:灯光、空调设备、水阀、窗帘的状态检测和控制,即查询状态和控制开关,空调温度设定,门状态检测(开或关)和门禁的开关,以及获取当前住房大厅图像;(3) 系统实时检测每个基本设施状态,并实时在Web网页上反馈给用户;(4) 若开启门禁,或当门被非法打开时,则系统会自行报警并用手机短信的方式告知用户。图 1 整体功能架构1.4. 方案比较与选择1.4.1. 处理器比较为实现本系统的功能,硬件处理器有以
7、下选择:STM32处理器与ARM9处理器。以下分别概述。STM32处理器:代表型号为:stm32f103rbt6,此处理器基于ARM7TDMI架构,片上资源丰富,具有体积小、功耗低的特点,且容易使用(可视作32位单片机使用)。ARM9处理器:代表型号为:s3c2440,此处理器基于ARM920T架构,具有丰富的扩展接口,由于具有MMU(内存管理单元),因此可以运行复杂的操作系统。虽然STM32处理器完全具备实现本系统的硬件资源,但由于其运行主频受到限制(最高只有72MHz),同时运行多个任务时,会出现性能瓶颈。因而采用ARM9处理器加操作系统的方案,本次使用的开发板为广州天嵌科技有限公司提供的
8、TQ2440开发平台(见附录6)。1.4.2. 硬件系统通信方案比较现代家居中往往会存在较多的电器设备,因此会在一定的频率范围内产生噪声干扰,因此选择通信方案时应考虑所组成通信系统的抗干扰能力。常用的通信方案有:RS-232方案 RS-485方案、RS-422方案。以下分点阐述。RS-232方案,本方案出现最早,主要用于计算机与微处理器以及微处理器之间的短距离通信,通信码率较低(1200bps115200bps)。抗干扰性能与防静电能力都较差,RS-422 方案:本方案采用两对差分传输线分别进行收发、因此具有较好的抗干扰能力与较远的通信距离,已成为工业通信标准之一。RS-485 方案:采用一对
9、差分线加上方向控制电路实现半双工通信,通信稳定、可靠,且具有很强的抗干扰以及抗静电的能力。支持多机通信,已成为应用最广泛的工业通信标准。通过上述比较,可知,不可采用抗干扰能力弱的RS-232通信,而RS-422通信需要较多线材(5条线)。因而使用RS-485通信方案1.4.3. 操作系统比较系统选择上,主流方案选择有二:嵌入式Linux方案或Windows CE方案,分述如下。嵌入式Linux:优点:完全开源,不需要授权,且有较多开源驱动或库函数可以调用。缺点:开发环境较差,只支持C语言开发。Windows CE:优点:完全开放(Windows CE 6.0已经实现完全开源),官方技术支持良好
10、,开发环境(Visual Studio、Platform Builder)界面友好且功能强大,支持多种开发语言,开发难度低。缺点:商用需要授权,部分驱动程序需要自行编写。在本次设计中,考虑到开发的便捷性,以及项目组成员对开发环境的熟悉程度。选择Windows CE作为系统平台。1.4.4. Windwos CE平台软件开发语言比较Windows CE下应用软件开发可以有以下两种选择:基于.Net Compact Framework托管代码(Managed Code)(以下简称.Net CF)的软件开发;基于C+本地代码(Native Code)的开发。以下分别阐述。基于.Net CF托管代码的
11、软件开发:.优点:Net CF是Windows平台下.Net Framework(以下简称.Net)的一个子集,由于它对常用的系统API进行了封装,并提供了简洁的调用接口,因此使用方便,且能够快速地开发出功能强大的应用软件,已成为Windows平台下软件开发的主流。代表语言为C#与VB.NET。由于基于.Net或.Net CF的应用程序不发布时不直接成汇编指令,直到执行前一刻才借助目标机器上的.Net或.Net CF服务程序翻译成本机指令。因此,程序可以在任何带有.Net 或 .Net CF服务程序的系统中运行,具有很强的跨平台特性。缺点:C#或VB.NET无法直接调用C或C+编写的程序;启动
12、时会消耗一定的系统资源;无法直接进行系统驱动开发。基于C+本地代码的开发:优点:在Windows CE平台下C+程序具有较高的运行效率与较低的资源占用率,且能调用到系统中所有的资源,也适合进行底层驱动开发,缺点:提供的接口函数声明大都较复杂,在做人机界面时灵活性较差;由于直接生成基于CPU的汇编指令,因此若CPU类型发生变化,即使系统相同,程序也必须重新编译。考虑到本项目存在用户接口以及人机界面开发的工作量远远大于驱动的情况,因此,软件主体选用C#语言开发,摄像头驱动则用C+编写,调试完成后并封装成动态链接库(DLL)。这样即可用C#调用。1.4.5. Windwos CE平台Web服务方案比
13、较在Windows CE上实现Web服务有以下两种方案:1、直接使用Windows CE系统内核自带的HTTPD组件实现Web服务。2、移植一套PC机中的HTTP协议到服务器端软件中。对于方案1,依赖Windows CE系统内核组件,因此存在对运行环境依赖性强的缺点,且HTTPD组件只能用C或C+开发,与本项目选定的开发语言(C#)不符。对于方案2,由于是服务器端软件自带HTTP协议,因此不依赖系统环境,并可以根据需求灵活控制;由于HTTP协议并不复杂,且有开源实现代码(如kayak, lightweight C# web server and framework),移植并不困难。因此选择本方
14、案。1.5. 系统架构模拟系统的总体架构如图 2所示,可以分为3个层次,分别如下:(1) 第一层:用户接口层,是基于Windwos CE的嵌入式Web服务器;(2) 第二层:软交换层,命令数据交换器;(3) 第三层:命令执行层,执行机构(包括摄像头和GPRS短息模块等部件)。图 2 系统总体架构图这3个层次的内容和作用如下表 1所示。表 1:系统个层次内容功能一览表名称内容作用用户接口层1、 基于S3C2440ARM芯片的嵌入式开发板;2、 WinCE嵌入式操作系统;3、 用C#编程语言自行设计的Web服务器软件。1、 当用户使用手机等移动终端或电脑终端访问该服务器是为用户提供基于Web网页的
15、查询、控制服务;2、 接收用户提交的操作命令,并将操作命令编码后交给软交换层,如果是用户需要获取当前房屋的图像时就直接控制摄像头模块;3、 将用户操作结果反馈给用户(刷新Web页面,在新Web页面中体现)。4、 实时监控房屋各个元素的状况,发生异常状况时(如小偷破门而入)发生报警并将信息通过短信方式告知用户。软交换层1、 具有2个异步串行口的单片机最小系统和RS485电路2、 自行设计的通信协议程序。1、 接收来自用户接口层的命令帧并进行解析;2、 根据解析命令帧的结果分别给各个控制机构发送专门的命令帧;3、 收集各个执行机构返回的结果并反馈给Web服务器;4、 当出现门被非法打开时向服务器报
16、警。命令执行层1、 监测和控制家居各种受控元素(灯光、空调、窗帘、水阀、门禁等)的硬件控制电路及其软件程序、执行机构;2、 摄像头模块和GPRS短信模块控制软件。1、 各个执行机构接收交换器发来的命令帧;2、 各个执行机构根据命令帧内容监控各个受控元素的状态;3、 把执行结果反馈给交换器;4、 需要特别说明:由于门禁要求有较高的实时性,并没有连接入RS485总线网,二是直接与交换器相连接。2. 系统实现原理需要说明的是,由于条件限制,对于某些硬件只能利用成品。例如基于S3C2440ARM芯片的嵌入式开发板,部分软件也只能是在原有基础上进行移植,例如系统中的HTTP协议就是从上位机中的HTTP协
17、议根据嵌入式WinCE平台的特点移植而来的。也就是嵌入式技术。本设计以系统层次分明为其特点,所以实现原理按照分层、分块地进行,介绍关键软、硬件模块的实现方法。着重阐述以下3个部分:(1) 基于Windows CE嵌入式Web服务器实现原理;(2) 命令数据交换器实现原理;(3) 一般执行机构实现原理。2.1. 基于Windows CE嵌入式Web服务器(用户接口层)1.4.6. 服务器软件概览图 3 服务器总体功能架构服务器功能架构见图 3,它是整个系统的用户接口与底层服务的核心。实现以下功能:为用户提供图形化的人机界面、与底层交换器通信、驱动CMOS摄像头、提供Web服务、实施状态监视、提供
18、短信查询与控制控制、检测门禁并报警,共6项功能。且6项功能会被同时开启。因此在软件设计上,须使用多线程的设计方法,以达到较快的响应速度与较好的扩展性。以下将详细参数软件中各个模块实现的功能与实现原理。1.4.7. 主控模块功能概述主控模块是本次设计中软件的核心,负责各个顶层服务模块之间的功能协调与控制,并为用户提供一个图形化的用户界面。实现原理主控模块架构见图 4图 4 主控模块架构图在实现用户界面上,C#开发语言的优势非常明显,并不需要编写代码,直接在开发环境中画出即可。由“服务器软件概览”中所述,本次需要使用多线程的设计方法。多线程的实现可以使用System.Threading.Threa
19、d.系统中的主控串口、GSM模块、摄像头这些资源都无法接受多线程并发控制或访问类型上属于独占性资源,因此,在软件设计时,将主控串口和摄像头分配给主控模块中的核心业务线程管理。若其他服务(例如:Web远程访问)需要调用独占性资源时必须先向主控模块提交申请,再由主控模块中的核心业务线程进行统一调配。摄像头驱动程序在本项目中则是通过移植SMDK2410 Windows CE BSP中的ov9650驱动程序,并进行封装得到。通用数据处理模块是一个全局性数据处理方法的封装。底层交换器与Windows CE进行通信时使用的是RS-232串口,因此,底层交换器通信模块实质上是一个经过派生的串口通信模块,继承
20、于System.IO.Ports.SerialPort.门禁报警服务,由于门禁报警信号是通过底层交换器通信模块传递,因此可以将此项服务集成到主控模块中,当出现门禁报警信号后,由核心业务线程调用短消息查询与控制服务向用户报警并记录。图 5 主控模块工作流程图1.4.8. Web服务模块功能概述Web服务模块作为系统远程控制接口的一部分,目的是让用户可以利用任何可以上网的计算机配合支持HTTP协议的浏览器(例如:Internet Explore)实现对家中情况的远程掌控。实现原理以下先对Web服务及其相关概念进行阐述广义上的Web服务是指一系列互联并可以通过互联网访问的超文本(Hypertext)
21、内容组成的系统。其中信息传输协议为超文本传输协议(Hypertext Transfer Protocol)简称HTTP协议。在进行多媒体信息传输时超文本则扩充为超媒体(Hypermedia)HTTP协议:是一种用于发布和组织超文本内容的网络协议,用于在服务器与客户端间进行请求与应答的协议。也是Web服务的最基本通信协议。可见,要实现Web服务,首先要实现HTTP协议。而HTTP协议位于互联网体系结构的应用层。由位于传输层的传输控制(TCP)协议提供通信保障。从传输层上看,基于HTTP协议的请求与应答本质上是基于TCP协议的数据通信过程。图 6 Web服务模块内部架构根据以上原理设计的Web服务



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 WindowsCE 智能家居 模拟 系统 61

链接地址:https://www.31ppt.com/p-1667755.html