基于串口通信的远程自动抄表系统实现

转载 2005年03月02日 18:31:00
基于串口通信的远程自动抄表系统实现

作 者:王 鹏

摘 要:对远程抄表系统的方案、系统的组成、硬件的配置、软件设计、工作原理、功能以及技术性能进行了论述。该系统通过下位机(MCU)和无线收发模块(PTR2000)采集、整理数据,通过串口经MODEM模块与上位机通信,水、电、气公司通过上位机(PC机)收集数据,实现远程无线自动抄表的功能。

 

引言

  在人们的日常生活中,水、电、气是不可缺少的必备生活保障,然而对于水、电、气供应公司来说,每个月上门抄取各个用户的三表读数却是非常繁重的工作,需要投入大量的人力和物力。现在许多公司在研究自动抄表系统,但是他们通常采用电话线或者是专线完成与上位机的通讯,成本比较高。详见参考资料[3][6][7]。针对这种情况,作者设计了一种远程无线自动抄表系统。自动抄表系统,简称ARMS(Automatic Reading Meter System),是供应水、电、气的部门将安装在用户处的水、电、气表所记录的用量等数据通过遥测、传输和计算机系统汇总到营业部门,代替人工抄表及一连串后续工作的系统。该系统的无线通信是采用GSM短消息业务,它的实现是迈向家庭自动化的第一步,并有助于提高水电系统管理的现代化水平。该系统具有两个主要特点:其一系统数据采集点多,成千上万,数据量大;其二系统是一个覆盖面很广的通信网络,采集点具有分散性。对系统的要求,一方面应造价低、经济实惠,另一方面数据的采集要准确及时,又要有一定的环境适应能力和抗干扰能力。随着现代化电子技术的发展,通信技术和计算机技术都有了飞速发展,而两者的结合又进一步演化出许多新的通信方式和通信系统,为ARMS的实现提供了可能。这样可避免抄表员上门抄表带来的弊端,省却了上门抄表打扰用户的尴尬问题,对公司、用户都有很大的便利,具有良好的市场前景。特别是在大中城市里,该系统具有很广的推广价值。

1.系统的组成及工作原理

  系统组成:数据采集部分;数据发送、无线通信部分;数据接收、处理部分。

  工作原理:数据采集装置首先通过传感器采集三表的读数,将采集的数据存入单片机(AT89C2051)内;单片机再通过无线通讯模块PTR2000(发端)将数据发送,用户集中器的PTR2000(收端)将发送来的数据接收,下位机主要完成采集数据、分时存储和同上位机通信的功能,它通过串行接口与GSM/Modem联接,以公众网(GSM)为平台,通过电信公众网络传输数据。随着GSM移动通信网络的建设和发展,移动通信网日益庞大复杂,所覆盖地区也日益广泛。因而通过GSM移动通信网络进行数据的传输也成为了一种新式的数据传输手段。GSM/Modem通过GSM的短消息业务发送数据。PC机(上位机)一般设在公司的营业处,它是负责整个系统管理的,它将数据收集到,然后对接收的数据整理、存储、显示,并计算出各用户需缴纳的费用。还可以将用户的用量曲线打印出来,对实行季节电价、分时电价,用经济杠杆实现削峰填谷很有利,可以为国家节约能源。系统的组成结构原理图如图1:

图1 系统的组成结构原理图(点击可看图)
 

   经济分析:本系统的最大容量设计为1000家。规定每100ms采集一家的数据,则一分钟可以采集600家的数据。普通的电表是2400转/KWH,采集装置每采集20个脉冲记1个点。每十分钟采集的数据最多占1个字节,每家的用量数据是按增量采集的,三个表的增量最多占3个字节,所以600家的数据最多占2K字节,每分钟采集一轮,采集到的数据存储在AT89C51的RAM内,在存储器内整理、打包,每十分钟发送一次。由于夜晚用电水气量比较少,所以在晚上发送的数据包,很多是空包,这样就浪费占用通信信道的时间。因此在软件设计时,采用越限发送,即每次采集的数据必须超越一定的量才发送,一天最多12小时的用量高峰期是每十分钟发送一次的。基于GSM短消息业务的容量主要是由短消息服务中心的处理能力和无线信令信道的承载能力决定的,每个短消息的信息量限制为140个八位组(7比特编码,160个字符)不超过140个字节。每十分钟采集3K数据,需要发送22条短消息,则每月发送约5万条。按照西安市短信费用标准,2-5万条/月的费用是2000元/月。平均每家2元/月。因此该系统非常的经济。而且上位机每十分钟就收集一次的数据,这样就可以在一天里用电高峰期里及时采集用户的用量,并将用量曲线打印出来。

2.硬件配置

2.1数据采集、发送部分

  水表是将原水表计数齿轮指针换装成带磁性的指针,再通过传感器进行数据采集;气表要用带信号输出的气表;电表必须采用脉冲式电子电度表,电表脉冲输出的器件为光耦输出,具有较好的隔离作用。数据采集装置与用户的电表安装在一起,为了防止用户的突然断电,采集装置必须装在空气开关的前端。电表可以通过计数脉冲来测量,由光电采集头采集电表的计数脉冲,表盘转一圈,光电采集头发出一个脉冲,输入的P1口的P1.0,由AT89C2051存储。然后通过PTR2000模块发送数据。

  PTR2000模块乃是超小型、超低功耗、高速率19.2K无线收发数传MODEM。采用了当代最先进的欧洲"蓝牙技术"应用全数字科技,由单IC组合而成,接收发射合一,工作频段为433--434MHz,空中传输数据速率为19.2Kbps,工作电压范围为2.7V-5.25V,采用FSK调制,抗干扰能力强,标准的DIP引脚间距,更适合嵌入式设备。当PTR2000的TXEN脚为高时,它处于发射状态;当TXEN脚为低时,它处于接收状态。在硬件设计时,将TXEN与AT89C2051的P1.1脚连接,通过软件控制PTR2000的状态。电路原理图如图2。
 

      图2 数据采集、发送装置电路原理图 (点击可看图)

2.2 数据接收和远程无线通讯

  PTR2000将数据接收并且存入AT89C51内,ROM和RAM分别用来存储程序和数据,数据按当时的时间存入相应时段的存储区内,时段间隔为10分钟。不同日期的同一时段数据仅在相应的存储区内累加。采集装置内装有免维护电源,保证断电后还可以工作,保护数据和接收、执行上位机的命令。AT89C51通过串口与无线MODEM连接,实现与上位机的无线通讯。

  GSM(Global System for Mobile Communication)系统是目前基于时分多址技术的移动通信体制中最成熟、最完善、应用最广的一种系统。我国目前已建成了覆盖全国的GSM数字蜂窝移动通信网,是我国公众陆地移动通信网的主要方式。GSM的短消息业务SMS(Short Message Service)与话音传输及传真一样同为GSM数字蜂窝移动通信网络提供的主要电信业务,它通过无线控制信道进行传输,是GSM通信网所特有的,经短消息业务中心完成存储和前转功能,它不用拨号建立连接,直接把要发的信息加上目的地址发送到短消息服务中心,由短消息服务中心再发送给最终的信宿。这适于把每次采集到的数据随时发送到监控中心。传送短消息业务的控制信道为专用控制信道(DCCH)。详见参考资料[6]。短消息业务可以使网络端知道被叫方是否已经收到短消息,如果传送失败,被叫方没有回答确切消息,网络一侧会保留所传的消息,一旦网络发现被叫方能被叫通时,消息能被重发以确保被叫方能收到。因此短消息业务作为GSM网络的一种主要的电信业务,它的传递是可靠的。综上所述,本系统选用GSM的短消息业务来实现远程无线数据传送是可行的。GSM调制解调器(GSM/MODEM)的出现改变了传统的以话音为主的通信手段,打开了GSM网络数据通信及其应用的大门。它提供RS232数据接口,采用AT贺氏指令,符合ETSI标准GSM0707和GSM0705。本系统的GSM/MODEM采用法国WAVECOM公司的GSM/MODEM模块。详见参考资料[5]电路原理图如图3


图3 数据接收、无线通讯电路原理图



2.3 数据处理部分

  上位机通过DDE接口将下位机发送的数据传送到EXCEL工作表中,在EXCEL中定义好报表格式,计量格式,并将文件以模板格式保存,在抄表完成后,系统能自动将数据填写到相应指定单元格,由EXCEL自动计算,换算成KWH值并算出收费值。在上位机上打印、显示用户的水、电、气费和各种报表及负荷曲线,当用户负荷超限时发出报警信号,根据公司的规定决定是否发遥控命令给下位机对用户实行断电处理。还可以计算各个时段的费用,为电力部门实行分时收费提供可靠的保证。而且为了保证数据存储的安全性,上位机(PC机)采用了双硬盘做数据备份,系统带有后备电源,停电后能保持正常工作状态。后备电源可保证系统在满负荷工作状态下正常工作36小时以上,若停电时间更长,系统将不会进行数据采集,但原有数据不会丢失,供电恢复后需要重新核查数据,更新设置用户集中器中下位机存储的数据。

3.软件设计

  由于该系统采用的是一点对多点的双向数据传输,因此每家的表都有自己的地址码。上位机可以查询下位机,下位机也可以定时发送数据给上位机。本系统要实现的目的是一机(上位机)对多机(下位机)的通讯控制,其通讯软件主要分为两部分:上位机与下位机的远程通讯软件;单片机与GSM/MODEM的串行通讯软件。详见参考资料[2]。程序设计的关键是上、下位机间的远程通讯的准确性。在程序设计中,采用通讯协议(Protocol)的做法,由上位机发出读表指令与地址码,让各个下位机将记录的数据传过来,同时进行校验,以保证数据的正确性。每个下位机都编有不同的地址码,当上位机向所有的下位机发送一个地址码和抄表指令时,所有的下位机都接收到该地址码,并比较是否与其自身的地址码相同,如不相同则退出比较,不再接收其他命令。如相同则表示上位机查询的就是该下位机,同时收回应答信号,并准备接收命令,而上位机将收回的应答信号与发出的地址码相比较,不同则给出错误的信息,相同则可控制已叫通的下位机。这时已叫通的下位机继续接收上位机发送的抄表命令,并收集用户的数据,通过GSM网络发送给上位机,直到接收到上位机发来的执行完成命令。程序流程图见图4、图5。
 

图四:上位机数据通讯程序流程图                

图五:上位机数据通讯程序流程图

 

 4.结束语

  本文介绍的自动抄表系统集计算机、通信技术于一体,采用先进的无线通讯模块和最成熟、最完善、应用最广的GSM作为数据传输的平台,抄数即快速又准确,彻底解决了人工抄表的所有弊病。还可进一步与银行系统的微机联网,实现费用自动划拨,大大提高了工作效率,具有良好的市场前景。


参考文献:
[1] 何立民, MCS-51系列单片机应用系统设计,北京:北京航空航天大学出版社,1998
[2] 陈荣保等,基于MODEM和单片机的远程通讯系统设计与实现,微电子学与计算机,1999
[3]舒洪,朱敏,三线一表远端抄表系统的研制,南昌大学学报(理科版),2000,6
[4]The introduction to the SMS in PDU mode, WAVECOM, V1.00-January 2000
[5] 利用GSM短消息业务实现GPS车辆监控,通讯与电视,倪建军, 范跃祖 ,李松林
[6] Remote Access 2000系列抄表系统介绍,
www.jhdz.com.cn
[7] 济南电网大用户远方抄表分析,电测与仪表,姚鲁,殷玉鹏

相关文章推荐

串口通信:饭卡远程控制系统

  • 2012年04月13日 15:39
  • 241KB
  • 下载

嵌入式系统上的异步串口通信的实现

在嵌入式系统中,异步串口(UART)使用非常频繁,可以用于与各种外部系统(帧括PC)之间的通信。在硬件上UART通过在每个字节的传输中插入开始位和停止位,保证接收端可以正确地找到字节的开始和结束,同时...
  • ronhu
  • ronhu
  • 2017年04月14日 21:09
  • 732

Mac OS/Linux系统下实现串口通信

最近参加了一个机器人比赛,机器人部分装置需要靠Arduino板来控制,一共两块不同型号的Arduino板,这两块板需要进行通信,还需要分别和电脑上的c++程序通信。我的电脑是Mac Pro 2016款...

通过modbus协议实现arduino与电能表串口通信(仅03功能)

请注意阅读顺序一定要从头到尾!!
  • UbiBots
  • UbiBots
  • 2016年06月08日 15:49
  • 6658

通过modbus协议实现arduino与电能表串口通信(仅03功能)

作者: 胡子阳请注意阅读顺序一定要从头到尾!!否则容易忽略一些小细节!!本人理解的术语解析  ModbusRS485:一种通信协议,另一种RS232已被淘汰。   Modbus主站(modbusMa...

基于java平台的与无线远程测控终端的串口通信

package ChuanKouTongXin; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; ...

在串口通信开发中实现自动查找串口端口的方法

原文地址::http://blog.chinaunix.net/uid-20672257-id-2973926.html 相关文章 1、串口编程-枚举遍历串口、获取PC所有串口名称、遍历注...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基于串口通信的远程自动抄表系统实现
举报原因:
原因补充:

(最多只允许输入30个字)