-------GPRS的工作原理简介GPRS工作时,是通过路由管理来进行寻址和建立数据连接的,而GPRS的路由管理表现在以下3个方面:移动终端发送数据的路由建立;移动终端接收数据的路由建立;以及移动终端处于漫游时数据路由的建立。对于第一种情况,当移动终端产生了一个PDU(分组数据单元),这个PDU经过SNDC层处理,称为SNDC数据单元。然后经过LLC层处理为LLC帧,通过空中接口(空中接口(AirInterface)是指用户终端(UT)和无线接入网络(RAN)之间的接口)送到GSM网络中移动终端所处的SGSN。SGSN把数据送到GGSN。GGSN把收到的消息进行解装处理,转换为可在公用数据网中传送的格式(如PSPDN的PDU),最终送给公用数据网的用户。为了提高传输效率,并保证数据传输的安全,可以对空中接口上的数据做压缩和加密处理。在第二种情况中,一个公用数据网用户传送数据到移动终端时,首先通过数据网的标准协议建立数据网和GGSN之间的路由。数据网用户发出的数据单元(如PSPDN中的PDU),通过建立好的路由把数据单元PDU送给GGSN。而GGSN再把PDU送给移动终端所在的SGSN上,GSN把PDU封装成SNDC数据单元,再经过LLC层处理为LLC帧单元,最终通过空中接口送给移动终端。第三种情况是一个数据网用户传送数据给一个正在漫游的移动用户。这种情况下的数据传送必须要经过归属地的GGSN,然后送到移动用户A。------GPRS的英文全称是:“GeneralPacketRadioService”(译作“通用无线分组服务”),它是利用“包交换”(Packet-Switched)的概念发展起来的一套无线传输方式。所谓“包交换”就是将Data封装成许多独立的封包,再将这些封包一一传送出去,形式上有点类似邮局中的寄包裹。其作用在于只有当有资料需要传送时才会占用频宽,而且可以以传输的资料量计价,这对广大用户来说是较合理的计费方式,因为像Internet这类的数据传输大多数的时间频宽是闲置的。GPRS网络是基于现有的GSM网络来实现的。在现有的GSM网络中需增加一些节点,如GGSN(GatewayGPRSSupportingNode,GPRS网关支持节点)和SGSN(ServingGSN,GPRS服务支持节点),GSN是GPRS网络中最重要的网络节点。GSN具有移动路由管理功能,它可以连接各种类型的数据网络,并可以连到GPRS寄存器。GSN可以完成移动终端(即手机)和各种数据网络之间的数据传送和格式转换。GSN可以是一种类似于路由器的独立设备,也可以与GSM中的MSC(MobileSwitchingCenter,移动交换中心,将本网和其它网络连接起来)集成在一起。GSN有两种类型:一种为SGSN(ServingGSN,服务GSN),另一种为GGSN(GatewayGSN,网关GSN),SGSN的主要作用是记录移动终端的当前位置信息,并且在移动终端和GGSN之间完成移动分组数据的发送和接收。GGSN主要是起网关作用,它可以和多种不同的数据网络连接,如ISDN(综合业务数字网)、PSPDN(分组交换公用数据网)和LAN(局域网)等。国外有些资料甚至将GGSN称为GPRS路由器。GGSN可以把GSM网中的GPRS分组数据包进行协议转换,从而可以把这些分组数据包传送到远端的TCP/IP或X.25网络。GPRS网不但具有覆盖范围广、数据传输速度快、通信质量高、永远在线和按流量计费等优点,而且其本身就是一个分组型数据网,支持TCP/IP协议,可以直接与Internet互通。因此,GPRS在无线上网、环境监测便携型、交通监控、移动办公等行业中具有无可比拟的性价比优势。-------GPRS的主要特点相对原来GSM的电路交换数据传送方式,GPRS采用分组交换技术。由于使用“分组”技术,用户上网可以免受掉线的麻烦。此外,使用GPRS上网的方法与WAP不同,用WAP上网就如在家中上网,先“拨号连接”,而上网后便不能同时使用该电话线,但GPRS则较优越,下载资料和通话可以同时进行。从技术上来说,声音的传送(即通话)继续使用GSM,而数据的传送则使用GPRS,就把移动电话的应用提升到一个更高层次,而且不需重新组网,十分经济。GPRS的用途十分广泛,包括通过手机发送及接收电子邮件、在Internet上浏览等。使用GPRS,数据可实现分组发送和接受,这意味着用户总是在线且按流量计费,降低了服务成本。GPRS的最大优势在于数据传输速度不是WAP所能比拟的。目前的GSM移动通信网的传输速度为每秒9.6K字节,GPRS手机在今年初推出时已达到56Kbps的传输速度,到现在更是达到了115Kbps(此速度是常用56kmodem理想速率的两倍)。除了速度上的优势,GPRS还有“永远在线”的特点,即用户随时与网络保持联系。举个例子,用户访问Internet时,点击一个超级链接,手机就在无线信道上发送和接受数据,主页下载到本地后,没有数据传送,手机就进入一种“准休眠”状态,手机释放所用的无线频道给其它用户使用,这时网络与用户之间还保持一种逻辑上的连接,当用户再次点击,手机立即向网络请求无线频道用来传送数据,而不像普通拨号上网那样断线后还得重新拨号才能上网。-------GPRS的协议模型Um接口是GSM的空中接口。Um接口上的通信协议有5层,自下而上依次为物理层、MAC(MediaAccessControl)层、LLG(LogicalLinkControl)层、SNDC层和网络层。Um接口的物理层为射频接口部分,而物理链路层则负责提供空中接口的各种逻辑信道。GSM空中接口的载频带宽为200KHZ,一个载频分为8个物理信道。如果8个物理信道都分配为传送GPRS数据,则原始数据速率可达200Kbps。考虑前向纠错码的开销,则最终的数据速率可达164kbps左右;MAC为媒质访问控制层。MAC的主要作用是定义和分配空中接口的GPRS逻辑信道,使得这些信道能被不同的移动终端共享;LLG层为逻辑链路控制层。它是一种基于高速数据链路规程HDLG的无线链路协议;SNDC被称为子网依赖结合层。它的主要作用是完成传送数据的分组、打包,确定TCP/IP地址和加密方式;网络层的协议目前主要是Phasel阶段提供的TCP/IP和L25协议。TCP/IP和X.25协议对于传统的GSM网络设备(如:BSS、NSS等设备)是透明的。--------GPRS的应用范围GPRS是在现有GSM网络上开通的一种新型的分组数据传输业务,在有GPRS承载业务支持的标准化网络协议的基础上,GPRS可以提供系列交互式业务服务:1、点对点面向连接的数据业务。为两个用户或者多个用户之间发送多分组的业务,该业务要求有建立连接、数据传送以及连接释放等工作程序。2、单点对多点业务。根据某个业务请求者的要求,把单一信息传送给多个用户。该业务又可以分为点对多点多信道广播业务、点对多点群呼业务和IP多点传播业务。3、点对点无连接型网络业务。各个数据分组彼此互相独立,用户之间的信息传输不需要端到端的呼叫建立程序,分组的传送没有逻辑连接,分组的交付没有确认保护,是由IP协议支持的业务。GPRS除了提供点对点、点对多点的数据业务外,还能支持用户终端业务、补充业务、GSM短消息业务和各种GPRS电信业务。-------GPRS通信系统软件设计系统软件采用C语言编写,在MPLAB环境下编译。由于本系统是远程管理终端的一个模块,因此在程序的编写中要遵守一定的协议,这样才能保证正确通信。程序的主体是如何控制GR47的AT命令对GR47进行初始设置和对信息数据的处理。程序总体上可以分为以下几个块:CPRS连接的初始设置、短消息的判断处理、无数据传输时的心跳处理、数据判断转发等。主程序是把这些程序块有机结合到一起,相互控制,无限循环。-------连接的建立GPRS模块连接到Internet和GPRS网络的实现过程如下:a)单片机软件控制GR47模块开机,等待此模块正常启动。b)通过单片机和GR47模块连接的串口,向GR47模块写入相应的AT设置命令,进行初始化,使模块成功粘附在GPRS网络上,获得网络运行商分配的动态IP地址,与目的终端建立连接。-------数据的处理数据包在数据中心服务器和GPRS服务器中的传输是基于IP数据包的,但明文传送IP包不可取,因此大多选用PPP(点对点协议)进行传输,实现通过GPRS模块的数据和Internet网络的透明传输。GR47内部集成了TCP/IP协议栈,所以用户对IP协议相关的程序就不必编写,可以直接通过GR47传递数据。a)模块与Internet上PC机的数据传输:要求PC机具有公网的IP地址和开放的端口以及监视传输报文的运行软件。这样,模块与Intemet传输数据时,报文就会显示。在模块成功联入网络后,单片机只要将要发送的数据通过串口发给GR47,GR47就会把数据转发给相应的IP地址的PC机。b)短消息数据的处理:GR47具有GSM的功能,可以与手机发送和接收短消息。短消息采用PDU格式,在程序中需要判断短消息的到来和读取短信内容,并根据内容执行相应的功能,最后把结果构造成PDU格式返回给相应的发送者。c)GPRS通信心跳信息:网络连接建立后,在设定周期内无数据通信时,GPRS模块向数据服务中心发送心跳信息,数据服务中心收到心跳信息后,回应应答信号。d)重要数据的存储:程序中把一些重要的常用和易变的数据如计算机服务器的IP地址、端口号、终端地址、SIM卡号等存入单片机的EEPROM中。需要时从EEPROM中读出或向EEPROM重新写入数据进行设置。--------主程序流程主程序由模块函数组成,模块函数由基本函数嵌套组成。主程序流程大致如下:首先进行单片机设置变量的初始化,一般均为0;进行单片机相应配置单元的初始化,比如设定端口方向、没置中断优先级、定时器初始化等;然后由单片机控制GR47的电源,以决定是否开机;待开机成功后,查询网络是否注册成功;成功后即可建立模块与PC机服务器的连接,并进行数据传输和短消息处理;根据需要发送一定格式的心跳信息。见图2。-------结束语本文给出了一种基于单片机和GPRS模块的嵌入式无线数据传输终端的实现方案。以单片机应用系统为中心的小型GPRS通信系统成本低、设计周期短、便携性好,尤其适用于远程控制和数据传输。