系统整体结构设计与工作原理目前楼宇门禁装置大多为一个简单的可控电子开关,一般采取语音对话的有线控制方式,不具备可视化能力和无线控制能力,其存在交互效果差、有线网络布线繁琐、智能化程度不够高的缺点。随着视频编、解码技术和无线传输技术的快速发展,智能化楼宇系统也得到了快速的发展。嵌入式无线网络产品以其体积小、成本低、使用灵活方便等优点,得到了越来越广泛的应用。随着市场上智能化楼宇的不断升温,门铃系统已作为智能化办公室和智能化小区的一个重要组成部分。本研究介绍的智能小区无线可视化门铃系统正是在这样的应用前景下,基于无线网络协议进行设计的。如图1所示,该系统采用低功耗、高性能的嵌入式IDT RC32434作为主控芯片,使用VW2010芯片进行硬实时编解码以提高编解码效率,采用PHILIPS公司的BGW200无线芯片进行音视频码流的转发控制。整个系统由服务器端和客户端两部分组成,主要实现音频视频数据采集和高质量编解码以及无线网络传输功能。●服务器端工作原理由CCD Sensor和音频端口进来的输入信号,经过视频A/D和音频A/D转换后,进行MPEG4视频编码和MPEG MP3音频编码。编码后的视音频码流送到网络复用模块打包后,将压缩编码后的数据流经过无线网络送到客户端。如下图1所示:系统客户端工作原理由无线网络接收的音视频码流数据,经过网络解复用模块解复用后,获得的视频码流和音频码流分别送至视频解码模块和音频解码模块进行MPEG4视频解码和MP3音频解码。解码后的数据经过视频模拟编码、D/A和音频D/A转换后送到可视终端显示。如下图2所示:系统的硬件设计主要分四个部分:主控制系统、音视频采集系统、多媒体编解码系统、无线网络系统。它是一款64位MIPS,内部集成了NAND Flash控制器(FlashC)、32位PCI总线控制器(PCIC)、4通道DMA控制器、4通道SDRAM控制器(SDRAMC)、外部总线控制器(EBUSC)、外部总线接口(E—BUSI)以及2个通用串口等,并通过内部总线对它们分别进行控制。该芯片提供高达400MHz的频率集成了标准外围元件互连(PCI)接口,可与和串行Ⅵ、等先进外围设备连接。处理速度快,功能强,性价比高,能很好满足嵌入式ucLinux系统的需求。SAA 7110是Philips公司生产的可编程前端视频解码器,它可将输入的视频模拟信号转换为YUV数字信号。其内部包含三路模拟处理通道,能实现视频源的选择,数据输出格式有YUV 4:1:1(8bit)和YUV4:2:2(8bit)两种。它还包括抗混叠滤波,A/D转换,自动嵌位,自动增益控制,时钟产生,多制式解码及亮度、对比度和饱和度的控制等功能。该系统采用VW2010作为多媒体编解码芯片,它是一种实时MPEG-4音视频压缩/解压芯片。其片内集成有3个信号处理/控制单元,包括一个视频编码(压缩)器、一个视频解码(解压)器和一个片内CPU(内部扩展一个音频编码DSP、一个音频解码DSP、一个多路复合单元和一个多路解复合单元。具有可编程、高性能和低功耗特点,因为每个信号处理/控制单元都由一个RISC处理器和专用的硬件加速器构成。无线模块采用的芯片是PHILIPS公司的BGW200,该芯片通过高速串口SPI2与处理器的SPI1口连接。SPI(SeriaPeripheral Interface,串行外设接口)是一种同步外设接口,允许MCU与各种外围设备以串行方式进行通信、数据交换。当IDTRC32434与BGW200之间互相通信时只能通过BGW200的SPI2口进行,此时IDT RC32434是主(HOST),BGW200是从机(SLAVE),传输的时钟由HOST控制。本系统软件设计按层次划分主要分为三层:系统初始化引导和嵌入式系统内核移植、外设驱动程序编写(包括USB摄像头驱动、无线网络模块驱动等)、数据采集与无线传输。虽然Linux内核小、效率高,但嵌入式系统的硬件资源毕竟有限,因此不能直接把Linux作为操作系统,要针对具体的三、硬件设计四、软件设计1、主控芯片采用IDT RC324342、CCD摄像头和A/D转换芯片3、多媒体编解码芯片4、芯片1、系统引导、内核移植和文件系统的建立应用通过配置内核、裁减shell和嵌入式C库对系统进行定制,使整个系统能够存放到容量较小的Flash中。嵌入式Linux系统主要由4个部分组成:引导内核启动的文件(bootloader)、Linux内核文件(kernel)、虚拟磁盘文件(ramdisk)、用户空间文件(user)。把它们分别放在DataFlash内的4个分区模块中。对于不需要动态改变,使用较节省空间的ROMFS只读文件系统;user模块内需要进行较多的读写操作,所以使用支持动态擦写保存的JFFS2文件系统。在构建完软件平台后,下面就主要涉及到USB摄像头驱动和无线驱动模块设计、视频采集模块和基于无线网络传输模块的程序设计。2、USB摄像头驱动搭建好嵌入式Linux的开发环境后,下一步就首要完成USB摄像头驱动工作。Video4Linux(V4L)是Linux中关于视频设备的内核驱动,它为针对视频设备的应用程序编程提供一系列接口函数。对于USB口摄像头,其驱动程序中提供了基本的I/O操作接口函数open,read,write,close的实现。当应用程序对设备文件进行系统调用操作时,Linux内核将通过file-operations结构访问驱动程序提供的函数。在编译时选取动态加载模式,确定USB摄像头被正常驱动后,下一步就是使用Video4Linux提供的API函数集来编写视频采集程序。3、音视频数据采集在完成USB摄像头驱动后,就可以针对设备文件/dev/video进行视频捕捉方面的程序设计。其中用到的主要函数有:Camera open():用来开启视频设备文件;Camera get capability():取得设备文件的相关信息;Camera get picture():获取图像的相关信息;Camera close():用来关闭设备文件;Camera grab image():用来抓取图像,采用mmap方式,直接将设备文件/dev/video0映射到内存,加速文件I/O操作,还可以使多个线程共享数据。如图、音视频压缩编解码获取图像数据后,可以直接输出到FrameBuffer进行显示,由于本系统要将采集到的音视频通过无线网络传输出去,所以在传输之前要对原始的图像数据进行压缩编码,在此选用VW2010芯片来实现MPEG-4视频编解码方案。和其他标准相比,MPEG-4压缩比更高,节省存储空间,图像质量更好,特别适合在低带宽条件下传输视频,并能保持图像的质量。对视频流进行压缩编码以后,接下来就要实现网络传输部分的功能。无线驱动模块的软件架构分为三部分:客户驱动(client driver)、主机硬件抽象层(HHAL)、主机操作系统抽象层(HOSAL)。设备驱动程序本质上来说就是一组相关函数的集合。它利用结构体file_operations与文件系统联系起来,内核使用该结构体访问驱动程序的函数,该数据结构定义再头文件中。在这个数据类型中,每一个成员变量指向驱动程序中特定操作的函数,对于没有的操作函数,相应的成员函数可以设置位NULL。设备驱动程序通常包含下面3个最主要的部分:(1)驱动程序的注册和注销;(2)设备的打开和释放;(3)设备的读写操作。对于需要动态加载的模块,通过执行Makefile文件,在当前目录会生成目标文件。将目标文件下载到已经烧写好的文件系统中。当目标板重新启动后,运行命令:即可将无线驱动模块链接到内核中。一旦驱动程序被注册到内核表中,对驱动程序的操作就和它的主设备号对应起来了。当应用程序对设备文件进行某种操作时,内核会从file_operations结构中找到并去调用正确的函数。卸载模块可输入下面的命令:rmmod 。(1)初始化系统初始化包括对SAA 7110、VW2010、RC32434、BGW20等芯片的初始化。初始化过程主要包括对一些数据寄存器、地址寄存器、中断服务寄存器等进行相应的操作以形成系统运行环境的初始状态。(2)传输控制策略上电开始初始化程序后,服务器端USB摄像头的模拟视频信号在程序控制下通过SAA7110视频解码芯片完成模数转换,接着mpeg4编码芯片VW2010将接收的数字图像信号进行DCT变换、量化编码、熵6、无线网络传输控制过程编码后,把数据流输出到相应的SDRAM内部的FIFO中。RC32434MCU在FIFO中查找帧同步标志,如果找到,判断缓冲区内是否有一帧的数据,如果有则微处理器读出压缩数据流并发送到BGW20进行扩频、调制发射出去。客户端初始化过程与服务器端类似,在系统初始化完毕后通过与服务器端交互,建立网络连接,并将SDRAM用作硬解码时的数据缓冲区,采用LCD接口连液晶屏用来显示图像。整个系统中,由RC32434完成对各器件的初始化、协调整个系统的工作。系统采用64位MIPS芯片IDT RC32434作为主控制器,以VW2010作为MPEG-4编、解码芯片实现网络端口输入和输出的MPEG-4码流、采用BGW200无线模块进行音视频数据传输,在uclinux平台上结合先进的多媒体无线传输技术实现的,结果表明其具有较高的传输效率、和普遍的门禁设备相比,本系统具有更好的灵活性与扩展性、交互能力、控制能力更强。而且该无线音视频传输技术也可广泛用于IP电视、卫星电视、安防系统、智能楼宇系统和基于MPEG-4标准的数字电视广播系统中,应用前景十分广阔。5、无线网络模块驱动6、无线网络传输控制过程五、结论【参考文献】[1]杜春雷编著,《ARM体系结构与编程》,清华大学出版社,2003.管理中心机,主机,用户分机,围墙机,连网转换器,中继器,保护器,解码器,电源,开锁控制器, 综合布线系统有线电视系统闭路电视监控系统门禁系统(含可视对讲)防盗报警系统楼宇自控系统会议系统广播系统