基于ARM9的用电管理终端的设计

摘要:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁减,适用于对功能可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式linux系统是将普通linux操作系统进行裁剪、修改,使之能在嵌入式计算机系统上运行的一种操作系统。

关键词:嵌入式;用电管理

随着人类科技水平的提高,我们的生活、工作和学习越来越离不开电力。但现在电力供应十分紧张,拉闸限电的现象相当普遍。目前主要采用两方面措施来解决这个问题:推行分时电价和推广电力负荷装置。电力管理系统主要由三部分构成:电表、用电管理终端、主站计算机。近年来,用电管理终端所采用的CPU芯片从Intel的51系列,96系列,再到西门子的C166系列。随着对终端要求的提高,逐步采用嵌入式系统来实现用电管理终端的功能。本论文主要介绍采用ATMEL公司的ATSAM9200来实现终端设计。

一、用电管理终端的设计

1.用电终端的要实现的功能。①抄表。②数据采集。③用电负荷自动控制。④储存。⑤异常信息检测急报警。⑥软件远程升级。⑦对时。⑧停电上报。⑨冻结。为了实现这些功能,用电管理终端的处理芯片应满足以下要求:工业级、5个以上UARTk口、USBHost、两个网口、SPI、IIC、50个以上IO口等资源。

2.SAM9260具有的硬件资源。Atmel的ARM芯片均为工业级产品,支持Java加速、带有MMU、256KCache、最高可跑230MIPS、共有22个外围DMA控制器通道。SAM9260带有12M USB Host、一个10M/100M自适应EMAC、四路10位AD、96个IO。以上资源基本满足用电终端的设计要求。

3.嵌入式Linux。这是嵌入式操作系统的一个新成员,其最大的特点是原始码公开并且遵循GPL协议,在近一年多以来成为研究热点,由于其原始码公开,人们能任意修改,以满足自己的应用,并且查错也非常容易。有大量的应用软件可用。其中大部分都遵从GPL,是开放原始码和免费的。能稍加修改后应用于用户自己的系统。有大量的免费的优秀的研发工具,且都遵从GPL,是开放原始码的。有庞大的研发人员群体。随着Linux在中国的普及,这类人才越来越多。所以软件的研发和维护成本非常低。这是Linux本身具有的一个非常好的地方。Linux比其他的操作系统更小、更稳定,而且Linux是开放的OS,在价格上极具竞争力。如今整个市场尚未成型,嵌入式操作系统也未形成统一的国际标准,而且Linux的一系列特征又为我们开发国产的嵌入式操作系统提供了方便。本项目采用的是最新的linux2.6内核。

4.功能模块的设计。从用电管理角度分析,用电管理终端要具有以下的功能:(1)提供从单相表到多相表等接口的功能,实现与其通信。(2)通过GPRS(或者CDMA)网络与主站通信。(3)将多种异常的数据及时准确地传到主站的功能。(4)对掉电保存,以及对各种历史数据的保存。

其功能模块图如图所示。

图1?摇用电管理终端的模块图

遥信量的输入输出:通过遥信开关控制跳闸。实时时钟:提供准确的时钟,为编程和上报数据提供时标。LCD显示模块:显示当前的电压,电能等抄表信息和终端地址之类的终端信息。数据处理单元:对采集来的基本数据(如电流、电能量等)进行处理。储存模块:对要求的日数据,月数据,事件等进行保存。通讯模块:主站与终端之间的通信方式,可以采用无线电台、GPRS、CDMA、红外等方式。

5.硬件设计

管理终端的主要硬件选型如下表1:

表1?摇主要硬件选型

6.BootLoader的设计与实现。①BootLoader概述,嵌入式linux系统中常用的Bootloader有armboot,redboot,blob,u-boot等,其中U-Boot是当前比较流行、功能比较强大、目前用来开发嵌入式系统引导代码使用最为广泛的Bootloader,可以支持多种体系结构,但相对也比较复杂。本系统采用了U-Boot作为系统的启动程序。AT91Bootstrap是atmel公司基于AT91SAM9核系列微控制器的第一级引导程序,AT91 Bootstrap完成的主要工作:(1)设备初始化如时钟配置、PIO设置等;(2)外设驱动如PIO、SDRAMC、PMC;(3)物理储存介质的驱动如dataflash、nandflash、parallelflash;(4)文件系统的驱动jffs2、fat等;(5)压缩和加密;(6)应用程序加载如ELF、LINUX;②存储空间的地址分配,在嵌入式系统中,所有程序都是放在Flash,eeprom等非易失性存储器件中的,系统启动后才将程序加载到内存中运行,因此需要对BootLoader、操作系统、文件系统、应用程序等软件空间的布局做一个详细的规划。综合分析后,对SDRAM和FLASH的空间分配如表2和表3所示:

表2?摇SDRAM中映像分布表:

表3?摇FLASH中映像分布表:

在表3中,将物理地址的0xd0000000用于存放BootLoader的镜像,内核镜像放在0xd0090000之后约1M多的空间内,BootLoader首先在Flash中运行,然后被拷贝到SDRAM中,这样BootLoader的启动速度会大大加快。

7.应用软件设计。①软件平台及开发工具在基于ARM的嵌入式系统开发中,常常用到交叉编译的GCC工具,本项目中采用的是arm-linux-*工具链,编辑软件采用的是Source Insight,串口调试采用SSCOM32,界面简洁,能实现字符,十六制的显示。

系统的软件部分由Bootloader、Kernel、Ramdisk文件系统组成。上电后,从内部ROM启动,运行Romboot程序,执行内部初始化,然后再跳转到Bootstrap入口处执行,再把U-boot拷贝到SDRAM内运行,以获得更高的运行速度,再由其引导操作系统内核的启动,把根据项目定制的应用程序模块利用busybox打包成Ramdisk文件系统。②终端与主站通信程序,终端和主站建立通信前,主站要知道终端中GPRS模块的SIM卡号码。上电后,终端发AT命令初始化控制GPRS模块,然后终端程序开始拨号,连PPP,建立UDP连接,成功后,终端发登陆帧,服务器侦听到登陆帧后,发出确认帧,终端与主站开始通信。③终端与电表通信程序,终端与多功能电表通过RS-485标准串行接口连接,也可以通过红外串口与手持设备通信(这时可以把终端当作电表来使用)。通信链路的建立和解除均由主站发出的信息帧控制,每帧由帧起始符、从站地址域、控制码、数据码、数据长度、数据域、校验码及帧结束符7个域组成,每部分由若干字节组成。

图3?摇字节传输序列

每字节8位二进制码,再加上一个起始位(0)、一个偶校验位和一个停止位(1),D0为最低有效位,D7为字节的最高有效位,传输的时候是以先低位,后高位的形式。帧是传输信息的基本单元,帧格式如表4所示。

该标准规定的标准传输速率为300、600、1200、2400、9600bps。初始的波特率为1200bps,当用户需要变更传输速率时,首先由主站以初始速率向从站发变更速率请求,从站以初始速率发确认应答帧或否认帧。收到从站确认帧后,双方以确认的新的速率进行以后的通信,并在通信结束后恢复到初始速率。电表实时接收终端发送来的数据,然后根据帧传输协议来判断接收到的帧是否为有效帧,如果不是有效帧,则丢弃该帧,是有效帧的话,就解析出功能码,根据功能码执行相应的功能,如果需要应答帧,则把返回的数据组帧,再通过485串口发送给终端。如果该功能码不需要返回确定的数据,那么其数据域中则为0。

二、功能分析

该系统具有可靠性高,实时性强,传输速度快,传输信息量大等特点。该系统可以实时抄取电表数据,并记入数据库供用户以后查询。同时当用户电表出现故障时,可以及时是主动上报给主站,由主站来提示报警。主站还可以根据终端测量的结果进行统计分析,能得到三相电流最大/最小值及其出现时间、电流过流起始/结束时间、无功最大需量及其出现时间、异常报警功能、电压合格率等功能。用电管理终端达到了设计的要求,硬件电路功能稳定;软件上除了实现了基本抄表功能之外,还能实现功率、电量控制,报警,远程升级等功能,相比以前的抄表终端来说,功能更多,又由于采用了linux操作系统管理应用程序,所以性能上更加稳定,可以广泛应用于配变站等场合。

随着计算机,通信等技术的飞速发展,形式多样的数字产品成为信息处理的一大主要设备。linux以其特有的优势在嵌入式领域受到了广泛的关注,linux2.6包含许多新的特性,为其在嵌入式领域的应用提供了强有力的支持,新的内核越来越多的应用于嵌入式系统。

参考文献:

[1]王颖.电力通信网综合网管系统研究与设计[D].华北电力大学(河北),2003.

[2]段宗涛,林莎.基于SNMP的网络流量监控系统的设计与实现[J].网络与通信,2001,(11):25-27.

[3]Linda Strick,Distributed Marcus Wittig and Andy Berquist. A Framework for Management Applications[J]. journal of network and Designing systems management,2004,(4):197-211.

[4]N.C. Burd.Performance issues in low-cost for distributed transducer systems used for and control[J]. The International Journal of Advanced Manufacturing Technology,2007,(4):3-17.

推荐访问:终端 用电 设计 管理 ARM9