基于Hi3510和无线发送模块的视频传输设计

2010-06-05 10:48王绍磊程永强
电子设计工程 2010年10期
关键词:内核天线编码

王绍磊,程永强,王 鹏

(太原理工大学 信息工程学院,山西 太原 030024)

近几年,嵌入式无线联网领域发送数据大都基于802.x或WI-FI技术,并用无线网卡或无线路由器实现。目前也出现了基于手机无线发送数据的嵌入式相关设计,但大都是基于2.5G技术的短信方式的监控设计。在此基础上设计了一个嵌入式Linux系统下基于3G无线发送模块的视频图像传输系统[1]。采用SOC高性能视频编解码器Hi3510,具备强大的视频处理功能,实现D1画质的实时编码及传输。因此,该系统设计实现了在3G移动网络上传输视频。

1 系统总体设计

选用Hi3510作为对视频数据的编码处理,选用DTM6211无线模块对视频数据进行发送处理。图1为系统工作原理框图,其整体工作原理是:摄像头采集的数据通过PAL制的CVBS信号输入工作在主模式TW2834芯片中,经A/D转换后,由BT.656接口接收转换为CIF格式的信号,并通过AHB总线把接收到的图像数据存入到外存SDROM;Hi3510读取外存中视频数据,进行H.264编码,包括帧内预测、帧间预测、DCT变换、量化、熵编码等,得到编码后裸码流存储到外设中;将外设中视频数据通过USB端口经测试板发送到无线模块中,其中关于无线模块的UDP数据传输设置控制工作是通过Hi3510的RS232接口经测试板发送AT指令控制,而后无线模块将数据封装成符合UDP格式的IP数据包,最后利用PS业务发送到网络上。

图1 系统工作原理Fig.1 Working principle of system

2 系统硬件设计

2.1 视频处理模块

视频处理模块远端摄像头采集视频信号,模拟视频信号通过CVBS信号格式输入TW2834,TW2834是一个视频控制器,内嵌PAL/NTSC视频解码器,彩色控制器和PAL/NTSC视频编码器,主要完成模拟信号到数字信号的转变。解码后,转换成的数字信号通过BT656接口输入到Hi3510处理器进行H.264编码。

视频处理模块采用Hi3510,该器件是一款基于H.264 BP算法的视频压缩芯片,它采用ARM+DSP+硬件加速引擎的多核高集成度的SoC构架,具备强大的视频处理功能,可实现DVD画质的实时编码,能自适应各种网络环境,确保画面的清晰度和实时性,低码率的H.264编码技术极大减少了网络存储空间,并通过集成DES/3DES加解密硬件引擎确保网络安全[2]。图2为Hi3510逻辑框图。

图2 Hi3510逻辑框图Fig.2 Hi3510 logic diagram

Hi3510内部包含一系列提高编解码速度的视频编解码协处理器,视频编解码部分完成图像的运动估计/补偿、DCT/IDCT变换、量化/反量化、zigzag扫描和环路滤波。最后将编码的视频数据存储在外存SDROM中。

2.2 视频发送模块

图3 无线发送模块内部原理图Fig.3 Internal schematic diagram of wireless transmission module

图3为无线发送模块内部原理框图。DTM6211是60针0.5 mm间距的板对板连接器和一个天线连接器,与天线连接器相匹配的线缆可实现与天线MHF Plug Cable Assembly的连接。串口通信采用RS232,可以与Hi3510串口相连接,模块采用5线制接法,默认开启硬件流控。USB接口可以作为通讯口和调试口,作为USB Device设备,遵循USB2.0协议规范,最高速率支持FULL SPEED (12 Mb/s)。发送部分采用SMA(FEMALE)接口馈入天线,外接天线采用棒状天线[3]。

DTM6211接口有2个UART接口,使用UART1作为Hi3510的AT指令接收端口,传输速度设定为115 200 b/s。其UART1信号定义如表1所示。模块的USB接口作为通信口,用于视频数据的传输,其接口信号定义如表2所示。

表1 DTM6211 UART1信号描述Tab.1 DTM6211 UART1 signal description

表2 DTM6211 USB接口信号描述Tab.2 DTM6211 USB signal description

2.3 模块硬件连接

Hi3510和DTM6211之间通过测试板连接,测试板主要作用是连接Hi3510和DTM6211的USB及UART端口,起到一个物理接口转换作用,同时也起到存放USIM卡的作用。USB和UART之间的连接,只需把Hi3510板的USB口和RS232接口连接到测试板对应接口,DTM6211插针接口直接插到测试板上。其中测试板中主要部分USIM卡的硬件电路如图4所示。

图4 USIM卡硬件电路图Fig.4 Hardware circuit diagram of USIM card

DTM6211模块的射频接口包括一个天线连接器,通过线缆实现与外部天线的连接,天线连接器采用I-PEX公司的20279-001E-01,连接线缆采用苏州万旭电子 HM5A-12289-A1DE的50 mm的长双端子线缆,天线连接器端Plug Cable Assembly使用MHFⅡ Plug Cable Assembly。

3 系统软件设计

3.1 操作系统与驱动设计

选用Hi3510自带嵌入式Linux-2.6.14内核操作系统,开发前需要搭建开发环境,可以安装一款Fedoral 9.0服务器,同时建立交叉编译器、安装SDK包。SDK是基于Hi3510视频评估板的软件开发工具,包含了在Linux相关应用开发时使用的各种工具,是用户开发中最基本的平台软件。Bootloader采用 uboot-1.1.4初始化硬件设备并通过网口下载Linux内核。内核通过make menuconfig配置可实现系统的量身定做,去除与本系统无关部分,缩减内核,最后将配置后的内核使用mkimage工具做成映像文件,通过网口下载到Hi3510中。

无线发送模块通过重新配置内核Usb Serial Driver选项可实现其在内核的驱动部分,但需把Usb Driver的PID和VID设置成本模块的ID,重新编译便可支持无线发送模块[4]。

ID更改步骤如下:

首先进入 linux-2.6.14driversusbserial,打开文件 option.c,在其中定义两个宏(DTM6211 的 VID:0x1AB7 PID:0x6000):

然后将两个宏增加到下列结构体中:

3.2 视频处理软件设计

视频处理软件主要是对采集过来的视频数据进行H.264压缩,编码中涉及的参数需调用SDK提供的API进行配置,其中包括图像组长度(GOP)、编码帧率(帧/秒)、量化参数(maxqp)、比特率(b/s)和用户数据的插入等[5],然后将压缩过的裸流,发送到USB端口。其中为了提高压缩率将GOP设置15;为了减少网络数据流量将编码速率设置8帧/秒;量化参数的数值选择在30~40之间,其设计总流程如图5所示。

图5 视频处理总流程Fig.5 Total flow chart of video processing

其中关于配置摄像头部分,open ()打开/dev/misc/tw2834dev摄像头设备文件,完成normal为PAL制式,mode为GIF格式的选择;配置输入公共属性部分,首先打开视频编码器,并关闭视频输入通道,然后完成工作模式为从模式,VIU与A/D转换器的接口类型BT656,通道分布模式4路CIF,BT656为场模式,视频消耗内存为 10×1 024×1 024等设置工作。

VSTART输入通道号之后需要创建一个线程,完成后续数据的存储和转发,使用pthread_create()函数,随后执行线程 venc_start(),其核心程序如下[6]:

3.3 无线模块控制设计

无线模块DTM6211内提供TCP/IP协议栈,可利用PS业务通道发送IP包,以AT指令配置和控制TCP/IP协议栈[7]。利用APP处理器配置TCP/IP相关环境,注册UDP端口,APP处理器将要发送的数据直接发给模块,由模块将数据封装成符合UDP格式的IP包,然后利用PS业务通道发送给3G网络。其控制流程如图6所示。

图6 无线模块控制流程Fig.6 Control flow chart of wireless module

开机初始化部分,主要完成激活SIM卡、TCP/IP协议栈和注册网络工作;激活场景移动部分主要完成PDP和context的参数设置,包括配置使用IP协议,申请上行速度1.5 MB/s,建立用户面的分组传输路由。在完成以上初始化工作后,需要建立监听端口号为13000,指定UDP模式下要发送数据的目的地址218.18.141.79和端口号3000,最后还需要指定发送的字节数。数据发送完成后,释放UDP端口号等相关资源。

4 结 论

采用Hi3510+Linux方案,其自带的SDK开发包使得应用程序开发的难度降低,同时Hi3510本身采用了ARM+DSP+硬件加速引擎的技术,具备强大的视频处理功能,具有低成本,低开发难度优点。配合DTM6211无线发送模块,通过AT指令对数据进行UDP打包,最终将视频数据包发送到3G网络上。测试结果表明,受网络环境影响数据的上行传输速率为150~200 KB/s。该系统可用于远程网络监控的应用,相对于2.5G技术的短信监控方式,使用者可以获得更多有效的信息。

[1]李文仲.ARM9微控器与嵌入式无线网络实战[M].北京:北京航空航天大学出版社,2008.

[2]海思Hi3510处理器 用户手册[M].Revision1.3.2.深 圳:海思公司,2006.

[3]DTM6211模块开发板使用手册[M].上海:联芯科技有限公司,2009.

[4]宋宝华.设备驱动开发详解[M].北京:人民邮电出版社,2009.

[5]毕厚杰,王健.新一代视频压缩编码标准——H.264/AVC[M].北京:人民邮电出版社,2009.

[6]Richard S W,Rago S A.Advanced programming in the UNIX enviroment[M].北京:人民邮电出版社,2003.

[7]王迎孟,卫国.LC6311 at command set user manual[Z].上海:联芯科技有限公司,2009.

猜你喜欢
内核天线编码
强化『高新』内核 打造农业『硅谷』
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
基于嵌入式Linux内核的自恢复设计
Linux内核mmap保护机制研究
Genome and healthcare
ETC相控阵天线与普通天线应用对比分析
ALLESS转动天线射频旋转维护与改造
微生物内核 生态型农资