加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSSRSS-巴斯仪表网
您当前的位置:首页 > 电子发烧 > 无线传输技术

GPRS 数据传送服务的无线通信控制器设计

时间:2012-11-04  来源:123485.com  作者:9stone

    通用分组无线业务GPRS(General Packet Radio Service)是在现有GSM 系统上发展出来的一种新的承载业务,目的是为GSM 用户提供分组形式的数据业务。基于这种业务的各种应用也蓬勃发展起来。以GSM 网络作为数据无线传输网络,可以开发出多种前景极其乐观的各类应用,如无线数据的双向传送、无线远程检测和控制等。典型的应用有:工业控制、环境保护、道路交通、商务金融、移动办公、零售服务等等。
    GPRS 允许用户在端到端分组转移模式下发送和接收数据,而不需要利用电路交换模式的网络资源;从而提供了一种高效、低成本的无线分组数据业务,特别适用于间断的、突发性的和频繁的、少量的数据传输,也适用于偶尔的大数据量传输。
    本文设计的GPRS 无线通信控制器( 以下简称控制器),内嵌了TCP/IP 协议栈,采用工业级的GPRS 模块;适用于主机没有TCP/IP 协议栈,但使用串口通信的情况,例如单片机数据采集传输系统。

1 GPRS 网络数据包的收发
    终端设备通过串行方式接到控制器上并与GSM 基站通信,但与电路交换或数据呼叫不同。GPRS 数据分组是从基站发送到SGSN 节点,而不是通过移动交换中心MSC 连接到语音网络上。SGSN 与网关支持节点GGSN进行通信。GGSN 对分组数据进行相应的处理,再发送到目的网络,如Internet 或X.25 网络,见图1 。
 
    来自Internet、标识有移动台地址的IP 包,由GGSN 接收,再转发到SGSN ,继而传送到移动台上。控制器工作时,用户上位系统向控制器发送工作指令和数据,数据由IP 模块进行TCP/IP 协议转换,打成IP 数据包,再由MC35 模块以GPRS 数据包的形式发送到SGSN。
    由于GPRS 网络工作方式是以IP 地址寻址为基础的,所以目标服务器端并非接入控制器与终端设备进行连接,只需要简单接入Internet,并具备公网分配的IP 地址即可。同时,因为GPRS 终端产品本身由网络提供商动态地分配IP 地址,在未进入连接待机状态时,其本身是不具备IP 地址的( 在连接中,模块的IP 地址为移动骨干网内局域网IP ,无法被公网服务器解析,动态分配的制度使获取此IP 地址无意义) 。因此在服务器与终端尚未建立连接前,目标服务器难以( 可将短信转换为命令内容) 对终端设备及控制器进行控制。必须先将控制器进行相应初始化,并由设备终端主动向服务器发送数据,进行连接。

2 控制器内部的硬件实现
    控制器内部由四部分构成:嵌入TCP/IP 的单片机系统、MC35 模块、电源部分和外部接口部分。在设计时,考虑到双串口性能和高速的全静态CMOS 设计,嵌入式单片机系统选用台湾Winbond 的W77E58 芯片作为MCU 模块的处理器芯片。它是高速的、与MCS-51 指令兼容的、没有多余指令周期的微控制器,在相同时钟频率下,运行同样的指令要比传统的8051 快1.5~3.0 倍。它完全是静态CMOS 设计,工作电压为4.5V~5.5V,有32KB 的片内程序ROM,内部有1KB SRAM,最高时钟频率可达40MHz ;有双指针、双串口,13 个中断源,3 个16 位定时器。单片机W77E58 通过串口1 直接与MC35 模块相连接,完成对MC35 模块的初始化和基于GPRS 业务的数据收发功能;同时串口2 扩展MAX232标准串口与其它嵌入式系统或PC 机进行数据交换。图2 是系统的硬件框图。
 
    MC35 模块是西门子公司生产的GSM 双频GSM900/GSM1800 无线模块。它支持2 种操作模式:一种是电路交换数据模式CSD ,支持语音、数据、SMS 和FAX 业务;一种是分组交换模式GPRS,采用多时隙,支持CS1-CS4 编码。两者最大的区别是,GPRS 传输数据时不需要再拨号。2 种模式的选择通过AT 指令来实现。MC35 模块提供40 线的ZIF 接口方式。
    电源部分为单片机系统和GPRS 模块提供合适的电源。外部接口部分包括一个8 脚数据接口、SMA ( 射频同轴连接器)天线接口、SIM(Subscriber Identity Module,用户识别) 卡座接口。表1 是各引脚的详细说明。为使控制器运行稳定可靠,对其看门狗电路进行了精心设计。
 

3 控制器的软件接口
    在本设计中,需要利用TCP/IP 协议来完成GPRS 业务数据的打包和解包。由于W77E58 资源有限,怎样在有限的资源上完成必需的功能,就是嵌入式TCP/IP 协议实现的关键所在,也就是合理地简化协议。
    TCP/IP 协议是一个为广域网(WAN) 设计的标准协议套件,可以用一个分成四个层次的模型来描述:数据链路层、互联网层、传输层和应用层。其分层模型及协议如表2 所列。
 
    应用层(application)负责处理特定的应用程序细节。在本系统中只实现HTTP 协议。传输层(transport)主要为2 台主机上的应用程序提供端到端的通信。TCP 协议是为2 台主机提供高可靠性的数据通信,这里采用TCP 传输控制协议。互联网层(Internet)的功能是寻址、定址、数据打包和安排路径。Internet 所有的数据都以IP 数据报格式传输,其最大特点是提供不可靠的和无连接的数据包传送服务。在GPRS 业务中,每一次链接都会具体分配一个IP 地址,因此用ARP/RARP 协议完成IP 地址与物理地址的映射( 即地址解析) ,用ICMP 协议判断网络是否连通。数据链路层(link)的任务是把要发出的帧送到线路中去,把要接收的帧从线路中取出来。GPRS 业务是采用IP Over PPP 实现数据终端的接入。这部分功能由单片机控制MC35 模块,采用PPP 协议实现。
    数据打包处理程序处理数据时,每一层都把自己的信息添加到一个数据头中,而这个数据头又被下一层中的协议包装到数据体之中。数据解包处理程序接收到GPRS 数据时,把相应的数据头剥离,并把数据包的其余部分当作数据体对待。
    在应用要求高的场合,通常需要支持完整的TCP/IP协议族,而在嵌入式系统中也是可以做到的; 但是,考虑到成本和具体的应用场合,没有必要包括所有的TCP/IP 协议族。可以看到,采用TCP/IP 协议需要对它进行合理的裁剪,以满足小ROM系统的情况。
    系统在利用MC35 模块的GPRS 业务浏览HTTP 等功能之前,必须先激活GPRS 网的PDP 连接。单片机通过正确的AT 指令和GPRS 命令集对MC35 模块进行初始化和数据的接收发送,其工作流程如图3 所示。
 
    单片机上电复位后,首先对MAX232 进行初始化,完成与外接模块协商处理,如波特率、是否有奇偶校验等。接着,通过串口1 对MC35 模块进行初始化,检查诸如SIM 卡情况、GPRS 网络覆盖情况、信号情况等。接下来,进行中断扫描,监控是否有数据到来。有关数据时,如果是外部数据,就启动数据打包处理过程;如果是GPRS 数据,就启动数据解包处理过程。如果没有数据,系统则进入节电模式。在数据打包处理过程中,如果检测到系统的信号不好,网络连接不畅通,或者不是GPRS 网络覆盖区,将进行数据发送缓存处理,同时将数据放进发送队列等待发送。

结语
    本文采用嵌入式TCP/IP 协议,在高速的8 位微控制器上实现了对MC35 模块的控制,并实现了GPRS 业务的数据传输功能;具有外围器件少、电路简单、系统成本低等优点。本文设计的GPRS 无线通信控制器,自2002年1 月份起,在广东省东莞市的环保污水综合处理系统中使用至今,运行效果良好。实践证明,产品工作稳定、可靠。


分享到:
来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
栏目导航->无线传输技术
  • 电子应用基础
  • 电源技术
  • 无线传输技术
  • 信号处理
  • PCB设计
  • EDA技术
  • 单片机学习
  • 电子工具设备
  • 技术文章
  • 精彩拆解欣赏
  • 推荐资讯
    使用普通运放的仪表放大器
    使用普通运放的仪表放
    3V与5V混合系统中逻辑器接口问题
    3V与5V混合系统中逻辑
    数字PID控制及其改进算法的应用
    数字PID控制及其改进
    恶劣环境下的高性价比AD信号处理数据采集系统
    恶劣环境下的高性价比
    栏目更新
    栏目热门