基于ARM11的3G信息推送系统
2013-09-25王海兮
马 军,王海兮
0 引言
随着移动互联网的蓬勃发展,网络信息量也以指数规律迅猛增长和扩展,在信息爆炸的移动互联时代,从海量的信息中检索有用的信息是一种被动的服务方式,资源获取效率极低[1]。
在移动互联时代,如何综合利用多种通信手段,将海量信息及时,准确,有效的推送给用户,满足用户的信息需求,成为一个亟待解决的问题。传统信息推送系统,受限于电信网接入点固定,网络带宽低,推送内容单一等特点,推送能力较弱,随着3G移动通信网络的普及,多业务、高带宽、不受接入点限制的嵌入式3G通信平台成为解决推送业务智能化、推送内容多样化、推送设备小型化的重要途径[2]。文中介绍基于ARM11的3G信息推送系统可全天候按预先编制的推送计划,自动对目标客户群体进行定制信息推送,可应用于商业广告、政策宣贯和信息服务等多个领域。
1 系统的结构
3G信息推送系统基于移动通信网络,可同时向移动网手机用户推送语音和短信,向电信网电话用户推送语音,向电信网传真用户推送传真,并向互联网上的平板电脑、笔记本和PC机推送互联网信息。因此,系统的推送对象同时覆盖了移动通信网、PSTN程控电话网和互联网。为了实现多业务、大批量并发推送的目标,系统采用专门的控制台集中生成推送内容和执行推送任务调度,由于传真数据不能直接在移动通信网和PSTN网之间进行通信,系统设计了传真服务器提供传真网关服务,完成传真推送业务的代理转发功能。系统的网络结构如图1所示。
图1 系统的网络结构Fig.1 Network structure of the system
2 系统的技术特点
传统的电话营销系统不能完成短信及互联网信息推送功能;而短信群发装置不支持语音和传真业务的推送;并且基于2G的移动通信技术决定了语音和数据业务不能并发使用。针对上述问题,系统利用3G技术中语音、数据业务可并存的特点,对无线射频单元进行多路集成,以终端的形式实现了语音、短信、数据业务的多路并发推送;同时通过将移动传真发送分解为无线数据传输和PSTN网关代理两个阶段,解决了传真业务在移动网络中发送的问题。
系统具有以下技术特点:
多业务并发——系统支持电话语音、短信文本、传真图像和互联网信息的并行发送;
多通路并发——系统提供对多路3G推送线路的语音和数据信道资源的集中管理和控制,采用任务调度系统探测所有线路资源的忙闲状态自动触发新的任务,提高了推送效率。
业务质量好——系统为所有线路设计独立的硬件单元,从物理线路、逻辑信道到控制接口,推送线路之间耦合度很低,相互的影响极小,在扩展系统线路资源同时,保障了业务的稳定性。
3 总体设计
系统由控制台、推送设备和传真服务器3部分组成。业务控制系统运行于windows平台,主要对号码资源、内容资源、线路资源和系统信息等进行配置和管理。推送设备基于ARM11和Linux系统,接受系统任务调度指令,为语音、短信、传真及互联网信息推送提供无线信道接入;传真服务器接收来自移动通信网的传真内容,以标准PSTN传真业务进行发送。系统的功能组成如图2所示。
图2 系统的功能组成Fig.2 Functional constitution of the system
4 设计实现
4. 1 ARM11 平台
推送设备以低功耗高性能的ARM11处理器S3C6410[3]为核心,主频高达800 MHz。处理器集成一体化电源管理芯片、256 MB内存和1GBNAND FLASH等外围电路,典型功耗小于0.5 W;提供4路UART接口和1路USB HOST接口,可用于无线射频单元的AT指令集通信和数据通信;提供PCM音频接口可用于无线射频单元的音频接口通信;此外还提供SD卡、音视频输入输出等接口。处理器不支持直接扩展以太网接口,可通过数据总线外接以太网控制器的形式进行扩展。无线射频单元是系统与移动通信网进行通信的基本接口单元,其中每条线路为一个独立单元,具备复位、开关电及唤醒功能等[4]。ARM11平台的硬件设计如图3所示。
图3 ARM11平台的硬件设计Fig.3 Hardware design of ARM11 platform
4. 2 嵌入式Linux软件架构
推送设备以嵌入式Linux操作系统为软件平台,其软件主要包括操作系统、驱动程序和应用程序[5]等,其中驱动程序包括无线射频单元的驱动、NAND FLASH驱动、虚拟串口驱动和以太网接口驱动等,软件的架构如图4所示。
图4 嵌入式Linux软件架构Fig.4 Software architecture of embedded Linux
以无线模块驱动为例,由于处理器USB接口资源有限,为扩展多路无线射频单元,系统使用USB HOST接口外接USB HUB扩展出多路USB接口。其中USB HOST接口的驱动移植如下:
1)修改内核:添加对USB、OHCI HOST HCD支持。
2)初始化时钟:配置相关USB-HOST功能的时钟,该时钟可以通过EPLL提供。部分代码如下:
#ifdefCONFIG_USB_OHCI_HCD
if(S3C_USB_CLKSRC_EPLL==1){
writel((readl(S3C_CLK_SRC)& ~S3C_CLKSRC_UHOST_MASK)|S3C_CLKSRC_EPLL_CLKSEL|S3C_CLKSRC_UHOST_EPLL,S3C_CLK_SRC);
writel((readl(S3C_CLK_DIV1)& ~S3C_CLKDIVN_UHOST_MASK)
|(0x3<<20),S3C_CLK_DIV1);}
else{writel(readl(S3C_CLK_SRC)& ~S3C_CLKSRC_UHOST_MASK,S3C_CLK_SRC);
writel(readl(S3C_OTHERS)|S3C_OTHERS_USB_SIG_MASK,S3C_OTHERS);
writel(readl(S3C_CLK_DIV1)& ~S3C_CLKDIVN_UHOST_MASK,S3C_CLK_DIV1);}
writel(readl(S3C_HCLK_GATE)|S3C_CLKCON_HCLK_UHOST|S3C_CLKCON_HCLK_SECUR,S3C_HCLK_GATE);
writel(readl(S3C_SCLK_GATE)|S3C_CLKCON_SCLK_UHOST,S3C_SCLK_GATE);
#endif
4. 3 多业务并发
系统通过3G移动网络的电路域和数据域实现多业务并发,在电路域以AT指令的操作方式进行短信、语音的并行推送;在数据域以网络路由的方式接入互联网,将互联网信息直接推送到互联网终端上,如果是传真业务,则以无线数据传输的方式将待发送内容发送到传真服务器上,由传真服务器完成PSTN网传真推送。
(1)短信推送
控制台生成短信文本信息,添加推送对象号码、进行推送线路测定,并将上述信息从网口发给推送设备;推送设备将收到的短信内容进行编码。目前发送短消息常用Text和PDU两种模式,系统选用可同时支持中英文短信的PDU模式设计,根据PDU的编码协议,推送设备将SMSC(短消息中心号码)、TP-DA(推送对象号码)及短信内容的UCS2编码进行协议封装,然后使用短信发送AT指令由任务调度系统指定的线路发出去。
(2)语音推送
控制台生成pcm或wav格式的语音信息,添加推送对象号码、进行推送线路测定,在执行语音推送任务前,先将语音内容以FTP方式上传到推送设备的语音文件保存目录,并从任务调度系统指定的线路发出电话呼叫AT指令,与推送对象建立话音通道,之后推送设备从语音文件保存目录中读取待发送的语音文件,由之前建立的话音通道输出。
由于S3C6410处理器仅提供1个最大支持16 bit有效字宽的PCM接口,而无线射频单元的PCM接口仅支持8比特A率或μ律PCM语音,因此处理器正常情况最多可同时支持2路8 bit的PCM音频流,没有足够的音频通道完成多路语音并发功能。处理器默认的PCM接口时序如图5所示,PCMCODEC_CLK是外部提供的2 MHz时钟源,PCMSCLK是处理器分频产生的256 kHz数据钟,帧同步信号 PCMSYNC为8 kHz,每帧可传输32 bit,前16 bit传输数据,后面bit不处理。
图5 默认的PCM接口时序Fig.5 Defaulted PCM interface timing
通过修改处理器分频寄存器设置,产生1 024 kHz的 PCMSCLK,64 kHz的 PCMFSYNC,则原来的一帧时间则可以传输8帧,每帧16 bit,前8 bit传输通道号,后8 bit传输PCM音频数据,则可以实现将1个PCM音频通路扩展为8路PCM音频通路。扩展后的PCM接口时序如图6所示。
图6 扩展的PCM接口时序Fig.6 Extended PCM interface timing
经过线路扩展的PCM音频流到达PCM物理通路对端后,根据解析出的通路号将从线路上还原出的PCM音频流分别输出到对应的无线射频单元PCM编解码器接口上。
3)传真及互联网信息推送
控制台生成传真文件,添加推送对象号码,进行传真线路测定,将传真文件以FTP方式发送到传真服务器的待发目录,传真服务器定时扫描查找待发的传真文件,并以标准的T30传真协议与目标传真用户进行通信。互联网信息包括微博、邮件等,控制台基于推送设备提供的网络路由服务登陆互联网,添加微博账号群、邮件地址群等目标信息,调用互联网服务商提供的API接口或模拟http请求,将待发的微博、邮件等批量发送。
5 结语
当前3G移动通信网络全面普及、3G终端无处不在,除了手持用户,包括平板电脑、POS终端、监控设备、身份认证设备及车载互联网等都应用了3G技术。应用该系统可实现在3G网络覆盖区域内,随时随地对批量的目标用户群体进行多业务的信息推送服务,可应用于企业宣传与产品推广、web网站或金融机构交互式验证码认证、指定用户的备忘与提醒系统、语音识别系统的远程授权认证、无纸化移动传真收发系统、气象与地质灾害信息预警[6]等,甚至在一些企业突发事件和政府公共事件的处理中也可以应用。
[1] 熊晓莉,侯永广.基于信息推送技术的移动学习探讨[J].信息技术,2012(04):56-58.
XIONG X L,HOU Y G.Discussion on Mobile Learning based on Information Push Technology[J].Information Technology,2012(04):56-58.
[2] 廖轶宸.基于移动网络的混合型信息推送系统的研究[J].计算机工程与设计,2012,33(08):3268-3272.
LIAO Y C.Research of Mixed Information Push System based on the Mobile Network[J].Computer Engineering and Design,2012,33(08):3268-3272.
[3] 陈安全,周安栋,罗勇,等.基于ARM11的通信设备状态监测终端设计[J].通信技术,2012,45(06):128-130.
CHEN A Q,ZHOU A D,LOU Y,etal.Design on State Monitoring Terminal of Communication Equipments based on ARM11[J].Communications Technology,2012,45(06):128-130.
[4] 丁鹤洋,李太君,徐瑛.3G无线视频监控系统的设计与实现[J].通信技术,2012,45(02):71-72.
DING H Y,LI T J,XU Y.Design and Implementation of 3G Wireless Video Monitor System[J].Communications Technology,2012,45(02):71-72.
[5] 林晓飞,刘彬,张辉.基于ARM嵌入式Linux应用开发与实例教程[M].北京:清华大学出版社,2007.
LIN X F,LIU B,ZHANG H.The Tutorial Examples and the Application Development of the Embedded Linux based on ARM[M].Beijing:Tsinchua University Press,2007.
[6] 张延龙,杨昆,李炳文,等.关于3G手机的气象服务分析[J].现代电子技术,2011,34(18):24-25.
ZHANG Y L,YANG K,LI B W,et al.Analysis of Meteorological Services based on 3G Mobile Phone[J].Modern Electronics Technique,2011,34(18):24-25.