配电变压器参数的GPRS网络远程监测系统
本监测器正是以该系统为中心,配合电路远动采集模块和无线Modem完成采集和通信的功能。由于电力远动采集模块、无线Modem都提供了串行的通信接口,因此该系统必须具有2个串行口,而单片机只有1个串行口(Rx和Tx),因此采用通用异步收发器(UART)将并行口转换成串行口,供控制与驱动GSM模块使用。由于变压器参数记录需要具备时间信息,因此采用时钟芯片给系统提供时钟,89C52每秒从时钟芯片那里获得最新时间,这样系统就具有时间了。有了时间后,系统很方便对变压器常规记录进行时间标定。为了使监测器里面保存几天乃至一个月的历史记录,必须有大容量的RAM。本系统中采用了128KB RAM完成此功能,使历史记录在10min/次的采样频率下储存一个星期的记录。由于上述UART、时钟芯片和RAM都通过数据总线(P0口)进行数据传输,采用分时复用技术,因此需对它们的工作进行协调。采用CPLD逻辑译码产生它们的片选信号的方法解决这个问题,使它们共享数据总线和地址总线。
2.3 GPRS调制解调器的驱动和控制
本系统中采用GPRS网络进行历史数据、实时数据以及报警信息的远程传输,并采用短消息业务发送报警信息到调度人员的手机上作为补充。该功能由无线Modem来实现。对GPRS Modem进行驱动和控制采用AT命令集。AT命令集是Hayes公司建立的最普遍且广为支持的命令集,大部分厂家生产的Modem都能执行此Hayes命令集,包括普通Modem和无线Modem。AT命令集是由一个特定的“命令前缀”开始,由一个“命令结束标志”结束。命令前缀通常由AT两个字符组合,它是Attention的缩写,意思是“引起注意”,因此我们称该Modem命令为AT命令。命令结束标志是一个单字符,其值存储在寄存器S3中,通常为回车符<CR>。
图2 硬件结构图
为了达到数据通信的目的,我们必须掌握如何建立和拆除通信链路,如何自动应答数据来电等。下面介绍常用的AT命令。
①ATDxxxx。该命令使Modem立即进入摘机状态,并拨出随后的号码(拨号串)以建立连接。拨号串由拨号修饰符和电话号码组成。拨号修饰符用于指示Modem何时拨号以及如何拨号的操作。例如拨号修饰符T、P分别表示Modem以音频方式和脉冲方式拨号。值得一提的是,拨号修饰符“,”起延迟处理下一字符的作用。该修改符在要拨外线的场合特别有用。警如,机关、企业要拨市话或者长途电话时,首先要拨“9”(或者“0”等),则采用如下AT指令:ATD9,8888888<CR>,(8888888为待拨电话号码)。
②ATS0=R。该命令控制应答方式:自动或手动、R=0,手工应答;R≠0,表示在响铃R次之后Modem自动摘机并试图连接。R值范围为1~255。手工应答下,每次电话铃响时,Modem返回RING结果码,但不应答呼叫(除非此时执行ATA指令)。
③+++。该指令让Modem从在线数据状态切换到在线命令状态。它其实是一个换码序列(转义序列),不是普通AT指令,因而前面不加AT,后面也不用跟回车符。在发出+++命令之前和之后,停顿由S12寄存器定制的时间(称为保证时间,缺省为1s),以保证Modem接收到该命令;否则,+++将被当作普通数据处理。该命令不挂断线路而是让Modem进入命令状态,即在线命令状态。
④ATHn。该命令执行挂机操作。在在线命令状态时,使用该命令迫使Modem挂机,拆除通信链路。n=0,挂机,并将Modem置于命令状态;n=1,摘机。
需要特别指出的是,GPRS Modem只是兼容了Hayes制式的AT指令集,但是在GPRS应用中,GPRS Modem对AT指令集做了扩充。以西门子的MC35模块为例,它的拨号指令是ATDT*99***1#;接入GPRS状态的指令是AT+CGDATA=PPP。
3 系统软件
3.1 模块化设计
监测器软件采用模块化的设计方法,用汇编语言编写。按功能可分为:初始化器件模块、进入GPRS网络模块、实时测量模块(与电力远动采集模块之间通信获取实时参数)、历史数据记录模块和GPR
《配电变压器参数的GPRS网络远程监测系统(第2页)》