论文部分内容阅读
摘要:该文提出了一种基于ARM及GPRS技术的AMR(Automatic Meter Reading,自动抄表)系统设计的解决方案,使缩短开发周期,降低开发费用,提高抄表系统的稳定性和性价比成为可能。
关键词:ARM;GPRS;AMR;自动抄表;S3C44B0X;μC/OS-II
中图分类号:TP274文献标识码:A文章编号:1009-3044(2008)36-2687-02
A System Design of AMR Based on ARM and GPRS
ZHANG Lv, YIN Cheng
(Jiujiang Vocational University, Jiujiang 332000, China)
Abstract: This Paper bring up a system design of a type of AMR(Automatic Meter Reading) based on ARM and GPRS, and it can Shortening the develop cycle, Lower the Develop cost ,increase the Stability and Cost-effective of AMR.
Key words: ARM; GRRS; AMR; Automatic Meter Reading; S3C44B0X; μC/OS-II
1 整体设计
自动抄表(Automatic Meter Reading),简称AMR,是指采用通信、自动化、计算机等技术,通过专用设备对各种仪表(如水表、电表、气表等)进行自动采集和处理表计数据。我国的自动抄表技术研究起步较晚,但是发展速度很快,已有部分产品进入实用阶段。
本文提出的自动远程抄表系统的基本设计思想是采用32位高性能微处理器S3C44B0X芯片作为中心控制器,并以μC/OS-II作为操作系统,实现一个基于ARM技术的远程抄表终端,再利用GPRS通信网络将终端接入抄表系统管理中心,按照事先制定的通信规约实现表计和管理中心之间数据及命令的信息传输。本系统的基本构成如图1所示。
通用的自动抄表系统一般由表计、采集器、传输控制器、抄表系统管理中心四级组成。图1中所示的GPRS终端具有一般抄表系统中的采集器和传输控制器功能;中国移动现有的GPRS网络与Internet的通信通过中国移动的数据通信网关实现,其对用户是透明的,可以直接使用;GPRS终端可以和抄表系统管理中心的客户端直接通信,前提是客户端有固定IP;如果希望降低使用成本,可以如本系统增加一个有固定IP的代理服务器作为终端和客户端的通讯中枢,在代理服务器的控制下,实现了终端和客户端之间的通信。代理服务器通过GPRS网络向表计发送来自客户端的各类命令,并将各类表计数据送到客户端。
在本系统中表计与终端通过RS-485总线通信,客户端与GPRS终端通过代理服务器进行通讯。GPRS网络传递客户端发出的控制命令以及GPRS终端上传的儀表状态和数据。客户端负责对GPRS终端上传的仪表数据进行处理、输出、存储,对报警信号的处理和控制信号的输出。GPRS终端负责接收客户端通过GPRS网络传来的控制命令,根据通讯协议中命令内容如仪表参数的设置,控制信号的解释和实施以及对仪表异常情况的现场处理,并通过自身所带接口实现简单操作。用户可以从GPRS终端的LCD中得到相应的消息。局端软件可由企业自行开发。
2 终端硬件设计框架
根据GPRS远程抄表系统的构成,整个GPRS终端硬件设计的总体结构如图2所示。
图2 GPRS终端的硬件设计框图
其主要部分有:RISC CPU(S3C44B0)、存储器扩展电路、通信电路、人机交互电路、调试电路、通用输入/输出接口(GPIO)电路等。
由于系统要兼顾数据采集、处理和通讯各方面的任务,而且有一定的速度要求,一般的8/16位微处理器如单片机满足不了这样的要求。根据本系统的实际要求,建议选用SAMSUNG公司的32位处理器S3C44B0,它功耗低、数据处理能力快,使完成上述任务占用较少的CPU时间,从而保证了整个系统的优越性能。
普通的GPRS模块没有内嵌TCP/IP 协议栈,需要用户提供TCP/IP 的支持。SIMCOM公司开发的ITM100模块内嵌了TCP/IP 协议栈,并简化了接口设计;屏蔽了GPRS 模块的复杂接口方式和接口协议栈,取而代之的是通用的232 接口和简单的AT 命令交互界面。本设计中GPRS模块建议采用ITM100无线通信模块。
3 终端软件设计框架
本系统中GPRS终端软件设计结构由底层向高层依次由BootLader、硬件驱动、嵌入式OS和应用软件组成,软件采用标准C编写,并在ARM专用的集成开发环境Embest IDE下编译、调试。系统底层硬件构架好的下一步就是要通过软件让系统按照本身的功能运行起来。
1) 底层硬件BootLoader类似PC的BIOS,这段小程序完成硬件设备初始化、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,为操作系统内核的运行准备好正确的环境。BootLoader启动代码的流程如图3所示。
图4 客户端命令的传输任务流程图
图5 表计数据的传输任务流程图
2) 本系统采用免费开源的μC/OS操作系统,该系统没有自带驱动,因此必须自己编写驱动,然后加入到操作系统中,供操作系统调用。在本系统中必须驱动RS-232、RS-485、LCD和按键。ITM100通信模块无需自己编写驱动,只需要通过串口写相应的AT指令就可以使用该模块。分模块化编写各个驱动程序可以很方便地对软件系统进行升级和改动,对某一个驱动的改写不会牵涉到其他驱动。
3) 当一个系统处理的任务比较多而且复杂的时候,常常考虑采用嵌入式实时操作系统,采用操作系统对多任务的管理、内存的分配、效率的提高具有极大的好处。μC/OS-II是源码公开的实时操作系统,它非常容易移植,只需要做很少的工作;μC/OS-II采用大量的C语言使其结构简洁;另外,它具备了实时操作系统的全部性能,适合学习研究。
4) 抄表系统的最终使用还是需要由上层的应用软件实现。其任务流程是:从GPRS终端接收客户端的命令,命令经过解释后发给485接口去实现,然后再通过GPRS终端将表计返回的数据传给客户端。采用单线程的编程机制可以实现这一过程,但效率低,由于μC/OS-II支持多进程,一般来说可以采用多进程的方法来安排表计数据传输和客户端命令传输这两个任务。这2个任务的程序流程图分别如图4、图5所示。
4 结束语
本文介绍的基于ARM及GPRS技术的AMR(Automatic Meter Reading,自动抄表)系统解决方案采用了高性能的32位处理器作为抄表控制器的核心芯片,大大提高了抄表系统的信息处理能力和可靠性;抄表终端移植了μC/OS-II实时嵌入式操作系统,能够实时地处理多任务,大幅提高系统的管理能力,保证了信息传递的实时性;具有模块化的程序结构可以很方便地对软件进行升级和改动;硬件结构做成了独立的两部分,可以很方便的对GPRS模块外围扩展电路做改动,主控制器部分只需要做软件的升级即可,这样就大大减少了系统升级的成本;另外,终端具有通用性,只要是带485接口的表计,均可使用此终端进行数据的采集和传输。
由于时间仓促和篇幅限制,本文对局端设备及软件设计只是做了系统上的概括,没有做深入的论述,另外文中不免还有其他叙述不准确及描述简单的地方,希望各位对本文有兴趣的专家和同仁提出宝贵的意见和建议。
参考文献:
[1] 陈爱萍,刘望军,李信德.远程抄表技术通信方法的研究[J].集成电路应用,2003(4).
[2] Labrosse J J.μC/OS-II——源码公开的实时嵌入式操作系统[M].邵贝贝,译.北京:中国电力出版社,2001.
[3] 骆一舟,赵旦楼,诚杰,等.GPRS在远程监控中的运用特点[J].可编程控制器与工厂自动化,2004(12).
[5] 马忠梅,马广云,田泽,等.ARM嵌入式处理器结构与应用基础[M].北京:北京航空航天大学出版社,2002.
关键词:ARM;GPRS;AMR;自动抄表;S3C44B0X;μC/OS-II
中图分类号:TP274文献标识码:A文章编号:1009-3044(2008)36-2687-02
A System Design of AMR Based on ARM and GPRS
ZHANG Lv, YIN Cheng
(Jiujiang Vocational University, Jiujiang 332000, China)
Abstract: This Paper bring up a system design of a type of AMR(Automatic Meter Reading) based on ARM and GPRS, and it can Shortening the develop cycle, Lower the Develop cost ,increase the Stability and Cost-effective of AMR.
Key words: ARM; GRRS; AMR; Automatic Meter Reading; S3C44B0X; μC/OS-II
1 整体设计
自动抄表(Automatic Meter Reading),简称AMR,是指采用通信、自动化、计算机等技术,通过专用设备对各种仪表(如水表、电表、气表等)进行自动采集和处理表计数据。我国的自动抄表技术研究起步较晚,但是发展速度很快,已有部分产品进入实用阶段。
本文提出的自动远程抄表系统的基本设计思想是采用32位高性能微处理器S3C44B0X芯片作为中心控制器,并以μC/OS-II作为操作系统,实现一个基于ARM技术的远程抄表终端,再利用GPRS通信网络将终端接入抄表系统管理中心,按照事先制定的通信规约实现表计和管理中心之间数据及命令的信息传输。本系统的基本构成如图1所示。
通用的自动抄表系统一般由表计、采集器、传输控制器、抄表系统管理中心四级组成。图1中所示的GPRS终端具有一般抄表系统中的采集器和传输控制器功能;中国移动现有的GPRS网络与Internet的通信通过中国移动的数据通信网关实现,其对用户是透明的,可以直接使用;GPRS终端可以和抄表系统管理中心的客户端直接通信,前提是客户端有固定IP;如果希望降低使用成本,可以如本系统增加一个有固定IP的代理服务器作为终端和客户端的通讯中枢,在代理服务器的控制下,实现了终端和客户端之间的通信。代理服务器通过GPRS网络向表计发送来自客户端的各类命令,并将各类表计数据送到客户端。
在本系统中表计与终端通过RS-485总线通信,客户端与GPRS终端通过代理服务器进行通讯。GPRS网络传递客户端发出的控制命令以及GPRS终端上传的儀表状态和数据。客户端负责对GPRS终端上传的仪表数据进行处理、输出、存储,对报警信号的处理和控制信号的输出。GPRS终端负责接收客户端通过GPRS网络传来的控制命令,根据通讯协议中命令内容如仪表参数的设置,控制信号的解释和实施以及对仪表异常情况的现场处理,并通过自身所带接口实现简单操作。用户可以从GPRS终端的LCD中得到相应的消息。局端软件可由企业自行开发。
2 终端硬件设计框架
根据GPRS远程抄表系统的构成,整个GPRS终端硬件设计的总体结构如图2所示。
图2 GPRS终端的硬件设计框图
其主要部分有:RISC CPU(S3C44B0)、存储器扩展电路、通信电路、人机交互电路、调试电路、通用输入/输出接口(GPIO)电路等。
由于系统要兼顾数据采集、处理和通讯各方面的任务,而且有一定的速度要求,一般的8/16位微处理器如单片机满足不了这样的要求。根据本系统的实际要求,建议选用SAMSUNG公司的32位处理器S3C44B0,它功耗低、数据处理能力快,使完成上述任务占用较少的CPU时间,从而保证了整个系统的优越性能。
普通的GPRS模块没有内嵌TCP/IP 协议栈,需要用户提供TCP/IP 的支持。SIMCOM公司开发的ITM100模块内嵌了TCP/IP 协议栈,并简化了接口设计;屏蔽了GPRS 模块的复杂接口方式和接口协议栈,取而代之的是通用的232 接口和简单的AT 命令交互界面。本设计中GPRS模块建议采用ITM100无线通信模块。
3 终端软件设计框架
本系统中GPRS终端软件设计结构由底层向高层依次由BootLader、硬件驱动、嵌入式OS和应用软件组成,软件采用标准C编写,并在ARM专用的集成开发环境Embest IDE下编译、调试。系统底层硬件构架好的下一步就是要通过软件让系统按照本身的功能运行起来。
1) 底层硬件BootLoader类似PC的BIOS,这段小程序完成硬件设备初始化、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,为操作系统内核的运行准备好正确的环境。BootLoader启动代码的流程如图3所示。
图4 客户端命令的传输任务流程图
图5 表计数据的传输任务流程图
2) 本系统采用免费开源的μC/OS操作系统,该系统没有自带驱动,因此必须自己编写驱动,然后加入到操作系统中,供操作系统调用。在本系统中必须驱动RS-232、RS-485、LCD和按键。ITM100通信模块无需自己编写驱动,只需要通过串口写相应的AT指令就可以使用该模块。分模块化编写各个驱动程序可以很方便地对软件系统进行升级和改动,对某一个驱动的改写不会牵涉到其他驱动。
3) 当一个系统处理的任务比较多而且复杂的时候,常常考虑采用嵌入式实时操作系统,采用操作系统对多任务的管理、内存的分配、效率的提高具有极大的好处。μC/OS-II是源码公开的实时操作系统,它非常容易移植,只需要做很少的工作;μC/OS-II采用大量的C语言使其结构简洁;另外,它具备了实时操作系统的全部性能,适合学习研究。
4) 抄表系统的最终使用还是需要由上层的应用软件实现。其任务流程是:从GPRS终端接收客户端的命令,命令经过解释后发给485接口去实现,然后再通过GPRS终端将表计返回的数据传给客户端。采用单线程的编程机制可以实现这一过程,但效率低,由于μC/OS-II支持多进程,一般来说可以采用多进程的方法来安排表计数据传输和客户端命令传输这两个任务。这2个任务的程序流程图分别如图4、图5所示。
4 结束语
本文介绍的基于ARM及GPRS技术的AMR(Automatic Meter Reading,自动抄表)系统解决方案采用了高性能的32位处理器作为抄表控制器的核心芯片,大大提高了抄表系统的信息处理能力和可靠性;抄表终端移植了μC/OS-II实时嵌入式操作系统,能够实时地处理多任务,大幅提高系统的管理能力,保证了信息传递的实时性;具有模块化的程序结构可以很方便地对软件进行升级和改动;硬件结构做成了独立的两部分,可以很方便的对GPRS模块外围扩展电路做改动,主控制器部分只需要做软件的升级即可,这样就大大减少了系统升级的成本;另外,终端具有通用性,只要是带485接口的表计,均可使用此终端进行数据的采集和传输。
由于时间仓促和篇幅限制,本文对局端设备及软件设计只是做了系统上的概括,没有做深入的论述,另外文中不免还有其他叙述不准确及描述简单的地方,希望各位对本文有兴趣的专家和同仁提出宝贵的意见和建议。
参考文献:
[1] 陈爱萍,刘望军,李信德.远程抄表技术通信方法的研究[J].集成电路应用,2003(4).
[2] Labrosse J J.μC/OS-II——源码公开的实时嵌入式操作系统[M].邵贝贝,译.北京:中国电力出版社,2001.
[3] 骆一舟,赵旦楼,诚杰,等.GPRS在远程监控中的运用特点[J].可编程控制器与工厂自动化,2004(12).
[5] 马忠梅,马广云,田泽,等.ARM嵌入式处理器结构与应用基础[M].北京:北京航空航天大学出版社,2002.