基于LPC2131和MC55的GPRS/SMS无线通信终端的设计实现
基 于 LPC2131和 MC55的 GPRS/SMS无线通信 终端的设 计 实现 ·49·
基于 LPC213 1和 MC55的 GPRS/SMS
无线通信终端的设计实现
王晓川 ,周杏鹏
(东南大学 自动化学院 ,江苏 南京 210096)
摘要:为 了实现工业远程监控 系统的数据传输和控制,设计 出一种 GPRS/SMS无线通信终端。在 简要
介绍 GPRS、SMS和 AT指令的基 础上,重点详 细说 明 了利用 LPC2131通过 AT指令控制 GPRS模 块
MC55实现远程 GPRS数据“透明”传输和 SMS收发的方法,并且指 出终端软硬件设计过程 中需要特别
注意的 几个 问题 。该 终端 尤其适合 于 突发性 且频繁 的 小流量数 据 传输 ,实际项 目运 行证 明数 据 传输 稳
定可靠 。
关键 词 :LPC213l;MC55;GPRS;SMS
中图分类号:TP368.1 文献标识码 :A 文章编号 :1000—8829(2009)1l一0049—03
Design and Implementation of GPRS/SM S Radio Comm unication Terminal
Based on LPC213l and M C55
W ANG Xiao—chuan, ZHOU Xing-peng
(School of Automation,Southeast University,N,mjing 210096,China)
Abstract:To realize the data transmission and control of industrial remote monitor and control system.a radio
GPRS/SMS communication terminal iS designed.First,a brief presentation on GPRS,SMS and。AT command iS
introduced.Then,the remote transparent transmission of GPRS data and transceiving of SMS(short message
service1 based on LPC2131 and MC55 using AT command is emphasized.Several respects to which special at—
tentions should be paid during software and hardware design are also figured out.The terminal is especially
suitable for abrupt.frequent and small volume data transmission and the data transmission iS proved stable and
reliable in practical application.
Key words:I』PC2l3l:MC55:GPRS;SMS
近年来,随着网络技术特别是无线网络通信技术
的迅速发展,信息的传递和人与人之间的交流更加方
便,并且这种便利也已经逐步渗透到工业控制领域 当
中。无线 GPRS网络具有永远在线 、按流量计费和传
输速率高等突出特点 ,特别适合于像工业 的远程监控
系统这样间断 、突发性的或者频繁 、中小流量的数据传
输,也适用于偶尔的大数据量传输。
l GPRS和 SMS简 介 J
GPRS(general packet radio service,通用分组无线
收稿 日期 :2009—05—12
作者简介 :王晓川(1984一 ),男,河北邯 郸人 ,硕士研 究生,主要
研 究方向为嵌入 式 系统与智 能化仪 器设 计;周 杏鹏 (195l一 ),
男,教授 ,博士生导师,主要研 究方 向为智能化仪 器 、水处理和
环境 监 测 自动 化 。
业务)通常也被称为 2.5G技术 ,是在现有 GSM 系统
上发展起来的一种新的分组数据承载业 务。GPRS在
GSM系统中引人两个新 的网络节点 (GPRS服务支持
节点 SGSN和 GPRS网关支持节点 GGSN)并作软件升
级 ,能够在终端设备和挂接在 [nternet上的服务器之
间建立一条数据通信的链路。
SMS(short message service,短消息服务)作为 GSM
系统 中最 普遍 的数据 应 用,在原 理 和实 现 上都 比
GPRS容易,但它是按 条收费,且每条最 多只可发送
160 B数据 ,要比使用基于流量计费的 GPRS发送数据
昂贵得多(单字节计 )。本设计中将 SMS作为一种偶
尔使用的控制方式。
2 无线通信终端的硬件结构设计
2.1 终端硬件系统原理
· 50· 《测控技术>>2oo9年第 28卷第 11期
本终端在工业远程监控系统中主要起数据传输和
控制作用 ,其通信原理如图 1所示。
M GPRS 设备 I’’
C ●...
U 模块
图 1 无线终端 与远程服务器和手机的数据通信原理图
上传数据首先由数据采集设备传送给终端 ,再 由
终端通过 GPRS网络及 Internet“透 明地”传送 给远程
服务器 ;下传数据以基本同样 的方式反方 向传送。同
时,终端还可以接收授权手机(可设置)以 SMS形式发
送过来的控制命令 ,加以解析后驱动继 电器动作并返
回提示 SMS。
2.2 终端硬件结构设计
GPRS模块选 用 SIEMENS公 司 的 MC55。MC55
除具有普通 GSM模块的通话和短信等功能外 ,还可实
现无线 GPRS连接,支持 SOCKET、HTrP、m 和 SMTP
等上层应用协议 。
MCU选 用 NXP公 司 的 LPC2l3l。LPC2131是 基
于 ARM7TDMI—S内核的微控制器 ,片内带有丰富的外
设资源 ,可实现最大为 60 MHz的 CPU操作频率。
终端硬件结构框 图如 图 2所示 。其 中,LPC2131
为主控 MCU,通过 串口 0与数据采集模块相接 ,通过
串口 1与 MC55相接,实现 GPRS数据传输及短信 的
收 发;系 统 外 扩 一 块 I C 接 13的 E PROM 芯 片
CAT1025WI.30,用于存储终端设置参数 ;MC55提供 6
个专用引脚与 SIM卡接 口;电源管理模块负责提供系
统需要 的 4.1 V和 3.3 V 电压 ,稳压芯 片分别选 用
LM2576S.ADJ和 SPX1117M3-3.3,对外 接 的 l2 V 电源
进行降压处理。
图 2 无线终 端硬件结构框 图
终端硬件结构较为简单 ,根据各芯片的数据手册
及参考电路不难画出电路原理 图,此过程中需要注意
以下 几点 :
① 为了防止 电磁 干扰,MC55的引脚 CCGND必
须与 SIM卡的 GND脚直接相连后再与 PCB板共地 。
② 对于一般 的数据应用(GPRS、SMS),MC55与
LPC2131通信的串 口只需用到 RXD和 TXD。为 了稳
定可靠 ,需在接线之间串接小阻值 电阻(本设计用 120
Q 电阻 )。
③ MC55 的 引 脚/IGT、/EMERGOFF、SYNC 和
/RINGO各有特别作 用,可参考 数据手册设 计 电路 连
接 。
3 无线通信终端的软件结构 设计
3.1 AT指令简介
AT指令是一个接 口标准,其指令和响应的格式都
比较固定。指令(不区分大小写 )基本 由3部分组成 :
① 前缀。以 AT开始(A/和 +++除外 );
② 主体(可选 )。由指令码和参数值组成 ;
③ 终止符 。以回车符
响应格 式 为 “
应中的
3.2 MC55接入 Intemet的 AT指令设计实现
MC55中内嵌 了 TCP/IP协议 ,并且以 AT指令 的
形式给控制模块(本设计用 LPC2131)提供接入 GPRS
网络进而接入 Intemet的API接 口。经过研究,大致可
经过以下几步(如无特别说 明,AT指令返 回 OK表示
设置成功 ,返 回 ERROR表示失败) “J:
① 建立 PDP上下文。
AT +CGDCONT= 1. IP .“emnet“
② 建立网络连接模式。
AT~SICS:0,eonType,GPRS0 /}连接类 型选择 GPRSO}/
AT^SICS=0,user, ”
AT~SICS:0,passwd。 /$用 户名和密码设 为空 }/
AT'SICS=0,apn,emnet /$GPRS接入点选择 CMNET /
③ 建立基于连接模式 的服务模式。
AT'SISS=1,snrType,socket /{服务类 型选择 socket /
AT'SISS=1。conId,0 / 选择 1号服务 /
A'P'SISS= 1,address,”soc ktep://117.60.78.194:8080” /
}设置服务器 IP地址和端 口号 ,必须是公网 IP /
④ 打开一个 Intemet会话 。
AT'SISO = 1
⑤ 设置写 ByteNum个字节数据。
ArI~SISW =0.
注 :TCP方式下单次最多 可发送 1500 B数据。
⑥ 读取 ByteNum个字节数据。
AT'SISR =0.
3.3 MC55收发短信的 AT指令设计 实现
短信 的编码 方式 一共 有 3种 :Block Mode,Text
Mode和 PDU Mode。其 中,Block Mode已极 少应 用 ,
Text Mode只能发送 ASCII字符 ,而 PDU Mode不仅能
基 于 LPC2131和 MC55的 GPRS/SMS无 线通信终 端的设 计 实现 ·51·
发送 ASCII字符,还能发送中文信息 ,本设计采用 PDU
Mode收发短信。关于 PDU和 TEXT编码方式的详细
介绍 ,可见参考文献[5],在此不再赘述
大致需要 以下几条 AT指令 :
(I)AT+CMGF:0 / 0:PDU;1:TEXT $/
② AT+CNMI=2,0,0,0,1 / 新 SMS先存储
再回显存储位霞 /
(3)AT+CMGS=
应 > 即可输入字节数为 ByteNum的 PDU字符串 $/
④ AT+CMGR=
⑤ AT+CMGD=
3.4 通信 终端的软 件设计 思想
软 件设计是本 终端实 现的关键 也是难点所 在 。结
合功能需求设置几个不同的功能模块 ,程序采用前/后
台的基本架构,流程图如图 3所示。
接
收
新
配
置
参
数
开始
端口初始化
UAR 1’口初始化
I-"C口初始化
连接服务器
Timet初始化
/ \ V 广 — — — — — — 一
有新SMS到?2>q,q SMS处理模块
●N
/ ^ \
有待上传数据? \ /
N
/ ^ \
有下传数据?
\ /
N
/ \
跣包时间到?
\ /
N
图 3 通信终端程序流程图
各功能模块分别如下 :
① 参数配置模块。
实现终端参数的本地端上 、下位机配置功能。上
位机配置程序使用 VC++软件编写,实现服务器 IP地
址和端 口号、设备号、心跳包时间等参数的设置并将其
存储在终端 E PROM中。
② GPRS数据传输模块 。
实现数据 “透明传输”功能。终端将接收的上传
数据暂存在一个 3000 B的缓冲区中,主循环程序检测
到上传数据标识置位则启动数据上传模块。对于下传
数据,采用主循环程序直接发送 AT读指令提取 的方
法。
③ 定时中断模块。
LPC2131内部有两个 32位的定时/计数器。用定
时器 0实现“心跳包”定时发送(维持通信链路);用定
时器 1设定串口 0数据流空闲时间(可调)以配合新
数据检查及上传标识置位,从而可以保证数据帧的完
整性 。
④ 断线重拨模块。
实现终端 和服务器间 网络连接断开后 的重新连
接 。
⑤ SMS收发模块。
本终端不同于同类设计的一个显著之处就是可以
实现 GPRS数据和 SMS的并行收发 ,而不用在 GPRS
模式和短信模 式之间切换。主程序循环检测有无新
SMS到达 ,如果有则转入 SMS处理模块 。
3.5 软件 防干扰设计
主要是 针 对 “非 预 期 数据 ”产生 干 扰 的处 理。
LPC2131向 MC55发送 AT指令后要等待并检测其响
应 以判 断是否执行成 功,但此期间如果接收 到诸如
GPRS数据到达提示等非预期数据,则会对判断产生
影响。为此 ,在程序中设置超时计数功能 :每发送 AT
指令后就开始计数(也即计时),计数超限(超时 )或检
测接收到“异常数据”则重发 ,重发次数超限(如 3次)
则退 出,等待下次处理 ,从而可有效排除非预期数据的
干扰 。
4 结束语
本终端 目前可实现间隔时间不小于 100 ms,单次
5O B以内数据的连续收发 ,完全满足一般需要,并且
已投入实际项 目试运行 ,证明稳定可靠。
无线远程数据采集系统已成为业界当前研究的重
点和热点。以上所介绍的无线通信终端 以 GPRS和
GSM作为承载网络 ,充分利用其覆盖范围广、可靠性
高以及费用低廉等优势 ,可实现数据 的远程 GPRS和
SMS传输 ,对于工业现场数据采集 、环境监测以及车载
设备等需要实时数据无线传输的应用具有极高的借鉴
意义 ,拥有 良好的应用前景。
参考文献 :
[1] 文志成 .通用分组无线业 务——GPRs[M].北京 :电子工
业 出版社 ,2004-01.
[2] Siemens Co..MC55/56 hardware interface description
(MC55/56一hd_v03.03)[Z].2005.
[3] Siemens Co..MC55 AT command set(MC55一ATC—V03.
03)[Z].2005.
[4] 庄严.车载定位 导航 系统 中通信 功能 的研 究 [D].成都 :
四川大学 ,2006:40—45.
[5] 孙 丘伟 ,余臻 .基于 GSM 的短信报警 收发平台设计 [J].
福州大学学报(自然科学版 ),2008,36(Z1):44—48.
口
一 一
一 一
基于LPC2131和MC55的GPRS/SMS无线通信终端的设计实现.pdf