摘 要:本文讨论了基于windows ce.net 5.0嵌入式操作系统,以使用intel xscale270为cpu的arm10嵌入式实验箱为硬件基础,以visual studio 2005和delphi为软件开发平台的智能家居系统的设计与实现。通过详细的系统设计过程,开发了相应的软件程序,包括嵌入式操作系统windows ce 5.0的定制、应用程序的界面设计、程序开发和单片机系统的底层编程。本设计融合了嵌入式系统、通讯、单片机、软件开发等学科的知识。系统测试结果表明,该系统设计基本满足要求,并有一定的功能扩展空间。
关键词:智能家居,嵌入式系统,windows ce,visual c++,delphi
1 绪论
目前,科学技术发展迅速,借助飞速发展的网络和信息技术,人们可以足不出户地纵览全球。为了适应信息化的需求,科研机构将智能化的理念引入小区管理,并进一步引入家庭,从而产生了智能家居的概念。将手机通信和以太网通信技术引入智能家居的设计,恰好利用了现有的良好的通信条件,使在外的业主能及时了解家中的安全,提高业主的安全感,而且通过手机实时控制家电,提高了业主生活的舒适度。
本文提出了基于嵌入式系统arm10的智能控制平台的设计,功能包括了短信控制家电,传感器探测非正常环境并且通过手机短信告知业主,以及以太网实时视频监控等功能。
2 系统设计方案
2.1 硬件总体设计框图
根据上文的功能需要,设计出由arm10为控制核心,单片机控制的家电控制模块和传感器报警模块,并且包含gsm通信模块的智能家居系统,硬件结构框图如图2-1所示。wWW.133229.COm
2.2 控制核心选择
智能家居控制系统采用如图2-2所示的xsbase270作为开发平台,该平台基于intel®高性能的pxa270处理器,支持windows ce和linux等嵌入式操作系统,是针对教学和实验的多功能实验平台。
pxa270处理器的最高主频可达520mhz,且该处理器被加入了wireless mxx技术,大大的提高了多媒体处理能力,而且加入了intel speedstep动态电源管理技术,在保证cpu性能的前提下,最大限度的降低设备功耗[1]。
xsbase270配置32m flash rom,64m sdram,并配备了触摸屏、以太网、usb、串口、cf/mmc、pcmcia等接口。满足了智能家居系统控制中心的硬件要求。
2.3家电控制板
家电控制板采用at89c51为控制核心。扩展板的元件布局如图2-3所示,其上有四盏led分别模拟四种家电,三个按钮模拟三种传感器。其中四盏led分别连接单片机的p1.0、p1.1、p1.2、p1.3;三个按钮分别连接p2.0、p2.1、p2.2。
2.3.1 串行端口电路
家电控制板采用串口与xsbase270实验箱进行通信,其采用了经典的兼容rs-232标准的max232芯片作为串口的电平转换芯片。电路的连接如图2-4所示:
如上图所示,家电扩展板采用的是常用的db9头作为串口接口,其针脚定义图如图2-5所示:
其中2脚rxd为接收引脚,3脚txd为发送引脚,gnd为信号地引脚。一般情况下普通串口只接这几个引脚;特殊的串口,如蓝牙串口除接上述的三个脚之外,还接了dsr引脚和cts引脚,是因为蓝牙串口的数据流输出采用这两个脚的信号控制;而其他引脚是跟modem相关的。在智能家居系统中,家电控制板接普通串口,gsm模块接蓝牙串口。
rs-232信号相对于信号地而言,在正负电平之间摆动。发送数据时,发送端输出的正电平在+5v到+15v之间,负电平在-5v和-15v之间。无数据传输时,线上为ttl电平。接收器典型的工作电平在+3v~+12v与-3v~-12v。由于发送电平和接收电平的差仅为2~3v左右,所以其共模抑制能力差,加上双绞线的分布电容,信号传输距离最大为15m,最高速率为20kb/s[2]。
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.3.2 家电控制电路
家用电器控制的接口电路如图2-7 所示,k1~k4 为继电器,分别控制四路家电的闭合和断开,q1~q4 为继电器线圈电流驱动,电路由单片机的p1口进行控制,dd1~dd4 发光二极管用于显示某路控制电路的工作情况,主要为了调试电路而设置。
2.3.3 传感器接口电路
如图2-8 所示,在传感器没有报警信号时,光电耦合芯片处于截止状态,与之相接的单片机端口为低电平;当传感器有报警,传感器输出高电平,此时光电耦合芯片导通,与之相接的单片机端口为高电平,由单片机对报警信号进行采集并做出相应处理。
2.4 gsm通信模块
gsm通信部分采用如图2-9所示的西门子mc35 gsm/gprs无线模块作为通信工具。它支持egsm900和gsm1800双频,支持数字、语音、短消息和传真,使用at指令控制发送短消息。它采用9v直流电源供电,通过rs-232串行端口与xsbase270试验箱连接进行通信。
2.5 视频监控模块
视频采集模块采用使用中星微(vimicro)公司的zc0301p芯片的摄像头, zc0301p芯片可支持usb 1.1接口,硬件最高支持vga分辨率(640×480)。在vga模式下可达到15帧/秒速率,在cif(352×288)和 sif(320×240)模式下可达到30帧/秒速率。它通过usb接口连接到xsbase270试验箱。
2.6总体软件设计方案
根据智能家居的硬件设计方案,设计出软件的总体设计方案如图2-11所示:
其中:、
(1)家电控制系统和gsm网络通信各自独占一个rs-232串口。家电控制系统接xsbase270的红外串口,gsm模块接蓝牙串口。如图2-12所示。
(2)实时视频监控通过usb摄像头捕捉图像,图像数据通过以太网发送到pc客户端进行图像还原。
(3)以太网通信基于tcp/ip协议,测试环境为局域网,若投入到因特网的应用,则需要在服务端、客户端所在的局域网连接到因特网的网关——即路由器上,要进行端口映射,才可以进行网络的连接。
智能家居系统的软件基于windows ce 5.0嵌入式操作系统。windows ce被设计成一种分层结构,从下而上一共分为了硬件层、oem层、操作系统层和应用层共四个层[3]。这种层次的结构将硬件和软件,操作系统和应用软件隔离开,以便于实现系统的移植。智能家居的软件设计主要是集中在应用层。
3 操作系统的定制
windows ce 5.0嵌入式操作系统的定制依靠platform builder5.0完成。platform builder是微软公司设计的用于嵌入式操作平台定制与驱动程序的开发的工具。推出它的目的之一就是让用户可以更好的将嵌入式操作系统移植到特定的目标平台上。
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所示。