12
计应第2组 项目二视频监控
项目总结报告
文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改
课程名称: 组 长: 组 员: 完成日期: 指导教师: 嵌入式系统设计 杨玉莹 凌健、朱昕烨、范斌、王俊、王妍 2014.6.10 李兰兰
2013—2014 学年 第 二 学期
目 录
1 项目描述和任务描述 ....................................................................... - 1 -
1.1 项目描述 .................................................................................................................. - 1 - 1.2任务描述 ....................................................................................................................... - 1 -
2 开发工具与环境 .......................................................................... - 2 -
3 项目完成步骤 ................................................................................... - 2 -
3.1 任务一方案设计 .......................................................................................................... - 2 - 3.2 任务二加载摄像头驱动程序 ....................................................................................... - 2 - 3.3任务三移植操作系统和文件系统 ............................................................................... - 8 - 3.4任务四加载视频服务器及客户端软件(servfox和spcaview) ........................... - 8 - 3.5任务五 CGI动态网页制作 ........................................................................................ - 20 - 3.6任务六自动加载视频服务 ......................................................................................... - 20 - 3.7任务七系统测试 ......................................................................................................... - 21 -
4故障排除 .......................................................................................... - 25 - 5 项目分工 ......................................................................................... - 25 - 6 小组特色与展望 ............................................................................. - 26 -
6.1 小组内的特色与亮点 ................................................................................................ - 26 - 1.2 体会与展望 ............................................................................................................ - 26 -
7 教师评语 ......................................................................................... - 27 -
1 项目描述和任务描述
1.1 项目描述
随着网络通信技术和嵌入式技术的发展,基于嵌入式Web服务器的视频监控系统已成为监控领域的发展趋势,采用B/S架构的嵌入式Web服务器,监控者无需到现场操作,系统成本低廉,设备体积小巧,安装方便,故障维护升级简单,安全可靠,满足了现代家庭小型消费者的需求。
针对目前视频监控设备前端一体化、小型化和便携等相关需求,借助嵌入式系统的网络支持,设计一种基于Web服务器的B/S方式的远程视频监控系统。
视频监控系统在工业生产领域、交通、银行和很多安全部门中得到广泛应用。视频监控系统从第一代基于模拟摄像机的模拟监控系统,到第二代基于计算机的数字监控系统,再到第三代基于嵌入式的网络数字监控系统,视频监控系统已经经历了三个发展阶段[2]。目前的第三代视频监控系统是具有集前端一体化、图像数字化、监控网络化、系统集成化等特性于一身的嵌入式Web技术的远程网络视频监控系统。
1.2任务描述
C/S (Client/Server)结构即客户机和服务器结构。它是软件系统体系结构,C/S结构充分利用两端硬件环境的优势,将任务合理地分配到Client端和Server端,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件。因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在客户端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。
根据C/S和B/S结构的不同点,比较出C/S结构具有应用服务器运行数据负荷较轻、数据的储存管理功能较为透明的优点,C/S结构的劣势是高昂的维护成本且投资大。B/S结构维护和升级方式简单,成本低廉、操作系统选择更多,但有应用服务器运行数据负荷较重的缺点。本视频监控系统具有家庭小型应用的特点,数据量不大,需要成本低廉、简单易用、维护方便,因此,本项目的视频监控系统采用B/S结构。
- 1 -
客户端Web 浏览器图形界面Web服务器Internet网络Web页面交互CMOS/ USB3G网络读/写数据文件读/写监测读/写程序接口交互程序摄像头客户端Web 浏览器嵌入式Web服务器
Servfox+spcaview Mjpeg-streamer boa
2 开发工具与环境
Tiny6410开发板+PC机+配件(网线、数据连接线等)、Ubuntu
3 项目完成步骤
【综述项目和任务完成的所有内容及其之间的关系】 3.1 任务一方案设计
我们选择的是(Mjpeg-streamer)方案 主机+宿主机+摄像头驱动
预期目标:了解目前市场上视频监控采用的方案;了解C/S、B/S结构;确定具体的视频监控方案。
3.2 任务二加载摄像头驱动程序
1、执行命令:linux-2.6.38-20120904.tar.gz
- 2 -
2、进入到linux-2.6.38-20120904文件夹里
3、拷贝配置文件:cp config_linux_mini6410 .config
- 3 -
4、执行命令:make menuconfig进入到图形化内核配置界面会出现错误
5、出现缺少库文件错误用apt-get install ncursers-dev解决错误
- 4 -
6、用上下键选择倒数第二行:Load an Alternate Configuration File 回车后导入配置文件为.config 选 7、上下键选择设备驱动:Device Drivers ---> 回车后进入下一层目录 8、上下键选择多媒体支持: <*> Multimedia support --->回车后进入下一层录 - 5 - 9、上下键选择:<*> Video For Linux 此选项包含在下一个操作之中; 上下键选择: [*] Video capture adapters ---> 回车后进入下一层目录 10、上下键选择: [*] V4L USB devices ---> 回车后进入下一层目录 - 6 - 11、上下键选择:<*> USB Video Class (UVC) 此选项包含在下一张截图之中; 上下键选择:<*> GSPCA based webcams --->回车后进入下一层目录 12、上下键查看所有型号摄像头驱动被选中,并且光标放到最后一行:<*> ZC3XX USB Camera Driver - 7 - 13、左右箭头键向右选择 14、执行命令:make,生成新的zImage内核镜像,此时把摄像头驱动成功加入到内核中。生成的zImage在linux-2.6.38/arch/arm/boot/目录下,拷贝出来,放到windows下,以备后续烧写系统之用 3.3任务三移植操作系统和文件系统 Tiny6410支持使用SD卡自动安装好嵌入式Linux操作系统和文件系统。首先需要制作好嵌入式Linux的引导程序、内核镜像、根文件系统,然后烧写引导程序,根据引导程序的提示,烧写内核和文件系统。根据需要定制好内核,配置编译内核,生成内核镜像文件。 根文件系统制作工具很多,一般使用BusyBox制作文件系统,也可以在Tiny6410提供的yaffs简单文件系统基础之上,使用工具yaffs2tool制作自己的根文件系统。具体完成任务: 1.实现开机自动加载摄像头驱动 2.制作内核镜像 3.制作根文件系统 4.移植系统和根文件系统 3.4任务四加载视频服务器及客户端软件(servfox和spcaview) mjpg-streamer视屏监控 一、ubuntu下执行命令 1.解压mjpg-streamer源码 tar zxvf mjpg-streamer-mini2440-read-only.tar.gz – C / - 8 - 2、查看解压后生成的目录以及目录里的内容 3. 修改文件内容为:CC = arm-linux-gcc #CC ?= gcc vi Makefile - 9 - 4. 删除现有的压缩包查看内容。 rm –r mipg-streamer-mini2440-bin.tar.gz 5.make - 10 - 6.查看生成内容 7. 打包且查看内容 make package - 11 - 8.将打包生成的mjpg-streamer-mini2440-bin.tar.gz复制到U盘上 cp mjpg-streamer-mini2440-bin.tar.gz /media/5461-ADC2 二、打开终端,连接开发板、串口线和网线(开发板ip地址:192.168.1.230 设置windows本地连接的ip地址:192.168.1.120 网端255.255.255.0)开发板:测试 1. 查看内容进入到U盘中查看。 2. 创建文件夹mjpg-streamer进入mjpg-streamer查看内容。 3. 解压mipg-streamer-mini2440-bin.tar.gz。 tar zxvf mjpg-streamer-mini2440-read-only.tar.gz - 12 - 4. 查看执行命令。./start_uvc_yuv.sh 5. 进入http://192.168.1.230:8080/dierzu.html等等。 6. 汉化后的网页。 - 13 - - 14 - - 15 - - 16 - - 17 - - 18 - 三、汉化部分: - 19 - 3.5任务五 CGI动态网页制作 采用B/S结构的视频服务器,根据IP地址通过浏览器访问服务器采集的视频信息 预期目标: 1)了解CGI(公共网关接口)的概念 2)学会编写简单CGI程序 3)学会编写CGI动态网页访问服务器视频程序 4)编译CGI程序并移植到开发板 3.6任务六自动加载视频服务 为了打开网页就能自动访问服务器,把任务5以前的部分手动内容自动添加到系统中,需要重新制作zImage镜像,把相应的CGI网页存放于相应位置,以供用户在浏览器端访问。 预期目标: 1)只需要打开网页就能自动启动服务器 - 20 - 3.7任务七系统测试 按照任务1—6做完,对系统进行测试,看系统运行是否达到预期效果,调试系统功能,对不足之处进行改进。 预期目标: 1)打开网页自动启动服务器查看到视频信息 - 21 - - 22 - - 23 - 三、汉化部分: - 24 - 4故障排除 故障:在做任务四移植时,网页打开一次后,在打开时无法打开 故障排除:经过老师的指导,找到了问题所在,原来是在经过上一次的打开之后要在重新重启一下程序(./start_uvc_yuv.sh) 故障:汉化不知道从何下手 故障排除:经过借鉴其他组以及组内的讨论最后汉化成功。 5 项目分工 【项目进程及各成员任务分配情况;该小组成员及任务分配,以及任务完成情况】 - 25 - 组别 成员 杨玉莹 第二组 分工 组长 杨玉莹 完成情况 视屏加载、mjpg-streamer视屏监控、完成 项目报告 凌健 视屏加载、mjpg-streamer视屏监控、完成 项目报告 朱昕烨 王妍 视屏加载、mjpg-streamer视屏监控 完成 视屏加载、mjpg-streamer视屏监控基本完成 的一部分类容 范斌 王俊 视屏加载 完成一小半 没来,没参与 6 小组特色与展望 6.1 小组内的特色与亮点 能够及时完成作业、团结互助、团结有爱、宽容大度、有团体合作精神。 1.2 体会与展望 姓名学号 杨玉莹20121501152 自我总结及心得体会 通过项目二视屏监控,让我们明白了此项目是针对目前视频监控设备前端一体化、小型化和便携等相关需求,借助嵌入式系统的网络支持,设计一种基于Web服务器的B/S方式的远程视频监控系统。 这次课程的学习让我们懂得设计本身并不是有很重要的意义,而是同学对待问题时的态度和处理事情的能力。至于设计的成绩无须看的太过于重要,重在参与及享受项目过程中制作的每一步。 通过一二项目学习我深刻体会到嵌入式这门学科的伟大之处。也让我更加喜欢嵌入式系统的学习。 - 26 - 凌健20121501130 通过项目二的学习,我进一步了解到了学习嵌入式的乐趣之处,在此次的项目二嵌入式视频监控系统的学习过程中,让我了解到了什么是C/S和B/S结构、C/S和B/S的优缺点、如何移植代码程序到开发板中实现视频观看的功能……同时在此次项目实施过程之中我也遇到了很多难,例如在进行项目四的程序移植开发板的过程中时,网页无法显示,进行汉化的时候不清楚如何汉化网页……不过后来在老师和组友的帮组下我找出了问题所在并解决了问题。 同时这个项目的顺利完成也让我明白了此项目的顺利完成离不开团队的合作和老师的指导以及自身的上课认真听讲。在此我深刻体会到:众人拾材火焰高!团结就是力量。相信以后的任务也会顺利解决的! 在项目二视频监控的学习中,我发现自己存在很多不足与问题:例如:在制作视频监控时,网页无法显示,对网页进行汉化的时候不清楚如何汉化网页……,在把压缩软件移到U盘、对开发板进行测试时解压之后,出现没有那个程序,所以用代码编写使压缩包导到U盘中,U盘名字也要改成英文,否则导致导不进去。 在项目二中既然学习了视频监控,就要了解它,并且深入的学习,才能够学好这个项目,同时在项目二中遇到了很多的问题,但最后都和小组讨论,并向老师请教得到解决,但同时让我了解到团队合作的重要性,在项目二中,我了解了什么是C/S和B/S结构、C/S和B/S的优缺点、如何移植代码程序到开发板中实现视频观看的功能……在此我深刻体会到:一个项目的完成离不开失败,正因为失败才使我更加的理解了视频监控的制作方法,相信在以后的任务中也会顺利解决的! 本章学习的是项目二视频监控、对于本章还是有很多不懂得地方、比如代码比较难写、网页无法显示、不会汉化之类的、、但同时也学到了很多、比如如何移植代码程序到开发板中实现视频观看的功能、、、通过本小组的努力、也都一一解决的所遇到的难题、明白了团队合作的重要性。 通过对本项目的学习,了解了监控系统的制作过程,也学会了用命令实现监控,提高了动手能力和操作能力。本组成员团结奋进、积极向上。但是自我感觉还有很多不足,以后会再接再厉。 朱昕烨20121501151 范斌20121501110 王妍 20121501111 王俊20121501145 7 教师评语 - 27 - 因篇幅问题不能全部显示,请点此查看更多更全内容