远程智能仓库安防系统中Web服务器与终端的开发论文.docx
- 文档编号:15133473
- 上传时间:2023-07-01
- 格式:DOCX
- 页数:26
- 大小:1MB
远程智能仓库安防系统中Web服务器与终端的开发论文.docx
《远程智能仓库安防系统中Web服务器与终端的开发论文.docx》由会员分享,可在线阅读,更多相关《远程智能仓库安防系统中Web服务器与终端的开发论文.docx(26页珍藏版)》请在冰点文库上搜索。
远程智能仓库安防系统中Web服务器与终端的开发论文
目录
内容提要I
1.引言1
1.1课题研究背景和现状1
1.2课题研究内容2
2.需求与可行性分析3
2.1需求分析3
2.2可行性分析3
2.2.1功能模块可行性分析3
2.2.2硬件平台功能可行性分析4
3.嵌入式系统开发环境介绍4
3.1嵌入式系统开发环境简介4
3.1.1嵌入式系统简介4
3.1.2嵌入式微处理器5
3.1.3ARM微处理器简介和特点5
3.1.4软件简介6
3.2硬件开发板简介6
4.系统总体设计8
5.系统详细设计与实现9
5.1web服务器的搭建9
5.2boa服务器模块设计9
5.2.1boa程序的移植10
5.2.2boa的配置11
5.2.3Boa的执行11
5.2.4CGI脚本测试12
5.3CGI的说明与设计14
5.3.1CGI邮件守候线程14
5.3.2CGI代码设计14
5.4HTML页面设计16
5.5功能测试结果17
6.总结18
致谢19
参考文献20
ABSTRACT21
远程智能仓库安防系统中Web服务器与终端的开发
学生姓名:
崔寒冰
指导教师:
张永奎康华刘燕
内容提要伴随着数字化和网络化的进程,智能化的浪潮席卷了世界的每一个角落,成为一种势不可挡的历史化大趋势。
面对当前犯罪分子作案手段日趋技能化、智能化、团伙化和暴力化的势态,单靠传统的“人防”一种途径已远不能适应新形式下斗争的需要。
随着网络通讯技术及图像压缩处理技术以及传输技术的快速发展,使得仓库能够采用最新的通讯和图像处理技术,通过网络传输数字图像,可为实现仓库监控系统提供高效可行而且价格低廉的解决方案。
本课题所研究的基于GPRS的远程安防监控系统,目的在于使得人们在可以繁忙工作的同时,在远程就了解自己仓库的概况,及时作出分析与判断。
关键词ARM嵌入式安防Mini2440远程监控
1.引言
目前,随着网络技术和集成电路技术的高速发展,嵌入式系统已经成为IT的一个焦点,嵌入式远程视频监控系统大量的应用于自动控制工业生、军事技术和家用消费电子等各个领域,但仓库管理的安防系统少之又少。
1.1课题研究背景和现状
现今市场上由两种数字视频监控系统类型,一种是以数字录像设备为核心的视频监控系统,另一种是以嵌入式视频web服务器为核心的视频监控系统。
以嵌入式视频web服务器为核心的视频监控系统,采用嵌入式实时多任务操作系统。
摄像头采集到的图片信息经过压缩,通过内部总线送到内置的web服务器,网络上的用户可以直接用浏览器观看web服务器上的由摄像头采集的图像[1]。
由于把图片采集和web功能集中到一个体积很小的设备内,可以直接连入局域网,用户无需安装任何硬件设备,仅用浏览器即可观看。
同时还具有以下优点:
布控区域广阔,嵌入式视频web服务器监控系统web服务器直接连入网络,没有线缆长度和信号衰减的限制,同时网络是没有距离概念的,彻底抛弃了地域的概念,扩展布控的区域。
系统具有几乎无限的无缝扩展能力。
所以设备都以IP地址进行标示,增加设备只是意味着IP地址的扩充。
性能稳定可靠,无需专人管理。
嵌入式web服务器实际上是基于嵌入式微处理器技术,采用嵌入式实时多任务操作系统,对于用户来讲,上网进行登陆,便可对仓库中情况进行监控。
现在监控系统发展到第三代,前端一体化、视频十字化、监控网络化、系统集成化成为视频监控系统公认的发展方向,它以网络为依托,以数字视频的压缩、传输、存放和播放为核心,以智能实用的图像分析为特点,并为报警系统、门禁系统完美的整合到一个使用平台上,引发了视频控制行业的一次技术革命。
伴随着数字化和网络化的进程,智能化的浪潮席卷了世界的每一个角落,成为一种势不可挡的历史化大趋势。
这一切的最终目的为人们提供一个以人为本的舒适、便捷、高效、安全的生活环境。
如何建立一个高效率、低成本的智能仓库安防系统已成为当今世界的一个热点问题。
信息化程度的不断提高,人们对智能仓库安防的功能也提出了更高层次的要求。
智能安防监控起源于80年代中期的美国,上世纪末来到中国,带着全新的概念企盼搭上中国经济的高速顺风列车。
经过十几年的市场孕育与发展,特别是伴随住宅产业的进步,智能安防监控在中国已经显露出春笋出露的局面。
经过二十多年的发展,中国安防行业已经形成集研发、生产、销售、工程与系统集成、报警运营与中介服务等为一体的朝阳产业,全国现有安防产品生产、工程系统集成、产品经销和安防报警服务企业1.5万余家,涉及保安报警服务、CCTV监控、防盗报警、楼宇对讲、智能安防、生物识别、智能交通等诸多领域。
据资料统计,世界上有一半的安防产品是由中国企业制造的,而中国安防市场以每年增长20%~30%的速度发展,预计今年全国安防行业产值可以达到1200亿元人民币,其中,安防产品制造产值约700亿元,安防工程产值420亿元,安防报警服务80亿元。
随着国家经济持续发展,人们生活水平不断提高,安防市场会不断扩大,需求将更加迫切,可以预计“,十一五”后期至“十二五”期间,将成为中国安防行业发展的黄金时期。
我国安防产业经过多年的发展已经初具规模,并且发展迅速。
“十五”期间,我国安防产业年均增长速度超过了国民经济发展的1倍以上,以年均25%增长速度快速发展[2]。
安防行业正由启动期走向发展期,根据统计数据显示:
2005年安防企业已达1.5万家,从业人员近100万人,实现增加值300多亿元,其中出口创汇产品约占10%左右。
由于智能安防的诱人前景和巨大市场,尽管国外市场真正启动也尚需时日,但并未能阻止企业去争食智能安防市场。
虽然每家公司的策略各不相同,但它们都坚持同样的信念:
山那边遍地是金。
IBM公司的迈克尔。
凯罗斯克说:
“这是个不容IBM公司忽视的市场机会。
”
目前我国虽然仓库远程安防系统不算是空白,但是这方面的需要还是很多的,尤其是市场上基于arm嵌入式安防系统的开发更是凤毛麟角。
1.2课题研究内容
本系统是定义为以仓库管理为目标客户的远程安防监控系统,从功能设计到产品的实现模式都立足于满足人们能远程对仓库实施远程监控的目的。
本课题主要来源于本人在实习期间,所在公司正研发一个项目。
本项目主要立足以互联网、宽带ADSL应用方案,采用网络摄像机采集影像,并进行数字压缩,转换成数字信号,最后通过路由器将视频传输到局域网或互联网,远端用户可以通过IE浏览器或手机上网直接观看仓库中的情况,便于仓库的管理。
利用市场上比较通用的GPRS模块收发信息,利用Linux内核中的PPP拨号上网的方式,并在Linux系统中搭建web服务器来实现远程监控的目的。
本系统设计主要分为四个大的模块,分别是:
嵌入式系统开发平台搭建模块,摄像头监控模块,GPRS远程通讯模块,WEB服务器模块。
嵌入式系统开发平台搭建模块主要是实现交叉编译工具的安装,uboot的具体移植,文件系统的制作,内核的移植。
我主要负责的是WEB服务器模块建立B/S架构,为客户提供远程web服务,用户可能通过internet或GPRS网络接入互联网通过网页,远程监控仓库内的情况。
2.需求与可行性分析
2.1需求分析
需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用。
需求分析的任务就是解要全面地理解用户的各项要求,并准确地表达所接受的用户需求。
仓库经常存放大宗物资,由于地域跨度较大、原材料和物资仓库的物品较多,库存物资价值较高、加上安保人力资源有线,各种物资被盗、火灾事件时有发生,需要实施有效的对仓库周边和内部进行有效的智能安防监控。
如果遇到入侵、火灾等事件,智能安放系统可以对仓库实施鸣笛、报警、拍摄等一系列动作对仓库的安全能够有一个很好的保障。
2.2可行性分析
本项目主要是为了实现利用现有的GPRS网络实现远程监控的目的,并在有人入侵或火灾火生时能发及时发送短消息给用户,预警有人入侵或火灾发生,用户接到短消息预警后,通过现在网络通过远程登陆web服务器查看仓库中情况并作出相应处理,比如采集现场照片,及时报警,关闭蜂鸣器报警,关闭远程监控等等。
2.2.1功能模块可行性分析
基于GPRS的远程安防监控系统从功能上分析,主要分为:
入侵报警功能模块,火灾报警功能模块,GPRS远程接发消息模块,摄像头监控模块,WEB服务器模块。
各系统功能模块如表2.1所示:
表2.1系统功能模块列表
系统模块
模块功能
入侵报警功能模块
入侵警报
火灾报警功能模块
火灾警报
GPRS远程接发消息模块
接发短信息
摄像头监控模块
远程监控
WEB服务器模块
为监控提供WEB页面
2.2.2硬件平台功能可行性分析
为了实现上述系统功能,相应的本节将对硬件平台功能需求作概要分析
对应于远程安防监控系统从功能上的需求,相应的硬件需求主要有:
红外探测,温度传感器,GPRS远程接发消息模块,摄像头模块,WEB服务器模块。
各功能模块硬件如表2.2所示:
表2.2模块硬件功能列表
系统模块
硬件需求
入侵报警功能模块
红外探测
火灾报警功能模块
温度传感器
GPRS远程接发消息模块
GPRS模块
摄像头监控模块
摄像头模块
WEB服务器模块
WEB服务器
3.嵌入式系统开发环境介绍
3.1嵌入式系统开发环境简介
3.1.1嵌入式系统简介
嵌入式系统一般指非PC系统,有计算机功能但又不能称之为计算机的设备或器材。
它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。
简单地说,嵌入式系统集系统的应用软件与硬件于一体,类似于PC中BIOS的工作方式,具有软件代码小、高度自动化、响应速度快等特点,特别适合于要求实时和多任务的体系。
嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成,它是可独立工作的“器件”。
嵌入式系统几乎包括了生活中的所有电器设备,如掌上PDA、移动计算设备、电视机顶盒、手机上网、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化系统、电梯、空调、安全系统、自动售货机、蜂窝式电话、消费电子设备、工业自动化仪表与医疗仪器等。
嵌入式系统的硬件部分,包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等[3]。
嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用EPROM、EEPROM或闪存(FlashMemory)作为存储介质。
软件部分包括操作系统软件(要求实时和多任务操作)和应用程序编程。
应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用。
其的核心是嵌入式微处理器。
3.1.2嵌入式微处理器
嵌入式系统的核心是嵌入式微处理器。
嵌入式处理器一般就具备以下4个特点:
(1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时操作系统的执行时间减少到最低限度。
(2)具有功能很强的存储区保护功能。
这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。
(3)可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。
(4)嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至μW级。
3.1.3ARM微处理器简介和特点
ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。
目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。
ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。
目前,全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。
采用RISC架构的ARM微处理器一般具有如下特点:
(1)体积小、低功耗、低成本、高性能;
(2)支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;
(3)大量使用寄存器,指令执行速度更快;
(4)大多数数据操作都在寄存器中完成;
(5)寻址方式灵活简单,执行效率高;
(6)指令长度固定。
3.1.4软件简介
Linux操作系统是可以运行在许多不同类型的计算机上的一种操作系统的“内核”。
在所有操作系统中,Linux是发展最快、应用最广泛的。
它是提供命令行或者程序与计算机硬件之间接口的软件的核心部分。
Linux操作系统内核管理以下事情:
比如内存采用什么方法以及在什么时候打开或者关闭文件、哪一个进程或者程序可以获得计算机的中央处理单元(CPU)等等。
虽然大多数Linux系统运行在PC平台上,但Linux也可以作为嵌入式系统的可靠主力。
Linux流行的“back-to-basics”方法使得它的安装和管理比UNIX更加简单灵活,这对于那些UNIX专家们来说又是一个优点,他们已经因为Linux中有许多命令和编程接口同传统的UNIX一样而赏识它了。
典型的压缩包装Linux系统经过打包,在拥有硬盘和大容量内存的PC机上运行,嵌入式系统可不要这么高的配置。
一个功能完备的Linux内核要求大约1MB内存。
而Linux微内核只占用其中很小一部分内存,包括虚拟内存和所有核心的操作系统功能在内,只需占用PentiumCPU系统的100K内存。
只要有500K的内存,一个有网络栈和基本实用程序的完全的Linux系统就可以在一台8位总线(SX)的Intel386微处理器上运行的很好了。
核心Linux操作系统本身的微内核体系结构相当简单。
网络和文件系统以模块形式置于微内核的上层。
驱动程序和其它部件可在运行时作为可加载模块编译到或者是添加到内核。
这为构造定制的可嵌入系统提供了高度模块化的构件方法。
而在典型情况下该系统需结合定制的驱动程序和应用程序以提供附加功能。
嵌入式系统也常常要求通用的功能,为了避免重复劳动,这些功能的实现运用了许多现成的程序和驱动程序,它们可以用于公共外设和应用[4]。
Linux可以在外设范围广泛的多数微处理器上运行,并早已经有了现成的应用库。
Linux正在嵌入式开发领域稳步发展。
因为Linux使用GPL,所以任何对将Linux定制于PDA、掌上机或者可佩带设备感兴趣的人都可以从因特网免费下载其内核和应用程序,并开始移植或开发。
许多Linux改良品种迎合了嵌入式/实时市场。
它们包括RTLinux(实时Linux)、uclinux(用于非MMU设备的Linux)、MontavistaLinux(用于ARM、MIPS、PPC的Linux分发版)、ARM-Linux(ARM上的Linux)和其它Linux系统。
3.2硬件开发板简介
Mini2440是一款真正低价实用的ARM9开发板,是目前国内性价比最高的一款学习板[5];它采用SamsungS3C2440为微处理器,并采用专业稳定的CPU内核电源芯片和复位芯片来保证系统运行时的稳定性。
CPU处理器
-SamsungS3C2440A,主频400MHz,最高533MhzSDRAM内存
-在板64MSDRAM
-32bit数据总线
-SDRAM时钟频率高达100MHz
FLASH存储
-在板256M/1GBNandFlash,掉电非易失(用户可定制64M/128M/256M/512M/1G)
-在板2MNorFlash,掉电非易失,已经安装BIOS
LCD显示
-板上集成4线电阻式触摸屏接口,可以直接连接四线电阻触摸屏;
-支持黑白、4级灰度、16级灰度、256色、4096色STN液晶屏,尺寸从3.5寸到12.1寸,屏幕分辨率可以达到1024x768象素;
-支持黑白、4级灰度、16级灰度、256色、64K色、真彩色TFT液晶屏,尺寸从3.5寸到12.1寸,屏幕分辨率可以达到1024x768象素;
-标准配置为统宝3.5”真彩LCD,分别率240x320,带触摸屏;接口和资源
-1个100M以太网RJ-45接口(采用DM9000网络芯片)
-3个串行口
-1个USBHost
-1个USBSlaveB型接口
-1个SD卡存储接口
-1路立体声音频输出接口,一路麦克风接口;
-1个2.0mm间距10针JTAG接口
-4USERLeds
-6USERbuttons(带引出座)
-1个PWM控制蜂鸣器
-1个可调电阻,用于AD模数转换测试
-1个I2C总线AT24C08芯片,用于I2C总线测试
-1个2.0mm间距20pin摄像头接口
-板载实时时钟电池
-电源接口(5V),带电源开关和指示灯
系统时钟源
-12M无源晶振
实时时钟
-内部实时时钟(带后备锂电池)
扩展接口
1个34pin2.0mmGPIO接口
1个40pin2.0mm系统总线接口
Mini2440开发板实物图如图3.1所示:
图3.1mini2440实物图
4.系统总体设计
系统以ARM9处理器S3C2440为MCU,作为控制器,负责和GPRS通信模块、安防模块进行通讯以及控制系统的数据采集和处理。
GPRS模块采用工业级的SIEMENSMC35i,实现短消息(SMS)收发,兼容AT指令。
火灾警报模块实现对仓库的温度进行实施的监控,可以随时得知仓库中的温度,如果温度达到一定的报警温度线就会发出警报,是由热敏半导体传感器、电源电路、AD模块及报警电路等组成[6]。
入侵警报模块实现监测仓库是否有人入侵和对仓库信息进行图像采集,由USB摄像头、热释电红外传感器、信号滤波和放大、信号处理和报警电路等几部分组成。
本系统的总体设计框架如图4.1所示:
图4.1总体设计框架图
5.系统详细设计与实现
5.1web服务器的搭建
为了提供远程web服务,用户可能通过internet或GPRS网络接入互联网,远程监控仓库的情况[7]。
每个模块的设计与实现:
(1)boa服务器模块设计
(2)CGI模块的设计
CGI功能概述:
根据按钮不同发送不同信息到邮箱,执行网页按钮相应的功能。
5.2boa服务器模块设计
功能描述:
在嵌入式系统中移植BOA服务器,提供web页服务
在WebServer中,BOA服务器根据请求方法的不同做出不同的响应。
当请求方法为HEAD,则直接向浏览器返回响应首部;当请求方法为GET时,第一步是返回响应首部,然后将客户端请求的URL目标文件从服务器上读出,并发送给客户端浏览器;当请求方法为POST,则将客户发送过来的表单信息传送给相应的CGI程序,作为CGI的参数来执行CGI程序,并将执行结果发送给客户端浏览器,BOA的功能实现是通过建立连接、绑定端口、进行侦听、请求处理等来实现的。
利用BOA进行网络通信主要涉及以下几个函数:
指定端口间的关联:
bind函数;指定端口侦听、等待远程连接请求:
listen函数;获取请求信息:
get-request函数;请求建立一个连接:
accept函数。
对于CGI请求BOA将为CGI程序创建进程,并将结果通过管道发送输出。
系统功能结构图如图5.1所示:
图5.1boa服务器功能结构图
5.2.1boa程序的移植
Boa的移植共有4个步骤:
1)下载Boa源码
下载地址:
http:
//www.boa.org/,或者
最新发行版本:
0.94.13
下载boa-0.94.13.tar.gz,注意:
从boa上下载的是boa-0.94.13.tar.tar,解压方式一样
解压:
#tarxzfboa-0.94.13.tar.gz
2)生成Makefile文件
直接运行src/configure文件
3)修改Makefile文件
a、
修改CC=gcc
为 CC=/usr/local/arm/3.3.2/bin/arm-linux-gcc
b、
修改CPP=gcc-E
为 CPP=/usr/local/arm/3.3.2/bin/arm-linux-gcc-E
4)编译
#make
#/usr/local/arm/3.3.2/bin/arm-linux-stripboa
5.2.2boa的配置
Boa需要在/etc目录下建立一个boa目录,里面放入Boa的主要配置文件boa.conf。
在Boa源码目录下已有一个示例boa.conf,可以在其基础上进行修改。
1)Groupnogroup修改成Group0,由于在/etc/group文件中没有nogroup组,所以设成0
另外在/etc/passwd中有nobody用户,所以Usernobody不用修改。
2)ScriptAlias/CGI-bin//usr/lib/CGI-bin/修改成ScriptAlias/CGI-bin//var/www/CGI-bin/
其它默认设置即可。
还需要创建日志文件所在目录/var/log/boa,创建HTML文档的主目录/var/www,将静态网页存入该目录下(可以将主机/usr/share/doc/HTML/目录下的index.html文件和img目录复制到/var/www目录下),创建CGI脚本所在目录/var/www/CGI-bin,将CGI的脚本存放在该目录下。
另外还要将mime.types文件复制/etc目录下,通常可以从linux主机的/etc目录下直接复制即可。
[8]
5.2.3Boa的执行
成功配置以后,还需要创建日志文件所在目录/var/log/boa,创建HTML文档的主目录/var/www,将静态网页存入该目录下(可以将主机/usr/share/doc/HTML/目录下的index.html文件和img目录复制到/var/www目录下),创建CGI脚本所在录/var/www/CGI-bin,将CGI的脚本存放在该目录下。
另外还要将mime.types文件复制/etc目录下,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 远程 智能 仓库 系统 Web 服务器 终端 开发 论文