CN103336877B - 一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法 - Google Patents

一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法 Download PDF

Info

Publication number
CN103336877B
CN103336877B CN201310317179.9A CN201310317179A CN103336877B CN 103336877 B CN103336877 B CN 103336877B CN 201310317179 A CN201310317179 A CN 201310317179A CN 103336877 B CN103336877 B CN 103336877B
Authority
CN
China
Prior art keywords
reconfiguration unit
matrix
rvm
calculation
lithium ion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310317179.9A
Other languages
English (en)
Other versions
CN103336877A (zh
Inventor
周建宝
王少军
彭宇
刘大同
彭喜元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201310317179.9A priority Critical patent/CN103336877B/zh
Publication of CN103336877A publication Critical patent/CN103336877A/zh
Application granted granted Critical
Publication of CN103336877B publication Critical patent/CN103336877B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统及方法,涉及锂离子电池剩余寿命预测系统及方法。为了实现锂离子电池预测的不确定性表达、使锂离子电池剩余寿命预测方法更适用于资源有限的卫星系统环境。预测系统的动态可重构模块包括重构单元A和重构单元B,二者分时复用动态可重构模块的逻辑资源实现RVM训练和预测;通过多级流水的分段线性逼近法及并行计算结构实现高斯核函数流水计算,确保计算效率的充分提升。通过改进Cholesky分解方法实现对称正定阵的求逆计算,利用乘累减器减少了计算资源消耗,降低了计算延迟。实验表明:本发明利用FPGA有限的计算资源实现了与PC平台相近水平的计算精度,获得相对PC平台4倍的计算效率提升,动态重构的策略有效提高了硬件资源利用率。

Description

一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统及方法
技术领域
本发明涉及一种锂离子电池剩余寿命预测系统及预测方法。
背景技术
锂离子电池以其优越的性能已经成为我国第三代卫星储能电池(文献[1]:王东,李国欣,潘延林.锂离子电池技术在航天领域的应用[J].上海航天,2000,17(1):54-58),但其存在安全性问题,特别对于卫星应用,锂离子电池的故障会引起严重的后果(文献[2]:GoebelK,SahaB,SaxenaA,etal.Prognosticsinbatteryhealthmanagement[J].Instrumentation&MeasurementMagazine,IEEE,2008,11(4):33-40)。因此,锂离子电池的管理成为卫星电源系统的关键技术之一。传统电池管理系统主要包括充放电控制、均衡管理、过压保护、过流保护、热控制及电量估计等功能。近年来,为使卫星能够更加可靠地、安全地在轨运行,具备自主健康管理功能的电池管理系统成为未来发展的方向(文献[3]:AS’ADMS.FaultDetection,IsolationandRecovery(FDIR)inOn-BoardSoftware[D].ChalmersUniversityofTechnologyDepartmentofComputerScienceandEngineering,2005)。它是在传统电池管理系统功能基础上,根据锂离子电池的状态监测参数在轨估计电池的健康状态(StateofHealth,SOH),并预测电池的剩余寿命(RemainingUsefulLife,RUL),从而在轨自主制定相应的管理、控制、保护、故障报警与隔离以及预测性维护等策略,减少地面干预,提高管理效率,提升卫星系统运行的可靠性和安全性。
锂离子电池是典型的动态、时变、非线性系统,目前,其RUL预测方法主要包括基于模型的方法和数据驱动方法两大类。基于模型的方法需要根据电化学反应原理建立电池等效电路模型进行预测,预测精度依赖于模型的准确性。但是实际的大功率应用很难建立准确的电池模型(文献[4]:GangLiu.AStudyonRemainingUsefulLifePredictionforPrognosticApplications[D].UniversityofNewOrleansThesesandDissertations,2011,4)。因此,现在更多的研究关注于数据驱动方法,如:神经网络(文献[5]:JieLiu,AbhinavSaxena,KaiGoebel,BhaskarSaha,WilsonWang.AnAdaptiveRecurrentNeuralNetworkforRemainingUsefulLifePredictionofLithium-ionBatteries[C].AnnualConferenceofthePrognosticsandHealthManagementSociety,2010)、支持向量机(文献[6]:PattipatiB,PattipatiK,ChristophersonJP,etal.Automotivebatterymanagementsystems[C].IEEEAUTOTESTCON2008,521-526)、粒子滤波(文献[7]:SahaB,GoebelK.ModelingLi-ionbatterycapacitydepletioninaparticlefilteringframework[C].Annualconferenceoftheprognosticsandhealthmanagementsociety.2009;文献[8]:B.Saha,S.Poll,K.Goebel.AnIntegratedApproachtoBatteryHealthMonitoringusingBayesianRegressionandStateEstimation,Autotestcon,2007IEEE,2007:646–653)和相关向量机(RelevanceVectorMachine,RVM)(文献[9]:JianbaoZhou,DatongLiu,YuPeng,XiyuanPeng.CombinedSparseBayesianLearningStrategyforRemainingUsefulLifeForecastingofLithium-ionBattery[C].Instrumentation,Measurement,Computer,CommunicationandControl(IMCCC),2012SecondInternationalConferenceon.IEEE,2012:457-461)等。但是,实际应用中由于噪声、测量误差和模型误差的存在,预测结果必然存在一定的不确定性。因此,所采用的方法应能够给出一定置信度下预测结果的区间值或概率值。上述方法中,神经网络和支持向量机只能给出确定性预测,而粒子滤波和RVM则可给出预测结果的不确定性表达(文献[10]:ZhangJ,LeeJ.AreviewonprognosticsandhealthmonitoringofLi-ionbattery[J].JournalofPowerSources,2011,196(15):6007-6014)。然而,粒子滤波方法需依赖物理或经验模型建立状态转移方程,目前采用电池等效电路模型和经验模型针对单体电池的研究已取得了一定的成果,但卫星应用的大功率的电池(电池组)并未获得充分研究。而与支持向量机类似的相关向量机也是一种概率式预测方法,因其超参数简单、泛化能力强等优点已开始应用于预测领域(文献[11]:张磊,李行善,于劲松,万九卿.基于关联向量机回归的故障预测算法[J].系统工程与电子技术,2010,32(7):1540-1543;文献[12]:范庚,马登武,邓力,等.基于灰色相关向量机的故障预测模型[J].系统工程与电子技术,2012,34(2):424-428)。
基于RVM的预测方法一般包括RVM模型训练过程和多步预测过程,其计算过程涉及核函数计算、矩阵乘法、矩阵求逆、矩阵向量乘法、除法等计算,计算复杂度较高。尤其是训练过程,因普遍采用迭代计算方式,整个训练过程的计算时间复杂度为O(n3),空间复杂度为O(n2),其中n为训练样本个数(文献[13]:TippingME.SparseBayesianLearningandtheRelevanceVectorMachine[J].JournalofMachineLearningResearch,2001,1:211-244)。因此,若采用RVM方法实现锂离子电池剩余寿命预测,就必须采用高性能的计算平台,但考虑卫星平台的特点,还应该对计算平台的功耗、重量和体积等进行严格限制;另外,针对不同工况以及不同的应用阶段,计算平台还应满足RUL预测系统的适应性在线升级需求。
目前,卫星平台可采用的计算系统架构包括:基于嵌入式处理器的软件计算方法、基于ASIC的定制计算和基于FPGA的可重构计算方法(文献[14]:彭晓明,庞建民,郭浩然.动态可重构技术研究综述[J].计算机工程与设计,2012,33(12):4514-4519)。上述三个计算架构中,嵌入式通用处理器编程简单,程序升级方便,但单位功耗下计算能力较低;ASIC的计算能力最高,但不具备功能升级能力(文献[15]:J.M.Rabaey,"Reconfigurableprocessing:Thesolutiontolow-powerprogrammableDSP,"inProc.1997IEEEIntl.Conf.onAcoustics,Speech,andSignalProcessing(ICASSP'97),Vol.1,LosAlamitos,CA:IEEEComputerSocietyPress,1997:275-278)。而可重构计算是随可编程逻辑器件的发展而兴起的一种计算模式,通过在计算结构可变甚至运行时可变的硬件平台上进行定制化计算,基于FPGA的可重构计算既具有ASIC高性能计算的特点,又具有嵌入式通用处理器计算灵活的特性,同时FPGA还集成了丰富的IP核和存储资源,展露出比通用嵌入式处理更好的小体积、低功耗、高可靠性等技术特点,在高性能计算领域和航天计算领域逐步获得了广泛应用(文献[16]:AwadM.FPGAsupercomputingplatforms:asurvey[C].FieldProgrammableLogicandApplications,2009.FPL2009.InternationalConferenceon.IEEE,2009:564-568;文献[17]:刘涵,叶平.基于递归神经网络的LS-SVM硬件实现与实验研究[J].仪器仪表学报,2009,30(8):1745-1751;文献[18]:刘涵,王博,尹嵩,等.一种基于FPGA的新的SVM硬件实现方法[J].仪器仪表学报,2010,31(10):2235-2241;文献[19]:王少军,刘琦,仲雪洁,等.一种解线性最小二乘问题的FPGA计算方法[J].仪器仪表学报,2012,33(3):701-707;文献[20]:MontenegroS,RoserHP,HuberF,etal.BOSS:SoftwareandFPGAMiddlewarefortheflyinglaptopMicrosatellite[C].InProceedingofDASIA,2005:401-405)。
因此,综合考虑嵌入式平台的计算能力、RVM算法的计算复杂度和算法的在线升级能力等因素,采用FPGA作为卫星锂离子电池RUL预测的嵌入式计算平台是实现卫星锂离子电池RUL复杂计算的理想选择。但是,锂离子电池的RUL预测还处于起步阶段,锂离子电池RUL预测的方法体系框架尚不完善,RVM算法的硬件实现方法还未见报道。
发明内容
本发明的目的是提供一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统及方法,以实现锂离子电池预测的不确定性表达、实现基于相关向量机的预测算法的嵌入式计算,使锂离子电池剩余寿命预测系统及方法更适用于资源有限的卫星系统环境。
本发明为解决上述技术问题采取的技术方案是:
技术方案一:一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统,所述预测系统包括FPGA、片外存储器和配置存储器,所述FPGA包括静态逻辑区和动态可重构模块(动态重构区),所述静态逻辑区包含有嵌入式处理器、片上总线以及挂接于片上总线上的外设功能模块、嵌入式处理器的存储控制器、BlockRAM和解耦合IP,嵌入式处理器的存储控制器与嵌入式处理器的存储控制器接口连接,BlockRAM与嵌入式处理器的块随机存储器接口连接,动态可重构模块通过片上总线与嵌入式处理器互联,动态可重构模块和片上总线之间通过解耦合IP互联;动态可重构模块包括重构单元A和重构单元B,重构单元A和重构单元B分时复用动态可重构模块的逻辑资源实现RVM训练和预测;嵌入式处理器用于实现动态可重构计算流程的控制,重构单元A和重构单元B用于自主完成更底层的计算流程;解耦合IP用于保持与静态逻辑区域有物理连接的动态可重构区的信号在动态重构时处于稳定状态;片外存储器通过嵌入式处理器的存储控制器与嵌入式处理器互联,配置存储器与片上总线存储控制器互联;片外存储器用于存储剩余寿命预测的输入数据及中间计算结果;配置存储器用于存储FPGA的配置文件。
技术方案二:本技术方案是对技术方案一的进一步限定,所述外设功能模块包括配置端口、通讯控制端口、DMA控制器和片上总线存储控制器。
技术方案三:本技术方案是对技术方案一或二的进一步限定,片外存储器采用大容量、速度快的DDRSDRAM实现;重构单元A、重构单元B与片外存储器之间的数据交互采用DMA的方式实现。
技术方案四:一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测方法,所述预测方法的具体过程包括训练过程和预测过程;
训练过程依次由重构单元A、重构单元B完成,训练时由重构单元A到重构单元B需一次重构,训练时首先配置FPGA为重构单元A开始计算,重构单元A用于实现核函数Φ、矩阵向量乘ΦT t和向量内积tT t的计算,计算完成之后存储计算结果;
其中,选取电池容量数据C=(C1,C2,…Cn)作为原始样本,Ci为电池容量,单位为Ah,i=1,2,…,n,n=168;然后进行相空间重构构造训练样本,嵌入维数l=5,迟延d=1,得到训练样本集{(x1,t1),(x2,t2),…,(xn-l,tn-l)},xj=(Cj,Cj+1,…,Cj+l),tj=Cj+l,j=1,2,…n-l,其中x=(x1,x2,…,xn-l)为RVM模型输入数据,t=(t1,t2,...,tn-l)为RVM模型的输出数据;即相关向量回归数学表达式为t=Φw+ε,其中t=(t1,…,tn)T,ε为高斯噪声,w为权值,w=(w0,…,wn)T,Φ=[φ12…φn]T为核函数矩阵,φi=[K(xi,x1),…,K(xi,xn)],K(xi,xj)=exp{-||xi-xj||22},γ为核参数;优选的,γ=3;
然后配置FPGA为重构单元B并开始计算,重构单元B用于实现权值w(m+1)、噪声方差(σ2)m+1的计算;
其中:w(m+1)=(σ-2)(m)(m)(m)ΦT-1ΦΨ(m)Tt
( σ 2 ) m + 1 = t T t - 2 t T Φ * ( w ( m + 1 ) ) T + trace [ ΦE ( ww T ) Φ T ] n , σ2为噪声ε的方差,
-2)(m)表示上一步高斯噪声ε方差的倒数,该式中的m表示迭代次数;
Ψ ( m ) = diag [ ( w 1 m ) 2 , ( w 2 m ) 2 , . . . , ( w n m ) 2 ] ; w(m)、w(m+1)分别为表示前一次和本次新计算得到的公式t=Φw+ε中的权值w;
-1表示矩阵∑的逆,∑=ΦΨ(m)ΦT+(σ2)I,I为单位阵;
trace[ΦE(w(m)(w(m))TT]表示求矩阵[ΦE(w(m)(w(m))TT]的迹;
E(w(m)(w(m))T)=(Ψ(m)(m)ΦT-1ΦΨ(m))+w(m)(w(m))T,E(w(m)(w(m))T)表示矩阵(w(m)(w(m))T)的期望;
预测过程时由重构单元A完成,预测时由重构单元B到重构单元A需一次重构,配置FPGA为重构单元A,实现核函数Φ(x*)、预测值Φ(x*)Tw及预测值的方差σ2+Φ(x*)T∑Φ(x*)的计算,进行RUL预测计算,当预测结果达到失效阈值时预测结束,同时获得电池的RUL的计算结果及方差。
技术方案五:本技术方案是对技术方案四的进一步限定,重构单元A的核函数计算采用多级流水的分段线性逼近核函数计算方法,其具体过程为:
步骤A1、训练前确定如式K(x,xi)=exp{-||x-xi||22}所示的高斯核函数作为核函数,式中γ为超参数;
核函数矩阵Φ为对角线元素为1的对称正定阵,计算下三角元素,如式(5)所示;
步骤A2、核函数的二范数计算过程为:
假设训练样本的嵌入维数为l,则l维向量xi和xj的二范数计算公式如下:
||xi-xj||2=(xi1-xj1)2+(xi2-xj2)2+…+(xil-xjl)2(6)
式(5)的第1列核函数的二范数计算元素如1所示:
表1二范数计算元素表
用ai替代表1中的元素,如表2所示:
表2二范数元素的ai描述表
由式(6)可知二范数是乘累加计算,采用多级流水的累加计算方法来实现二范数的流水计算;具体过程为:引入FIFO作为加法器计算结果的缓存;将表2中的数据按照列的顺序连续输入到加法器,并在FIFO的配合下实现流水的累加计算;详细流程如表5所示;
表5多级流水的累加计算流程表
第1流水周期:将数据a1、a2、…an和FIFO的输出数据0输入到加法器,并将计算结果存入FIFO;
第2流水周期:将数据an+1、an+2、…a2n和FIFO的输出a1、a2、…an输入到加法器,FIFO的输出是上一流水周期加法器的计算结果,并将计算结果存入FIFO;
第n个流水周期:完成了第一列二范数计算;
依此类推,可以流水地实现式(5)中所有二范数的计算;
步骤A3、核函数的指数计算过程为:采用分段线性逼近法实现指数计算,其具体过程为:对于x∈[L,U]区间的任意指数函数f(x),将[L,U]区间平均地划分为N等份,并且N=(U-L)/(Ui-Li);采用分段线性逼近法,在每个x∈[Li,Ui]内,f(x)可以近似地表达为f(x)=kix+bi,ki和bi可通过计算机计算获得并存储于查找表中,查找表用于存储线性多项式系数ki和bi,线性多项式的运算利用FPGA的加法器、减法器和乘法器实现;N的取值范围取决于计算精度和计算速度,例如N的取值为100。
技术方案六:本技术方案是对技术方案四或五的进一步限定,重构单元B的∑矩阵求逆是基于乘累减的改进Cholesky分解矩阵求逆,其具体过程为:
改进Cholesky分解原理如下:∑=LDLT(7)
其中矩阵L为对角线元素为1的下三角阵,D为对角阵,LT为L的转置;L和D按式(8)求解;
d r = ( h rr - Σ k = 1 r - 1 l rk 2 d k ) , l ir = ( h ir - Σ k = 1 r - 1 l ik d k l rk ) / d r . - - - ( 8 )
其中,r=1,2,…,ni=r+1,r+2,…,n,h为∑的元素;
假设,U=L-1,则∑-1=UTD-1U,其中U为下三角阵,按照式(9)求解;
u ii = 1 / l ii = 1 u ij = - u ii Σ k = j i - 1 ( I ik * u kj ) = - Σ k = j i - 1 ( l ik * u kj ) - - - ( 9 )
式中,i=1,2,…n,j=1,2,…i-1;
对角阵D的D-1等于对角线元素的逆,将对角线元素di取倒数即可要出D-1,采用除法器实现;
矩阵U的计算按照式(9)实现,uii=1,U的下三角元素为uij,uij的计算采用乘法器、减法器及FIFO实现;完成矩阵D-1和U的计算之后,按照∑-1=UTD-1U实现∑-1的计算。
本发明的有益效果是:本发明采用RVM进行锂离子电池RUL预测,并在其基础上开展基于FPGA可重构计算的RVM计算方法研究,提出了一种符合卫星锂离子电池运行状态监测与分析需求的剩余寿命预测系统,有效解决了FPGA平台中基于RVM的锂离子电池RUL预测方法的体系框架设计以及计算方法实现问题。实现了卫星锂离子电池剩余寿命有效预测。本发明首先基于相关向量机的剩余寿命预测框架,解决了预测不确定性表达问题;进而采用FPGA动态重构技术,实现了基于相关向量机的预测算法的嵌入式计算,解决了核函数矩阵和矩阵求逆的计算方法和结构设计等关键问题,为解决硬件计算资源有限条件下的机器学习算法计算问题提供了一种新颖的技术方案。实验结果表明,在与PC平台保持相近计算精度的条件下,利用FPGA实现的剩余寿命预测计算效率提升了4倍,同时证明了机器学习的可重构计算方法在嵌入式计算体系中的应用具有良好的前景。
附图说明
图1是基于RVM的RUL预测方法框架图(Fig.1TheRULpredictionframeworkwithRVM),图2是动态可重构RVM计算方法的流程框图(Fig.2ThecomputingmethodfordynamicreconfigurableRVM),图3是本发明所述的基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统框图(动态可重构RVM剩余寿命预测系统;Fig.3TheRULpredictionsystemwithdynamicreconfigurableRVMimplementation),图4是多级流水的累加计算图(Fig.4ThecomputingofMultilevelPipelineAdder),图5多级流水的累加计算流程图(Fig.5ThecomputingflowchartofMultilevelPipelineAdder),图6是高斯核函数计算单元框图(Fig.6ThecomputingunitfortheGaussiankernelfunction),图7是矩阵求逆单元框图(Fig.7Thecomputingunitformatrixinversion),图8是NASA电池容量退化曲线图(Fig.8Capacitydegradationoflithium-ionbatteryinNASA),图9是PC平台RUL预测效果图(Fig.9TheRULpredictionperformedonPCplatform),图10是FPGA平台RUL预测效果图(Fig.10TheRULpredictionperformedonFPGAplatform)。
具体实施方式:针对本发明技术方案的实现进行如下详细描述:
可重构的RVM锂离子电池RUL计算方法
目前,针对锂离子电池RUL预测的研究主要以理论研究为主,多是基于PC平台Matlab或C/C++计算环境的研究,结合实际的应用问题开展的研究工作鲜见报道。目前理论研究主要包括两类方法(文献[21]:罗伟林,张立强,吕超,等.锂离子电池寿命预测国外研究现状综述[J].电源学报,2013,1:140-144):一类是从电池容量测试角度直接进行电池RUL预测的方法,但电池容量不可在线测量,该类方法不适合实际应用;另一类是通过电池的电化学阻抗谱、电池电压、电流等性能参数进行电池模型参数识别,进而描述电池容量和功率退化的间接RUL预测方法。这类方法的缺点是电化学阻抗谱的获取需依赖专业测量仪器,且测量过程复杂。同时这类方法依赖于电池等效电路模型,简单的模型计算量小,但很难准确描述电池动态特性;复杂模型相对准确,但计算复杂,甚至还需进行积分和微分计算,不适合FPGA计算。所以,本文从FPGA可重构计算的角度,提出一种适合FPGA的基于RVM的锂离子电池剩余寿命预测方法框架。然后,分析RVM预测方法的计算流程及计算特点,提出一种可重构的RVM剩余寿命预测计算方法;最后,对算法中关键单元的设计进行描述。
1基于RVM的锂离子电池RUL预测方法框架
1.1RUL预测方法框架
基于RVM的的锂离子电池RUL预测算法框架如图1所示,该框架由退化状态识别和剩余寿命预测两大部分组成。退化状态识别是将锂离子电池的电压、电流、温度等多维可测参数非线性映射为一维的性能状态参数(或健康因子)。在剩余寿命预测部分,将该一维性能状态参数作为RUL预测的输入数据,采用时间序列多步预测的方法对性能状态参数进行迭代外推预测,直到性能状态参数退化到所设定的失效阈值时结束多步预测,从而实现RUL的预测。
该方法框架的优势是:通过退化状态识别一方面实现了锂离子电池性能状态的估计,另一方面实现了多维数据到一维数据的非线性映射,一维的输入数据降低了RVM计算的复杂度和存储空间,使其更适合FPGA的可重构计算。关于退化状态识别的策略可在文献(文献[22]:MehrnooshShahriari,MohammadFarrokhi.OnlineState-of-HealthEstimationofVRLABatteriesUsingStateofCharge[J].IEEETRANSACTIONSONINDUSTRIALELECTRONICS,2013,60(1):191-202)综述的41篇相关研究成果基础上开展研究,本文重点关注RVM计算方法问题,退化状态识别的具体实施途径本文暂不讨论。
1.2RVM预测方法分析
基于时间序列多步预测的剩余寿命预测方法是相关向量机回归问题,RVM回归算法基本原理如下:
对于给定的数据集xi∈Rd,ti∈R,相关向量回归数学表达式为t=Φw+ε,其中t=(t1,…,tn)T,ε为高斯噪声,w为权值,w=(w0,…,wn)T,Φ=[φ12…φn]T为核函数矩阵,φi=[K(xi,x1),…,K(xi,xn)],K(·)为核函数。RVM回归的目的就是利用给定的数据集计算w的过程,并在新的x*到来之后预测目标值t*,同时输出t*的方差后续内容会结合具体的计算过程对算法原理进行详细分析。下面重点分析相关向量多步预测的计算过程。多步预测过程主要包括两部分:一是RVM预测模型的建模过程,即RVM训练过程(计算w);二是性能状态的预测过程。目前,RVM回归有MacKay迭代估计、自下而上的基函数选择法及期望最大化迭代估计(EM迭代估计)三种训练算法(文献[23]:ThayananthanA.Template-basedPoseEstimationandTrackingof3DHandMotion[D].DepartmentofEngineering,UniversityofCambridge,September2005;文献[24]:ZhongM.AvariationalmethodforlearningsparseBayesianregression[J].Neurocomputing,2006,69(16):2351-2355)。MacKay迭代估计可能会存在奇异阵,从而导致矩阵无法求逆。自下而上的基函数选择方法计算过程涉及指数计算、对数计算、最大值计算以及矩阵的行与列的删除和插入过程,其计算过程十分复杂,不利于硬件实现。而EM迭代估法克服了MacKay迭代法矩阵奇异问题,同时计算过程较自下而上的基函数选择方法简单,易于硬件实现。且对于性能状态的预测过程三种算法计算过程相同。所以,本文从硬件计算可实现方面选择EM迭代算法作为RVM的训练算法。
下面对EM迭代训练和性能状态预测的计算过程进行分析。
EM迭代的训练:包括E步计算和M步计算,具体训练过程如Step1~Step4所示。
Step1(初始化):对权值w(向量)和噪声方差σ2(标量)进行初始化;
Step2(E步):根据当前的w(m)和(σ-2)(m)估计新的w(m+1)和E(wwT):
w ( m + 1 ) = ( σ - 2 ) ( m ) ( Ψ ( m ) - Ψ ( m ) Φ T Σ - 1 Φ Ψ ( m ) ) Φ T t E ( ww T ) = ( Ψ ( m ) - Ψ ( m ) Φ T Σ - 1 Φ Ψ ( m ) ) + ww T - - - ( 1 )
其中,∑=ΦΨ(m)ΦT+(σ2)I,
Ψ ( m ) = diag [ ( w 1 m ) 2 , ( w 2 m ) 2 , . . . , ( w n m ) 2 ] .
w(m),w(m+1)分别表示前一次和本次新计算的权值。
Step3(M步):根据上一步计算得到的w(m+1),按下式计算新的方差:
( σ 2 ) m + 1 = t T t - 2 t T Φ * ( w ( m + 1 ) ) T + trace [ ΦE ( ww T ) Φ T ] n - - - ( 2 )
其中函数trace(Θ)表示矩阵Θ的迹。
Step4(收敛判断):计算||w(m+1)-w(m)||/||w(m)||<δ,δ为收敛条件。若满足条件,则迭代停止;否则判断是否达到最大迭代次数M,若在其范围内,则转向Step2,开始新的EM迭代,否则迭代停止,训练结束。
多步预测:通过训练获得了最终的权值w,即获得了RVM预测模型,假设为f(·)。单步预测时,对于新的输入x*,其预测结果t*为正态分布,即Φ(x*)Tw为预测均值,为预测结果的和方差(不确定性表达),分别如式(3)和式(4)所示:
t*=Φ(x*)Tw(3)
&sigma; * 2 = &sigma; 2 + &Phi; ( x * ) T &Sigma;&Phi; ( x * ) - - - ( 4 )
对于多步预测本文采用迭代预测方式实现。假设电池当前的性能状态为x(n),历史时刻性能状态为x(n)、x(n-1)、…、x(1),相空间重构的嵌入维数设为l,则n+1循环性能状态预测结果为x(n+1)=f(x(n),x(n-1),…,x(n-l+1)),若x(n+1)未达到失效阈值,则将x(n+1)作为实际值带入函数f(·),预测x(n+2)循环电池的性能状态,即x(n+2)=f(x(n+1),x(n),…,x(n-l+2))。依次进行,直到电池性能状态预测值小于失效阈值,则预测结束。结束时迭代的循环次数即为电池的剩余寿命,同时将性能预测的方差转换为剩余寿命的不确定性表达。
2动态可重构RVM剩余寿命预测方法
本节首先分析基于EM迭代的RVM预测方法的计算过程,然后,根据分析结果提出一种动态可重构的RVM剩余寿命预测方法。
2.1RVM计算方法分析
式(1)中:Φ为n维核函数矩阵计算、ΦTt为矩阵向量乘法的计算,且Φ和ΦTt由训练样本唯一确定,迭代过程不更新;ΦΨ(m)为一次矩阵乘法的计算,Ψ(m)ΦT为ΦΨ(m)的转置,不需计算;∑、ΦT-1Φ为二次矩阵乘法计算,且∑需要进行矩阵求逆计算,wwT为n维矩阵。
式(2)中:tTt为n维向量内积计算,由训练样本唯一确定,迭代过程不更新。tTΦ为ΦTt的转置,E步中已经计算。trace[ΦE(wwTT]涉及矩阵乘法计算,tTΦ*(w(m+1))T为n维向量内积计算。
式(3)中:Φ(x*)为n维核函数向量,Φ(x*)Tw为向量内积。
式(4)中:主要为矩阵向量乘法计算。
由式(1)~式(4)的计算分析可知,RVM的计算涉及矩阵乘法、矩阵求逆及核函数计算等操作,且很多变量随迭代过程需循环计算,计算过程复杂,计算量大。因此,在FPGA有限计算资源条件下的基于RVM锂离子电池RUL预测方法的关键是RVM的可重构计算模式问题。所以,在上述分析基础上,设计一种可重构的RVM计算方法十分重要。
2.2动态可重构RVM计算方法
可重构计算可分为静态可重构和动态可重构两种模式[14]。若FPGA仅在工作之前被重新配置,则称为静态可重构;若FPGA在工作过程中被重新配置,在不同时刻完成不同功能,则称为动态可重构。考虑到RVM计算过程的复杂性,若采用静态可重构计算模式,需使用单片大规模FPGA或采用多片FPGA并联来实现RVM计算,这势必会增加电池管理系统的体积、成本、重量及功率。同时通过分析可知,Φ、ΦTt和tTt由训练样本唯一确定,训练过程中只需一次计算即可,迭代过程不需重新计算。而采用静态可重构计算时这些参量的计算资源只能使用一次,然后就不再使用,显然浪费计算资源。动态可重构是一种时空域上的计算模式,通过分时复用硬件资源可以在固定的硬件资源上完成任意多的功能,从而提高硬件利用率,降低系统成本和体积,因此,本文采用动态可重构的计算模式实现RVM计算。
动态可重构计算的关键问题之一是重构单元的规划。直观的方法是按照算法的计算流程进行划分,如按此方式,可将基于RVM的RUL预测过程划分为重构单元A(实现E步计算)与重构单元B(实现M步计算),两个重构单元分时复用计算资源实现式(1)和式(2)的计算,而式(3)和式(4)的计算过程包括核函数计算和向量乘累加计算,可通过复用重构单元A实现,不需单独设计。结合EM算法的特点,直观的重构方法在训练时重构单元A和重构单元B随迭代过程需反复重构,每次迭代需要2次FPGA重构过程,而FPGA重构都需要一定的时间,且在整个计算过程中占有一定的比重(参见文献[19]),所以随着迭代训练的进行FPGA重构的时间开销较大,势必导致计算效率的下降。因此,本文重新划分重构单元,提出一种动态可重构的RVM计算方法,如图2所示。
方法过程:整个动态可重构的RVM预测算法分为训练过程和预测过程。训练时由重构单元A和重构单元B组成,重构单元A实现Φ、ΦTt和tTt的计算,重构单元B实现∑、∑求逆、矩阵乘法、矩阵迹及向量内积计算。预测时由重构单元A组成,实现Φ(x*)、Φ(x*)Tw及方差计算。
工作流程:训练时首先配置FPGA为重构单元A,开始计算,计算完成之后存储计算结果;然后配置FPGA为重构单元B并开始计算,计算完成之后存储计算结果,完成训练过程的计算。最后进行预测过程的计算,配置FPGA为重构单元A,进行RUL预测计算,当预测结果达到失效阈值时预测结束,同时获得电池的RUL的计算结果及方差。
重构次数:训练时由重构单元A到重构单元B需一次重构,预测时由重构单元B到重构单元A需一次重构。最终,动态可重构RVM剩余寿命预测方法需要2次重构过程。可见,本文提出的动态可重构方法的重构次数明显少于直观的重构方法。
上述方法所实现的动态可重构RVM剩余寿命预测系统如图3所示。整个动态可重构计算系统由FPGA、片外存储器和配置存储器组成。
FPGA:核心功能单元,按照模块化设计方法,划分为静态逻辑区和动态可重构区。静态逻辑区域包括嵌入式处理器,片上总线以及挂接于总线上的外设功能模块。动态重构区域由重构单元A和重构单元B组成,二者分时复用动态可重构区的逻辑资源实现RVM训练和预测。同时,动态重构区通过片上总线与嵌入式处理器互联,嵌入式处理器实现动态可重构计算流程的控制,更底层的计算流程由动态可重构区各个单元自主完成。
片外存储:用于存储剩余寿命预测的输入数据及中间计算结果,考虑到数据对储容量及数据传输速度的需求,采用大容量、速度快的DDRSDRAM实现。
数据的DMA交互:为了提高数据传输的速度,动态可重构单元与片外存储器之间的数据交互采用DMA的方式实现。
解耦合IP:其功能是保持与静态逻辑区域有物理连接的动态可重构区的信号在动态重构时处于稳定状态,避免重构时影响静态逻辑区域的功能。
配置存储器:用于存储FPGA的配置文件。
3算法关键单元设计
动态可重构RVM剩余寿命算法涉及两个重构计算模块,主要包括核函数、矩阵求逆、矩阵乘法及矩阵向量乘计算。其中,核函数计算包括二范数计算和指数计算。二范数为乘累加计算,累加器不能实现流水计算,计算效率低;指数函数为超越函数,不能通过乘法器和加法器直接实现。针对这两个问题,本文提出了一种多级流水的分段线性逼近核函数计算方法。
同时,针对矩阵求逆计算的LU分解方法计算量大的问题以及Cholesky分解方法中引入的舍入误差可能会导致计算的不稳定问题,采用乘累减计算优化了改进Cholesky分解的矩阵求逆方法的计算过程和计算资源。
3.1多级流水的分段线性逼近核函数计算方法(针对重构单元A)
针对如式K(x,xi)=exp{-||x-xi||22}所示的高斯核函数,γ为超参数,训练之前确定。核函数矩阵Φ为对角线元素为1的对称正定阵,所以只需计算下三角元素,如式(5)所示。
核函数计算过程由二范数计算和指数计算组成。假设训练样本的嵌入维数为l,则l维向量xi和xj的二范数计算公式如下:
||xi-xj||2=(xi1-xj1)2+(xi2-xj2)2+…+(xil-xjl)2(6)
由式(6)可知二范数是乘累加计算,由于累加器的计算延迟,二范数不能实现连续流水计算,导致计算效率下降。因此,本文提出一种多级流水的累加计算方法,从而实现二范数的流水计算,以提高计算效率。
二范数的多级流水计算:以式(5)的第1列核函数的二范数计算为例进行阐述。第一列核函数的二范数计算元素如1所示。
表1二范数计算元素表(Table1Thecomputingcomponentsforthe2-normcomputation)
为了描述方便,用ai替代表1中的元素,如表2所示。
表2二范数元素的ai描述表(Tabel2Theupdatedcomputingcomponentsforthe2-normcomputation)
一般的计算流程数据按行的顺利依次输入,即:
第一步:将a1、an+1、…a(l-1)n+1输入加法器进行||x2-x1||2的累加计算;
第二步:依次将a2、an+2、…a(l-1)n+2输入加法器进行||x3-x1||2的累加计算;
依次类推完成所有的二范数计算。其中,加法器的计算延迟导致流水线阻塞,数据不能流水地输入到加法器中,所以导致二范数计算效率下降。而本文提出的多级流水的累加计算方法硬件实现如图4所示。
设计中引入FIFO作为加法器计算结果的缓存,同时对二范数的计算流程进行改进,即表2中的数据按照列的顺序连续输入到加法器,并在FIFO的配合下实现流水的累加计算。详细流程如图5所示。
第1流水周期:将数据a1、a2、…an和FIFO的输出数据0输入到加法器,并将计算结果存入FIFO。
第2流水周期:将数据an+1、an+2、…a2n和FIFO的输出a1、a2、…an输入到加法器,FIFO的输出是上一流水周期加法器的计算结果,并将计算结果存入FIFO。
第n个流水周期:完成了第一列二范数计算。
在整个计算过程中,数据a1、a2、…aln按列的方式流水地输入到加法器中实现了流水地累加计算,提高了计算效率。依此类推,可以流水地实现式(5)中所有二范数的计算。
指数函数是超越函数,FPGA内部没有提供此类函数的直接运算IP核,不能通过加法器和乘法器直接实现。目前,基于FPGA的指数计算一般包括查表法、CORDIC法、STAM法、高阶多项式逼近法及分段线性逼近法。其中,分段线性逼近法资源消耗较少,其通过线性多项式和查找表相结合的方法实现指数计算。本文采用分段线性逼近法实现指数计算,查找表用于存储线性多项式的参数,线性多项式的运算利用FPGA的加法器、减法器和乘法器实现。
指数函数的计算方法:分段线性逼近法基本原理如下(文献[25]:Omondi,A.R.,&Rajapakse,J.C.FPGAImplementationsofNeuralNetworks[J].IEEETransactiononNeuralNetworks,2007,18(5):21-32):对于x∈[L,U]区间的任意指数函数f(x),可以将[L,U]区间平均地划分为N等份,并且N=(U-L)(Ui-Li)。采用分段线性逼近法,在每个x∈[Li,Ui]内,f(x)可以近似地表达为f(x)=kix+bi,ki和bi可通过计算机计算获得并存储于查找表中,N的取值影响计算精度和存储资源,需合理选择。
综上所述,基于分段线性逼近法的高斯核函数计算方法如图6所示。
其中,bRAM和kRAM用于存储分段线性逼近法的系数,其存储深度取决于分段线性逼近法的精度[25]。乘法器4和减法器2用于实现线性多项式的计算。乘法器3和“浮点转定点”单元用于产生bRAM和kRAM的地址。FIFO1~FIFO4作为数据缓存,FIFO1的存储深度为l,FIFO2和FIFO3的存储深度为n。FIFO4用于缓存bRAM的地址,存储深度大于乘法器4的计算延迟即可。
至此,完成了多级流水的分段线逼近高斯核函数的计算方法设计。考虑到可重构单元资源的平衡以及FPGA并行计算的特点,设计中实例化了4个核函数计算单元并行计算高斯核函数。
3.2基于乘累减的改进Cholesky分解矩阵求逆(针对重构单元B)
采用高斯核函数的∑矩阵为对称正定阵,本文采用改进Cholesky分解的方法进行矩阵分解,然后针对分解阵求逆计算的乘累加及减法计算,采用乘累减计算优化了计算过程和计算资源。
改进Cholesky分解原理如下:
∑=LDLT(7)
其中矩阵L为对角线元素为1的下三角阵,D为对角阵,LT为L的转置。L和D按式(8)求解。
d r = ( h rr - &Sigma; k = 1 r - 1 l rk 2 d k ) , l ir = ( h ir - &Sigma; k = 1 r - 1 l ik d k l rk ) / d r . - - - ( 8 )
其中,r=1,2,…,ni=r+1,r+2,…,n,h为∑的元素。
假设,U=L-1,则∑-1=UTD-1U,其中U为下三角阵,按照式(9)求解。
u ii = 1 / l ii = 1 u ij = - u ii &Sigma; k = j i - 1 ( I ik * u kj ) = - &Sigma; k = j i - 1 ( l ik * u kj ) - - - ( 9 )
式中,i=1,2,…n,j=1,2,…i-1。
文献[19]已经对对称正定阵的改进Cholesky分解FPGA实现进行了深入研究,本文不再赘述。按照式(9)uii=1,不需计算,L的逆的下三角元素为uij,可通过乘累加器及减法器实现。本文采用如图7所示的矩阵求逆方法。矩阵D为对角阵,其逆为对角线元素的倒数,即对di取倒数即可。
其中,D-1的计算通过除法器1实现,计算结果存入FIFO1。FIFO2、减法器1及乘法器1实现了的乘累减计算。FIFO2用于缓存减法器1的计算结果,初始化时FIFO2的输出为0。FIFO1和FIFO2的存储深度为n。本文的设计方法中采用乘累减器代替了乘累加器和减法器的设计,节约了一个加法器,节省了计算资源,同时减少的加法器也降低了计算延迟,提高了计算效率。
完成矩阵D-1和U的计算之后,即可实现∑-1的计算,主要过程为矩阵乘法计算。
本发明的实验验证与应用:
为了验证本发明提出的可重构卫星锂离子电池剩余寿命预测系统的性能,利用Xilinx公司ML510开发板进行实验验证,对本文方法的RUL计算精度、计算效率及硬件资源占用情况进行了实验分析。Xilinx公司ML510开发板板载FPGA型号为VirtexXC5VFX130T,其资源包括320个DSP48Eslices,298个BRAM,2个PowerPCProcessorblocks和81920个LUTs。实验中图3所示预测系统的嵌入式处理器选择PowerPC440处理器,工作频率400MHz;片上总线选择PLB总线,工作频率设定为100MHz;配置端口选择XC5VFX130T内嵌的ICAP端口;采用XilinxISE13.2提供的基于IEEE754标准的单精度浮点制IP核实现各浮点运算。
1.RUL预测结果的精度分析
本节通过实际锂离子电池实验数据分析本文方法在RUL预测方面的性能,并与PC平台Matlab环境下双精度RUL计算结果进行对比,以验证本文方法的有效性。由于目前我国尚无锂离子电池空间应用监测数据集的积累,因此本文实验验证选用NASA公开的锂离子电池数据集。
1.1实验数据分析
(1)NASA电池数据
该数据集来源于NASAPCoE研究中心搭建的锂离子电池测试床(文献[26]:B.Saha,K.Goebel.BatteryDataSet,NASAAmesPrognosticsDataRepository,[http://ti.arc.nasa.gov/project/prognostic-data-reposi-tory],NASAAmes,MoffettField,CA.2007),电池实验(充电、放电和阻抗测量)在室温(25℃)下运行,电池的额定容量为2Ah。
其中第三组电池(包括5~7号和18号电池)的数据呈现出明显的退化特征,Battery#05、Battery#06、Battery#07、Battery#18电池的容量退化过程如图8所示,受篇幅限制,本文仅选择其中的Battery#05进行分析。
图中横轴为锂离子电池的充放电循环周期,单位为周期(cycle);纵轴为电池容量值,单位是安时(Ah)。
1.2实验结果及分析
本文将电池容量数据作为性能参数进行实验验证,并对电池容量数据归一化到0~1范围内的无量纲数据(该数据可称为健康因子,表征锂离子电池的性能退化状态)。Battery#05电池的全部数据点为168,实验选用全部数据的前50%数据作为训练样本,建立RVM预测模型,并从50%时刻(起始预测时刻为84cycle)开始进行电池容量的外推预测,当容量达到失效阈值时停止实验。按照NASA的实验方法,失效阈值可设置为额定容量的70%左右,归一化后对应的失效阈值U=0.1978,对应的寿命为T=124cycle。两个计算平台的锂离子电池RUL预测结果如图9、图10和表3所示。
图9和图10中健康因子退化曲线描述了锂离子电池性能状态随充放电循环的退化过程,其95%置信区间的退化过程分别为健康因子退化上限和健康因子退化下限。三条退化曲线结合失效阈值分别获得了锂离子电池的RUL和RUL的95%置信区间,其中RUL和置信区间采用锂离子电池充放电循环次数表示。
从表3的数据分析可知,两个平台的RUL计算结果都十分接近真实的RUL,在RUL预测结果方面,FPGA平台的绝对误差为2个循环次数,PC平台为1个循环次数,绝对误差值很小且差距不大;在置信区间方面,两个平台也基本接近。通过上述实验表明,本文提出的基于RVM的锂离子电池RUL预测框架具有较高的精度,同时基于单精度FPGA的计算平台与PC计算平台获得了相近的精度水平。
表3RUL预测结果比较(单位:周期)
Tabel3TheRULpredictioncomparisonbetweenFPGAandMatlabplatform(cycle)
2.计算效率分析
考虑到卫星平台下嵌入式计算资源的有限性以及计算任务的复杂性,从而对计算效率有较高的要求。因此,为验证本文方法在提升计算效率方面的有效性,本节针对3.1节中的锂离子电池RUL预测过程的计算效率进行分析,并与PC平台Matlab环境下的RUL计算效率进行对比。实验所用的PC配置为酷睿2双核CPU,主频2.53GHz,2GDDR2内存。计算效率对比如表4所示。
表4可重构计算与PC平台效率对比(单位:ms)
Table4.TheefficiencycomparisonbetweenRCandPC(ms)
项目 训练时间 预测时间 重构次数 重构时间 总时间
FPGA 96.70 7.32 2 16.99 138.00
PC 614.02 11.81 0 0 625.83
加速比 6.35 1.61 0 0 4.54
从表4可知,本文提出的FPGA计算方法在训练效率、预测效率以及总体效率上均优于PC平台。在计算复杂度较低的预测部分,本文方法实现了相对于特定PC平台1.61倍的加速比;但在计算复杂度最高的训练部分,本文方法实现了6倍以上的加速比,说明本文方法更加适合于计算复杂度高的算法的计算;另外,本文方法为提高硬件利用率而采用动态重构策略,增加了重构时间,但总体效率也较PC平台实现了4倍以上的加速比,从而说明本文方法是一种效率与资源利用相对平衡的解决方案。
3.硬件计算资源消耗分析
本节对硬件计算资源进行分析,以验证本文提出方法对计算资源限制的适应能力。首先分析静态逻辑区和动态逻辑区分别占用整个FPGA的逻辑资源情况,然后进一步分析采用动态可重构算法的资源利用率相对于静态重构方式的提升情况。
整个系统所需硬件资源及相对FPGA总体资源的占用情况如表5所示。
表5FPGA资源占用情况(Table5FPGAresourceutility)
项目 PowerPC LUTs BRAM DSP48E
静态区 1 4826 48 0
动态区 0 14144 40 120
总计 1 18970 88 120
FPGA资源 2 81920 298 320
使用率 50.00% 23.16% 29.53% 37.50%
从表5可知,本文提出的动态可重构锂离子电池剩余寿命预测方法中DSP48E和BRAM较逻辑资源LUTs的占用比例大,这与本文提出的基于FPGA硬件IP核计算的特点相符。同时,FPGA还有超50%的BRAM和DSP48E资源空闲,验证了本文算法在有限计算资源条件下的实现复杂计算的能力,为卫星平台的实际应用奠定基础。而剩余资源的进一步利用,可实现后续卫星锂离子电池RUL预测的多种算法的融合计算。
为实现资源利用与计算效率的平衡,本文采用动态重构方案,因此后文将通过与静态可重构计算方法进行资源占用对比,来分析动态可重构算法在资源利用率方面的提升情况。首先,采用Xilinx公司的PlanAhead工具实现动态可重构RUL预测系统的设计、综合和仿真,获得动态区的资源消耗。然后,单独对重构单元A和重构单元B进行了综合,分别获得其资源占用情况,如表6所示。
表6硬件资源利用率提高总结(Table6Theincreaseofhardwareutility)
项目 LUTs BRAM DSP48E
重构单元A 9440 21 90
重构单元B 14112 34 92
两重构单元之和 23552 55 182
动态区资源 14144 40 120
资源节省数 9408 15 62
资源节省率 39.95% 27.27% 34.07%
在静态可重构算法中,在不考虑增加连线资源的条件下,资源消耗应为两重构单元资源之和;而在动态可重构计算方法,两重构区分时复用动态区资源,其资源消耗为动态区资源。从表6可知,动态区资源相对于两重构单元资源之和的节省数量分别为:LUTs为9408、BRAM为15、DSP48E为62。本文方法的在资源利用率方面相对于静态重构方法获得较大提升,其中LUTs节省39.95%,BRAM节省27.27%,DSP48E节省34.07%。该结果说明本文方法具有较高的FPGA资源利用率,能够更好的适用卫星平台对计算资源的规模限制。
针对卫星锂离子电池RUL预测不确定表达和计算资源约束问题,本发明提出了基于RVM的锂离子电池剩余寿命预测方法架构,并在此基础上,根据RVM算法的计算特点和计算流程,提出了一种采用FPGA动态可重构技术的RVM嵌入式计算方法,在提高计算资源利用率的同时获得了更高的计算效率。通过多级流水的分段线性逼近法及并行计算结构实现了高斯核函数流水计算,确保计算效率的充分提升。另外,通过改进Cholesky分解方法实现了对称正定阵的求逆计算,并利用乘累减器减少了计算资源消耗,降低了计算延迟。采用NASA公开锂离子电池数据集在XilinxVirtexXC5VFX130T芯片上完成的锂离子电池剩余寿命预测实验结果表明:本文方法利用FPGA有限的计算资源实现了与PC平台相近水平的计算精度,并获得相对PC平台4倍的计算效率提升,同时动态重构的策略有效提高了硬件资源利用率。本文方法也证明了机器学习的可重构计算方法在嵌入式计算体系中的应用价值,并为后续机器学习算法硬件实现所需的融合计算和在线更新等应用挑战的研究提供了新颖的思路。

Claims (6)

1.一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统,所述预测系统包括FPGA、片外存储器和配置存储器,其特征在于:所述FPGA包括静态逻辑区和动态可重构模块,所述静态逻辑区包含有嵌入式处理器、片上总线以及挂接于片上总线上的外设功能模块、嵌入式处理器的存储控制器、BlockRAM和解耦合IP,嵌入式处理器的存储控制器与嵌入式处理器的存储控制器接口连接,BlockRAM与嵌入式处理器的块随机存储器接口连接,动态可重构模块通过片上总线与嵌入式处理器互联,动态可重构模块和片上总线之间通过解耦合IP互联;动态可重构模块包括重构单元A和重构单元B,重构单元A和重构单元B分时复用动态可重构模块的逻辑资源实现RVM训练和预测;嵌入式处理器用于实现动态可重构计算流程的控制,重构单元A和重构单元B用于自主完成更底层的计算流程;解耦合IP用于保持与静态逻辑区域有物理连接的动态可重构区的信号在动态重构时处于稳定状态;片外存储器通过嵌入式处理器的存储控制器与嵌入式处理器互联,配置存储器与片上总线存储控制器互联;片外存储器用于存储剩余寿命预测的输入数据及中间计算结果;配置存储器用于存储FPGA的配置文件。
2.根据权利要求1所述的一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统,其特征在于:所述外设功能模块包括配置端口、通讯控制端口、DMA控制器和片上总线存储控制器。
3.根据权利要求1或2所述的一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测系统,其特征在于:片外存储器采用DDRSDRAM实现;重构单元A、重构单元B与片外存储器之间的数据交互采用DMA的方式实现。
4.一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测方法,其特征在于:所述预测方法的具体过程包括训练过程和预测过程;
训练过程依次由重构单元A、重构单元B完成,训练时由重构单元A到重构单元B需一次重构,训练时首先配置FPGA为重构单元A开始计算,重构单元A用于实现核函数Φ矩阵、矩阵向量乘ΦTt和向量内积tTt的计算,计算完成之后存储计算结果;
其中,选取电池容量数据C=(C1,C2,…Cn)作为原始样本,Ci为电池容量,单位为Ah,i=1,2,…,n,n=168;然后进行相空间重构构造训练样本,嵌入维数l=5,迟延d=1,得到训练样本集{(x1,t1),(x2,t2),…,(xn-l,tn-l)},xj=(Cj,Cj+1,…,Cj+l),tj=Cj+l,j=1,2,…n-l,其中x=(x1,x2,…,xn-l)为RVM模型输入数据,t=(t1,t2,…,tn-l)为RVM模型的输出数据;即相关向量回归数学表达式为t=Φw+ε,其中t=(t1,…,tn)T,ε为高斯噪声,w为权值,w=(w0,…,wn)T,Φ=[φ12…φn]T为核函数矩阵,φi=[K(xi,x1),…,K(xi,xn)],K(xi,xj)=exp{-||xi-xj||22},γ为核参数;
然后配置FPGA为重构单元B并开始计算,重构单元B用于实现权值w(m+1)、噪声方差(σ2)m+1的计算,该式中的m表示迭代次数;
其中:w(m+1)=(σ-2)(m)(m)(m)ΦT-1ΦΨ(m)Tt
( &sigma; 2 ) m + 1 = t T t - 2 t T &Phi; * ( w ( m + 1 ) ) T + t r a c e &lsqb; &Phi; E ( ww T ) &Phi; T &rsqb; n , σ2为噪声ε的方差,
-2)(m)表示上一步高斯噪声ε方差的倒数;
w(m)、w(m+1)分别为表示前一次和本次新计算得到的公式t=Φw+ε中的权值w;
-1表示矩阵∑的逆,∑=ΦΨ(m)ΦT+(σ2)I,I为单位矩阵;
trace[ΦE(w(m)(w(m))TT]表示求矩阵[ΦE(w(m)(w(m))TT]的迹;
E(w(m)(w(m))T)=(Ψ(m)(m)ΦT-1ΦΨ(m))+w(m)(w(m))T,E(w(m)(w(m))T)表示矩阵(w(m)(w(m))T)的期望;
预测过程时由重构单元A完成,预测时由重构单元B到重构单元A需一次重构,配置FPGA为重构单元A,实现核函数Φ(x*)、预测值Φ(x*)Tw及预测值的方差σ2+Φ(x*)T∑Φ(x*)的计算,进行RUL预测计算,当预测结果达到失效阈值时预测结束,同时获得电池的RUL的计算结果及方差。
5.根据权利要求4所述的一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测方法,其特征在于:重构单元A的核函数计算采用多级流水的分段线性逼近核函数计算方法,其具体过程为:
步骤A1、训练前确定如式K(x,xi)=exp{-||x-xi||22}所示的高斯核函数作为核函数,式中γ为核参数;
核函数矩阵Φ为对角线元素为1的对称正定阵,计算下三角元素,如式(5)所示;
步骤A2、核函数的二范数计算过程为:
假设训练样本的嵌入维数为l,则l维向量xi和xj的二范数计算公式如下:
||xi-xj||2=(xi1-xj1)2+(xi2-xj2)2+…+(xil-xjl)2(6)
式(5)的第1列核函数的二范数计算元素如1所示:
表1二范数计算元素表
用ai替代表1中的元素,如表2所示:
表2二范数元素的ai描述表
由式(6)可知二范数是乘累加计算,采用多级流水的累加计算方法来实现二范数的流水计算;具体过程为:引入FIFO作为加法器计算结果的缓存;将表2中的数据按照列的顺序连续输入到加法器,并在FIFO的配合下实现流水的累加计算;详细流程如表5所示;
表5多级流水的累加计算流程表
第1流水周期:将数据a1、a2、…an和FIFO的输出数据0输入到加法器,并将计算结果存入FIFO;
第2流水周期:将数据an+1、an+2、…a2n和FIFO的输出a1、a2、…an输入到加法器,FIFO的输出是上一流水周期加法器的计算结果,并将计算结果存入FIFO;
第n个流水周期:完成了第一列二范数计算;
依此类推,可以流水地实现式(5)中所有二范数的计算;
步骤A3、核函数的指数计算过程为:采用分段线性逼近法实现指数计算,其具体过程为:对于x∈[L,U]区间的任意指数函数f(x),将[L,U]区间平均地划分为N等份,并且N=(U-L)/(Ui-Li);采用分段线性逼近法,在每个x∈[Li,Ui]内,f(x)可以近似地表达为f(x)=kix+bi,ki和bi可通过计算机计算获得并存储于查找表中,查找表用于存储线性多项式系数ki和bi,线性多项式的运算利用FPGA的加法器、减法器和乘法器实现。
6.根据权利要求4或5所述的一种基于RVM动态可重构的卫星锂离子电池剩余寿命预测方法,其特征在于:重构单元B的∑矩阵求逆是基于乘累减的改进Cholesky分解矩阵求逆,其具体过程为:
改进Cholesky分解原理如下:∑=LDLT(7)
其中矩阵L为对角线元素为1的下三角阵,D为对角阵,LT为L的转置;L和D按式(8)求解;
d r = ( h r r - &Sigma; k = 1 r - 1 l r k 2 d k ) , l i r = ( h i r - &Sigma; k = 1 r - 1 l i k d k l r k ) / d r . - - - ( 8 )
其中,r=1,2,…,n、i=r+1,r+2,…,n,h为∑的元素;
假设,U=L-1,则∑-1=UTD-1U,其中U为下三角阵,按照式(9)求解;
u i i = 1 / l i i = 1 u i j = - u i i &Sigma; k = j i - 1 ( l i k * u k j ) = - &Sigma; k = j i - 1 ( l i k * u k j ) - - - ( 9 )
式中,i=1,2,…n,j=1,2,…i-1;
对角阵D的D-1等于对角线元素的逆,将对角线元素di取倒数即可要出D-1,采用除法器实现;
矩阵U的计算按照式(9)实现,uii=1,U的下三角元素为uij,uij的计算采用乘法器、减法器及FIFO实现;完成矩阵D-1和U的计算之后,按照∑-1=UTD-1U实现∑-1的计算。
CN201310317179.9A 2013-07-25 2013-07-25 一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法 Active CN103336877B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310317179.9A CN103336877B (zh) 2013-07-25 2013-07-25 一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310317179.9A CN103336877B (zh) 2013-07-25 2013-07-25 一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法

Publications (2)

Publication Number Publication Date
CN103336877A CN103336877A (zh) 2013-10-02
CN103336877B true CN103336877B (zh) 2016-03-16

Family

ID=49245041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310317179.9A Active CN103336877B (zh) 2013-07-25 2013-07-25 一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法

Country Status (1)

Country Link
CN (1) CN103336877B (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI481881B (zh) * 2013-11-22 2015-04-21 Inst Information Industry 耗電預測裝置、方法及其電腦程式產品
CN103970720B (zh) * 2014-05-30 2018-02-02 东南大学 基于大规模粗粒度嵌入式可重构系统及其处理方法
CN104459560B (zh) * 2014-12-29 2017-04-05 合肥工业大学 基于小波降噪和相关向量机的锂电池剩余寿命预测方法
CN104794102B (zh) * 2015-05-14 2018-09-07 哈尔滨工业大学 一种加速实现Cholesky分解的嵌入式片上系统
CN105005005B (zh) * 2015-08-10 2017-10-13 东南大学 一种蓄电池组劣化单体电池检测方法
KR102359265B1 (ko) * 2015-09-18 2022-02-07 삼성전자주식회사 프로세싱 장치 및 프로세싱 장치에서 연산을 수행하는 방법
CN105528621A (zh) * 2015-12-27 2016-04-27 北京化工大学 基于支持向量机的多维度多步骤寿命预测方法
CN107703452B (zh) * 2016-12-01 2020-08-25 国网辽宁省电力有限公司电力科学研究院 铅酸电池应用寿命预测系统
CN108154237B (zh) * 2016-12-06 2022-04-05 华为技术有限公司 一种数据处理系统及方法
CN106441459B (zh) * 2016-12-16 2018-11-23 泰州市龙泽环境科技有限公司 一种节能环保电力设备检测仪
CN106908736B (zh) * 2017-03-17 2019-02-22 哈尔滨工业大学 锂电池剩余寿命预测方法
CN107015165B (zh) * 2017-06-14 2020-01-17 安庆师范大学 基于稀疏系数多核相关向量机的锂电池剩余寿命预测方法
CN107704422A (zh) * 2017-10-13 2018-02-16 武汉精测电子集团股份有限公司 一种基于可编程逻辑器件的并行计算方法及装置
CN108053430A (zh) * 2017-12-20 2018-05-18 中国地质大学(武汉) 基于黎曼流形的非线性形变影像特征点匹配方法及系统
CN107957562B (zh) * 2018-01-05 2023-06-09 广西大学 一种锂离子电池剩余寿命在线预测方法
CN108595381B (zh) * 2018-04-27 2022-03-22 厦门尚为科技股份有限公司 健康状态评价方法、装置及可读存储介质
CN108804764A (zh) * 2018-05-07 2018-11-13 电子科技大学 一种基于极限学习机的锂电池老化趋势预测方法
CN109143091B (zh) * 2018-10-15 2020-12-29 四川长虹电器股份有限公司 基于双冗余的电池管理系统故障fdir系统及方法
CN110095731B (zh) * 2019-05-06 2021-06-22 哈尔滨工业大学 应用于长寿命空间锂离子电池的剩余寿命直接预测方法
CN110045288B (zh) * 2019-05-23 2021-08-17 中山大学 一种基于支持向量回归的锂离子电池容量在线估计方法
CN110414117B (zh) * 2019-07-23 2020-11-06 北京航空航天大学 一种软包锂离子电池密封可靠度预测方法
US11967850B2 (en) 2019-08-21 2024-04-23 SparkCognition, Inc. Systems and methods of applying artificial intelligence to battery technology
CN111220387B (zh) * 2020-01-08 2021-10-29 北京交通大学 基于多特征量相关向量机的车辆轴承剩余寿命预测方法
CN112000706B (zh) * 2020-04-30 2021-05-18 中南民族大学 一种基于rvm-l模型的互联网舆情预警机制分析方法
US11313894B2 (en) * 2020-06-29 2022-04-26 Intelematics Australia Pty Limited Automobile battery failure prediction method and system
CN111932436B (zh) * 2020-08-25 2024-04-19 成都恒创新星科技有限公司 一种用于智慧泊车的深度学习处理器架构
CN114578757A (zh) * 2022-02-22 2022-06-03 航天科工空间工程发展有限公司 一种数字电源智能管理方法
CN114216558B (zh) * 2022-02-24 2022-06-14 西安因联信息科技有限公司 一种无线振动传感器电池剩余寿命预测方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102968573A (zh) * 2012-12-14 2013-03-13 哈尔滨工业大学 基于相关向量回归的在线预测锂离子电池剩余寿命的方法
CN103033761A (zh) * 2012-12-17 2013-04-10 哈尔滨工业大学 动态灰色相关向量机的锂离子电池剩余寿命预测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102968573A (zh) * 2012-12-14 2013-03-13 哈尔滨工业大学 基于相关向量回归的在线预测锂离子电池剩余寿命的方法
CN103033761A (zh) * 2012-12-17 2013-04-10 哈尔滨工业大学 动态灰色相关向量机的锂离子电池剩余寿命预测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Study on Remaining Useful Life Prediction for;Gang Liu等;《University of New Orleans Theses and Dissertations》;20111231;第1-20页 *
FPGA 动态可重构技术原理及实现方法分析;覃祥菊 等;《电子器件》;20040630;第27卷(第2期);第277-282页 *
动态可重构技术研究综述;彭晓明 等;《计算机工程与设计》;20121231;第33卷(第12期);第4514-4519页 *

Also Published As

Publication number Publication date
CN103336877A (zh) 2013-10-02

Similar Documents

Publication Publication Date Title
CN103336877B (zh) 一种基于rvm动态可重构的卫星锂离子电池剩余寿命预测系统及方法
Li et al. Short-term load-forecasting method based on wavelet decomposition with second-order gray neural network model combined with ADF test
Park et al. LSTM-based battery remaining useful life prediction with multi-channel charging profiles
CN103033761B (zh) 动态灰色相关向量机的锂离子电池剩余寿命预测方法
CN101976835B (zh) 一种大规模电力系统牛顿潮流的并行计算方法
Liu et al. Day-ahead scheduling for an electric vehicle PV-based battery swapping station considering the dual uncertainties
CN103793562A (zh) 基于fpga的有源配电网暂态实时仿真系统设计方法
CN109716150A (zh) 具有远程参数估计的二次电池管理系统
CN107621621A (zh) 一种智能电能表在线综合误差校准方法
Zhang et al. Discrete adjoint sensitivity analysis of hybrid dynamical systems with switching
CN103646152A (zh) 一种基于矩阵指数的电力系统电磁暂态仿真方法
Wang et al. Spatial correlation-based incremental learning for spatiotemporal modeling of battery thermal process
CN103983919A (zh) 一种基于gm(1,n)灰色模型的电池寿命预测方法
CN101976837A (zh) 一种电力系统潮流无解调整方法
CN104217074A (zh) 一种基于矩阵指数的电磁暂态隐式降阶仿真方法
CN105574809A (zh) 基于矩阵指数的电磁暂态仿真图形处理器并行计算方法
CN103473602A (zh) 一种电网理论线损数据预测系统及预测方法
CN103066595A (zh) 一种特高压暂态稳定控制的优化方法
Chen et al. Eciton: Very low-power lstm neural network accelerator for predictive maintenance at the edge
Zhang et al. Load prediction based on hybrid model of VMD-mRMR-BPNN-LSSVM
Chen et al. State-of-charge estimation for lithium-ion batteries based on incommensurate fractional-order observer
Deng et al. Probabilistic forecasting and simulation of electricity markets via online dictionary learning
CN117114718B (zh) 碳排放管理方法、装置、电子设备和存储介质
EP4300108A1 (en) Evaluation method and device according to purposes of reusable battery
CN106326084A (zh) 一种用于粗粒度可重构阵列的系统级功耗建模方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant