新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 远程多媒体监控系统的软硬件开发

远程多媒体监控系统的软硬件开发

作者:时间:2006-05-07来源:网络收藏

摘要:介绍了单机多媒体监控系统的软、硬件实现方法以及系统的功能等。着重描述了基于高速DSP芯片的系统各模块组成、原理及具体的设计方法。最后,从技术和社会效益角度对系统进行了展望。本系统具有广阔的应用前景。

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

关键词:多媒体 器 数据通信 数据压缩

在一些重要的单位,例如金融机构的营业网点,为了实现及时地报警,报警装置能够自动拨号报警或人工拨号报警。然而,保安人员或警务人员接到报警信号后,在不了解现场情况下就立即赶到报警点,这种比较盲目的方式给事件的妥善处理带来了不利的因素。所以,对于处理报警的工作人员迫切需要在收到报警信号的同时能直观地获取现场图象及声音,为准确、及时地处理突发事件提供参考。另外,在一些工业部门中,很多设施和岗位要实行24小时无人职守,完成诸如遥视、遥控等信息的传输,对于这种分布广、持续工作时间长的应用场合,采用自动的远程监控系统是比较合适的解决方案。

现在,国内的部分地区和部门开始应用多媒体通信技术实现公共安全防范。然而,他们采用的设备大多是基于PC机插卡式的系统,或是国外的单机设备。这些设备要么实用性差,要么价格昂贵,使得多媒体远程监控技术难以普及和推广。

在此背景下,我们和厦华电子合作,研制开发了单机的监控系统。本系统参照ITU-H.324协议中的通信协议构建通信过程,采用高速DSP技术,用软件实现音频和视频的压缩编码,试图以新技术为基础,用最简化的硬件结构,力求最高的性能价格比,获得较好的社会效益。

1 系统构成及功能简介

1.1 系统构成介绍

远程多媒体监控系统是一种远程图像、语音自动传输监控装置,由监控点的终端机和控制中心的主控微机两大部分组成(见图1)。终端机的主要功能及构成是:通过A-Law COMBO CODEC器件TP3057采集监控点的语音信号,形成PCM信号;由图像编码器BT819A采集监控点的原始图像信号,形成数字视频信号;把浮点器ADSP21061作为系统的图像协处理器,控制视频图像采集、存储并实现视频图像的实时压缩处理(符合H.263建议);用定点器ADSP2181作为整个系统的主控处理器,在完成音频采集和语音的实时压缩处理(符合G.723.1建议)的同时,还完成对监控点实施数据采集与控制、通过MODEM与主机交互命令并把图像和语音的编码数据按一定的格式打包,通过MODEM送到远端的主机等操作;经过打包后的编码数据由ADSP2181送出,这里使用异步通信器件TL16C550B连接DSP和MODEM,这样做简化了DSP软件的实现,提高了系统的可靠性和可扩展性。

1.2 系统功能与组网配置

系统具有的主要功能如下:

·报警联动功能:当报警探测器被触发时,就自动切换到指定的摄像机,同时开始发送现场采集的图像和声音信息。

·远程监视功能:可通过普通电话线在异地进行可视化监视,包括切换不同摄像画面、静止或活动图像,并可远程控制现场有关设备工作。

·数字化处理功能:可以将摄像图像以数字方式保存在电脑硬盘或其他各种存储设备中,实现各种数字化处理过程,如打印、转换、检索等。

·方便的组网功能:控制中心可以通过电话网对监控终端机进行配置,包括:使用许可证书、控制中心电话号码、终端机编号、缺省数据等,即可完成系统的组网(见图2)。系统可连接的监控终端机数量不限。

2 系统的硬软件实现

2.1 系统终端机硬件设计

系统终端机按功能划分成以下几个主要部分:处理器核心、模拟数据接口、图像采集控制、串行控制器接口。

处理器核心 我们考虑到图像和语音的压缩编码处理需要较大的运算量和内存空间,所以采用了两片DSP芯片分别进行图像和语音的压缩编码。监控终端机的系统处理器核心部分是由ADSP21061(图像协处理器)与外扩的SRAM、ADSP2181(主控处理器)和各自的EPROM组成。这两个处理器芯片之间的通信是通过其内部的全双工同步串口的异步应答方式实现的。

硬件连接主要是通过两个帧同步信号RFS/TFS(接收帧同步/发送帧同步)的交叉互连,两个主机分别把RFS设成外部输入、TFS设成内部产生输出。对于发送端来说,当发送寄存器中的数据有效时产生TFS信号;同时,对于接收端来说,当在RFS信号线上收到RFS信号时就会按照SCLK的时钟时序接收DR上的数据,这样经串口发送和接收的数据帧都是对齐的(见图3)。

模拟数据接口 模拟接口采集外界环境的原始图像、语音信息进行处理。分为图像接口和语音接口两个部分。语音信号模拟部分的作用主要在录音的过程中将输入的语音信号放大、带通滤波后送入COMBO CODEC滤波器中进行A/D转换。放大部分采用普通的运放电路,构成一个同相放大电路,使得输入的信号在A/D采样的范围内,从而可以提高量化的精度(见图4)。

视频信号的采样、量化采用BT819A,将采集的图像数据通过ADSP21061的外部DMA通道7(设置该通道功能为数据由外部设备传入到外部指定的地址中的DMA功能)实现。BT819A是一种单片视频解码芯片,可以支持PAL/NTSC/S-VIDEO标准的视频采集设备(见图5)。

图像采集控制 图像采集控制部分是终端机设计中的关键部分。因为图像的采集和转换要求速度快,并且不能占用系统过多的资源,所以本部分的设计关系到整个系统的性能。

由上面的介绍可以知道,图像的A/D转换是通过BT819A来实现的。但是BT819A没有提供对图像数据的帧存能力,因此BT819A转换后的数据需要在ADSP21061的DMA控制器的参与下送入ADSP210161的外扩存储器中实现帧存,这个过程需要ADSP21061与BT819A通过译码逻辑实现。BT819A提供两种图像数据接口,我们采用(异步图像数据接口)API模式B,在该模式下异步图像数据接口送出图像数据格式为YUV422的16bit数据。系统将BT819A作为ADSP21061的外部设备,同时,ADSP21061的外扩存储器作为BT819A的视频缓冲器。由于ADSP21061的DMA控制器支持从外部设备到外部的存储器的DMA传送方式,这样在此传输方式下,ADSP21061就可以响应外部设备DMA请求信号,执行DMA过程,将相应的数据写入外部存储器中。ADSP21061所收到的DMA请求信号是由BT819A送出的图像数据接口控制信号经过译码得到的。

串行控制器接口 经过压缩编码的图像和语音码流在ADSP2181内部打包处理后,通过MODEM经过PSTN传送到远端的中心控制机。因此需要考虑设计一个ADSP2181与MODEM之间的接口,通过ADSP2181与TL16C550B的一个数据接口来实现这个功能,具体的设计思想是将TL16C550B的数据寄存器映射成为ADSP2181的外部存储器,这样对TL16C550B内部寄存器的读写控制就变为对ADSP2181片外存储器的访问。

2.2 系统终端机软件设计

为了保证各媒体数据传输的完整性和实时性,需要对各媒体信源进行高速压缩、对各媒体的码流数据进行恰当的组织,而且还将对各媒体数据进行同时处理。

然而如果通过软件开发在单片数字信号处理器上同时处理多个实时任务是很困难的,因为对于单个的微处理器来说它的运行总是串行的。在我们的系统控制中遇到的正是这个问题:ADSP2181不但要进行整个系统流程的控制,还要进行G.723.1的语音编码,这两个任务都是要在系统运行期间不间断运行的。在具体实现时,我们把实时语音编码的部分作为主程序,这样可以保证语音信号处理的连贯性;而系统功能的主要流程在ADSP2181的Timer中断中完成。为了实现这样的操作,我们把系统功能的主流程分成了几个阶段,程序中通过设置一个标志位,来引导系统进入不同的运行阶段,完成不同的功能及操作。这样两个任务就可以分时地享用DSP的运行时间,类似于多任务操作系统中的分时间片操作。

Time中断服务子程序所实现的是系统功能的主流程:由监控点触发报警或是主控微机主动巡视来启动系统,先按缺省方式传送各路摄像头的实时图像和监控点的实时语音,再进入等候状态,等待主控机的命令并进行相应的操作。主程序进行语音的实时编码,如图6所示。

因为语音采集和语音编码是同时进行的,为了提高系统处理的效率、保证语音数据的连贯性,在需要处理语音数据的地方我们都使用了双缓冲,数据处理的焦点在两个缓冲区之间切换。这样做可以保证对语音的8kHz采样不会丢失样本点,不会因为数据暂时来不及送到电话线上而发生丢失。

另外,对将要通过MODEM发送的数据也采用了双缓冲技术。MODEM备用(录入)缓冲区的数据来自语音缓冲区或是图像缓冲区:当发现MODEM备用缓冲区空闲时,先查询当前的语音缓冲区是否有数据,如果当前语音缓冲区数据有效,则录入到此MODEM备用缓冲区中;如果当前语音缓冲区数据无效才进一步查询图像缓冲区。当MODEM当前(输出)缓冲区不空闲时,就通过TL16C550向MODEM发送其中的数据。语音/图像数据的传送是各自相对独立的,这个情况相当于把两个逻辑信道(语音/图像)加在一个物理信道上传输。

2.3 系统控制中心软件设计

控制中心微机主要进行有关监控数据的接收和处理,还可以进行新登记入网监控点的组网配置。控制中心软件工作在Windows95/98平台上,充分利用了Windows95/98下的多线程机制和消息驱动机制。程序是以串口监听线程为工作核心,监听串口(也可以说是监听电话线/MODEM)上的信号,当接收到载波信号及报警终端送来的用户信息后,就向有关窗口发送连接成功消息IDM_USER_GOT_CARRIER和IDM_USER_CONNECTED。定义成两个消息是为了进行其他误呼入载波信号的处理,只有进行过身份确认的呼入信号才能继续工作。

在连接建立后的工作中,对语音包和图像数据包分开处理。对接收到的语音包,立即进行实时解码,为了防止语音缓冲区的重入和覆盖,把解码后的数据链入一个链表结构中(50个帧存入一个表项),放音的时候再从链表头提取一个表项进行播放。为了保证语音信号播放的流畅性,我们为语音的播放启动单独的线程。当一次的放音结束时,系统会产生一个消息MM_WOM_DONE,这样可以在这个消息的处理函数中进行新的处理过程。收到的图像数据包直接送入解码缓冲区进行解码,成功地解出一帧图像后就在指定的设备上下文中显示。考虑到信道上可能的错误情况和实际需求,对H.263的解码程序做了补充,增强了稳定性,使系统即使在码流出错的情况下仍能复原并尽可能多的解出出错图像,还可以在不同格式间自由切换。

综上所述,如果采用最新的高性能DSP芯片来实现数字监控系统,将得到更高的图像处理能力,同时可以在不改变系统的前提下,采用更高效率的算法来实现语音和图像编、解码,更好的满足实际需要。文中所介绍的各种方法,不仅可以应用在远程多媒体监控系统中,还可以应用在其他涉及远程数据传输、信息交互等技术的单机或非单机系统中。监控系统不但可以应用在银行、仓库等重要部门,还可以应用于远程医疗、诊断、维护和教学以及家庭监控等场合。因此采用了高速DSP技术的远程多媒体终端系统有着广泛的实用价值和社会效益。



评论


相关推荐

技术专区

关闭