一种感应电机参数辨识系统及方法与流程

文档序号:11234096阅读:615来源:国知局
一种感应电机参数辨识系统及方法与流程

本发明涉及电机控制技术领域,特别是涉及一种感应电机参数辨识系统及方法。



背景技术:

感应电机的参数辨识是电机控制领域的重点和难点问题。参数辨识的准确性直接影响电机输出性能的好坏。而在感应电机的参数辨识中,最重要的辨识参数是转子电阻和励磁电感,因为电机运行过程中转子的温度会时刻变化,从而导致转子电阻值时刻变化,而转子电阻辨识精度直接影响了电机输出转矩的大小;同样,在感应电机弱磁运行的过程中,励磁电感值也会时刻变化,而励磁电感的辨识精度也会影响电机输出性能的优劣。

当今的参数辨识方法可以分为两大分支方法:

(1)离线参数辨识,主要应用于电机控制器研发初期,对电机参数完全不了解的情况,此时,可以采用离线参数辨识的方法,在实验室场合对电机的冷态参数进行辨识。现如今主流的离线参数辨识方法为静止自学习+旋转自学习的方式,即对电机先施加直流电流和单相交流电辨识定、转子电阻或定、转子漏感,在对电机施加三相空载电流辨识励磁电感。上述方法简便易行,但是辨识的是电机的冷态参数,即物理参数,并且需要用到电机模型。专利:三相异步电机的参数离线辨识方法及装置(公开号cn102594253a)公开了一种电机离线参数辨识方法,其优点是直接利用变频器便可以对电机参数进行辨识,辨识时间短。但是缺点也是极其明显的:此方法无法对在线运行的电机进行参数辨识。并且只能辨识电机的物理参数,并非实际运行中最优性能的参数。

(2)在线参数辨识,主要应用于电机实际运行工况,由于电机在实际工况运行的过程中,经常出现弱磁运行、重载运行的情况,此时电机的磁场和温度变化较大,受磁场和温度变化的影响,电机实际运行时参数随时间变化较明显。此时需要用在线参数辨识方法。在线辨识方法种类较多。总体来说分为两类:数据驱动方法和模型驱动方法。数据驱动方法包括神经网络方法,支持向量机方法等。其优点是无需特定电机的数学模型,因此,通用性和精确性都较高;其缺点是需要预选准备数据集进行训练,而数据集的获取一般都是比较困难的。模型驱动的方法包括模型参考自适应,卡尔曼滤波器,有功/无功法等,其优点是运算量小,无需预先训练。其缺点是依赖电机模型,而电机模型的不精确会导致结果出现严重误差。专利:一种基于elman神经网络的感应电机转子电阻参数辨识方法(公开号:cn102937670a)公开了一种基于神经网络的感应电机转子电阻参数辨识方法,此方法属于数据驱动的在线辨识方法,其优点是不需要明确的电机模型,并可以实现在线参数辨识,但是其缺点也十分明显:需要数据集对神经网络进行训练,而可靠的数据集的获取是非常困难的。专利:一种高速列车牵引感应电机参数辨识方法(公开号:cn104201962a)公开了一种基于电机磁链观测器的辨识方法,此方法属于模型驱动的在线辨识方法,其优点是不需要训练,运算量小,但是缺点也极其明显:模型驱动的方法极大的依赖于电机的数学模型,但是电机的数学模型没有考虑电机的非线性损耗,因此实际使用中存在着较大的误差。

综上,感应电机的参数辨识问题是电机控制领域的关键问题,以往的感应电机辨识方法都存在着辨识精度和训练集获取难度的矛盾,即要么采用电机模型驱动的方法,此类方法不需要数据集,但是模型的不精确导致辨识精度较低,通用性差;要么采用电机数据驱动的方法,此类方法通用性高,辨识精度较为准确,但是需要提前获取数据集,而数据集的获取较为困难。



技术实现要素:

本发明技术解决问题:克服上述现有技术的不足,提供一种感应电机参数辨识方法,其方法不依赖于具体的电机数学模型,通用性强,可以实时生成数据集,无需提前准备数据集;辨识的参数是以输出性能最优为前提,不受实际物理参数变化的影响,辨识精度高;既可以辨识感应电机的转子电阻,也可以辨识感应电机的励磁电感。

本发明所采用的技术方案是:运用电机的同步旋转坐标系模型(d-q轴模型,相关理论请参考文献《电力拖动自动控制系统-运动控制系统》第四版,阮毅、陈伯时主编),在设定转速下,根据当前的d轴电流(以下简称id)、q轴电流(以下简称iq)、d轴电压(以下简称ud)、q轴电压(以下简称uq)以及电机温度(以下简称t)作为环境变量(以下简称s),电机的参数估计值的调整作为动作(以下简称a),电机转矩信号(以下简称te)作为奖励值(以下简称r)。然后,采用本发明中的算法,根据环境变量和奖励值的变化对动作不断调整,当算法结束时,输出结果便为辨识的电机参数。

本发明中的一种感应电机的参数辨识系统,包含的设备及功能如下:

电机对拖台架一台、台架上同轴安装测功机电机和被测电机,使测功机电机可以拖动被测电机同时运行;

电机控制器两个,分别控制对拖台架上的被测电机和测功机电机;

转速-转矩传感器一台,安装在测功机电机和被测电机之间;

电机数据采集器一个,功能为:与电机控制器、转速-转矩传感器进行通讯,采集电机d轴电流信号id,q轴电流信号iq,d轴电压信号ud,q轴电压信号uq,电机温度信号t,转速-转矩传感器上的转矩信号te,并将上述信号传送至电脑以供电脑进行运算;电脑运算结束后,接收电脑运算后的电机励磁电感值或电机转子电阻值,将接收的电机励磁电感值或电机转子电阻值传送给电机控制器;

电脑一台,用于搭建强化学习框架,并在此强化学习框架内运行基于q学习的感应电机参数辨识算法,得到任意状态下的电机参数辨识值。

所述电脑接收电机数据采集器的数据后,搭建的电机参数辨识的强化学习框架的构成如下:

(1)环境变量的选择为电机控制器的电机d轴电流id,q轴电流iq,d轴电压ud,q轴电压uq,电机温度信号t,其中,如果无法检测电机温度信号t,本发明提出方法仍然可以适用,只需将环境变量剔除电机温度信号即可,但是id,iq,ud,uq四个变量是环境的最基本的变量,缺一不可;

(2)将动作设置为三种模式,可以选择以下三种模式中的任意一种,三种模式分别为:

①共2个动作,即当前的电机参数辨识值增加0.1或减少0.1,记为a=[y-0.01,y+0.01],y可以是电机转子电阻,也可以是电机的励磁电感,根据所需辨识的参数而定;

②共400个动作,即当前电机的参数值每次增加或减小的间隔为0.01,总变化范围为-2.0~2.0,记为a=[y-2.0,y-1.99......y+1.99,y+2.0],变化范围和动作间隔可以自由电机调整;

③共200个动作,即当前电机的参数值分别为0~2.0,每个动作间隔为0.01。记为a=[y=0.0,y=0.01......y=2.0],参数范围和动作间隔可以自由调整;

(3)将电机参数调整对电机输出转矩的影响称之为奖励,奖励设置为三种模式,可以选择以下三种模式中的任意一种,三种模式分别为:

①直接为电机输出的转矩值,记为r=te;

②电机输出的转矩值和某一个参考值之差,记为r=te-te*,参考值约为当前工况下最大转矩的90%;

③电机当前输出转矩与最大输出转矩之差,记为r=te-tmax;

电机测试系统采集电机的环境变量和奖励值,并送入算法,算法根据输入不算调整动作值,使奖励值不断增大。

所述脑中运行的基于q学习的感应电机参数辨识算法,具体实现步骤如下:

(1)一共迭代i个回合,每个回合又迭代j次,迭代次数i和j根据实际情况而定;

(2)每个回合中,首先初始化电机参数值,电机参数可以为励磁电感或转子电阻,根据需要辨识的电机参数而定,电机参数的初始值可以为经验值,如果没有经验值,可以设为0.001;

(3)初始化电机参数值后,进入每个回合的算法迭代,具体的迭代步骤为:

①在强化学习框架中,采集环境变量,计算奖励值;

②选择一随机数ε,ε取值范围为(0,1);

③计算当前估计价值函数q(s,a),q(s,a)采用多层神经网络算法求得,神经网络的结构可以是反向传播神经网络(bp),循环神经网络(rnn),或者是长短记忆型神经网络(lstm-rnn),或者其他类型神经网络;

④计算目标价值函数qtarget,记为qtarget=[r+γmaxq*(s',a')|s,a],其中,γ为贴现因子,s、a表示当前的环境变量和动作,s′、a′为下次的环境变量和下次的预动作。maxq*(s',a')|s,a表示当前的环境变量为s,当前动作为a时,下次环境变量变化成s′后,s′状态下的估计价值函数的最大值;

⑤若ε<0.1时,随机选择当前动作;

若ε>0.1时,选择动作为:a=maxaq*(s,a),即使当前估计价值函数q(s,a)为最大值的那个动作;

⑥使用梯度下降法,更新(qtarget-q(s,a))2

⑦如果奖励值小于-20,直接退出本回合;

⑧一次迭代结束,记录运算结果;

(4)完成所有步骤(3)的迭代运算后,选择所有记录的运算结果中,出现频率最多的值,即为当前状态下能使电机输出转矩最优的电机参数辨识值。

本发明中的一种感应电机的参数辨识方法,于步骤如下:

(1)两台电机控制器上电,控制对拖台架的两台电机工作。同时,转速-转矩传感器、电机数据采集器以及电脑也上电工作;

(2)将系统中的测功电机运行于转速模式,并限制在设定的转速下;

(3)被测电机的电机控制器采用带转速反馈的矢量控制算法,使得被测电机运行于转矩模式,并将d、q轴参考电流设为一固定值;

(4)被测电机的电机控制器采集被测电机的id,iq,ud,uq,t,并送入电机数据采集器;

(5)转速-转矩传感器采集被测电机的转矩信号te并送入电机数据采集器;

(6)电机数据采集器将上述信号传送至电脑;

(7)电脑根据采集的信号搭建强化学习框架,强化学习框架中的奖励模式和动作模式可以自由选择;

(8)强化学习框架搭建完成后,电脑再根据基于q学习的电机参数辨识算法进行参数辨识;

(9)电机控制器采用更新后的电机参数辨识值迭代运行,重复(3)至(7)步骤;

(10)运行若干次,当达到设定条件时结束,此时辨识出的电机参数值则认为是此转速下的实际的电机参数值;

(11)改变转速限定值和限定值,在不同转速,不同下重复上述步骤,最终得到全状态下的电机参数辨识值;

(12)所有状态辨识完成后,记录下不同状态下的id,iq,ud,uq,t与参数辨识值的对应关系,并以表格形式记录至电机控制器中,至此,电机参数辨识完成;

辨识工作完成后,电机便可以脱离测试系统运行于实际工况中,运行时,电机控制器只需采集电机的id,iq,ud,uq,t信号,并根据生成的表格便获得电机参数的当前值。

与现有技术相比,本发明的优点在于:

(1)本发明提出的方法具有通用性的特征。即本方法不依赖电机的具体数学模型。无论何种功率,何种型号的感应电机,均可采用本发明的方法进行参数辨识,无需对方法进行较大修改;同时,本方法既可以辨识转子电阻,也可以辨识励磁电感,针对不同的参数,无需对算法进行修改。

(2)本发明提出的方法具有自动化的特征,即只要将设备安装完成后,电脑自动进行电机参数的辨识,无需提供训练数据集,无需人员进行操作,大大减小了研发人员的工作量。

(3)本发明所用的方法具有泛化性的特征,本发明虽然在测试系统中进行的电机参数辨识,但辨识的结果可以运用于实际运行中,即可以实现在线参数辨识的功能。

附图说明

图1为设备结构图;

图2为适用于感应电机参数辨识的强化学习框架;

图3为基于q学习的感应电机参数辨识算法的伪代码图;

图4为单一采样方法的q神经网络收敛误差;

图5为minibatch方法的q神经网络收敛误差;

图6为minibatch方法的电机参数辨识结果。

具体实施方式

下面结合附图对本发明进一步说明。

感应电机的参数辨识问题是电机控制领域的关键问题,以往的感应电机辨识方法都存在着辨识精度和训练集获取难度的矛盾,即要么采用电机模型驱动的方法,此类方法不需要数据集,但是模型的不精确导致辨识精度较低,通用性差;要么采用电机数据驱动的方法,此类方法通用性高,辨识精度较为准确,但是需要提前准备训练数据集,而训练数据集的获取较为困难。本发明公开了一种感应电机参数在线辨识的系统及方法。包括:一种可以进行感应电机参数在线辨识的测试系统,可以采集在线辨识算法所需的电机实时电压、实时电流、实时温度、实时转矩等数据,用于参数辨识;一种适用于电机参数辨识的强化学习框架,包括强化学习环境中的状态变量、奖励值及动作方式的选择;一种基于q-学习感应电机参数辨识方法,可以使测试系统在运行的过程中实时的生成数据集并进行参数辨识。本发明解决了辨识精度和训练集获取难度的矛盾问题,不依赖于具体的电机数学模型,通用性强,可以实时生成数据集,无需提前准备数据集;辨识的参数是以输出性能最优为前提,不受实际物理参数变化的影响,辨识精度高;既可以辨识感应电机的转子电阻,也可以辨识感应电机的励磁电感。

如图1所示,本发明系统需要的仪器设备有:

1、电机对拖台架一台、台架上同轴安装测功机电机和被测电机,使测功机电机可以拖动被测电机同时运行;

2、电机控制器两个,分别控制对拖台架上的被测电机和测功机电机;

3、转速-转矩传感器一台,安装在测功机电机和被测电机之间;

4、电机数据采集器一个,其功能为:

(1)采集电机控制器的id,iq,ud,uq,t,

(2)采集转速-转矩传感器上转矩信号te,

(3)将上述信号传送至电脑,

(4)接收电脑运算后的电机参数,

(5)将接收的电机参数传送给电机控制器。

5、电脑一台,用于运行感应电机参数辨识算法。

本发明方法实现具体步骤为:

步骤一、将测功电机运行于转速模式,并限制在一固定转速。被测电机运行于转矩模式。被测电机控制方式为矢量控制算法。例如300转/分钟,转速范围根据电机本身而定,例如某台电机的最高转速为7000转/分钟,则转速的范围为0~7000转/分钟;

步骤二、被测电机的电机控制器采集被测电机的id,iq,ud,uq,t,将其传送给电机数据采集器,通讯方式可以为串口通讯,can总线通讯,无线通讯等方式;

步骤三、电机数据采集器同时采集转速-转矩传感器的转矩信号te,通讯方式为根据转速-转矩传感器本身所具备的通讯方式而定;

步骤四、电机数据采集器将上述信号传送至电脑。电脑根据采集的信号运行本发明提出的算法。并将算法更新出的电机参数的辨识值回传至电机数据采集器,电机数据采集器再将电机参数辨识值回传给被测电机的电机控制器;

步骤五、电机控制器采用更新后的电机参数辨识值迭代运行,重复二至四步骤;

步骤六、运行若干次,当达到特定条件时,算法结束,此时辨识出的电机参数值可认为是实际的电机参数值;

步骤七、在不同转速,不同id,iq下重复上述步骤,最终得到全状态下的电机参数辨识值;

步骤八、所有状态辨识完成后,记录下不同状态下的id,iq,ud,uq,t与参数辨识值的对应关系。并以表格形式记录至电机控制器中。至此,电机参数辨识完成。

辨识工作完成后,电机便可以脱离测试系统运行于实际工况中,运行时,电机控制器只需采集电机的id,iq,ud,uq,t信号,并根据生成的表格便可以获得电机参数的当前值。

如图2所示,是适用于电机参数辨识的强化学习框架结构图,由于本发明使用的q学习算法是一种强化学习算法,遵循强化学习规律,因此,首先需要搭建适合于电机参数辨识的强化学习框架。

强化学习框架整体思想为:电机测试系统采集电机的环境变量和奖励值,并送入算法,算法根据输入不算调整动作值,使奖励值不断增大。其中,具体部分为:

(1)将电机数据采集器采集的电机信号称之为环境变量。环境变量的选择为电机控制器的电机d轴电流id,q轴电流iq,d轴电压ud,q轴电压uq,电机温度信号t。其中,如果无法检测电机温度信号t,本发明提出方法仍然可以适用,只需将环境变量剔除电机温度信号即可,但是id,iq,ud,uq四个变量是环境的最基本的变量,缺一不可。

(2)将电机参数的不断调整称之为动作。动作可以设置为三种模式,分别为:

①共2个动作,即当前的电机参数辨识值增加0.1或减少0.1,记为a=[y-0.01,y+0.01],y可以是电机转子电阻,也可以是电机的励磁电感,根据所需辨识的参数而定。若要辨识转子电阻,只需将励磁电感设为一特定值,动作设为转子电阻的变化即可。若要辨识励磁电感,同样只需将转子电阻设为一特定值,动作设为励磁电感的变化即可;

②共400个动作,即当前电机的参数值每次增加或减小的间隔为0.01,总变化范围为-2.0~2.0,记为a=[y-2.0,y-1.99......y+1.99,y+2.0],变化范围和动作间隔可以自由电机调整;

③共200个动作,即当前电机的参数值分别为0~2.0,每个动作间隔为0.01。记为a=[y=0.0,y=0.01......y=2.0],参数范围和动作间隔可以自由调整。

选择动作模式时,第一种动作模式更为通用,适合于不同功率不同种类的电机,但是运算量最大,时间最长,并且有误差。第三种动作模式通用性较差,只适用于电机参数在所设参数范围内的电机,但是运算量最小,也最精确。第二种动作模式介于一,三之间。

(3)将电机参数调整对电机输出转矩的影响称之为奖励。奖励值可以设置为三种模式:

①直接为电机输出的转矩值:,记为r=te;

②电机输出的转矩值和某一个参考值之差,记为r=te-te*,参考值约为当前工况下最大转矩的90%;

③电机当前输出转矩与最大输出转矩之差,记为r=te-tmax。

奖励值可以选择三种模式中的任意一种。

选择奖励模式时,第一种奖励模式更为通用,适合于不同功率不同种类的电机,但是辨识精度较差,有时无法得到精确的辨识值。第二种模式辨识准确性最高,运算量最小,但是需要预先估计电机的最大转矩,因此通用性较差。第三种模式通用性和第一种模式相同,辨识准确性较第一种模式更高,略低于第二种模式,但是运算量最大。

如图3所示为基于q学习的感应电机参数辨识算法的流程图,具体实现为:

(1)一共迭代i个回合,每个回合又迭代j次,迭代次数i和j根据实际情况而定;

(2)每个回合中,首先初始化电机参数值,电机参数可以为励磁电感或转子电阻,根据需要辨识的电机参数而定,电机参数的初始值可以为经验值,如果没有经验值,可以设为0.001;

(3)初始化电机参数值后,进入每个回合的算法迭代,具体的迭代步骤为:

①采集环境变量,计算奖励值;

②选择一随机数ε,ε取值范围为(0,1);

③计算当前估计价值函数q(s,a),q(s,a)采用多层神经网络算法求得,神经网络的结构可以是反向传播神经网络(bp),循环神经网络(rnn),或者是长短记忆型神经网络(lstm-rnn),或者其他类型神经网络;

④计算目标价值函数qtarget,记为qtarget=[r+γmaxq*(s',a')|s,a],其中,γ为贴现因子,s、a表示当前的环境变量和动作,s′、a′为下次的环境变量和下次的预动作。maxq*(s',a')|s,a表示当前的环境变量为s,当前动作为a时,下次环境变量变化成s′后,s′状态下的估计价值函数的最大值;

⑤若ε<0.1时,随机选择当前动作a;

若ε>0.1时,选择动作为:a=maxaq*(s,a),即使当前估计价值函数q(s,a)为最大值的那个动作;

⑥使用梯度下降法,更新(qtarget-q(s,a))2

⑦如果奖励值小于-20,直接退出本回合;

⑧一次迭代结束,记录运算结果;

(4)完成所有步骤(3)的迭代运算后,选择所有记录的运算结果中,出现频率最多的值,即为当前状态下能使电机输出转矩最优的电机参数辨识值。

在进行梯度下降的过程中,可以直接对当前单一采样值进行梯度下降(以下简称单一采样法),也可以采用设立经验池(experiencepool),并随机重复采样取平均值的方法进行梯度下降(以下简称minibatch方法),即①将以前所有采集的数据均存储至一数据库内,作为经验池。②采集的当前状态的环境变量和奖励值,并从经验池随机选择先前若干个时刻的环境变量和奖励值共同组成一个样本(minibatch),对这个样本分别取平均值后再进行梯度下降。若使用单一采样法方法运算量小,速度快,但是q神经网络不一定收敛,因此可靠性不能保证。而使用minibatch方法虽然运算量大,速度慢,但是q神经网络一定收敛。从而保证了辨识的可靠性。举例说明,已知电机转子电阻的实际值为0.338ω,图4是用单一采样方法的q神经网络的收敛误差,图5是用minibatch方法q神经网络收敛误差。可以看出,450次迭代后,单一采样法q神经网络的误差仍未收敛;而minibatch方法q神经网络已经收敛。并且从图6得知,minibatch方法已经得到了较为精确的辨识值。

提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1