基于神经网络的绝缘阻值计算方法及电子设备
技术领域
本发明涉及力电子领域,尤其涉及电动汽车以及储能等应用场所中电源系统的绝缘检测。
背景技术
在电力电子领域,包括电动汽车以及储能等应用场景,均存在各种电源系统,特别是对于高压系统,为了保证绝缘安全,必须要实时监控系统的绝缘漏电情况,因此绝缘检测是一项极重要的技术。
关于绝缘阻值估算,当前行业内使用的主流技术方案有:(1)平衡电桥法:平衡电桥是把待测电阻与标准电阻进行比较,通过调节电桥平衡,从而测得待测电阻值,如单臂直流电桥(惠斯登电桥)、双臂直流电桥(开尔文电桥)等。(2)非平衡电桥法:非平衡电是通过桥式电路来测量电阻,根据电桥输出的不平衡电压,再进行运算处理,从而得到引起电阻变化的其它物理量。(3)低频注入法:低频注入法是在待测电路中注入低频交流信号,通过采样电容两端的实时电压值,计算出电动汽车的绝缘电阻值。
上述绝缘估算方法的原理在本质上均是通过与电源系统连接特定的绝缘电路,通过改变绝缘电路的状态并且使用信号采集模块来采集状态切换前后的情况,再根据基尔霍夫定理等电路计算原理来推导、求解未知的绝缘电阻值,最终的计算依据是依据特定的电路计算公式,把采集量代入到公式中进而实现绝缘阻值的估算。
然而在实际工程应用场景中,必然存在各种干扰噪声会降低信号采集精度、也必然存在一些特殊的绝缘情况会导致信号采集值采集不准或者造成各采集信号之间的差值很小导致在有限的计算精度和采集精度下公式计算值置零或者溢出,从而导致了上述各类绝缘估算方法存在不同的局限。
故,急需一种可解决上述问题的绝缘阻值计算方法。
发明内容
本发明的目的是提供一种基于神经网络的绝缘阻值计算方法及电子设备和计算机可读存储介质,具有较强抗干扰性、较低信号采集精度依赖性,且计算结果准确。
为了实现上有目的,本发明公开了一种基于神经网络的绝缘阻值计算方法,其特征在于:包括训练神经网络模型的方法和依据训练好的神经网络模型计算绝缘阻值的方法;所述“训练神经网络模型的方法”包括以下步骤:(1)建立与当前绝缘检测电路对应的神经网络模型,获取与当前绝缘检测电路对应的数据库,所述数据库内具有若干组绝缘检测数据和与所述绝缘检测数据对应的绝缘阻值;(2)使用BP神经网络误差反向传播算法导入所述数据库,将绝缘检测数据作为输入元素,将绝缘阻值作为输出值,依据数据库内的数据训练所述神经网络模型以生成与所述数据库相匹配的神经网络模型的参数;所述“依据训练好的神经网络模型计算绝缘阻值的方法”包括以下步骤:(3)获取当前绝缘检测电路的绝缘检测数据;(4)将绝缘检测数据作为输入元素,使用训练好的神经网络模型进行处理以输出对应的绝缘阻值。
与现有技术相比,本发明可针对具体地绝缘检测电路训练对应的神经网络模型,并通过神经网络计算绝缘阻值,具有很强的模糊识别特性,不会受到具体绝缘检测电路中参数的细微影响而影响计算结果,对信号采集精度的依赖低,具有极强的靠干扰性、不存在一个固定的绝缘阻值计算公式,也避免了因为信号采集精度不足或者噪声干扰下,套用计算公式出现的计算发散问题,计算结果精确度高且计算速度快。
较佳地,所述神经网络模型包括输入层、与所述输入层相连的隐含层和与所述隐含层相连的输出层;其中,所述输入层具有N个与当前绝缘检测电路对应的输入元素,N为大于等于2的整数;所述隐含层包括输入层和隐含层神经元间的网络权值矩阵W1、隐含层神经元阈值B1和隐含层传递函数Tansig,所述网络权值矩阵W1为M*N矩阵,M为大于等于2的整数,所述隐含层神经元阈值B1为M*1的矩阵,隐含层传递函数
,x为输入元素;所述输出层包括隐含层与输出层神经元间的网络权值矩阵W2 、输出层神经元阈值B2和输出层传递函数Purelin,所述网络权值矩阵W2为P*M矩阵, P为输出绝缘阻值的数目所述输出层神经元阈值B2为P*1的矩阵,输出层传递函数Purelin(x)= k*x+ B2,输出层输出函数Purelin(x)作为输出值,x为输入元素。所述神经网络模型的参数包括与所述数据库相匹配的网络权值矩阵W1、隐含层神经元阈值B1、网络权值矩阵W2、输出层神经元阈值B2以及输出层传递函数Purelin(x)的常数k。
较佳地,所述绝缘检测电路包括将动力电池正极、第一分压电路、壳身地、第二分压电路、动力电池负极依次串联而成的封闭回路,其中动力电池的正极与壳身地之间的回路串联一第一开关,动力电池的负极与壳身地之间的回路串联一第二开关,所述绝缘检测数据包括:在所述第一开关和第二开关闭合时采集第一分压电路和第二分压电路输出端的电压以生成第一电压VP和第二电压VN,在所述第一开关闭合且所述第二开关断开时采集所述第一分压电路输出端的电压以生成第三电压VP1,在所述第一开关断开且所述第二开关闭合时采集所述第二分压电路输出端的电压以生成第四电压VN1,所述输入元素x包括动力电池的总电压给定值V、第一电压VP、第二电压VN、第三电压VP1和第四电压VN1。
具体地,所述步骤(3)具体为:控制所述绝缘检测电路的第一开关和第二开关动作并实时采集所述第一电压VP、第二电压VN、第三电压VP1和第四电压VN1。
具体地,所述步骤(1)中获得数据库的方法为:确定一绝缘检测电路作为当前绝缘检测电路,在绝缘检测电路上设置不同的绝缘阻值情况,控制所述绝缘检测电路的开关动作以采集相应的绝缘检测数据作为所述输入元素,记录所述输入元素以及对应的绝缘阻值以生成数据库。
较佳地,所述步骤(4)具体包括:依据公式a11 =B1 +W1* x,计算输入矩阵all,依据公式a1= Tansig(all)计算传递函数al,依据a2 =B2 +W2*a1计算输出矩阵a2,依据公式Y= Purelin(a2)计算绝缘阻值Y。
较佳地,绝缘阻值Y包括正极绝缘阻值RP和负极绝缘阻值Rn,且Y= Purelin(x),P=2。
较佳地,所述绝缘检测电路为平衡电桥法绝缘检测电路、非平衡电桥法电阻检测电路或低频注入法绝缘检测电路。本发明可以依据需要选定对应的绝缘检测电路进行训练以获得该绝缘检测电路对应的神经网络模型,即本发明可适用于多种绝缘检测电路,适用性广。
本发明还公开了一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置成由一个或多个处理器执行以实现如上所述的基于神经网络的绝缘阻值计算方法。
本发明还公开了一种计算机可读存储介质,包括与具有存储器的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以实现如上所述的基于神经网络的绝缘阻值计算方法。
附图说明
图1是绝缘检测电路的结构示意图。
图2是本发明所述训练神经网络模型的方法的流程图。
图3是本发明所述依据训练好的神经网络模型计算绝缘阻值的方法的流程图。
图4是本发明所述神经网络模型的结构示意图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明公开了一种基于神经网络的绝缘阻值计算方法,包括训练神经网络模型的方法10和依据训练好的神经网络模型计算绝缘阻值的方法20。
参考图2,所述“训练神经网络的方法”包括以下步骤:(11)建立与当前绝缘检测电路对应的神经网络模型,(12)获取与当前绝缘检测电路对应的数据库,所述数据库内具有若干组绝缘检测数据和对应的绝缘阻值;(13)使用BP神经网络误差反向传播算法导入所述数据库,(14)将绝缘检测数据作为输入元素,将绝缘阻值作为输出值,依据数据库内的数据训练所述神经网络模型以生成与所述数据库相匹配的神经网络模型的参数。
参考图3,所述“依据训练好的神经网络模型计算绝缘阻值的方法”包括以下步骤:(21)获取当前绝缘检测电路的绝缘检测数据;(22)将绝缘检测数据作为输入元素,使用训练好的神经网络模型进行处理以输出对应的绝缘阻值。
参考图4,所述神经网络模型100包括输入层101、与所述输入层101相连的隐含层102和与所述隐含层102相连的输出层103;其中,所述输入层101具有N个与当前绝缘检测电路30对应的输入元素,N为当前绝缘检测电路30的绝缘检测数据的数目,本实施例中,该数目为5;所述隐含层102包括输入层101和隐含层102神经元间的网络权值矩阵W1、隐含层神经元阈值B1和隐含层传递函数Tansig,所述网络权值矩阵W1为M*N矩阵,所述隐含层神经元阈值B1为M*1的矩阵,隐含层传递函数
,其中M为大于等于2的整数,x为输入元素,本实施例中,M=20,B1为20*1的矩阵,W1为20*5的矩阵。当然,M也可以为依据需要选取的其他数目。所述输出层103包括隐含层102与输出层103神经元间的网络权值矩阵W2 、输出层神经元阈值B2和输出层传递函数Purelin,输出层输出函数Purelin(x)作为输出值。所述网络权值矩阵W2为P*M矩阵,所述输出层神经元阈值B2为P*1的矩阵,P为输出绝缘阻值的数目,M为大于等于2的整数,在本实施例中,P=2,M为20,W2为2*20的矩阵,B2为2*1的矩阵。输出层传递函数Purelin(x)= k*x+ B2,输出值Y= Purelin(x),x为输入元素。所述神经网络模型的参数包括与所述数据库相匹配的网络权值矩阵W1、隐含层神经元阈值B1、网络权值矩阵W2、输出层神经元阈值B2以及输出层传递函数Purelin(x)的常数k。
参考图1,在步骤(11)之前,还包括选用绝缘检测电路30的步骤。在本实施例中,选用的绝缘检测电路30包括将动力电池正极、第一分压电路(由电阻R1、R2组成)、壳身地、第二分压电路(由电阻R3、R4组成)、动力电池负极依次串联而成的封闭回路,其中动力电池的正极与壳身地之间的回路串联一第一开关K1,动力电池的负极与壳身地之间的回路串联一第二开关K2,所述绝缘检测数据包括:在所述第一开关K1和第二开关K2闭合时通过采集器VR1和采集器VR2分别采集第一分压电路(R1、R2)和第二分压电路(R3、R4)输出端的电压以生成第一电压VP和第二电压VN,在所述第一开关K1闭合且所述第二开关K2断开时采集所述第一分压电路输出端的电压以生成第三电压VP1,在所述第一开关K1断开且所述第二开关K2闭合时采集所述第二分压电路输出端的电压以生成第四电压VN1,所述输入元素x包括动力电池的总电压给定值V、第一电压VP、第二电压VN、第三电压VP1和第四电压VN1。其中,总电压给定值V为已知值。
在本实施例中,数据库包括若干组数据。若干组数据为总电压给定值V不同且真实的电源的正极绝缘阻值Rp和负极绝缘阻值Rn不同的情况下测量得到的第一电压VP、第二电压VN、第三电压VP1和第四电压VN1。每一组数据均包括总电压给定值V、第一电压VP、第二电压VN、第三电压VP1和第四电压VN1以及正极绝缘阻值Rp和负极绝缘阻值Rn,进行神经网络模型训练时,将总电压给定值V、第一电压VP、第二电压VN、第三电压VP1和第四电压作为输入元素,将正极绝缘阻值Rp和负极绝缘阻值Rn作为输出元素。
当然,区别于本实施例,还可以选用其他绝缘检测电路进行神经网络模型训练,以进行对应的绝缘阻值计算。例如,选用平衡电桥法绝缘检测电路或低频注入法绝缘检测电路等等。
具体地,所述步骤(12)中获得数据库的方法包括:确定一绝缘检测电路作为当前绝缘检测电路,在绝缘检测电路上设置不同的绝缘阻值情况,控制所述绝缘检测电路的开关动作以采集相应的绝缘检测数据作为所述输入元素,记录所述输入元素以及对应的绝缘阻值以生成数据库。
步骤(21)具体包括:控制所述绝缘检测电路的第一开关K1和第二开关K2动作并实时采集所述第一电压VP、第二电压VN、第三电压VP1和第四电压VN1。
所述步骤(22)具体包括:依据公式a11 =B1 +W1*x,计算输入矩阵all,依据公式a1= Tansig(all)计算传递函数al,依据a2 =B2 +W2*a1计算输出矩阵a2,依据公式Y =Purelin(a2)计算绝缘阻值Y。
本实施例中,绝缘阻值Y包括正极绝缘阻值RP和负极绝缘阻值Rn,Y= Purelin(x),Y1=RP,Y2=Rn。
以上所揭露的仅为本发明的优选实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明申请专利范围所作的等同变化,仍属本发明所涵盖的范围。