基于无线Mesh网络的嵌入式视频监控系统设计*

2010-08-10 07:47卢上二冯菊香莫金旺
电视技术 2010年2期
关键词:视频流内核嵌入式

卢上二 ,冯菊香,莫金旺,赵 利

(1.桂林电子科技大学 a.信息与通信学院,b.信息科技学院,广西 桂林 541004;2.玉林师范学院,广西 玉林 537000)

1 引言

随着网络技术、嵌入式技术的发展,使得无线Mesh网络[1](Wireless Mesh Network,WMN)应用于数字化、智能化及微型化的嵌入式视频监控系统成为可能。由于WMN具备组网迅速、成本低、可靠性强等优点,嵌入式系统具有体积小、稳定可靠、高性价比等特点,WMN嵌入式视频监控市场面临全新的机遇。

WMN是一个无线多跳网络,由Ad Hoc网络发展而来,融合了Ad Hoc和WLAN网络的优势[2]。WMN是一种自组网络,每个Mesh终端节点都具有无线路由功能,任一节点的接入和退出都不会影响整个网络的正常运行。

WMN可以由多个Mesh终端节点组成,具有自组织、自愈、多跳式以及点对点网络等特性。

2 WMN的嵌入式视频监控系统设计

2.1 系统方案设计

WMN的嵌入式视频监控系统方案如图1所示。

图1 WMN的嵌入式视频监控系统

由多个Mesh终端节点构建WMN平台。结合业务需求,WMN选择Ad Hoc典型按需距离矢量(AODV)路由协议。AODV路由协议是一种比较成熟且应用广泛的路由协议,具有较低的内存和处理开销,而且源码开放、实现简单。

视频监控终端完成现场视频流采集压缩、无线路由以及数据收发的功能。Mesh网络中的任一终端均可作为视频服务器,视频服务器除具有视频监控功能外,还可选择具有管理维护整个Mesh网络正常运行以及数据转发到其他网络即网关等功能。视频监控终端将采集的视频流压缩后经最佳无线路由发送到视频服务器,视频服务器通过以太网将压缩的视频流转发到客户监控主机,客户监控主机对接收到的视频流进行数据处理,从而完成系统实时监控功能。

2.2 嵌入式视频监控终端硬件设计

2.2.1 视频监控终端硬件设计方案[2]

视频监控终端硬件设计框图如图2所示。

图2 视频监控终端硬件结构框图

视频监控终端嵌入式处理器选择三星公司微处理器S3C2440A[3],S3C2440A 采用了 ARM920T 的内核,0.13 μm的CMOS标准宏单元和存储器单元,功耗低、简单且全静态设计,特别适合对成本和功耗敏感的应用。

视频监控终端硬件结构是以嵌入式处理器S3C2440A为主控芯片并对其资源进行扩展,扩展的模块包括电源模块、视频采集压缩模块以及网络传输模块。其中视频采集压缩模块包括CCD摄像机的视频采集、SAA7113H的A/D转换以及视频流的MPEG-4软件压缩;网络传输模块包括以太网接口设计和RT73无线网卡接口设计。

2.2.2 电源模块设计

系统采用了太阳能电池和备用蓄电池双重供电方案。在太阳能电池能量充足的情况下,使用太阳能电池供电,否则使用备用蓄电池。

2.2.3 视频采集压缩模块设计

CCD摄像机采集的模拟视频经SAA7113H模数转换后,生成标准 ITU656 YUV4∶2∶2 格式的数字视频,输出到S3C2440A的寄存器。考虑到压缩的灵活性,本系统采用高压缩率的MPEG-4软件编/解码方式对视频流进行压缩,其最大压缩率可达到100∶1[4]。

2.2.4 网络传输模块设计

本系统网络传输分为无线传输和有线传输。无线传输为Mesh网络终端之间的传输,无线传输模块中无线网卡选择的是带有USB接口的台湾RT73无线网卡,视频监控终端将压缩的视频流经USB控制器扩展的USB1.1接口输出到RT73无线传输模块;有线传输为视频服务器与Internet之间的传输,由于在S3C2440A芯片上无网络接口,为了实现Mesh网与Internet的连接,所以在系统中扩展网络接口DM9000和RJ-45。

2.3 嵌入式视频监控终端软件设计

2.3.1 视频监控终端软件设计方案[2]

视频监控终端软件结构框图如图3所示。

图3 视频监控终端软件框图

Linux是以核心为基础的、完全内存保护、多用户、多任务的操作系统,可应用于多种硬件平台。Linux微内核直接提供网络支持,它的高度模块化使添加部件非常容易,而且Linux源代码是免费开放的,大大节约了开发成本。本系统设计选择采用成熟稳定的Linux2.6.12内核。系统软件设计主要工作包括底层设备驱动程序开发和上层应用程序设计。

2.3.2 底层设备驱动开发

底层设备驱动开发主要包括模数转换芯片SAA7113H,RT73无线网卡和DM9000以太网芯片驱动程序的开发。其中SAA7113H (ADC),RT73无线网卡和DM9000以太网芯片的驱动程序分别控制相应芯片完成视频采集,网络控制传输,Mesh网与Internet连接的功能。

2.3.3 上层应用程序设计

1)系统初始化

系统初始化即配置Linux内核的过程,将编译好的底层设备驱动程序编译到内核里,并选择内核对IEEE 802.11b协议的支持,即选择内核中的[Wireless LAN drivers&Wireless Extensions]。同时对内核进行剪裁,进行交叉编译生成内核镜像zImage,烧录进视频监控终端。

2)视频采集压缩的实现

系统初始化时,打开CCD视频设备文件,采集的模拟视频经SAA7113H模数转换,把生成的标准ITU656 YUV4∶2∶2格式的数字视频读入处理器芯片S3C2440A的寄存器中,通过MPEG-4的编解码器XVID对数字视频流进行软件编码。其中比较关键的是编码器类XVID的编写,程序如下:

3)AODV在嵌入式ARM-Linux下的移植

要使多个视频监控终端组成无线Mesh网络,必须将Mesh路由协议移植到各个终端,并设置RT73无线网卡工作在Ad Hoc模式下。本系统使用的AODV路由协议版本为aodv-uu-0.9.3。

(1)Linux内核的配置要求

本系统应用于嵌入式处理器S3C2440A的内核版本为Linux2.6.12。使用命令make menuconfig进行内核配置,选择内核对Netfilter的支持。配置如下:

(2)修改 Makefile

一是将默认内核源码路径KERNEL_DIR修改为嵌入式处理器S3C2440A的内核源码路径;二是将默认编译器修改为交叉编译器,即ARM_CC=arm-linux-gcc,ARM_LD=arm-linux-ld。

(3)编译加载

对修改好的源码进行交叉编译,将生成可执行文件aodvd、模块kaodv.ko,将aodvd和kaodv.ko拷贝到视频监控终端,执行命令insmod kaodv.ko对AODV路由协议进行加载,并测试移植成功。

4)网络传输软件

对MPEG-4压缩后的视频流采用高效率的TCP/IP协议传输。同时为了提高视频流的传输质量,网络传输部分采用了实时传输协议RTP/RTCP。

网络传输程序完成视频流数据包的封装,经RT73无线网卡传送到视频服务器,视频服务器经以太网传送到客户监控主机。为保证视频流的实时性,使用IEEE 802.11b标准完成压缩视频流的无线接收和转发。

3 系统测试

本系统应用于某景区进行测试,此景区景点多,不易布线。将5台视频监控终端安置于监控点,监控点之间的距离约为250 m,视频服务器和客户监控主机用以太网线连接。安装完毕,启动系统,各个视频监控终端将采集到的视频流经MPEG-4软件压缩后通过RT73无线网卡经最佳路由发送到视频服务器,视频服务器对接收到的视频流经以太网转发到客户监控主机,视频服务器还具有识别和管理各个视频监控终端的功能。客户监控主机对接收到的视频流进行数据实时处理。实验测试表明,系统视频流畅、图像清晰、实时性强,系统达到景区无线视频监控的要求。

4 小结

WMN利用自组织、自愈、多跳式以及点对点网络,融合用于有线站台与无线用户或无线用户之间沟通连接的IEEE 802.11a/b/g技术,具有灵活性强和稳定可靠等特点,同时加上嵌入式系统体积小、成本低、性价比高等,使得WMN与嵌入式系统的结合满足了目前视频监控的要求。

[1]KEITH R.Mesh wireless networking[J].IEEE Communications Engineering, 2003(10/11):44-47.

[2]祁超.无线Mesh网络的概念及关键技术[J].电信快报,2008(1):4-7.

[3]游林儒,谢俊斌.无线Mesh网络在视频监控中的应用[J].电视技术,2008,32(2):87-89.

[4]王宪,刘井权,戴旻.基于ARM平台的远程视频监控系统的研究[J].微计算机信息,2007(23):178-180.

猜你喜欢
视频流内核嵌入式
边缘实时视频流分析系统配置动态调整算法研究
强化『高新』内核 打造农业『硅谷』
基于视频流传输中的拥塞控制研究
基于嵌入式Linux内核的自恢复设计
Linux内核mmap保护机制研究
搭建基于Qt的嵌入式开发平台
铁路货场智能大门集装箱全景图像采集方法研究
嵌入式软PLC在电镀生产流程控制系统中的应用
美国视频流市场首现饱和征兆
微生物内核 生态型农资