一种基于ARM的视频监控系统的设计
一、引言
目前主要存在两种数字视频监控系统类型,一种是以数字录像设备为核心的视频监控系统,另一种是以嵌入式视频Web服务器为核心的视频监控系统。视频服务器内置一个嵌入式Web服务器,采用嵌入式实时多任务操作系统。摄像机送来的视频信号数字化后由高效压缩芯片压缩,通过内部总线送到内置的Web服务器,网络上用户可以直接用浏览器观看Web服务器上的摄像机采集的图像,授权用户还可以控制摄像机、云台、镜头的动作或对系统配置进行操作。本文简要叙述了一种实用性强的数字化视频监控系统。
二、监控系统的硬件设计
本系统设计的硬件平台主要由三部分组成,监控前端视频服务器、USB摄像头以及远程客户机。其中监控端视频服务器是基于ARM9的32嵌入式系统,视频服务器主要由核心处理器部分和扩展部分组成。
图1是原理框图,其工作原理为:移植具有实现硬件功能的嵌入式Linux操作系统到系统平台中,在操作系统中编写驱动程序实现对摄像头的驱动控制,系统平台中Linux操作系统启动后加载摄像头驱动,用视频采集应用程序实现对视频信号的采集,处理器S3C2410再对采集到的视频数据进行JPEG压缩,最后通过网络通信程序把压缩后的视频数据发送出去,远程端主机收到后可解压显示,同时也可通过网络对系统平台进行远程控制。
利用S3C2410 强大的扩展功能,根据系统的实际需要,设计如图2所示的硬件系统。在处理器丰富资源的基础上进行了相关的配置和扩展,平台配置了64Mbytes 8位的NAND闪存和64Mbytes32位的SDRAM,通过以太网控制器芯片CS8900A扩展了一个网口,另外引出一个串行接口和两个HOST/DEVICEUSB接口。通过在USB接口上外接一个带USB口的数码摄像头,将采集到的视频图像数据放入存储器缓冲区中,或者用JPEG压缩处理程序处理缓冲区的图像数据并保存,数据可存储在NAND闪存中等待远程主机的访问,也可通过CS8900A扩展的网络接口将视频数据直接发送到远程网中的控制主机上。
三、Linux在ARM平台的移植
Linux具有内核小,效率高,源代码开放,微内核直接提供网络支持等优点。但嵌入式系统的硬件资源毕竟有限,我们不能直接把Linux作为嵌入式硬件平台上的操作系统,需要针对具体的应用通过对内核的配置和裁减,使整个系统能够存放到容量较小的Flash中。Linux的动态模块加载方式使Linux的裁剪极为方便,高度模块化使得添加和删减非常容易。
系统采用交叉编译调试,PC机作为宿主机,对应的嵌入式系统平台叫做目标板。嵌入式Linux提供了一套完整的工具链(toolchain),它利用GNU的gcc做编译器,用gdb、xgdb做调试工具,能够很方便地实现从操作系统内核到用户态应用软件各个级别的调试。
相关文章
- 2024-07-22彩色CCD摄像机三基色代表波长的试验研究
- 2024-08-06接触测量中测头半径误差的修正
- 2024-09-19多波长辐射温度计最少波长数确定的理论依据
- 2023-01-0412Cr1MoVg短期高温冲击断裂有限元分析
- 2023-08-11表面三维形貌参数及其评定
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。