随着科学技术的发展,频率合成器成为通信,雷达,电子侦察和对抗,精密测量仪器等的核心部件。现代电子技术的飞速发展对频率源提出了更高的要求。性能卓越的频率源均通过频率合成技术来实现。低相位噪声,高纯频谱和高速捷变使得频率合成器成为频率合成技术发展的主要趋势。 小数分频(FNPLL)频率合成器则是近年来出现的一种新技术,它与传统的整数分频频率合成器相比具有频率分辨率高、相位噪声低等优点。但是在实践中,国内目前的应用还比较少。本文设计的智能家居远程监控系统实现了家用电器等的智能化管理,对家庭环境的实时监视和自动报警功能。
1 智能家居系统的总体结构
智能家居集成是利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居生活有关的设备集成。由于智能家居采用的技术标准与协议的不同,大多数智能家居系统都采用综合布线方式,但少数系统可能并不采用综合布线技术,如电力载波,不论哪一种情况,都一定有对应的网络通信技术来完成所需的信号传输任务,因此网络通信技术是智能家居集成中关键的技术之一。安全防范技术是智能家居系统中必不可少的技术,在小区及户内可视对讲、家庭监控、家庭防盗报警、与家庭有关的小区一卡通等领域都有广泛应用。自动控制技术是智能家居系统中必不可少的技术,广泛应用在智能家居控制中心、家居设备自动控制模块中,对于家庭能源的科学管理、家庭设备的日程管理都有十分重要的作用。音视频技术是实现家庭环境舒适性、艺术性的重要技术,体现在音视频集中分配、背景音乐、家庭影院等方面。
智能家居远程监控系统的核心部分是一个嵌入式Web服务器,系统集有线和无线Web服务器于一体,用户可以利用办公室的PC登录家中的Web服务器,在通过用户名和密码验证后,便可以查看并控制家用电器。系统结构框图如图1所示。
2 系统硬件设计
本系统硬件电路框图如图2所示,主要由ARM9控制器S3C2440,FLASH,SDRAM,电源及复位模块,触摸屏显示模块,USB摄像头,以太网接口模块,GPRS模块,家电控制,安防控制等组成。
2.1 ARM9控制器S3C2440
ARM9控制器S3C2440是基于ARM920T内核的16/32位RISC处理器,具有功能强大、性价比高、功耗低的优点。
2.2 家电控制
本系统针对家电设备的智能化程度不同,提出了不同的解决方案。对于电灯开关等需要手工控制的传统家庭设备。系统添加了辅助控制器(继电器等),用户可通过以太网或手机短信的方式控制处理器GPIOn的状态,间接控制家庭设备;对于电视、空调等可通过红外线控制的电器设备,系统采用带有以太网接口的通用控制器统一遥控;对于自身具备网络接入功能,支持远程平台控制的智能电器设备,直接接入家庭以太网即可。
2.3 安防控制
系统使用的所有探测器(烟感传感器、煤气传感器、门磁传感器等)和报警设备,都是通过GPIO与控制器相连来完成报警输入输出的功能。然而这些输入输出信号都有很强的电流,对系统的干扰较大,因此采用TLP521光电隔离芯片和继电器对报警输入输出信号分别进行隔离,从而把外部信号对系统的影响降到最低。
2.4 GPRS模块
通用分组无线服务技术(General Packet Radio Service)的简称,它是GSM移动电话用户可用的一种移动数据业务。GPRS可说是GSM的延续。GPRS和以往连续在频道传输的方式不同,是以封包(Packet)式来传输,因此使用者所负担的费用是以其传输资料单位计算,并非使用其整个频道,理论上较为便宜。GPRS的传输速率可提升至56甚至114Kbps
GPRS模块采用西门子公司的MC35iGPRS MODEM.当S3C2440控制器收到报警信号时,它通过UART控制MC35i,将预存的相应报警信息通过GPRS网络以短信的形式发送到用户的手机上,同时向小区物业中心发出报警,使用户和物业部门及时发现险情,并采取有效的处理措施减少经济损失。
2.5 以太网接口模块
以太网(Ethernet)指的是由Xerox公司创建并由Xerox、Intel和DEC公司联合开发的基带局域网规范,是当今现有局域网采用的最通用的通信协议标准。以太网络使用CSMA/CD(载波监听多路访问及冲突检测)技术,并以10M/S的速率运行在多种类型的电缆上。以太网与IEEE802·3系列标准相类似
由于S3C2440本身没有集成以太网控制模块,所以需要一个与之相匹配的DM9000控制芯片来实现以太网扩展接口。在DM9000和RJ45接口之间通过网络隔离变压器HR601627来连接,连接图如图3所示,网络隔离变压器起信号传输、高电压隔离等作用,以保护系统的安全。
2.6 USB摄像头
USB ,是英文Universal Serial BUS(通用串行总线)的缩写,而其中文简称为"通串线,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。
本系统所用的USB摄像头是中星微公司的ZC2301P.摄像头ZC301P采集的视频信号经压缩后形成的视频数据流会通过内部总线传送到嵌入式Web服务器上,用户可通过登陆网络直接观看Web服务器上的视频图像,实时监控家中的情况。
3 系统软件设计
本系统控制中心是ARM9控制器,其软件设计包括系统软件(嵌入式操作系统、硬件设备驱动程序、嵌入式Web服务器)设计和应用软件(网页设计及CGI应用程序)设计。
3.1 嵌入式操作系统在S3C2440上移植过程
(1)从网站上下载Linux的内核源码linux-2.6.31.tar.bz2和交叉编译器arm920t-eabi.tgz,这个交叉编译器是4.1.2版本的,支持EABI,可以提高编译的效率。
(2)在宿主机上将内核源码解压得到linux-2.6.31,将交叉编译器解压到指定目录。
(3)修改Makefile文件及相关硬件文件。由于内核的编译是根据Makefile文件的指示进行的,Makefile文件来组织内核的各模块之间的关系,记录了各个模块之间的相互联系和依赖关系。所以,修改Linux2.6.31根目录下的Maldile文件来指定平台和交叉编译器。
(4)通过命令# make menuconfig来配置内核。配置内核时,让它支持EABI编译。
(5)在linux-2.6.31根目录下执行命令# make zImage来编译内核,将生成的内核镜像文件zImage通过相应的固化软件固化到系统相应的存储器中,完成linux-2.6.31内核在ARM微处理器上的移植。
3.2 驱动程序的设计
控制器需要多个设备驱动程序。嵌入式Linux系统中设备驱动程序有一个标准的框架,可以根据硬件结构来填写框架中的函数。主要的函数包括 open(),read(),write(),ioctl(),release(),module_init()和module_exit()等。为了减小内核的大小,把编写好的驱动程序编译成模块。编写Makefile、Kconfig文件,分别执行make menuconfig命令选择驱动程序的加载方式,利用makemodules命令生成目标文件,最后利用insmod命令调用 initial_module函数将编译好的模块调入内存即可。
3.3 Web服务器Boa移植
Boa是一个嵌入式Web服务器,能够生成动态的页面,支持CGI,比较适合嵌入式系统。在硬件电路板上存放一个网页,在用户端可以通过浏览器来访问硬件电路板上这个网页,然后通过网页中的内容就可以和硬件电路板上的硬件设备进行交互。具体移植过程如下:
(1)从网上下载Boa服务器源码压缩包boa-0.94.13.tar.gz,将其解压得到boa-0.94.13,在boa-0.94.13/src下编译生成boa可执行程序。
(2)把宿主机Linux操作系统下的/etc/mime.types复制到根文件系统的/etc目录中,在根文件系统的/etc中建立boa文件夹,根文件系统的/etc/boa目录下建立www、cgi-bin目录,www中存放HTML文件,cgi-bin中存放CGI脚本,把网页文件 index.files和index.html复制到根文件系统的/etc/boa/www目录下,在根文件系统的/var目录下建立日志目录 log/boa.
(3)对Boa作配置和修改。主要通过对defines.h,boa.conf和mime.types文件进行修改来实现。修改defines.h指定 Web服务器的根目录路径(SERVER_ROOT)。boa.conf文件由一些规则组成,用于配置Boa服务器,指定相应端口,服务器名称,一些相关文件的路径等。Boa服务器要想正确运行,必须保证该文件是正确配置的,而且该文件和某些静态网页,CGI可执行程序等都放于某特定目录下。
(4)把boa-0.94.13/sre下编译出的boa可执行程序复制到根文件系统的/usr/bin目录下,把修改过的配置文件boa.conf复制到开发板的/etc/boa目录下,并将一些静态页面放在由boa.conf指定的目录下。
(5)重新编译根文件系统。把根文件系统下载到硬件电路板上。
在硬件电路板上运行嵌入式Web服务器Boa,通过浏览器就能访问系统所设计的网页。
3.4 应用软件设计
本系统的核心是一个嵌入式Web服务器,其应用软件的设计包括网页设计和CGI应用程序设计两部分。
(1)网页设计:网页设计采用设计工具Dreamweaver,FrongtPage等来实现。
(2)CGI应用程序设计:采用C语言来编写CGI应用程序,实现外部实时数据采样、与家电设备的通信与控制等。CGI技术可以实现浏览器与嵌入式Web 服务器的动态数据交互。CGI程序保存在嵌入式Web服务器端。在用户端打开HTML页面,点击HTML页面上设备的控制按钮,就会通过Internet 把用户请求送到嵌入式Web服务器中,服务器接收用户请求并交给CGI程序处理,实现用户的功能需求,这就做到了通过对HTML页面上相应设备的点击实现家庭网络中设备的远程控制。
4 结束语
该系统硬件采用ARM9 S3C2440 微处理器作为控制核心,软件采用linux-2.6.31内核作为系统的嵌入式操作系统,采用Boa作为嵌入式Web服务器,结合以太网通信技术和 GPRS无线通信技术实现了对家庭环境的远程实时监控、安防自动报警和对家电设备远程控制的功能。本监控系统具有较大的实用价值,未来的发展空间非常大,能够使人们生活得更加舒适安全。