《基于S3C2440可视楼宇对讲系统的实现.pdf》由会员分享,可在线阅读,更多相关《基于S3C2440可视楼宇对讲系统的实现.pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第 31 卷 第 2 期2012 年 2 月实验室研究与探索RESEARCH AND EXPLORATION IN LABORATORYVol31 No 2Feb 2012基于 S3C2440 可视楼宇对讲系统的实现黄永龙,林和志(厦门大学 信息科学与技术学院,福建 厦门 361005)摘要:重点介绍了基于 3 星 ARM 控制器 S3C2440 和 linux-2 6 22 操作系统的数字可视楼宇对讲系统的软硬件设计与实现。该系统通过局域网实现楼宇中各嵌入式终端机互连,采用 RTP 协议进行语音及视频流传输,使用 Mediastreamer2 流媒体处理框架对语音视频流进行传输、处理、保存、
2、播放,实现嵌入式终端可视对讲和监控功能。关键词:S3C2440;Mediastreamer2;RTP;linux-2 6;楼宇对讲中图分类号:TN 915 05文献标志码:A文章编号:1006 7167(2012)02 0073 04Implementation of Visual Building Intercom System Based on S3C2440HUANG Yong-long,LIN He-zhi(School of Information Science and Technology,Xiamen University,Xiamen 361005,China)Abstrac
3、t:This paper focuses on design and implementation of digital visual building intercom system based on theSamsung ARM controller S3C2440 and linux-2 6 22 operating system Embeded terminals of this system achieveinterconnection through LAN RTP protocol is adopted to transmit audio and video streams Me
4、diastreamer2 library,amedia stream processing framework,is used for audio and video stream transmission,processing,storage,and playback,toachieve the video intercom and monitoringKey words:S3C2440;Mediastreamer2;RTP;linux 2 6;building intercom system收稿日期:2011 05 09作者简介:黄永龙(1969 ),男,广西博白人,工程师,主要从事电气及
5、自动控制系统研究。E-mail:long xmu edu cn0引言随着网络技术日趋成熟和发展,与其他技术交叉融合,基于 TCP/IP 协议的全数字化智能社区系统,是智能社区技术发展的趋势,有广阔应用前景。可视楼宇对讲系统是智能社区系统的重要组成部分,它能满足可视对讲、远程开锁、远程监控、住户紧急报警等安全要求,对社区安全管理起着至关重要的作用1。传统的可视对讲系统中话路和视频传输均采用模拟信号传输,信令和数据往往采用简单的串行通讯方式,这必然造成重复投资,布线施工及调试的难度大大增加。同时由于使用 2 套信号线,各种设备联网复杂,无法解决信道抢占和远距离信号衰减等问题。基于TCP/IP 的全
6、数字化系统可以解决上述问题。本文的目标是实现基于 3 星 ARM 控制器 S3C2440 和 linux-2 6 操作系统的可视楼宇对讲系统,通过局域网实现楼宇中各终端机互连,并通过 TCP/IP 网络实现终端可视对讲与监控功能。1系统概述所研制的可视楼宇对讲采用标准的以太网接口和网络互联设备,将系统中各种终端设备通过局域网简单互联。声音、视频、数据传输都可以通过网络进行传输,真正做到了 1 线接入,彻底解决了信道抢占和远距离信号衰减问题,同时,软硬件采用模块化嵌入式系统设计,使系统容易扩展,丰富了智能社区系统的功能。可视楼宇对讲系统架构如图 1 所示。系统中各种终端,如室内机、门口机、管理和
7、 PC终端通过网络接口进行互联。每个终端都有自己的实名地址(小区号 楼号 房号)和 IP 地址作为终端的标识,通过广播寻址或下载地址列表的方式,将终端的实名地址与 IP 地址进行有效映射,这样处于不同网络位置的终端设备得可以自行组网。为了降低系统成本,硬件系统采用了三星 ARM控制器 S3C2440,带视频压缩功能的 zc30 x 系列 USB实验室研究与探索第 31 卷摄像头;软件系统基于 linux-2 6 22 操作系统,采用RTP 传输协议、g 711 或 GSM 可选的语音编码方式、MJPEG 的视频压缩编码,通过自主研发的呼叫控制信令和开源媒体开发框架 Mediastreamer2
8、 简化媒体流控制处理、传输。图 1系统架构框图2硬件设计系统采用三星 S3C2440 嵌入式处理器,它使用ARM920T 内核,主频是 400M 等,集成通用的串口控制器、USB 控制器、A/D 转换器、GPIO 等功能 2。系统视频传输是在 S3C2440 处理器的控制下从带视频压缩功能的 zc30 x 系列 USB 摄像头采集视频信号,得到 JPEG码流,通过打包后,由网络接口发送出去;而接收到的码流,通过软件解码得到 YUV 数据通过 LCD 播放出来。音频通过 UDA1341 采集和播放,传输流程类似与视频类似。整个系统的硬件结构原理如图2 所示。图 2硬件框图3软件设计系统软件部分采
9、用模块化设计方法,软件系统分为驱动层、媒体流和信令层、系统状态转移控制层及人机界面 4 部分,如图 3 所示。3 1硬件驱动层硬件驱动层主要是根据 linux-2 6 的驱动框架完成音频接口、视频接口、网络接口、按键触摸屏的驱动。在 S3C2440 的开发包中完整地提供了上述的开发包,因此系统开发的主要任务是在应用层的设计。图 3可视终端的软件系统方案图 4过滤器图3 2流媒体传输和处理Mediastreamer2 是开源的流媒体处理框架,是实现终端软件系统的重要组成部分,它负责对媒体传输、处理、保 存、播 放 等 过 程 进 行 抽 象 和 调 度。Mediastreamer2 有 2 个重
10、要的概念3:(1)过滤器(filter)。filter 是 Mediastreamer2 中处理媒体数据的组件,1 个 filter 可以有零个或多个输入脚,和零个或多个输出脚。所谓的脚,就是缓冲区队列。Mediastreamer2 中用 MSFilter 对象来抽象。每个MSFilter 对 象 都 有 相 应 的 描 述 符,用 数 据 结 构MSFilterDesc 描述符表示,该结构描述了 MSFilter 对象的 ID、名字、输入输出脚的个数、初始化函数、预处理和处理等函数;每个 MSFilter 对象也拥有自己的输入输出缓冲区队列。媒体流通过 RTP 接收发送、媒体流的播放、媒体流
11、 的 编 解 码 都 可 用 1 个 过 滤 器 来 表 示,在Mediastreamer2 中 用 MSFilter 对 象 来 抽 象。例 如,MSRtpRecv 就是一个 MSFilter 对象,它表示从使用RTP 协议在网络中接收数据,在解包后把数据输出到缓冲区队列。为了完成 JPEG 解码,在项目中添加了自己的 MSFilter 对象 MSJpegDec,它的输入来自 1 个JPEG 格式数据,它调用解码器进行解码,并把解码后的 YUV 数据放到输出缓冲区队列,等等。(2)图(graph)。graph 是多个连接在一起的 filter管理器,通过系统管理和调度,它把媒体流从 1 个f
12、ileter 的输出脚传输到下 1 个 fileter 的输入脚。Mediastreamer2 提 供 了 ms _ filter _ link 函 数 把MSFilter 对象链接起来,形成过滤器图,从而实现 2 个MSFilter 对象(1 个作为数据输出过滤器、另 1 个作为47第 2 期黄永龙,等:基于 S3C2440 可视楼宇对讲系统的实现输入过滤器)数据空间的共享。例如,可以使用以下函数把 first_filter 和 second_filter 链接起来:ms_filter_link(first_filter,output_pin,second_filter,input_pin)
13、;图 4 表示两 MSFilter 对象链接起来形成过滤器图的情况。形成过滤器图之后就可以对 MSFilter 对象进行调度,这是由 MSTicker 对象完成的:MSTicker ticker=ms_ticker_new();ms_ticker_attach(ticker,first_filter);本项目共有 4 个过滤器图,如图 5 所示。分别属于语音流和视频流。其中,音频可以采用 G 711 或GSM 编解码方式,在系统设置的时候进行选择;由于采用了带视频压缩的 USB 摄像头,可以直接在视频采集后得到的 JPEG 视频数据用 RTP 直接发送。图 5过滤器图3 3信令传输控制整个系统
14、使用自主研发的信令,下面的数据结构表示信令头,由 8 个字节组成,共有 3 种类型的命令:请求类(通话通话 INVITE,请求监控 MONITOR)、应答类(应 答 否 ACKNO,应 答 是 ACKYES,应 答 忙ACKBUSY)、其他类(取消 CANCEL,摘机 HOOK,开锁OPEN)。每 1 次通话或监控过程用 1 个随机数表示,称为会话 ID。typedef struct msg_headeruint16_t cmd:8;/commanduint16_t type:8;/ACK TYPEuint32_t cid;/session id msg_header_t;图 6 左边显示了
15、1 次呼叫过程中主叫方和被叫方的信令交互过程,右边显示了 1 次监控过程中监控方被监控方的信令交互过程。图 6一次呼叫流程和一次监视过程3 4人机界面飞漫软件的 MiniGUI 是 1 款性能优良、功能丰富的面向嵌入式系统的高级窗口系统和图形用户界面。在通讯、医疗、工控、机顶盒、多媒体终端等领域由广泛的应用。通过 MiniGUI、触摸屏、及系统扩展的按键进行人机界面的控制。S3C2440 开发包已经提供了系统所需的许多基本系统库,如 libm、libpthread 等。在此基础上,根据系统的实际需求添加其他函数库。例如,为了支持用户GUI 的实现,需要交叉编译 MiniGUI 相关代码,生成图
16、形界 面 支 持 库 libminigui 等 库,图 片 显 示 支 持 库libpng、libjpeg 等库,文字显示支持库 ttf 等库。另外,为了支持触摸屏功能,还需要添加 tslib 库。这些附加库都有开源代码,可以通过交叉编译相关代码得到,以支持上层应用程序的调用。3 5系统状态机可视楼宇对讲系统的运行是通过系统按键、触摸屏、信令交互和系统时间等事件来触发系统状态转移的过程。系统在状态转移过程中,通过用户设置的回调函数执行该状态所需要的动作,如启动媒体流传输、结束媒体流传输、更新界面等。系统状态机是可视楼宇对讲系统中各个模块运行中心和连接纽带,具有举足轻重的地位。为了完成终端机的互
17、通,各个终端一般有 4 个状态机,主叫状态机,被叫状态机,主监控状态机和被监控状态机。由于各种终端机功能的不同,可能有 1 个或几个状态机。如,室内机有 3 个状态机(主叫状态机,被叫状态机,主监控状态机),门口机有 2 个状态(主叫状态机,被监控状态机)。图 6 也显示了 1 次完整呼叫流程和监控流程的系统经历的状态。以主叫状态机和被叫状态机为例(见图 7),说明系统中状态转移原理。以下规定了主叫的 4 种状态和被叫的 4 种状态,/*空闲*/IDLE=0,/*主叫状态*/ICT_CALLING,ICT_RINGBACK,ICT_TALKING,ICT_TERMINATING,/*被叫状态*
18、/IST_RING,IST_PRETALKING,IST_TALKING,IST_TERMINATING57实验室研究与探索第 31 卷图 7主叫状态机和被叫状态机4结语基于 TCP/IP 可视楼宇对讲正以相对于模拟对讲无可比拟的优势受到越来越多客户的青睐,市场占有率不断增大,全数字可视楼宇对讲设备的开发和应用具有广阔的市场前景。本文设计的楼宇对讲系统集视频、语音传输于 1 个的系统中,由于采用了市场上通用的 ARM9 控制器大大降低的系统成本,此方案已经应用在某公司智能社区的产品中,程序运行稳定。参考文献(References):1李海燕 基于 ARM9_Linux 的楼宇对讲系统J 烟台职
19、业学院学报,2011(1):52-572Samsung Eletronics S3C2440A 32 Bit CMOS Microcontroller User sManual(Revision1)Z3Mediastreamer2-the multimedia streaming engineOL http:/wwwlinphone org/eng/documentation/dev/mediastreamer2 html4李浩,原亮,巨政权 嵌入式系统中视频采集与回放功能的实现J 微计算机信息,2008(29):40-425李金广,罗飞,杨晖,等 基于 S3C2410 的嵌入式图像传输系统的
20、设计与实现 J 福建电脑,2007(5):7-86刘良,赖万昌,黎明 基于 ARM9 的 GPRS 图像传输系统的设计与实现 J 计算机工程与设计,2010(7):1477-14807吕兆磊 基于 ARM9 的智能小区嵌入式门禁控制系统的分析和设计J 安防科技,2009(1):17-188张晓东,李秀娟,张杰 基于 ARM 的嵌入式远程监控系统设计 J 现代电子技术,2008(6):22-239花铁森 智能家居系统核心技术探讨J 智能建筑电气技术,2009(1):95-98 10 梁会军,王胜 基于 ARM S3C2410 和流媒体技术的网络视频采集J 微计算机信息,2007(14)142-1
21、44 11 赵立辉,霍春宝 基于 ARM9 的远程视频监控系统的设计与实现 J 安防科技,2009(7):108-110 12 洪耀球,胡继平,陈玉明 基于 S3C2440 的车载影音系统设计 J 制造业自动化,2011(3):139-142 13 王鹏,吕志刚,黄建 基于 Linux 的嵌入式无线图像监控系统 J 安防科技,2009(1):34-37 14 谢亚果,周光海,张长春,等 基于 ARM 的楼宇对讲系统设计 J 电脑与电信,2009(3):64-66 15 林德彬,赵慧民,谭恒良 基于 ARM 嵌入式局域网视频监控系统的设计与实现J 电视技术,2006(9):89-96檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿檿殨殨殨殨把促进公平作为国家基本教育政策。教育公平是社会公平的重要基础。教育公平的关键是机会公平,基本要求是保障公民依法享有教育的权利,重点是促进义务教育均衡发展和扶持困难群体,根本措施是合理配置教育资源,向农村地区、边远贫困地区和民族地区倾斜,加快缩小教育差距。教育公平的主要责任在政府,全社会要共同促进教育公平。摘自“国家中长期教育改革和发展规划纲要”67