《毕业论文(设计)-嵌入式系统课程设计》由会员分享,可在线阅读,更多相关《毕业论文(设计)-嵌入式系统课程设计(18页珍藏版)》请在金锄头文库上搜索。
1、 基于 web 的嵌入式远程监控系统 第 1 页 共 18 页 1嵌入式系统课程设计嵌入式系统课程设计-视频监控系统设计与实现视频监控系统设计与实现学院:学院: 专业:专业: 小组成员:小组成员: 指导老师:指导老师: 基于 web 的嵌入式远程监控系统 第 2 页 共 18 页 2一:前言一:前言随针对当前国内国外嵌入式服务器技术研究和发展情况的分析,本报告提出了将 WEB 服务器、嵌入式系统以及当前的一些嵌入式实验板板载功能进行融合的设计思想。设计了结合 WEB 服务器技术的嵌入式监控系统。该系统具有浏览交互式网页,对嵌入式平台进行监视和控制等功能。通过本套嵌入式WEB 服务器系统,用户可
2、以通过 HTTP 协议方便的访问相应的嵌入式平台进行有效监视的同时还可以进行实时的有效控制。该系统对硬件要求极低、响应速度快、安全性好、可扩展性强等优点,具有较高的实际应用价值。该系统在智能家居、嵌入式组网等方面的应用将有较广阔的发展前途。Linux和嵌入式系统都是计算机学术领域中的技术热点,两者的结合,为它们开辟了新的发展空间。嵌入式视频监控系统充分利用大规模集成电路和网络的科技成果,实现体积小巧,性能稳定,通讯便利的监控设备。该课程设计是在ARM微处理器平台上,移植嵌入式Linux操作系统,并完成视频采集的任务,在此基础之上,借助Linux下的开源软件,构建了嵌入式视频监控系统。系统采用A
3、RM微处理器2410作为主处理器,用USB摄像头作为视频采集设备,达到实时监视的目的。报告首先简要介绍了视频监控系统的发展现状和,阐述了嵌入式视频监控系统的原理,给出了以2410微处理器为核心的视频监控系统的硬件和软件方案。随后详细分析了嵌入Linux系统的设计与实基于 web 的嵌入式远程监控系统 第 3 页 共 18 页 3现,并讨论了嵌入式Linux下USB摄像头设备驱动,然后设计并实现了嵌入式视频监控系统软件部分:视频采集模块。视频监控是利用机器视觉和图像处理的方法对图像序列进行运 动检测、运动目标分类、运动目标跟踪以及对监视场景中目标行为 的理解与描述。 视频监控技术的发展大致可分为
4、四个阶段:闭路电视系统构建 的模拟系统、数字信号控制的模拟视频监控系统、数字硬盘录像设 备为核心的视频监控系统和现在的数字网络视频监控系统。 视频监控系统的应用非常广泛,在我们身边随处可见。设计的主要工作设计的主要工作 设计一个视频监控系统设备,捕捉即时影像 同时,本系统又要具有网络服务器,通过口连入局域网,用户 可以在pc端对目标区域进行在线监控;用户也可以通过浏览器直接 访问视频服务器端。 为开发研究本嵌入式视频监控系统,本文主要在2410处理器上 移植实现嵌入式Linux操作系统、USB摄像头驱动,接下来在ann9处 理器上完成了视频采集,其后设计了视频监控的软件部分。经过多 次试验,对
5、其进行了调试。课程设计的意义课程设计的意义 随着生活节奏的加快,人们呆在家里的时间越来越少,而这样 一个嵌入式设备可以让用户随时随地了解自己家里客人来访情况, 以安排自己的行动计划;并且现在犯罪手段越来越多,安装在家门 口的视频监控系统就承当了一个好管家的角色,不论主人身在何地, 它都可以在实时监控,以采取下一步措施,避免财产损失. 总之,研发这样一个嵌入式视频监控设备,可以应用到各种场 合,对保护人民财产,维护社会治安等有积极意义。基于 web 的嵌入式远程监控系统 第 4 页 共 18 页 4二:嵌入式系统开发二:嵌入式系统开发本次课程设计所做的视频监控系统本身可以看做是一个典型的嵌 入式
6、系统,它融合了嵌入式微处理器和嵌入式操作系统,并且具备 网络功能,可以划归第四代嵌入式系统。嵌入式系统嵌入式系统首先,从嵌入式系统本身的组成来定义,它是以应用为中心、 以计算机技术为基础、软硬件可裁剪,功能、可靠性、成本、体 积、功耗严格要求的专用计算机系统。嵌入式视频监控系统实验平台简介嵌入式视频监控系统实验平台简介硬件实验平台介绍硬件实验平台介绍 本实验设备包含了嵌入式系统开发应用所需的大部分设备,如 串口、以 太网口、USB口、音频输出、LCD及TSP触摸屏、5*4的小键盘、固态 硬 盘、大容量的Flash和SDRAM等等。调试工具调试工具目前世界上有几十多家公司提供不同类别的ARM开发
7、工具产品,根据功能的不同,分别有编译软件、汇编软件、链接软件、调试软件、嵌入式操作系统、函数库、评估板、J1AG仿真器、在线仿真器等。比较流行的ARM开发工具包括ARM SDT、ARM ADS、Multi 200lo、Embest IDE for ARM等集成开发环境以及PENicc32A900仿真器与MultiICE仿真器等。三三. .基于嵌入式基于嵌入式LinuxLinux的视频监控总体方案的视频监控总体方案在嵌入式处理器上移植嵌入式操作系统,不仅提高了开发效率,还可以大大提升视频监控的灵活度和扩展性,使得视频监控系统的后续应用程序开发便于实现。前端USB摄像头负责视频采集:带有嵌入式操作
8、系统的ARM9控制模块控制基于 web 的嵌入式远程监控系统 第 5 页 共 18 页 5USB摄像头的视频采集和传输; Ethernet接口作为网络传输模块。视频监控系统硬件设计方案视频监控系统硬件设计方案硬件电路的构成框图如图所示。ARM9ARM9处理器处理器24102410 视频监控系统的核心处理器选用ARM2410系列处理器。由ARM TDMI、存储管理单元(MMU)和高速缓存三部分组成。其中,MMU可以 管理虚拟内存,高速缓存内独立的16KB地址和16KB数据高速Cache组 成。JavaJava虚拟机的配置虚拟机的配置 本次视频通过PC机浏览器实现监控,因此在主机上必须进行Java
9、 虚拟机的安装。具体的安装步骤如下: 首先下载 jdk(java development kit),,安装之后 再 我的电脑-属性-高级系统设置-环境变量 中在做两处改变: a在 Path 中添加 ;C:Program FilesJavajdk1.6.0_13bin b.新建环境变量ClassPath,添加内容: C:Program FilesJavajdk1.6.0_13jrelibrt.jar;C:Program FilesJavajdk1.6.0_13libtools.jar;C:Program FilesSunJavaDBlib;C:Program FilesSunJavaDBlibd
10、erby.jar;C:Program FilesSunJavaDBlibderbyclient.jar;C:Programsapac基于 web 的嵌入式远程监控系统 第 6 页 共 18 页 6he-tomcat-6.0.18libservlet-api.jar;. 其他外围单元电路设计方案其他外围单元电路设计方案1USB设备及摄像头接口电路2供电电路及复位电路视频监控系统软件设计方案视频监控系统软件设计方案嵌入式操作系统的选用嵌入式操作系统的选用 虽然嵌入式操作系统并不总是必须的,因为程序完全可以在裸 板上运行但对于复杂的系统,为使其具有任务管理、定时器管理、 存储器管理、资源管理、事件管
11、理、系统管理、消息管理、队列管 理和中断处理的能力,提供多任务处理,更好的分配系统资源的功 能,很有必要针对特定的硬件平台和实际应用移植操作系统。 本项目意在设计一个价格低廉,应用灵活的视频监控系统。嵌入式系统引导程序嵌入式系统引导程序bootloaderbootloader的选用的选用 Bootloader(引导装载器)是用于初始化目标板硬件,给嵌入式 操作系统提供板上硬件资源信息,并进一步装载、引导嵌入式操作 系统运行的固件。它是操作系统和硬件的枢纽,相对于操作系统内 核来说,它是一个硬件抽象层。它负责初始化硬件,引导操作系统 内核,检测各种参数给操作系统内核使用。实时视频监控GUI嵌入式
12、 Linux 操作系统内核接口以 太 网 传 输 模 块无 线 网 络 传 输基于 web 的嵌入式远程监控系统 第 7 页 共 18 页 7嵌入式嵌入式LinuxLinux源代码结构分析源代码结构分析 在嵌入式系统中, Kernel要做小型化处理,根据硬件及系统功 能要求对内核进行裁减,同时,还要增加对外围接口的硬件驱动支 持及协议支持。要配置裁减内核,必须逐一对源代码各个模块进行 分析,确定其依赖关系,考虑到功能扩展的同时再剔除掉无关的模 块。根文件系统根文件系统 文件系统是基于被划分的存储设备上的逻辑上单位上的一种定 义文件的命名、存储、组织及取出的方法。如果一个Linux没有根文 件系
13、统,它是不能被正确的启动的。因此,我们需要为嵌入式Linux 系统创建合适的根文件系统,以便存储所移植的引导程序、内核、 图形用户界面、busybOX的镜像以及所开发应用软件等。 嵌入式Linux的根文件系统包括如下目录: (1)bin(binary):包含着所有的标准命令和应用程序; (2)device):包含外设的文件接口,在Linux下,文件和设备采 用同种地方法访问的,系统上的每个设备都在dev里有一个 对应的设备文件,摄像头设备对应于devv41videoO这个 设备文件; (3)etc(etcetera):该目录包含着系统设置文件和其他的系统 文件,例如etcfstab(file
14、system table)记录了启动时 要挂载的文件系统; (4)home:存放用户主目录,调试程序常在此目录下; (5)lib(1ibrary):存放系统最基本的库文件以及自定义的库文基于 web 的嵌入式远程监控系统 第 8 页 共 18 页 8件: (6)mnt:用户I瞄时挂载文件系统的地方;(7)proc:linux提供的一个虚拟系统,系统启动时在内存中 产生,用户可以直接通过访问这些文件来获得系 统信息; (8)root:超级用户主目录; (9)shin:这个目录存放着系统管理程序,如fsck、mount等; (10)tmp(1emporary):存放不同的程序执行时产生的临时文件;
15、(11)nsr(uset):存放用户应用程序和文件。四四. .嵌入式嵌入式LinuxLinux系统设计与移植系统设计与移植一个小型的嵌入式Linux系统只需要三个基本元素,即引导工具、 Linux微内核(包含内存管理、进程管理及事务处理)、初始化进程。 倘若要增加该系统的功能并同时保持系统小型化,则必须为嵌入式 Linux系统添加相应的硬件驱动程序、应用程序。如果此后仍要加强 系统的功能,可添加文件系统、TCPIP网络堆栈、图形用户界面支 持、磁盘等。在生成嵌入式Linux时,我们可以从标准发行版着手, 裁减不需要的模块。 嵌入式开发不同于普通PC机上的开发,需要交叉编译所开发的 软件。简单地说,交叉编译就是在一个平台上生成另一个平台上的 可执行代码。交叉编译的原因有两个。一是目标平台所需要的 bootloadcr以及OS核心还没有建立时,需要作交叉编译。二是目标 机设备不具备一定的处理器能力和存储空间,即单独在目标板上无 法完成程序开发,所以只好求助宿主机。这样可以在宿主机上对即 将在目标机上运行的应用程序进行编译