基于嵌入式的智能家居
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于嵌入式的智能家居
摘要 21世纪是智能的时代,是互联网的时代,随着Internet后PC 时代的到来,这个时代的主要特征是以计算机作为作为组成成分融入消费品之中。依赖于嵌入式技术的后PC时代使得传统IT设备逐渐过渡到嵌入式设备并融入到生活的各个方面。本系统采用嵌入式技术,将在系统内移植嵌入式web服务器,用户可以通过互联网对家居进行操作与监控。
关键词嵌入式智能家居Linux 远程监测
Abstract In the 21st century is the era of intelligence, is the age of the Internet, with the advent of Internet post-pc era, the era as computers as the main characteristics of the components into consumer goods. Rely on the embedded technology after traditional PC era makes IT equipment gradually transition to the embedded devices and integrated into all aspects of life. This system adopts the embedded technology, transplanted in the system of embedded web server, the user can through the Internet for household operation and monitoring. Keyword: ARM smart home Linux Remote monitoring
1 绪论
随着生活水平与生活质量的提高,人们对于生活水平要求日益提高,对于生活的便捷性与对信息需求的及时性也越发看重,以嵌入式为核心的智能家居以其便捷性与实时性逐渐走入了我们的视野。目前随着
网络技术的迅速发展,传统的PC完全可以通过内嵌web服务器的ARM 进行功能替代,并且由于嵌入式系统价格偏低,使得智能家居发展越发成为可能,但是我国目前智能家居发展仍然有限,发展速度与发达国家相比偏慢,并且发展水平较低,因此智能家居发展前景广阔。本文将采用ARM9作为CPU进行嵌入式开发。
2.嵌入式
2.1嵌入式系统简介
嵌入式系统是一种非PC系统但但有计算机功能,以应用为中心、以计算机技术为基础、软硬件可裁剪、适用于应用系统的一种专用计算机系统,它的主要特点是嵌入和专用。
从20世纪70年代起,微型机以小型、低廉、高速数值计算等特点迅速走向市场,它所具备的智能化水平在工业控制领域发挥了作用,常被组装成各种形状,“嵌入”到一个对象体系中,进行某类智能化的控制。与通用型的计算机系统相比,嵌入式系统的功耗低、功能强大、实时性强打、占用空间小、效率高等有点尤为突出。它的主要特点是嵌入与专用。
2.2 ARM处理器介绍
ARM(Advanced RISC Machine),即可以认为是一个公司的名字,也可以当成一类微处理器的统称,还可以认为是一种技术的统称。ARM体系架构的版本就是它所使用的指令集的版本。ARM架构支持32位的ARM指令集和16位的Thumb指令集,后者所使用的代码的存储空间大大减少。还提供了一些扩展功能。
本文所使用的ARM9系列处理器是英国ARM公司设计的主流嵌入式处理器,主要包括ARM920T和ARM922T等系列。ARM9采用哈佛体系结构,指令和数据分属不同的总线,可以并行处理。他的指令执行效率较ARM7有较大提高,最高可达到300MIPS。
2.3嵌入式Linux
嵌入式 Linux是以Linux为基础的嵌入式系统,他广泛应用于我们生活的方方面面。Linux系统遵循GPL协议,是完全免费的OS,既继承了Internet上无限的开放源代码资源,又具有嵌入式操作系统支持任意裁剪的特性。并且他的内核小、效率高,内核更新速度很快,支持几乎所有的32位或者64位系统。并且嵌入式Linux与PCLinux 使用的是同一套内核代码,这就是的原本PC上的程序重新编译调整之后可以直接用于嵌入式Linux,大大增加了便捷性。
3整体模块设计
本系统的设计目的就是为了实现远程监测并进行远程操作,总体思路就是以基于嵌入式系统与web系统结合开发,其主要有USB摄像头模块、WEB服务器模块、视频客户端以及远程电器控制端组成。其中通过CGI方式实现WEB服务器对远程电器的控制。本系统采用三星公司的S3C2410作为主机,系统采用Linux系统。模块之间流程图具体见下图1。
图1
3.1 USB摄像头模块设计
USB摄像头使用中星微ZC301,该系列高清芯片拥有影像光源自动增益补强技术,自动白平衡、边缘增强以及伽马矫正等先进的影像控制技术。
具体移植过程如下
1.下载USB补丁文件。本人使用的USB-
2.6.12.patch.rar.在
网站上能找到。
2.打补丁。
在drivers/usb/media目录下建立spca5xx目录,mkdir spca5xx,
返回/driver/usb目录下,把补丁文件也放在此目录下,执行 patch –p1 2.6.12.patch,就会在 usb/media/spca5xx目录下产生如下文件:
cs2102.h
hdcs2020.h
hv7131b.h
hv7131c.h
icm105a.h
Makefile
Makefile.2.4
pas106b.h
pb0330.h
sn9cxxx.h
sp5xxfw2.dat
sp5xxfw2.h
spca5xx.h
spcaCompat.h
spca_core.c
spcadecoder.c
spcadecoder.h
spcausb.h
tas5130c.h
zc3xx.h
3. 修改drivers/usb/Makefile文件,在
Obj-$(CONFIG_USB_W9968CF) += media/
之后添加一行:
obj-$(CONFIG_USB_SPCA5XX) += media/
4. 修改drivers/usb/media/Kconfig文件,在最后添加
config USB_SPCA5XX