第32卷第2期2016年2月电力科学与工程ElectricPowerV01.32,No.243Feb..2016ScienceandEngineering基于FPGA的微网储能逆变器电压逆控制方案实现李春来1,刘卫亮2,王印松2,周洪波2,林永君2(1.青海省光伏发电并网技术重点实验室,青海西宁8】0008:2.华北电力大学控制与计算机工程学院,河北保定071003)摘要:微网处于孤岛运行状态时,一般由储能逆变器维持系统电压的稳定。由于微网容量较小,储能水平和负载的变化容易恶化系统电压的波形质量。提出了一种基于人工神经网络的储能逆变器电压逆控制方案,为了保证控制的实时性,利用FPGA进行了神经网络专用运算器的设计,并对激励函数与浮点数运算的实现方案进行了对比分析。仿真试验结果表明。所提出的实现方案具有良好的可行性和有效性。关键词:储能逆变器;微网;FPGA;逆控制中图分类号:TM85l文献标识码:ADOI:10.3969/j.issn.1672—0792.2016.02.008然而,由于实际工程中被控对象往往难于或无法0引言随着传统化石能源的日益枯竭,由光伏发电、精确建模,加之逆系统的求解存在很大的困难,该方法的应用受到较大限制。人工神经网络(Ar.tificalNeuralNetwork,ANN)作为典型的智能方风力发电等新能源发电结合蓄电池、超级电容等储能单元构成的微网成为了当前的研究热点¨’“。微网可工作于并网模式与独立运行模式。并网模式下,大电网可为微网提供电压支撑;独立运行模式下,则一般由储能逆变器提供电压支撑。由于微网容量较小,储能水平和负载的变化容易恶化系统电压的波形质量,甚至导致系统电压失稳。随着用户对电能质量要求的不断提高,这一问题亟待解决。常见的逆变器电压控制方法包括单闭环控制、双闭环控制、无差拍控制、重复控制等旧。1。单闭环控制具有结构简单的特点,但是动态响应特性较差。双闭环控制具有较快的动态响应特性,但是控制器参数不容易整定。无差拍控制与重复控制在理论上具有控制偏差小的优点,但是对模型的依赖性较高。还有一些学者提出了基于上述方法的复合控制策略¨’“。逆系统方法是非线性系统控制理论的一次重要突破,具有物理概念清晰、简单直观的特点。收稿日期:2015一ll—17。法,对复杂非线性系统具有出色的逼近能力¨。。因此,将逆系统方法与人工神经网络结合,可充分发挥二者之长,构成新颖的控制方法。为了提高微网储能逆变器输出电压的波形质量,本文提出了一种基于人工神经网络的逆控制方案。由于储能逆变器的PWM控制周期较短,一般仅为几十个斗s,常规的单片机控制器难以实时的完成神经网络的运算。现场可编程门阵列(FieldProgrammableGateArrays,FPGA)以并行运算为主,与传统的单片机、PC机相比具有运算速度快的明显特点。因此,本文利用FPGA设计了神经网络专用运算器,并就激励函数与浮点数的实现方案进行了分析。仿真试验结果表明,所提出的控制方案具有良好的可行性和有效性。人工神经网络原理及结构1.1人工神经网络原理人工神经网络是由大量神经元广泛互联而成基金项目:国家电网公司科技项目(2014.z—Y34A);中央高校基本科研业务费专项资金(2015ZDl7)。作者简介:李春来(1980一),男,高级工程师,主要研究方向为新能源技术,通讯作者:刘卫亮(1983一),男,讲师,主要研究方向为新能源发电与微电网控制,Email:1wlfengzhiying@163.eom。万方数据电力科学与工程2016正的网络,反应了人脑功能的基本特性。神经元的结构模型如图1所示。由3种基本元素组成。r2储能逆变器电压逆控制方案储能逆变器拓扑结构单相LCL型储能逆变器拓扑结构如图3所示,X2.1输信入号厂LXu。为储能单元端口电压;u。为逆变器输H{的PWM突触权值脉冲序列电压;i.为逆变器输出电流;u,为滤波电容电压;i,为滤波电容电流;i。为滤波电感£:上的电流(负载电流);r为考虑各种阻尼因素的综图l神经元结构模型(1)突触。每一个都由其权值或者强度作为特征,特别是连接到神经元k的突触_『上的输入信号并,被乘以k的突触权重训。(2)求和节点。对输入信号进行加权求和,并包括一个外部偏置,记为b。。(3)激励函数。实现对神经元输出幅值限制,将输出信号限制在允许范围内。可以用如下一对方程描述一个神经元k:合等效电阻;u。为逆变器输出电压;Z为系统等效负载;理想功率开关器件IGBT模块Js,一Js。组成逆变桥,采用单极性脉宽调制方式,d为PWM控制信号占空比。当开关频率足够高时,依据平均状态模型,有d=Ⅱ。/u。其中,u。为M,的平均值。M。=∑WJ21kjz,(1)(2)ZY。=妒(u。+b。)式中:z。,算:,…,石。为输入信号;M。为求和节点的输出;妒(・)为激励函数;Y。为神经元的输出信号。1.2图3单相储能逆变器拓扑结构BP神经网络BP神经网络是一种多层前馈神经网络,其主2.2神经网络逆模型结构依据储能逆变器工作原理,影响其输出电压要特点是运算时信号前向传递,训练时误差反向传播。在前向传递过程中,输入信号从输入层进人,经隐含层逐层处理,直至输出层,每一层神经元的输出状态仅影响下一层神经元的输出状态。训练时,根据预测误差的反向传播调整网络权值和阈值,以使得网络输出值逼近期望值。BP神经网络的结构示意图如图2所示。u。的主要因素有储能单元端口电压H。负载电流i。、滤波电容电压“,以及PWM控制信号占空比d,在建立逆模型时应进行考虑。对于第k个控制周期,记d(k)为该周期的PWM控制信号占空比,并在该周期即将结束时进行u。u,,i。,M。的采样,记为u。(k),“。(k),i。(k),“。(k)。为了更好的反映出系统的动态特性,选取Ⅱ。,i。的当前周期采样值u。(k),i。(k)和前一周期的采样值u。(k—1),i。(k—1),u。u,的前一周期采样值u。(k一1),u。(k一1),以及前一周期的PWM控制信号占空比d(k—1)做为输入,当前周期的PWM控制信号占空比d(k)做为输出,构建一个包含7个输入和1个输出的BP网络逆模型,如图4所示,其中隐含层神经元个数取为9输入层隐含层输出层个,隐含层神经元激励函数选用sigmoid函数,输出层激励函数采用purlin函数。图2BP神经网络拓扑结构图万方数据第2期李春来,等基于FPGA的微网储能逆变器电压逆控制方案实现45的神经网络逆模型输出作为前馈信号,与单闭环PI控制相结合,构成一种新型电压逆控制方法,如图5所示。输入层隐含层输出层图4BP神经网络逆模型结构2.3训练样本收集在所建立的10kW逆变器仿真模型上,收集储能单元端口电压变化以及带不同负载时的逆变器运行数据。其中,对于储能单元端口电压,共选取6种不同水平(以20V为间隔,最低340V,图5新型电压逆控制方法最高440V),每一水平下,考虑系统带线性和非线性负载以及负载切换时的43种工况,共有258种工况。为了保证样本数据充分包含系统的动、静态信息,分别通过开环和单闭环两种控制方式进行样本收集。开环控制方式下,选取不同幅值的正弦信号和常值信号,再叠加随机信号后作为系统的PWM占空比信号,使其在[0,1]之间变化,采集系统的相关输出;单闭环控制方式下,通过PI控制器计算PWM占空比信号,然后采集系统的相关输出。对于每种工况,两种方式下均设定逆变桥开关频率为20kHz,以50斗s为采样周期进行一个周波的样本采集,所有工况共构成2063储能逆变器电压逆控制系统实现3.1逆控制系统结构储能逆变器电压的神经网络逆控制系统主要由逆变电路、单片机和FPGA运算单元3部分组成,如图6所示。400个样本。均匀抽取其中的185760个样本图6控制系统结构图做为逆模型训练样本,剩余20640个样本做为逆模型精度检验样本。2.4电压逆控制方案训练好逆模型后,已知当前周期的u。。(k),u。(k),M。(k),i。(k),d(k),k+1时亥0的逆变器输出电压ld,。的设定值“。‘(k+1),以及下一控制周期负载电流i。.的估计值i。(k+1),则可通过逆模型估计出下一周期的PWM占空比控制信号d(k+1)。其中,i。(k+1)可按照下式计算:i。(k+1)=2i。(k)一i。(k一1)(3)单片机是储能逆变器神经网络控制系统的主控制器,通过其4路A/D采集k时刻的储能单元端口电压/Z。。(k)、滤波电容电压u。(k)、负载电流i。(k)、逆变器输出电压Ⅱ。(k)的采样,精度为十位,并与u。‘(k+1),i。(k+1),d(k)一起发送给FPGA。FPGA控制器作为神经网络逆模型的专用运算器,接收单片机发送的网络输入信号,并将计算结果发送给单片机。单片机根据将FPGA的计算结果作为前馈信号,叠加至PI控制器生成储能逆变器的PWM控制信号。3.2但是这种控制策略过于依赖神经网络逆系统模型的精度。为了提高系统的鲁棒性,将训练好FPGA神经网络专用运算器BP神经网络结构(如隐含层神经元个数)万方数据电力科学与工程2016正的确定以及权值、阈值的获取是基于对大量训练样本的学习。随着样本的不断收集,应对BP神经网络进行重新训练,以提高逆模型精度。考虑到每次新训练的网络的结构、权值、阈值有可能发生变化,本文所设汁的神经网络运算器采用模块化的设计思想,其总体结构如图7所示,由6个模块组成,分别为数据采集模块、归一化模块、输入矩阵运算模块、神经元模块、输出矩阵运算模块和反归一化模块。clkRea[0,8192]之间,其中0代表下一时刻占空比d1为0%,8192代表下一时刻占空比d1为100%。以时钟信号clk和输出矩阵运算模块输出信号outl[25:0]为输入,以反归一化运算结果d[15:0]为输出。3.3神经网络激励函数实现方案激励函数是决定人工神经网络整体性能的重要因素之一,本文选定Sigmoid函数作为神经网络逆模型的隐含层激励函数。如何高精度地对其进行实现对系统的控制品质有着显著影响。目前,激励函数的实现方案主要有泰勒级数展开法和拟合逼近法两种,下面对分别用它们实现Sigmoid函Readln『l------....…一…一一一一一.--…一-一-一-….-……一一一…一一一一一一一一一一一一一一一一一一一一一一一一数并进行对比分析。3.3.1泰勒级数展开法Sigmoid激励函数的表达式为图7FPGA神经网络专用运算器结构图数据采集模块以数据时钟信号elk—data、读人使能信号read—sn和10位A/D采集数据in[9:0]作为输人,以神经网络逆模型的7个输人为输出。当读入使能read—sn为高电平时读入10位A/D采集数据in[9:0],每个数据时钟周期读取1次。读取完毕后在下一个数据时钟上升沿将7个读人数据in0~9[9:0]输出;归一化模块以数据采集模块的7个输出为输入,将它们归一化至[一8192,8191]之间,并在下一时钟周期将7个归一化数据输出;输入矩阵运算模块中包含神经网络隐含层各神经元权值、阈值信息的内部矩阵,其作用是对输入信号进行加权求和。它以时钟信号clk、矩阵选择信号slc和7个归一化数据为输入,并将以矩阵运算结果out[21:0]输出给各神经元模块。神经元模块的作用是进行隐含层激励函数的计算,以时钟信号clk和输入矩阵运算模块运算结果out[21:0]为输入,并将神经元运算结果Y[17:0]输出给输出矩阵运算模块。输出矩阵运算模块中包含神经网络输出层神经元的权值、阈值信息,作用是计算神经元输出信号。其以时钟信号clk和神经元模块输出信号Y[17:0]为输入,并将运算结果outl[25:0]输出给反归一化模块。反归一化模块作用是将计算结果反归一化到图8Y2—了2南2而2而(4)‘4’用泰勒级数展开e’得e。=lime着2・+石+身+蚤+.一+衙(5)取N=9,即将e。函数展开到九阶,通过MATLAB计算Sigmoid函数近似值的绝对误差,如图8所示。一5n5数据范闲Sigmoid函数九阶展开误差图可知,对Sigmoid函数进行泰勒九阶展开近似时,在[一10,10]之间最大绝对误差在2.49×10“左右,基本满足精度要求。3.3.2最小二乘拟合逼近法利用最小二乘法以多项式、指数函数、三角函数等作为基函数实现曲线拟合,工程上较为常万方数据第2期李春来,等基于FPGA的微网储能逆变器电压逆控制方案实现47见。考虑到采用FPGA实现上述基函数需要消耗大量的逻辑和较长的计算时间,本文采用一次函数做为基函数,对Sigmoid函数进行最小二乘分段拟合,共将整个区间分为1280段,将拟合所得的每个分段的斜率、截距数据存储在ROM表中以备调用,以降低每个周期的运算次数,提高FPGA存数单元的利用率。通过MATLAB仿真计算Sig-moid函数分段线性逼近的绝对误差,结果如图9所示另外,最小二乘分段拟合法需要占用一定的存储空间,普通FPGA完全可以满足。综合考虑FPGA运算能力、运算次数、逻辑门和内存使用效率以及计算精度,选择最小二乘分段拟合法作为最终实现方案。3.4浮点运算实现方案目前只有个别的高端FPGA通过内嵌ARM或浮点数运算内核能够进行浮点数运算,对于大多数中低端FPGA而言,浮点数运算都需要转化成整型运算,常见的有两种实现方案,一是将浮点数转化为一定位数的定点数,二是向右移位进行放大取整。对于定点数实现方案,工程上一般采用16位或32位定点数来表示浮点数。对于16位定点数,D15表示符号位,D14~D10表示整数位,D9~DO表示小数位,其表示的数据范围为一32.000~31.999,计算精度约为0.00098。对数据范围储能逆变器电压逆控制模型进行多次训练,结果表明模型的权值、阈值的数据范围在一50~50之间,数据精度要求为0.000l。若采用16位定点数的数据格式则无法满足数据范围要求和精度要求,若改用32位定点数,则会造成逻辑资源的大量浪费,并且定点数运算器与整型数运算器相比图9Sigmoid函数分段线性逼近误差可知,当采用分段线性逼近Sigmoid函数时,在[一10,10]之间最大绝对误差约为1.87×10一,与采用泰勒级数九阶展开相比误差大大降低。3.3.3两种实现方案对比设计难度和逻辑消耗量都要大得多,因此本文采用向右移位再进行放大取整的实现方案。该方案首先将原有的浮点型数据放大固定的倍数,然后取整并舍弃高位0得到近似的整型数据。为进一步降低逻辑资源的消耗量,本文将该整型数据定义为非固定位数整型数据,可根据每步运算的实际需求来定义整型数据的位数。该方案不仅能够降低逻辑资源的消耗量,而且将原有尽管近年来FPGA的成本不断下降,但是高逻辑门的FPGA芯片依然价格昂贵,因此,在满足神经网络逆模型运算的实时性与准确性要求的基础上,尽可能地降低对逻辑门的消耗量显得尤为重要。将泰勒级数九阶展开法与最小二乘分段拟合法在运算量方面进行比较,结果如表1所示。表1两种实现方案运算次数比较的浮点数定点数运算器转换为整型运算器,可降低设计难度。经过验证,将原有的数据扩大8192倍,即将原有定点数向右移13位,其计算精度约为0.00012,可满足逆模型的精度要求。4神经网络逆模型的FPGA仿真验证可知,最小二乘分段拟合法的所需乘法、加法和除法运算次数均少于泰勒级数九阶展开法,但是需要进行两次查表运算。每次查表运算需要一个机器周期,时间开销与一次加法运算相当。基于以上设计方案,在Quartusii环境中应用VerilogHDL硬件描述语言建立了储能逆变器的神经网络逆模型,并利用Modelsim—altera仿真软件万方数据48电力科学与工程2016年对其基础功能及运算的快速性进行仿真验证。实验选用的FPGA型号为EP4CEll5F,属于AL.TERA系列FPGA的一款中端产品,晶振为50MHz,共有逻辑门l14480个和3.9M的存储空间,以及529个I/O口。神经网络逆模型运算时序如图10所示,可知在每个时钟上升沿采集一个数据,7组数据采集时间为7个时钟周期,延迟1个时钟周期后得到输入矩阵运算结果,然后在下一个时钟周期得到神经网络模型的计算结果,即占空比,整个计算过程共需10个时钟周期,每个时钟周期为20ns,图11FPGA与Matlab计算结果对比图001o.o故整个计算过程共需200ns,远低于储能逆变器的控制周期50“s。删000嗤靛鞣.O00-0,0一o.0IIIⅨ,1539¥№5“数话采集艇归一化140舶t.0011311《图12FPGA计算误差126296I.21047辅^矩降计:影舌粜I-15’&3I-i10M运算需求。I-m19I№∞I-m2帕£Z20坫5结论本文提出了一种基于神经网络的储能逆变器I■强f】H21567611神经元棋块计茸结果[蔼8B35aIZl∞1I—121电压逆控制方案。为了保证实时性,利用FPGA技术进行了神经网络专用运算器的设计。仿真结果表明,该方案具有运算速度快,所需逻辑门少,I%171五l帖砸出矩阵计篝结集lIM4"?157一图lO神经网络逆模型运算时序示意图计算精度高的特点。因此具有较高的实用性。本文的下一步工作是在硬件平台上对该方案开展进为了验证FPGA对逆模型的计算精度,以训练样本作为验证数据,就其计算结果与Matlab的计算结果进行比较,如图1l所示,可知两者的计算结果十分接近。FPGA计算结果的误差曲线如图12所示,在大多数情况下绝对误差小于0.005,最大绝对误差不超过0.02,完全满足储能逆变器逆模型的计算精度要求。在Quartusii环境中对逆模型进行编译,结果为:整个逆模型共消耗逻辑门37674个,占总逻辑门的33%;使用I/O口28个,占总I/O口的5%;占用内存518.6Kb,占总内存的13%,EP4CEll5F型FPGA的资源完全可以满足逆模型一步的验证和完善。参考文献:l,J杨新法,苏剑,吕志鹏,等.微电网技术综述[J].中国电机工程学报,2014,34(1):57—70.21J翟云峰,易国伟,王亦,等.基于改进帝国竞争算法的微网动态经济调度[J].电力科学与工程,2015.31(5):34—41.rL31J何耀华,汤雨,董仙美.宽输入逆变器重复控制方法研究[J].中国电机工程学报,2015,35(23):6135—6142.rL41J周娟,秦静,王子绩,等.内置重复控制器无差拍万方数据第2期李春来,等基于FPGA的微网储能逆变器电压逆控制方案实现49控制在有源滤波器中的应用2013,28(2):233—238.[J].电工技术学报,[7]三相逆变器不平衡负电网技术,2013,3727(1):125一132.邓宇恩,粟时平,刘桂英,等.三相LCL光伏并网[5]王恒利,付立军,肖飞,等.逆变器的准比例谐振重复控制研究[J].电力科学与工程.2015,31(10):33—39.[8]戴先中,陈珩,何丹,等.神经网络逆系统及其在载条件下双环控制策略[J](2):398—404.[6]夏鲲,葛越,曾彦能,等.电压源型逆变器改进无电力系统控制中的应用[J].电力系统自动化,200l,25(3):11—17.差拍控制策略仿真研究[J].系统仿真学报,2015,ImplementationofInverseControlSchemeforEnergyStorageInverterVoltageinMicro-gridBasedonFPGALIChunlail,LIU(1.KeyLaboratoryPowerofWeilian92,WANGYinson92,ZHOUHongb02,LINYongjun2Grid-ConnectedPhotovoltaicTechnologyofElectricPowerResearchInstituteofQinghaiGridCorporation,Xining810008,China;2.SchoolofControlandComputerEngineering,NorthChinaElectricPowerUniversity,Baoding071003,China)Abstract:Whenthemicro—gridworksinthetheenergystorageinverter.Duetioncouldeasilyvertercausestateofisolatedoperationmode,thevoltagestabilityismaintainedbytothesmallcapacityofthemicro-g州,energystorageleveltochangeandloadvaria-problem,anewin.tothewaveformdeteriorationofthesystemvoltage.Inorderonsolvethisvoltageinversecontrolschemebasedneuralnetworkisproposedinthispaper.Inorderguaranteethereal-timeperformanceofthecontrolsystem,aspecialarithmeticunitofneuralnetworkisdesignedusingFPGA,areandtheimplementationschemesoftheexcitationfunctionandfloatpointoperationshowthattheproposedschemeisanalyzed.Simulationresultsfeasibleandeffective.Keywords:energystorageinverter;micro-grid;FPGA;inversecontrol万方数据