袁适成++曹玉东
摘 要:以随着计算机、通讯和嵌入式的发展,各个部分之间的不断融合,基于嵌入式技术与通信方面越来越被人们所重视。其中视频监控一直是人们关注的重点,而嵌入式与视频监控的融合,也是现在发展的特点之一。这种系统功能专一,使用方便,安装操作简单,可以在千里之外对目标进行观察和监控。
基于嵌入式的视频监控系统,采用ARM作为数据的传输媒介,实现了数据到ARM到局域网的传输。通过无线网卡传输数据到手机APP,完成无线监控的功能。利用PC机与搭建的Web服务器,实现网络的实时监控,数据储存的功能。具有多端监控,方便安全,可靠性高,数据储存等优点,在网络监控有创新性和使用推广价值。
关键词:嵌入式 监控 ARM 局域网
近几年来,人们的物质生活在不断变好的同时,住宅的安全防范和财产的监控也成为了大家所不能避免的问题,除了一般的保护外,监控也成了人们关注的重点。视频监控能实现实时监控的功能,并且可以把监控画面储存下来作为证据,在此基础上,高级的监控系统可以通过网络进行远处的监控,监控画面可以准确再现还原。通过网络也可以实现多点监控,无线监控等监控方式。一般的监控,存在着无法长距离传输和只能采集不能处理等一系列的问题。除了内在因数,一些监控设备在安装时繁琐,不方便;对于监控者而言,也需要有一定的基础才能掌握操作监控系统。
一、系统设计
本系统研究基于JZ2440开发板的嵌入式无线远程网络监控的设计与实现,利用嵌入式设备的小巧方便,低耗能的特点,来搭建一个信号采集加工和传输的平台,传输给电脑和无线网卡。设计中采用JZ2440开发板,ARM920T内核硬件设备和Linux操作系统,CUP为三星的S3C2440A。整个系统分为开发板和PC机,开发板上的摄像头采集信号,把信号传输到开发板,进行JPEG压缩编码,然后把数据传到开发板上的无线网卡,通过手机APP接收解压,能在线的观看监控环境,同时数据通过以太网传到PC机上。PC机上操作系统为Windows7,通过以太网,在谷歌或火狐等支持Java的浏览器上都可以在線远程监控,同时PC机通过软件可以保存监控内容。系统采用嵌入式与监控的相互结合,发挥嵌入式设备体积小,内耗低,功能专一的特点,也实现了监控需要的安全性和隐蔽性,同时加入了储存的功能,让整个系统能轻易的满足监控的相关需求。
(1)嵌入式硬件平台
根据系统的需要,嵌入式硬件平台的搭建需要电源模块,CPU芯片,储存模块,以太网接口模块,USB接口模块,USB摄像头,USB无线网卡等几个部分。
①电源模块
系统使用1.5V和2.5V两种直流电源。电源模块使用AP1509芯片,AP1509是一款高效降压DC-DC转换器,输入电压为4.5V-22V,输出电压为1.23V-18V,反馈电压为1.23V,输出电流可达3A。
②CPU芯片
JZ2440开发板使用S3C2440A芯片,S3C2440A以 ARM920T为核心,采用0.13um CMOS标准单元和存储器编译器开发。它的低功耗,简单,优雅和全静态设计特别适合于成本和功耗敏感的应用。它采用了被称为高级微控制器总线架构(AMBA)的新的总线架构。
S3C2440A提供了出色的功能,其CPU内核,一个32位ARM920T RISC处理器设计的高级RISC机, ARM920T实现了内存管理单元MMU,AMBA总线,和哈佛缓存架构与独立的16KB指令和16KB数据高速缓存,每一个字线的长度为8。
③储存模块
系统采用从NOR Flash中启动加载程序。NOR Flash 的特点是芯片内执行,可以直接在Flash闪存内运行,不用把代码送到RAM中读取。NOR Flash的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响到它的性能。NOR器件时是以64~128KB的块进行的,执行一个写入或擦除操作的时间为5s。系统采取内存芯片型号为MX29LV160DBTI,其供电电压为3.3V。
④以太网接口模块
系统采用以太网芯片DM9000。M9000是高速以太网控制芯片,有一个一般处理接口,一个10/100M自适应的PHY和4K DWORD值的SRAM。它的目的是在低功耗和高性能进程的3.3V与5V的支持宽容。它内置该DM9000支持8位,16位和32位接口访问内部存储器,以支持不同的处理器。
⑤USB接口模块
USB是一种支持在USB主机和USB设备之间进行串行数据传输的通信协议。主机作为总线的主叫方,采用两种信令模式:全速模式12Mb/s和低速模式1.5Mb/s。S3C2440A处理芯片有两种USB通信接口:USB Slave和USB Host,USB Slave用于键盘和鼠标等USB设备,USB Host用于有读取能力的设备,如:摄像头。
⑥USB摄像头
系统采用锐尔威视USB红外摄像头,型号为RER-100W03M。输出图像格式为MJPEG,支持UVC协议,不需要外接RAM芯片,支持linux嵌入式系统。自动对焦,红外夜视,通过一些简单的命令就能进行数据的采集和传输。
⑦USB网卡
符合IEEE 802.11(n/g/b)协议。内置智能天线,提供更好的无线传输性能、稳定性和无线覆盖范围。总线类型有USB1.1和USB2.0。系统使用的无线网卡是腾达W311M 无线网卡,VID和PID分别是 148f:5370。能稳定的传输视频数据。
二、程序设计流程
①移植摄像头驱动
打开视频设备,视频设备被看做一个文件。使用open函数打开这个设备,打开视频设备后,可以设置该视频设备的属性,例如裁剪、缩放等。检查当前视频设备支持的标准,使用VIDIOC_QUERYSTD来检测,当检测完视频设备支持的标准后,还需要设定视频捕获格式,为视频捕获分配内存,获取并记录缓存的物理空间,使用VIDIOC_REQBUFS,获取req.count的缓存,下一步通过调用VIDIOC_QUERYBUF命令来获取这些缓存的地址,然后使用mmap函数转换成应用程序中的绝对地址,最后把这段缓存放入缓存队列。数据缓存采用FIFO的方式,当应用程序调用缓存数据时,缓存队列将最先采集到的视频数据缓存送出,并重新采集一张视频数据。这个过程需要用到两个ioctl命令。最后配置摄像v4l2驱动。驱动移植好了,插上摄像头,执行lsusb就可以看到摄像头数据。endprint
②移植servfox
先移植spcaview在Linux上编译spcaview再安装spcaview软件,spcaview 工具是用来纪录数据流,也能用来播放数据,也能作为网络监视客户端用。
最后在Linux上运行: ./spcaview –g –s 320x240 –w 210.41.135.100:7070
其中210.41.135.100是服务器的IP地址,这样我们就可以在PC机上看见USB摄像头采集进来的数据了。
③Boa服务器的移植
先配置boa.conf文件,然后在开发板的/usr/bin目录下执行 ./boa。然后移植libjpeg库。就能在PC机上通过浏览器进行监控。
三、控制方法
①摄像头放在监控地点通过USB线将数据传输到开发板,开发板应放在监控人所在处,二者之间通过USB数据线和USB延长线连接,线路安装简单,WIFI网卡直接与开发板相连。
USB无线网卡和USB摄像头连接到开发板,开发板上电,等待系统启动打开手机WIFI设置,连入本地WIFI,最后打开手机APP等待几秒APP会自动获取IP地址。数据会通过APP呈现出来。
②USB摄像头与开发板相连,开发板和PC机之间用网线直连,就可进行网络监控与存储。
当系统连接开发板上电以后,打开PC机本地软件Video.exe,在其中输入以开发板IP为基础的网址:http://172.16.150. 157:8080/?action=stream,即可进行本地监控。在软件中可以对视频信息进行在线观看和储存,储存位置可以自行设置。
③在局域网内的任意一台PC机,可以用谷歌浏览器和火狐浏览器登录开发板IP地址所在的页面,输入账号密码验证码后即可进行远程视频监控。如果PC机上装有“Video.exe”也可进行数据的存储。
四、结语
基于ARM开发板的网络监控设备在安全监控中的实时应用,设计了一套无线网络监控系统。设计中使用了JZ2440开发套件,建立一套能实时监控并能监控数据进行无线传输,远程网络传输和储存的系统。继承了S3C2440芯片强大的网络传输特点,能够以无线的方式,低成本,低功耗的實现信息的在线监控与储存,同时又使系统不失灵活性和可靠性。
参考文献
[1]韦东山.嵌入式Linux应用开发完全手册[M].北京:人民邮电出版社,2008
[2]李佳.ARM系列处理器应用技术完全手册[M].人民邮电出版社,2006.(12)
[3]张林.视频监控系统的现状和今后发展趋势[EB/OL],http://blog.sina.com,2009-02-07
[4]李进.基于Linux的远程智能监控系统的设计与实现[D].长沙:湖南大学,2011
[5]李晶.嵌入式Linux系统的移植技巧[J].现代电子技术,2008,31(24):40-43
[6]王学龙著,嵌入式Linux系统设计与应用[Ml.北京:清华大学出版社,2001
作者简介
袁适成,男,攀枝花学院,研究方向:电气信息工程学院电气工程及其自动化。
曹玉东,女,高级实验师,主要从事电类课程的理论及实验教学工作。endprint