庞 力 方春恩 李 伟 任 晓 苏育均
(西华大学电气信息学院,成都 610039)
近年来高速发展的数字化变电站系统是在计算机技术和网络通信技术基础上发展起来的。它改变了传统二次设备的组态模式,用光纤以太网保护测控装置代替传统的模拟量采样值输入设备,具有很高的数据传输能力、抗干扰能力以及设备间的互操作性和实时性。作为间隔层的重要设备基于IEC61850的数字式电能表是电力系统的重要计量设备,广泛运用于输配电网络计量中。因此对来自合并单元的以太网数据包的准确接收以及对接收到的数据包的快速解码从而提取出正确的电压、电流瞬时值对电能的准确计算是十分重要的。
本文利用现场可编程门阵列(field programmable gate array,FPGA)作为主要设计平台,调用了内部MAC IP核实现了网络数据链路层功能对IEC61850 9-2模拟量采样值以太网数据包进行快速接收。采用Verilog HDL语言编写解码模块实现了数据协议包的实时解码。解码后的瞬时电压、电流值存放在内部RAM里。并通过DSP在线调试以及SignalTab II嵌入式逻辑分析仪对解码数据的观测验证了该设计是正确的。
目前已有基于DSP芯片的数字式电能表接收解码设计,如图1所示。这种设计采用了以太网控制器+DSP的结构。以太网控制处理物理层以及数据链路层(MAC)的功能,DSP则负责对协议包进行解码。这种设计外围电路简单,但不利于对MAC进行灵活地选择和配置,DSP程序采用顺序执行不利于对强实时性的以太网数据包进行解码。随着 FPGA技术的发展,目前 FPGA芯片的逻辑单元越来越多,内部有高频率的时钟,延时小,程序并行执行,实时性能好。且芯片内部嵌入了大量的软核可供调用,可以方便进行二次开发。通过分析我们采用Altera公司的EP3C40Q240C8型号的FPGA芯片,有约40000个逻辑单元,丰富的逻辑单元能够满足我们进行快速解码以及电能计算的需要;内部锁相环(PLL)可以很方便地为系统产生不同的时钟信号或时序且芯片内部嵌入了MAC IP软核,在设计时可以对 MAC的性能进行灵活地配置使其能满足我们的设计要求,如图2所示。
图1 基于DSP的数字电能接收及解码
图2 基于FPGA的数字电能接收及解码
图2中来自合并单元的遵循IEC 61850 9-2(LE)协议的以太网数据包通过光纤发送给光电转换器接口将光信号转变为电信号后送给PHY芯片。MAC正常工作时,实时接收来自PHY的协议数据包并对数据帧进行卸装,数据链路管理,帧的差错控制等去掉目的地址和CRC校验码后通过数据输出缓存器接口输出给解码模块(SMV_DECODE)。解码模块根据配置信息对协议包的类型进行解析,判断协议包是否正确,并提取正确的三相电流、电压值存放在RAM里,为电能表的有功无功计算提供瞬时采样值。DSP作为外部芯片与FPGA相连负责对 MAC寄存器和解码配置信息的读写,另外还可以读取存放在RAM里的解码数据。
数字电能表的以太网通讯模块工作在物理层和数据链路层之间,主要完成与合并单元之间的数据传输,其主要组成有数据链路层模块MAC和物理层模块PHY两部分。其中,MAC是以太网通讯最主要的部分,完成数据封装和媒质接入管理两大功能,其与 PHY的数据传输和控制沟通是通过标准接口GMII/MII来实现的。它的接口设计是整个系统的核心部分。根据DP83640系列PHY手册和Altera公司的Triple Speed Ethernet User Guide手册设计出MAC的接口图,如图3所示。
图3 MAC的接口图
在 QuartusⅡ9.1软件的菜单工具栏 Tool中的MegaWizard Plug-InManger选择该版支持的 MAC core并对其功能参数进行选择设置。如 MAC类型选择、是否包括内部 FIFO以及它的存储空间大小和数据位宽、工作方式、是否支持哈希表(工作在组播模式下)、mdc时钟的分频系数等。完成后在原理图中生成我们设计的MAC模块。
对于 10/100Mb的MAC数据接口是 MII。rx_clk为接收数据时钟,m_rx_d[3..0]为接收数据总线,m_rx_en为接收数据使能。MDIO接口是MAC与PHY之间的管理接口,分为时钟线 mdc,数据线 mdio_in,mdio_out与使能信号mdio_en组成了双向串行通信总线。ff_rx_sop为数据起始标志,ff_rx_eop为数据结束标志,ff_rx_data[7..0]为MAC的输出数据总线。
要使MAC能正常工作,需要对其内部32位寄存器进行配置,地址0到23为MAC功能配置寄存器。包括了版本号,测试寄存器,控制命令寄存器,MAC地址,帧长度,控制PHY地址等。其中控制命令寄存器最为重要,这里的32位数据每一位有其具体含义,比如:收发选择、速度选择,工作模式等。这里我们让其工作在接收数据、全双工工作模式下。需要注意的是DSP数据总线是16位的,对MAC寄存器进行读写操作应该分两次进行,用地址 A0线作为数据总线的高低16位操作的控制信号。例如对MAC寄存器地址2进行读写操作时,数据低16位对应DSP地址2,数据高16位对应DSP地址3,如图4所示。
图4 DSP对MAC寄存器读写仿真
DSP采用TI公司的32位定点芯片TMS320F2812,最高可在150MHz主频下工作,内部有16根地址总线和16根数据总线,并带有18K×16bit片上SRAM存放数据以及128K×16bit片上FLASH存放指令。DSP_INTERFACE模块实际上包含有很多组合逻辑电路和三态门组成的双向口数据总线。在输入端接入DSP的需要参与译码的地址、读写使能及各种内部存储区间的片选信号。这里采用Verilog HDL硬件描述语言编写程序。输出端需要产生对 MAC寄存器、解码存储器的读写时能。而FPGA内部的数据总线则需要通过调用三态门来统一输入输出数据线与双向DSP数据总线相连。DSP_INTERFACE模块的设计可以很好地解决异步运行的DSP和FPGA之间读写时序的不同步问题,保证了设计的可靠性。另外如果需要写入的数据很多DSP内存空间不足,还可以扩展外部高速存储器SRAM。
目前,数字化变电站内的采样值通信协议主要是基于IEC61850 9-2(LE)。该协议实现了不同厂家之间的互操作性。一部分公共信息可以通过不同的用户进行灵活配置。如:以太网类型、APPID,svID等。通道数和通道顺序等。在数据实时接收的过程中需要根据通道数与通道序列的配置提取出协议包的电压、电流值并依次存储在内部RAM里。在网络的传输过程中可能会出现因为外界干扰或者线路问题造成丢包现象,丢包不多时通过插值可以进行补偿。如果出现严重的丢包现象需要发错警告信号通知操作人员检查设备是否正常。采样率为4K和10K时,每个数据帧协议里含1个ASDU数据集时帧间隔大分别约为250µs和100µs。为了能最大限度的减小解码处理数据的时间以满足设计的强实时性,这里采用了边接收边解码的方式。解码流程如图5所示。
为了验证设计的正确性,可以通过串口调试助手发送数据的配置信息(如采样率、数据集个数等)给ARM开发板模拟合并单元的功能,发出遵循IEC61850 9-2(LE)的以太网协议包。在FPGA中编写验证模块,通过Singal信号线输出解码后的一个周波的三相电流、电压。并用SignalTab II嵌入式逻辑分析仪观察Singal信号,将数据导入Matlab中生成曲线与通过串口调试助手发出的数据进行比较。验证结构图如图6所示。
图5 解码流程图
图6 验证结构图
串口调试助手分别发送采样率为每周波80个点,电压有效值为5770,电流有效值为500,无谐波,每个数据包含有1个ASDU数据集。以及发送采样率为每周波200个点,电压有效值为5770,含幅值为200的五次谐波,幅值为100的7次谐波,电流有效值为500,含幅值为15的9次谐波,每个数据包含有5个ASDU数据集。仿真结果如图7和8所示。
仿真结果表明遵循IEC 61850-9-2(LE)的以太网数据包经过FPGA上的接收及解码并存放一个完整周波的三相电流、电压值。三相之间的幅值变化以及相位之差(120°)满足我们通过 ARM 开发板模拟发送的无谐波和有谐波的采样值波形。
图7 80点采样无谐波仿真图
图8 200点采样有谐波仿真图
本文提出了一种基于FPGA的数字电能表接收及解码设计方案,通过在FPGA芯片上进行测试,达到了预期的效果,验证了设计的正确性。通过对图7、8仿真结果的分析,能及时准确完整地提取出IEC61850 9-2(LE)数据包中的三相瞬时电流、电压。且在FPGA主频为50MHz的时钟下接收解码所需时间仅仅为十几微秒,符合数字化变电站对数据强实时性的要求。
[1]殷志良,刘万顺,杨奇逊,等.基于 IEC 61850标准的过程总线通信研究与实现[J].中国电机工程学报,2005,25(8):86-91.
[2]曹津平,李伟,秦应力,等.数字化变电站过程层的通信技术研究[J].电力系统保护与控制,2008(6):61-63.
[3]毛晓波,黄云峰,黄俊杰.高精度电能表现场校验仪设计[J].电力自动化设备,2007,27(7):69-73.
[4]廖高华,刘德辉.三相多功能电能表现场校验装置[J].低压电器,2008(22):15-18.
[5]王文华,傅小平,沈孝贤.传统电能表与数字化电能表的对比分析[J].浙江电力,2011(5):15-18.
[6]高鹏宇,游大海,刘国民.符合 IEC 61850标准的数字化变电站内部通信的实现[J].继电器,2006(6):69-72.
[7]IEC61850-9-1.Communcation networks and systems in substations.Parts 9-1:Specific Communcation service mapping(SCSM)-Sample values over serial unidirectional multidrop point to point link[S].2003.
[8]IEC61850-9-2.Communcation networks and systems in substations.Parts 9-2:Specific Communcation Service Mapping(SCSM)-Sampled values ISO/IEC 8802-3[S]. 2004.[9]Altera Corporation. Triple-Speed Ethernet MegaCore Function User Guide.2010.