新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > Windows CE 视频监控系统的设计

Windows CE 视频监控系统的设计

作者:时间:2012-04-20来源:网络收藏

摘要:本文主要是在S3C2410处理器上移植嵌入式操作系统、USB摄像头驱动,在ARM9处理器上完成采集,压缩,通过以太网接口连入局域网,随时可供授权用户在线访问,当有物体闯入监控范围内时,将抓拍下画面并通过GPRS模块发送短信至用户手机。本文详细介绍了硬件电路的和主要软件的编程实现。

本文引用地址:http://www.eepw.com.cn/article/149196.htm

1引言计算机智能监控是计算机视觉领域一个新兴的应用方向和备受关注的前沿课题。伴随网络技术和数字技术的飞速发展,监控技术正向着智能化、网络化方向不断前进。功能日益强大,但是依然需要工作人员不间断地分析监视场景内的活动,日夜值守,工作量繁重。因此计算机视觉和应用研究学者适时提出新一代监控视频监控的概念。视频监控在不需要人为干预情况下,利用计算机视觉和视频分析的方法对摄像机拍录的图像序列进行自动分析,实现对动态场景中目标的定位、识别和跟踪,并在此基础上分析和判断目标的行为,从而既能完成日常管理又能在异常情况发生时及时做出反应。计算机视频不仅符合信息产业的未来发展趋势,而且代表了监控行业的未来发展方向。

嵌入式系统是指以应用为中心,以计算机技术为基础、软硬件可裁剪、适应于特定应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统,由于嵌入式系统的实时性等特点,监控计算机逐渐向嵌入式方向发展。但是目前大多数嵌入式系统还孤立于Internet之外,随着Internet的发展以及Internet技术与信息家电、工业控制技术等结合日益密切,嵌入式设备与Internet的结合将代表着嵌入式技术的真正未来。本文所研究的基于的视频系统结合了嵌入式、网络、智能监控等特点,用于远程自动监控场所。

2系统总体结构在嵌入式处理器上移植嵌入式操作系统,不仅提高了开发效率,还可以大大提升视频监控的灵活度和扩展性,使得视频的后续应用程序开发便于实现。本视频监控系统总体结构如图1所示。

前端USB摄像头负责视频采集;带有嵌入式操作系统的ARM9控制模块控制USB摄像头的视频采集和传输(通过以太网和中国移动无线网络两个途径);Ethernet接口和GPRS模块作为网络传输模块。

3系统硬件数字视频监控系统的硬件核心ARM微处理器S3C2410X是韩国的三星公司生产的32位RISC微处理器。含ARM920T内核[1]、CPU主频203MHz、板载64MBSDRAM、64MBFLASH。系统的核心硬件组成如图2所示。主要包括USB摄像头,采用CMOS35万象素感光芯片,处理器通过USB接口读取USB摄像头的视频图像数据;以太网卡采用了10M以太网卡芯片DM9000;GPRS模块采用华为GTM900无线模块,插入SIM手机卡后通过AT命令发送短信到用户手机上。

4系统的软件模块设计软件部分包括。NET开发板具备良好支持的板级支持包,可快速定制一个基于标准PC硬件结构的嵌入式平台,实现基于Windows平台软件的重用和移植,能较好地满足嵌入式PC视频监控系统的开发和应用需求。

4。1嵌入式系统平台设计NK。BIN是系统配置文件和定制的OS核心模块合并后经编译形成的一个二进制文件,NK。BIN的构建就是对构成OS的模块进行配置、链接、定址以生成可启动OS镜像的过程,在嵌入式平台创建过程中完成。根据视频监控功能需求,主要是选择BSP以及对OS各模块特性进行定制。

(1)选择BSP。针对本系统的ARM920T硬件平台,我们选择了硬件厂商附带的BSP作为嵌入式平台的底板支持。此BSP提供了对相关设备驱动(ARM920T芯片驱动、网卡、USB像头等)的软件实现和支持,以及WindowsCE。NETOS的核心特性的支持。

(2)应用程序和服务特性。选择COM组件特性,以提供对DirectX基于COM对象的函数和方法的接口支持。

(3)通信和网络特性。网络设备/驱动器接口规范,TCP/IP协议栈及其它网络API,包括WindowsNetworkingAPI、RTCClientAPI等网络模块,以实现向网络服务器发送视频数据的能力。

(4)文件系统和数据存储特性。对内置文件系统选取ROMRAMFileSystem模块,用于OS镜像的存放和运行。外围存储设备的文件系统由存储管理器负责管理,选取StorageManager模块,以实现对FAT文件系统的存储管理。

(5)编译、链接、装配OS各定制模块,生成NK。BIN文件。建造CE操作系统后,应创建为平台上其他应用程序的开发提供支持的软件开发工具包SDK(包括WindowsCE。NET操作系统组件,硬件驱动程序等)。可以利用EmbeddedVisualC++4。0提供的工具来创建、测试和修改应用程序。利用Platform。Builder4。0创建SDK并导入到MicrosoftEmbeddedVisualC++4。0,然后从环境列表中选择所定制的平台,进行应用程序的开发、调试和运行。

4。2应用程序开发系统主要模块包括:视频采集模块,视频压缩传输模块,图像动态检测及GPRS报警模块。

1,视频采集本系统所用的是基于OV511芯片的网眼2000USB摄像头。WindowsCE下的设备驱动程序分为两类:本机驱动程序和流接口驱动程序。本机设备驱动程序,也称为“内置驱动程序”,这些设备驱动程序是一些硬件所必需的,是由原始设备制造商创建的,用以驱动如键盘、触摸屏、音频等设备,往往在设备售出后就不会再更换。流接口驱动程序是运行在用户级别的动态链接库,用来实现一组称为流接口函数的固定函数,这些流接口函数使得应用程序可以通过文件系统中的特殊文件与设备进行交互。

每个流接口驱动程序必须实现一组标准的函数:XXX_Close,XXX_Deinit,XXX_Init,XXX_IOControl,XXX_Open,XXX_Powerdown,XXX_powerUp,XXX_read,XXX_Seek,XXX_Write用来完成标准的文件I/O函数和电源管理函数,这些函数提供给WindowsCE。NET操作系统的内核使用。这些函数通常也叫做流接口驱动程序的DLL接口。

流接口USB驱动主要分为下面几步:1)建立一个WCEDynamic-LinkLibrary;2)书写一个Exportdef文件输出各个驱动需要的函数符号;3)依据USB驱动加载的流程,添加完成USBInstallDriver,USBDeviceAttach,USBUnInstallDriver,CAM_Init,CAM_Deinit各个函数,并进行测试;这些函数正确填写之后,驱动程序就可以加载了。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭