APP下载

基于BS架构的嵌入式Web远程监控系统的研究与实现

2015-05-30王超

科技资讯 2015年30期
关键词:S架构

王超

摘 要:该文设计了一个基于B/S架构的嵌入式Web远程监控系统,嵌入式web服务器端采集视频图像,并通过网络把视频图像信息传至客户端浏览器,客户端通过浏览器发送控制指令给服务器端、服务器端依照控制指令控制被控设备运行。

关键词:B/S架构 Boa servfox CGIC 程序编写

中图分类号:TP27 文献标识码:A 文章编号:1672-3791(2015)10(c)-0011-03

远程监控是指本地计算机通过网络对现场设备进行监视和控制,通过远程监控系统,监视被控现场的并控制现场设备的运行。

该文设计了基于B/S架构的嵌入式Web远程监控系统,客户端使用浏览器通过网络访问嵌入式Web服务器,通过浏览器操控Web服务器连接的被控设备。并可通过浏览器观察摄像头传来的视频资源。用户无需开发客户端应用程序,只需在其能够上网的设备上安装通用的浏览器即可,这种运行方式不仅简化了系统设计,又便于用户使用和操控,基于嵌入式web远程监控是监控系统未来的发展方向。

1 系统结构设计、相关软件的安装、配置及工作过程分析

该文设计的嵌入式远程监控系统服务器端为飞凌OK6410嵌入式开发板、运行嵌入式Linux2.4.18操作系统,选用ZC0301型USB接口摄像头。客户端使用三星450R5J-X06型号笔记本。

系统主要工作流程如图1所示,用户通过浏览器向web服务器请求主页面,web服务器收到请求后,把主页面发送至客户端,客户端通过主页面把控制数据发送给web服务器,cgi程序即可通过环境变量获得控制数据,并依据这些指令数据运行相应的驱动程序,控制被控设备运行,该文控制的设备是开发板上自带的led灯。cgi程序把运行结果输送给web服务器,服务器以http的格式发送给客户端。客户端通过主页面的链接可获得视频监控页面,视频监控页面含有视频服务器的IP和端口号,客户端可依据视频服务器的IP和端口号获取视频服务器上的视频资源。系统具体实现过程如下过程。

1.1 Boa服务器的移植

服务器端运行嵌入式Linux2.4.18操作系统,在其下安装Boa嵌入式web服务器。Boa是一款单任务的HTTP服务器,支持CGI。Boa服务器能够接收客户端请求、分析请求、响应请求和向客户端返回请求结果等。

在http://www.boa.org/网站得到Boa服务器源码boa-0.94.13.tar.gz。解压后,修改其Makefile,设time_offset=0、cc=arm-linux-gcc、cpp=arm-linux-gcc -E,编译后将将生成的Boa执行文件拷贝到开发板的sbin目录下,把boa.conf放置到/etc/boa目录下,boa.conf中作如下设置DocumentRoot /web/(web目录下将放置被访问网页)、MimeTypes /dev/null、Accesslog/dev/null、Errorlog/dev/conscle、注释#User nobody、#Group nogroup。Boa服务器工作流程图如图2所示。

1.2 CGIC的移植

CGI(Com m on Gateway Interface)是外部扩展应用程序与Web服务器交互的一个标准接口。它规定Web服务器调用其它可执行程序(CGI程序 )的接口协议标准。CGI 程序接受Web浏览器发送给Web 服务器的信息,进行处理将响应结果再回送给Web服务器及Web浏览器。按照CGI标准编写的外部扩展程序能够处理来自客户端浏览器输入的数据。从而完成客户端与服务器的交互。

在cgic的官方网站http://www.boutell.com/cgic/下载源码,解压后,修改Makefile,编译后得到libcgic.a,将其下载到开发板lib目录下。修改boa.conf文档,设置criptAlies/cam/、/web/cam/,cgi程序放在web/cam/下。cgi程序的工作流程如图3所示。

系统采用ZC0301摄像头,需要加入驱动usb_2.4.31.patch.gz补丁文件,然后重新配置并编译内核,得到ZC0301摄像头驱动模块,为这个驱动模块添加执行权限后,将其下载到开发板,执行此驱动程序。

1.3 视频服务器的移植

选用servfox作为该系统的视频服务器,servfox是基于ZC0301摄像头驱动程序提供的接口函数进行工作的。ZC0301摄像头驱动程序提供一系列接口函数,用户通过调用这些接口函数即可实现对视频设备进行操作和控制。Servfox不仅初始化摄像头、设置摄像头的工作模式、进行了视频数据采集,而且还创建一个套接字监听,阻塞等待客户端的请求连接,连接成功后再创建线程发送采集到的图像数据给客户端。

在网站http://download.csdn.net/detail/neusoft4038/2511636得到SpcaView20061208软件包。解压、编译后,移植到系统的/sbin/目录下。

将SpcaView20061208软件包中的Linux-java-applet目录移植到开发板Boa服务器的DocumentRoot/web/目录下,改为webcam,index-sample.html改为wcbcam.html,浏览器安装JRE后,服务器端输入./servfox -d/dev/video0 -s 320x240 w 7070,运行servfox,在客户端浏览器输入服务地址即可得到摄像头传来的视频图像。Servfox工作流程如圖4所示。

2 主要页面代码的编写

2.1 主页面主要HTTP代码

3 结语

系统整合后,进行测试,实现了设计预期。嵌入式远程监控系统以其体积小、功耗低、工作时间长、性能稳定等特点,成为远程监控系统的主流方向,嵌入式Web技术在嵌入式远程监控领域拥有越来越广泛的应用前景,并且发挥着越来越重要的作用。

参考文献

[1] 刘敏英.基于Web的远程监控系统的设计与实现[D].大连:大连海事大学,2008.

[2] 樊丰义.基于嵌入式Linux的农业远程监测系统的研究[D].杨凌:西北农林科技大学,2010.

[3] 李小琦.基于ARM的嵌入式网络视频监控系统研究[D].武汉:中南民族大学,2010.

[4] 张军卫.基于嵌入式Web服务器的视频监控系统设计[D].秦皇岛:燕山大学,2011.

猜你喜欢

S架构
基于ASP.NET校园电子商务的系统设计
B/S架构下的学生信息管理系统的设计
学生会管理系统的设计与实现
基于ASP技术下的大学生跳蚤书街平台的设计与实施
基于B/S架构的高校实验管理平台的设计与实现
基于Web 的测控工程项目管理系统研究及其应用
基于B/S架构的煤矿安全监控系统设计
C/S架构下的中职教学辅助系统的新探索
基于SSH的教室信息管理系统设计与实现
基于B/S架构的通信公司营销管理系统的设计与实现