智能家居系统的设计与实现ddwr.docx
《智能家居系统的设计与实现ddwr.docx》由会员分享,可在线阅读,更多相关《智能家居系统的设计与实现ddwr.docx(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、论文摘要:本文讨论了基于Windows CE.net 5.0嵌入式操作系统,以使用Intel XScale270为CPU的ARM10嵌入式实验箱为硬件基础,以Visual Studio 2005和Delphi为软件开发平台的智能家居系统的设计与实现。通过详细的系统设计过程,开发了相应的软件程序,包括嵌入式操作系统Windows CE 5.0的定制、应用程序的界面设计、程序开发和单片机系统的底层编程。本设计融合了嵌入式系统、通讯、单片机、软件开发等学科的知识。系统测试结果表明,该系统设计基本满足要求,并有一定的功能扩展空间。 1 绪论目前,科学技术发展迅速,借助飞速发展的网络和信息技术,人们可以
2、足不出户地纵览全球。为了适应信息化的需求,科研机构将智能化的理念引入小区管理,并进一步引入家庭,从而产生了智能家居的概念。将手机通信和以太网通信技术引入智能家居的设计,恰好利用了现有的良好的通信条件,使在外的业主能及时了解家中的安全,提高业主的安全感,而且通过手机实时控制家电,提高了业主生活的舒适度。本文提出了基于嵌入式系统ARM10的智能控制平台的设计,功能包括了短信控制家电,传感器探测非正常环境并且通过手机短信告知业主,以及以太网实时视频监控等功能。2 系统设计方案2.1 硬件总体设计框图根据上文的功能需要,设计出由ARM10为控制核心,单片机控制的家电控制模块和传感器报警模块,并且包含G
3、SM通信模块的智能家居系统,硬件结构框图如图2-1所示。SHAPE * MERGEFORMAT 图2-1 硬件设计框图2.2 控制核心选择智能家居控制系统采用如图2-2所示的XSBase270作为开发平台,该平台基于Intel高性能的PXA270处理器,支持Windows CE和Linux等嵌入式操作系统,是针对教学和实验的多功能实验平台。PXA270处理器的最高主频可达520MHz,且该处理器被加入了Wireless MXX技术,大大的提高了多媒体处理能力,而且加入了Intel SpeedStep动态电源管理技术,在保证CPU性能的前提下,最大限度的降低设备功耗1。XSBase270配置32
4、M FLASH ROM,64M SDRAM,并配备了触摸屏、以太网、USB、串口、CF/MMC、PCMCIA等接口。满足了智能家居系统控制中心的硬件要求。图2-2XSBase270实验箱展开图2.3家电控制板家电控制板采用AT89C51为控制核心。扩展板的元件布局如图2-3所示,其上有四盏LED分别模拟四种家电,三个按钮模拟三种传感器。其中四盏LED分别连接单片机的P1.0、P1.1、P1.2、P1.3;三个按钮分别连接P2.0、P2.1、P2.2。图2-3家电控制模块2.3.1 串行端口电路家电控制板采用串口与XSBase270实验箱进行通信,其采用了经典的兼容RS-232标准的MAX232
5、芯片作为串口的电平转换芯片。电路的连接如图2-4所示:图2-4家电控制板串行接口电路如上图所示,家电扩展板采用的是常用的DB9头作为串口接口,其针脚定义图如图2-5所示:图2-5RS-232 DB9头针脚定义图其中2脚RxD为接收引脚,3脚TxD为发送引脚,GND为信号地引脚。一般情况下普通串口只接这几个引脚;特殊的串口,如蓝牙串口除接上述的三个脚之外,还接了DSR引脚和CTS引脚,是因为蓝牙串口的数据流输出采用这两个脚的信号控制;而其他引脚是跟MODEM相关的。在智能家居系统中,家电控制板接普通串口,GSM模块接蓝牙串口。RS-232信号相对于信号地而言,在正负电平之间摆动。发送数据时,发送
6、端输出的正电平在+5V到+15V之间,负电平在-5V和-15V之间。无数据传输时,线上为TTL电平。接收器典型的工作电平在+3V+12V与-3V-12V。由于发送电平和接收电平的差仅为23V左右,所以其共模抑制能力差,加上双绞线的分布电容,信号传输距离最大为15m,最高速率为20kb/s2。MAX232包含2个驱动器、2个接收器和一个电压发生器电路,提供TIA/EIA-232-F电平。该器件符合TIA/EIA-232-F标准,每一个接收器将TIA/EIA-232-F电平转换成5V TTL/CMOS电平。每一个发送器将TTL/CMOS电平转换成TIA/EIA-232-F电平。图2-6MAX232
7、引脚图2.3.2 家电控制电路图2-7 模拟家电控制电路家用电器控制的接口电路如图2-7 所示,K1K4 为继电器,分别控制四路家电的闭合和断开,Q1Q4 为继电器线圈电流驱动,电路由单片机的P1口进行控制,DD1DD4 发光二极管用于显示某路控制电路的工作情况,主要为了调试电路而设置。2.3.3 传感器接口电路图2-8 传感器接口电路图烟雾、煤气泄漏、红外等这些传感器的报警信号通过光电耦合接入单片机的P2 口,如图2-8 所示,在传感器没有报警信号时,光电耦合芯片处于截止状态,与之相接的单片机端口为低电平;当传感器有报警,传感器输出高电平,此时光电耦合芯片导通,与之相接的单片机端口为高电平,
8、由单片机对报警信号进行采集并做出相应处理。2-9所示的西门子MC35 GSM/GPRS无线模块作为通信工具。它支持EGSM900和GSM1800双频,支持数字、语音、短消息和传真,使用AT指令控制发送短消息。它采用9V直流电源供电,通过RS-232串行端口与XSBase270试验箱连接进行通信。 图2-9 西门子MC352.5 视频监控模块视频采集模块采用使用中星微(Vimicro)公司的ZC0301P芯片的摄像头, ZC0301P芯片可支持USB 1.1接口,硬件最高支持VGA分辨率(640480)。在VGA模式下可达到15帧/秒速率,在CIF(352288)和 SIF(320240)模式下
9、可达到30帧/秒速率。它通过USB接口连接到XSBase270试验箱。图2-10301P摄像头2.6总体软件设计方案根据智能家居的硬件设计方案,设计出软件的总体设计方案如图2-11所示:图2-11 软件设计框图其中:、(1)家电控制系统和GSM网络通信各自独占一个RS-232串口。家电控制系统接XSBase270的红外串口,GSM模块接蓝牙串口。如图2-12所示。(2)实时视频监控通过USB摄像头捕捉图像,图像数据通过以太网发送到PC客户端进行图像还原。(3)以太网通信基于TCP/IP协议,测试环境为局域网,若投入到因特网的应用,则需要在服务端、客户端所在的局域网连接到因特网的网关即路由器上,
10、要进行端口映射,才可以进行网络的连接。图2-12 红外串口与蓝牙串口智能家居系统的软件基于Windows CE 5.0嵌入式操作系统。Windows CE被设计成一种分层结构,从下而上一共分为了硬件层、OEM层、操作系统层和应用层共四个层3。这种层次的结构将硬件和软件,操作系统和应用软件隔离开,以便于实现系统的移植。智能家居的软件设计主要是集中在应用层。3 操作系统的定制Windows CE 5.0嵌入式操作系统的定制依靠Platform Builder5.0完成。Platform Builder是微软公司设计的用于嵌入式操作平台定制与驱动程序的开发的工具。推出它的目的之一就是让用户可以更好的
11、将嵌入式操作系统移植到特定的目标平台上。3.1 BSP的安装为了让Windows CE 5.0能在实验箱上运行起来,还必须安装XSBase270的板级支持包(BSP)。板级支持包是介于主板和操作系统中驱动程序之间的一层,一般认为它属于操作系统的一部分,主要是对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包。在PC上安装好Windows CE.net5.0和Platform Builder5.0后,打开实验箱附带光盘中的BSP文件夹,运行XSBase270_V010106.msi文件,安装XSBase270的BSP。如图3-1所示。图3-1 BSP安装程序文件安装好BSP后,进入
12、Platform Builder5.0中定制基于“EMDOOR SYSTEMS XSBASE270:ARMV4I”的因特网应用类型的系统镜像设计4。如图3-2所示。图3-2 定制系统时选择BSP种类3.2 添加平台特征和配置平台为了使系统在定制后能够满足基本的应用,并保证对某些设备的支持,就要向所设计的平台中添加必要的特征。(1)添加USB Active Sync()组件。只有添加此组件,才能使用PC的USB接口与Windows CE进行文件同步。这也是在应用软件调试过程中所必须的条件。 (Catalog-Core OS-Windows CE devices-Applications-End
13、User-ActiveSync-)(2)添加ChineseSimplified Font。安装中文简体字体后,才能正常显示中文。(Catalog-Core OS-Windows CE devices-International-Locale Specific Support-ChineseSimpified-Fonts)(3)添加文件系统支持。(Catalog - Core OS - Windows CE devices - and Data Store - Storage Manager - FAT )(4)添加分区管理(Catalog - Core OS - Windows CE devi
14、ces - and Data Store - Storage Manager -Partition Driver) (5)添加控制面板中的存储器管理组件(Catalog - Core OS - Windows CE devices - and Data Store - Storage Manager - Storage Manager Control Panel Applet)(6)添加基于软件的输入系统(软键盘等)(Catalog - Core OS - Windows CE devices - Shell and User Interface - User Interface - Soft
15、ware Input Panel - Software-based Input Panel (SIP) (Choose 1 or more) - SIP for Large Screens)(7)添加平台管理器(Platform Manager)(Catalog - Platform Manager - Platform Manager)(8)添加Usb ActiveSync(USB Function)(Catalog - Third Party - BSPs - Emdoor Systems XSBase270: ARMV4I - Device Drivers - USB Function-
16、USB Function Bus Drivers -PXA27x USB Function) 完成特性的添加后,设置平台的属性。在“Platform”菜单下单击“Setting”,在Configuration下拉菜单中选择“Emdoor Systems XSBase270:ARMV4I Release”项,选择Locale选项卡,进行系统地理位置和环境语言支持的设置。Locales列表中,为最下端的“中文(中国)”项打勾。在Default Language下拉菜单里选择“中文(中国)”为系统的默认语言。如图3-3所示。 图3-3 选择操作系统默认语言在Build Option列表中,只选择En
17、able Eboot Space in Memory(IMGEBOOT=1)和Write Run-time Image to Flash Memory(IMGFLASH=1)两项。如图3-4所示。图3-4 程序组建选项设置单击“Build OS”菜单下的“Sysgen”开始组建操作系统。如图3-5所示:图3-5 生成操作系统镜像3.3 红外串口与蓝牙串口的打开经测试,在默认配置下生成的系统镜像,只打开了位于XSBase270模块板上的全功能调试串口,而位于接口扩展板上的红外串口和蓝牙串口并没有被打开。为了能够与家电控制板和GSM模块连接,实现完整的智能家居系统的功能,必须将它们打开。(1)查找
18、中断号中断号的定义是在试验箱所提供的板级支持包中被配置的。打开C:WINCE500PlatformXSBase270Srcincbsp_cfg.h文件。可以看到调试串口和通信串口的中断号的定义,如图3-6所示。图3-6 BSP中的串口中断定义可以看到调试串口BFUART的中断号是28,转化为16进制为0x1c;通信串口SFUART中断号27,转换为16进制是0x1b。(2)修改注册表打开以下文件夹,其中“F:platform270”是在新建操作系统平台时所存储它的磁盘位置。F:Platform270RelDirXSBase270_ARMV4I_Release打开platform.reg注册表文
19、件,在此文件中包含了对一些硬件的初始化的代码。在“IF BSP_NOSERIAL!”与“END BSP_NOSERIAL!”两句代码之间,可以看到蓝牙串口的注册表初始化代码,下面只需要添加初始化红外串口的代码:;Open the IR Serial PortHKEY_LOCAL_MACHINEDriversBuiltInSerialIR Irq=dword:14 ; 20 IRQ_STUART SysIntr=dword:1b ; 27 SYSINTR_SFUART MemBase=dword:40700000 ; STUART Register MemLen=dword:40 DeviceA
20、rrayIndex=dword:82 ; STUART object Prefix=COM Index=dword:3 Order=dword:1 IClass=CC5195AC-BA49-48a0-BE17-DF6D1B0173DD ; Dll=ms2_serial.dllHKEY_LOCAL_MACHINEDriversBuiltInSerialIRUnimodem Tsp=Unimodem.dll DeviceType=dword:0 FriendlyName=IRSerial Cable on COM3: DevConfig=hex: 10,00, 00,00, 05,00,00,00
21、, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00修改好注册表代码以后,保存platform.reg文件。打开刚才建立的操作系统设计工程,选择Build OS菜单下的Make Run-Time Image命令,生成新的内核文件NK.bin。3.4 操作系统的生成与下载定制并组建Windows CE后,将会生成BootLoaderEBOOT.nb0文件和NK内核nk.bin,将它们烧写进入XSBase270实验箱。4 应用软件设计4.1 应用程序编写环境开发环境:Microsoft Visual Studio 2005开发语言:M
22、icrosoft Visual C+ 2005软件开发包:XSBase270 SDK智能家居系统的应用程序采用Visual Studio 2005进行开发。Visual Studio是微软公司开发的Windows平台上的应用程序开发环境。Visual Studio可以创建Windows 下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件5。Visual Studio 2005面向.net框架(2.0版本),同时可以开发跨平台的应用程序。图4-1 Visual Studio 20054.2 智能家居人机接口设计打开Visual Studio 20
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能家居 系统 设计 实现 ddwr
限制150内