一种基于自适应陷波的机械谐振在线抑制系统的制作方法

文档序号:22620930发布日期:2020-10-23 19:26阅读:252来源:国知局
一种基于自适应陷波的机械谐振在线抑制系统的制作方法

本发明涉及机械技术领域尤其涉及一种基于自适应陷波的机械谐振在线抑制系统。



背景技术:

在伺服系统中被动方式的机械谐振抑制主要是指不改变控制系统的机构或者参数,在系统中加入滤波器环节来进行谐振的抑制,对指令进行滤波器处理,进而对谐振进行抑制。主要的方法有低通滤波器、陷波滤波器等。

伺服系统频率特性的获取方法分为直接测量法、离线辨识与在线辨识。直接测量方法是通过安装相应的传感器,例如利用激光多普勒效应的测量仪器,可以直接得到传动轴的振动数据。这种方法可以直接得到谐振的特征,但是成本较高,而且实现比较复杂,不适合在工业现场使用。

离线辨识主要方法为扫频法,常用正弦扫频法,对伺服系统施加不同频率的正弦激励信号,得到不同的响应,从而辨识得到频率特性,扫频法稳定可靠,方法简单,易于理解,但是存在测试时间长,而且有低频漂移的问题。



技术实现要素:

本发明的目的就在于为了解决上述问题而提供一种基于自适应陷波的机械谐振在线抑制系统。将电机、负载以及传动部分简化为二质量系统,对其进行建模分析,在二质量系统模型的基础上分析伺服系统机械谐振产生的原因,研究惯量比、刚性系数对振动特性的影响,设计了基于自适应陷波的机械谐振在线抑制系统。

本发明通过以下技术方案来实现上述目的:

本发明包括谐振特征在线辨识和谐振动态抑制,所述谐振特征在线辨识需要具备实时性,利用fpga硬件实现fft,使傅里叶变换在毫秒级别可以完成计算;通过对iq进行fft得到其频谱,依据交轴电流频谱,判断是否产生谐振以及得到谐振的频率和幅值;伺服系统的速度环控制周期在200us,陷波滤波器的阶数较低,能在控制周期内完成陷波处理,在电流控制回路中加入陷波滤波器,对交轴电流指令进行滤波,抑制谐振频率附近的增益,根据谐振特征辨识的结果计算陷波中心频率fn、陷波宽度k、陷波深度ξ这三个参数,并动态更新参数,完成自适应陷波,实现对谐振的动态抑制。

所述谐振特征的在线辨识需要根据转速或者转矩的振荡分析出谐振的幅值和频率,而且要满足在线的实时性,因此,在伺服系统控制中,采用矢量控制,定子电流解耦为dq坐标系下的直轴电流和交轴电流,电磁转矩与交轴电流成正比。控制结构从外到内为速度环和电流环,采用id=0的控制策略,速度环的输出即为交轴电流iq的指令;所以对交轴电流进行fft,可以得到其频谱,分析频谱,找到其中幅值最大的频率成分,判断是否产生谐振并且得到谐振的频率及幅值。

所述fpga中实现硬件电流环,对伺服电机的ab相电流进行采样,采样的频率在200ksps左右;经过clark和park变换之后得到id、iq,由于clark、park变换都在fpga中实现,速度很快,交轴电流iq以200khz左右的频率更新。所以谐振频率辨识范围最大为100khz左右,考虑到频率辨识的精度以及范围,对交轴电流进行一定频率的采样,并缓存到双口ram中,快速傅里叶变换对傅里叶变换进行了优化,减少了计算的次数,且得益于硬件实现的快速性,使fpga中快速傅里叶变换的计算时间基本上在毫秒级别,满足在线辨识的要求,在得到交轴电流频谱之后,对其进行进一步分析,计算实际的谐振频率以及幅值;

谐振特征辨识模块分为四部分,分别为双口ram、fft计算模块、谐振特征提取模块以及fft控制模块,fpga中实现硬件电流环,得到交轴电流,将其输入到双口ram中,缓存一定数量的数据,假设进行n点的fft,则需要采集n个交轴电流,双口ram的大小需要能够保存n个数据,fft计算模块主要作用即完成fft的计算,数据串行输入,经过变换之后,输出频谱的实部和虚部,假设采集交轴电流的频率为fs,则经过傅里叶变换之后的频率范围为fs/2,而精度为fs/n,频率特征提取模块对fft计算之后的数据进行处理,计算得到谐振的频率和幅值,fft控制模块控制整个时序,fft控制模块根据设定的采样频率,将数据写入,当数据量达到要求时,使能fft计算,当fft计算结束并完全输出数据之后,使能谐振特征提取模块;

fft计算之后,可以得到输入信号的频谱,输出格式为实部real_out和虚部的imag_out,n点的变换将会输出n组数据,对实部虚部进行求平方根计算,得到对应点的幅值mag_out,即当fft计算模块开始输出的时候,计数模块同时开始工作,记录当前数据在输出序列中所在的位置;得到幅值之后,依次进行比较,记录最大的幅值以及此时所在的位置k,由于fft计算的对称性,只需要比较前n/2个数据;最终输出的谐振频率以及幅值为:

所述fpga的快速傅里叶变换在谐振特征辨识中,实现对谐振幅值和频率在线辨识的重点是快速傅里叶变换的实时性,结合fpga高速的运算能力以及并行的优势,将快速傅里叶变换在fpga中实现可以满足在线辨识实时性的要求。

本发明的有益效果在于:

本发明是一种基于自适应陷波的机械谐振在线抑制系统,本发明采用fpga实现快速傅里叶变换,利用其高速的运算能力缩减了计算时间,满足了实时性的要求,实现机械谐振特征的在线辨识。设计了基于fpga的机械谐振特征辨识的具体方案,研究了快速傅里叶变换在fpga中的实现;最终通过在线调试验证了fpga中实现快速傅里叶变换的准确性和实时性,并在simulink中搭建模型,验证了谐振特征在线辨识方案的可行性,具有推广应用的价值。

附图说明

图1是二质量系统结构示意图;

图2是二质量系统模型框图;

图3是二质量系统波特图;

图4是不同刚性系数下二质量系统波特图;

图5是不同惯量比下的二质量系统波特图;

图6是速度环控制框图;

图7是速度环开环系统波特图;

图8是闭环系统加入二质量系统前后波特图;

图9是不同速度比例系数下闭环系统的bode图;

图10是基于自适应陷波的谐振抑制控制框图;

图11是基于自适应陷波的谐振抑制方案设计图;

图12是机械谐振特征在线辨识模块框图;

图13是交轴电流分析法结构示意图;

图14是基于fpga的谐振特征辨识方案模块框图;

图15是谐振特征提取模块框图;

图16是蝶形运算的基本符号;

图17是频率抽取8点fft计算示意图;

图18是fft计算的模块框图;

图19是验证fft模块的正确性;

图20是测试信号在matlab中进行fft分析的结果;

图21是fpga中fft模块仿真结果;

图22是谐振特征辨识时间示意图;

图23是谐振特征辨识仿真模型;

图24是电机转速和q轴电流仿真波形图;

图25是谐振频率辨识结果。

具体实施方式

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

交流伺服系统机械谐振产生机理及抑制技术分析:

伺服系统的机械结构主要由电机、负载以及中间的传动部分组成,由于传动部分刚性有限,具有一定弹性,进一步引入了谐振。本章将电机、负载以及传动部分简化为二质量系统,对其进行建模分析。在二质量系统模型的基础上分析伺服系统机械谐振产生的原因,研究惯量比、刚性系数对振动特性的影响。设计了基于陷波滤波器的在线谐振抑制总体方案。

二质量系统建模分析:

伺服系统中电机与负载之间具有传动系统,电机通过联轴器、传动轴等与负载相连。典型的二质量系统由电机、负载以及传动系统组成[48],其结构示意图如图1所示:

其中各个参数代表含义及单位如下:

tm,tw,tl分别为电机转矩、传动系统转矩、负载转矩(n·m);

jm,jl分别为电机转动惯量、负载转动惯量(kg·m2);

cw为传动系统阻尼系数(n·s/m);

ωm,ωl分别为电机转速、负载转速(rad/s);

θm,θl分别为电机转角、负载转角(rad);

k为传动系统弹性系数(n·m/rad);

电机与负载之间的传动系统包括联轴器、滚珠丝杠、传动轴等环节,传动系统存在一定的阻尼系数cw和扭转刚度k。当传动系统发生扭转时,产生扭矩tw。电机的电磁转矩为tm,传动系统对于电机轴相当于负载,电机轴的转速为ωm;传动系统驱动转动惯量为jm的负载[49],负载转矩tl和扭矩tw共同决定负载转速ωl。根据以上分析,可以建立二质量系统的数学模型,如式1所示:

在上式中,由于阻尼系数比较小,可以忽略不计,将上式简化,并进行拉普拉斯变换之后得到:

根据以上的方程,可以得到柔性负载的二质量系统的模型框图,如图2所示。

根据式2以及模型框图以及线性系统叠加原理可以推导得到电机转速和电机转矩之间的传递函数为:

负载转速与电机转矩之间的传递函数为:

负载转速与电机转速之间的传递函数为:

机械谐振机理分析:

谐振影响因素分析:

根据式3,对其进行一定变换,可得到式6。式6的前半部分为纯刚性双质量系统的传递函数,而括号中的内容则表示了柔性传动部分对系统的影响。由于二阶振荡环节的存在,所以会导致谐振的产生。

令式6中分母为零,此时传递函数的增益最大,可以得到系统的自然谐振频率(ntf,naturaltorsionalfrequency)为:

令式6中分子为零,此时传递函数的增益最小,可以得到系统的反谐振频率(anf,anti-resonancefrequency)为:

根据式3,可得二质量系统的波特图如图3所示。从幅频特性曲线可知在谐振点处出现尖峰,即系统的频率响应幅值会突增,在反谐振点,曲线出现低谷,即系统的频响幅值会减小。

由式7、8可知,谐振频率主要与刚性系数以及电机和负载的转动惯量有关,定义惯量比r为负载的转动惯量与电机的转动惯量之比,即所以式7可变换为

因此谐振频率受惯量比和刚性系数影响,反谐振频率与刚性系数和负载转动惯量有关,与jm无关。刚性系数与传动轴的形状以及材料的弹性模量有关系,属于系统的固有属性。

为了更形象说明影响谐振的因素,对比在电机惯量和负载惯量不变的情况下,不同刚性系数的波特图;以及在刚性系数不变的情况下,不同惯量比的波特图。

如图4所示,保持电机和负载的惯量不变,刚性系数越大,即传动系统的刚性越强,会导致谐振频率越大。因此提高系统刚性,可以使得系统的谐振频率变高,进而可以避开系统的带宽,避免谐振的产生。

如图5所示,在刚性系数相同的情况下,惯量比越大,谐振频率越低;当电机的转动惯量确定之后,负载转动惯量越大,谐振频率越低,谐振点与反谐振点之间的距离也越宽。

谐振对交流伺服系统的影响

为分析谐振对交流伺服系统的影响,对电流环和速度环进行建模,并加入二质量系统数学模型,进行分析。电流环带宽一般在1-5khz,而速度环的带宽远小于电流环,因此为了简化讨论的模型,将电流环近似为1。速度控制器采用pi控制器,可以实现平稳快速的控制,其传递函数为:

其中kp为速度环的比例系数,ki为积分系数。

永磁同步电机的电磁转矩方程如式11所示:

te=p[(ld-lq)idiq+ψfiq](11)

其中p为电机极对数,ld为直轴电感,lq为交轴电感,id为直轴电流,iq为交轴电流,ψf为转子等效励磁绕组产生的励磁磁链,。

表贴式结构的永磁同步电机中ld和lq可以认为近似相等,所以电磁转矩方程为:

te=pψfiq(12)

速度环的控制框图如图6所示:

所以系统的开环传递函数为:

go(s)=gasr(s)·pψf·gm(s)(13)

对于确定的电机,其中p、ψf为常数,所以可以将式13进一步简化,得到开环传递函数为:

伺服系统开环传递函数的波特图如图7所示,可以看出,开环系统的幅频特性曲线存在尖峰,谐振点的频率与之前计算得到的自然谐振频率ωn相同,系统在谐振点处,增益会变大,导致电机转速振荡。

根据二质量系统模型可以得到电机转速ωm和负载转矩tl的传递函数为:

由式15及式3可得到ωm与tl和tm的拉氏表达式为:

通过laplace反变换可以得到电机转速的单位阶跃响应为:

由式17可知,速度开环的情况下,电机转速的单位阶跃响应会产生正弦振荡,频率为ωn,即二质量系统的自然谐振频率。由此可知,在加入柔性负载之后,速度开环的情况下,电机转速会产生谐振,频率为自然谐振频率。

由速度环控制框图可以得到闭环系统的电机转速与指令转速之间的传递函数为:

所以其特征方程为jljms4+(jl+jm)ks2+kp(ki+s)(jls2+k)=0,化简如下式:

式19可以写为如式20的形式:

将式20展开,对比式20的各项系数可以得到:

系统的闭环带宽主要受到闭环系统的自然频率影响,所以带宽是小于两个自然频率的最小值的,即b<min(ω1,ω2)。而根据式21可知,两个自然频率小于反谐振频率,即ωa>min(ω1,ω2),所以闭环带宽b小于ωa。做出加入柔性负载前后系统的波特图,如图8所示。由图可知在伺服系统中加入柔性负载之后,系统的带宽以及相位裕度降低,限制了系统的性能,降低了稳定性。

图9为不同速度环比例系数kp时的闭环系统波特图,可以得出在自然谐振频率处的增益会因为闭环的因素而受到抑制,而在反谐振频率附近,可以看到有出现增益突增的情况,所以会导致系统产生振荡。图中kpa<kpb<kpc,比例系数越大,幅频曲线中的突起越接近反谐振点,所以在闭环系统中可能出现衰减振荡,振荡的频率在反谐振频率附近。

伺服系统中,速度阶跃响应存在两个阶段,根据之前的分析,在速度控制器饱和阶段,系统处于速度开环,产生频率为自然谐振频率的谐振;而当速度到达指令值之后,速度调节器处于退饱和的阶段,产生频率为反谐振频率的衰减振荡,直至速度达到稳定状态。

经过以上分析,可以得到谐振产生的原因即是因为柔性环节的存在。在柔性系统中,影响谐振的主要因素有电机转动惯量、负载转动惯量以及系统的刚性系数。系统的刚性越大,则谐振频率越高,而且谐振对系统的影响也就越小,如果谐振点避开了系统的带宽,也可以避免谐振的产生;系统的惯量比越大,则谐振频率越小,谐振对系统影响越大。谐振会导致伺服系统的带宽降低,影响伺服系统的动态性能。速度开环的情况下,谐振频率为自然谐振频率;当速度闭环的时候,系统会产生频率为反谐振频率的衰减振荡。

基于自适应陷波的机械谐振在线抑制总体方案:

柔性负载伺服系统谐振会随着负载惯量以及磨损等产生变化,而且在速度开环和闭环的情况下,谐振频率也不同。因此需要对谐振进行实时抑制,但用于谐振特征提取的fft计算量较大,针对这一问题,提出一种基于自适应陷波的在线谐振抑制方案。在伺服驱动器中利用fpga实现快速傅里叶变换,解决了在线谐振特征辨识实时性的问题;为满足傅里叶变换的要求,结合实际谐振频率辨识精度及范围,对交轴电流数据进行采样和缓存,利用fft得到其频谱,进一步在线提取谐振的频率和幅值;再根据谐振特征自适应调整陷波滤波器,将其添加至速度环输出之后,对电流指令进行陷波处理,实现谐振的动态抑制。方案整体控制框图如图10所示:

在基于自适应陷波的谐振抑制方案中,主要包括谐振特征在线辨识和谐振动态抑制。机械谐振特征的在线辨识需要具备实时性,利用fpga硬件实现fft,使傅里叶变换在毫秒级别可以完成计算;通过对iq进行fft得到其频谱。依据交轴电流频谱,判断是否产生谐振以及得到谐振的频率和幅值。

伺服系统的速度环控制周期一般在200us左右,陷波滤波器的阶数较低,可以在控制周期内完成陷波处理。在电流控制回路中加入陷波滤波器,对交轴电流指令进行滤波,抑制谐振频率附近的增益。根据谐振特征辨识的结果计算陷波中心频率fn、陷波宽度k、陷波深度ξ这三个参数,并动态更新参数,完成自适应陷波,实现对谐振的动态抑制。

综合以上分析,本文谐振在线辨识及抑制方案的具体设计如图11所示。

将典型的电机负载工作结构简化为二质量系统,对二质量系统进行动力学分析,建立二质量系统模型。得到了电机转速和转矩的传递函数,并结合其波特图分析了谐振产生的原因。研究了谐振特性的影响因素。分析了柔性负载对伺服系统的影响,得出了在速度开环与闭环不同情况下的振荡频率。针对傅里叶变换计算量大的问题提出一种在线谐振抑制方案,在fpga中对交轴电流进行fft变换并进一步分析得到谐振特征,满足了实时性的要求,接着根据辨识得到的谐振特征,自适应调整陷波滤波器的参数,对电流指令进行滤波,最终达到机械谐振的抑制的目的。

采用fpga实现快速傅里叶变换,利用其高速的运算能力缩减了计算时间,满足了实时性的要求,实现机械谐振特征的在线辨识。设计了基于fpga的机械谐振特征辨识的具体方案,研究了快速傅里叶变换在fpga中的实现;最终通过在线调试验证了fpga中实现快速傅里叶变换的准确性和实时性,并在simulink中搭建模型,验证了谐振特征在线辨识方案的可行性。该方案的整体模块框图如图12所示:

基于fpga的机械谐振特征辨识方案设计

机械谐振特征的在线辨识需要根据转速或者转矩的振荡分析出谐振的幅值和频率,而且要满足在线的实时性。在伺服系统控制中,通常采用矢量控制,电机转矩的振荡会引起交轴电流的振荡。交轴电流分析法即对交轴电流进行分析,分析其频谱构成,进而可以判断是否发生谐振并辨识得到谐振的特征;而利用fpga实现快速傅里叶变换,可以弥补计算量大的缺点,满足在线辨识的要求。

在伺服控制中采用矢量控制,定子电流解耦为dq坐标系下的直轴电流和交轴电流,电磁转矩与交轴电流成正比。控制结构从外到内为速度环和电流环,采用id=0的控制策略,速度环的输出即为交轴电流iq的指令。所以对交轴电流进行fft,可以得到其频谱,分析频谱,找到其中幅值最大的频率成分,判断是否产生谐振并且得到谐振的频率及幅值。交轴电流分析法的结构示意图如图13所示:

在fpga中实现硬件电流环,对伺服电机的ab相电流进行采样,采样的频率在200ksps左右;经过clark和park变换之后得到id、iq,由于clark、park变换都在fpga中实现,速度很快,交轴电流iq可以认为以200khz左右的频率更新。所以谐振频率辨识范围最大为100khz左右,考虑到频率辨识的精度以及范围,对交轴电流进行一定频率的采样,并缓存到双口ram中。快速傅里叶变换对傅里叶变换进行了优化,减少了计算的次数,且得益于硬件实现的快速性,使fpga中快速傅里叶变换的计算时间基本上在毫秒级别,满足在线辨识的要求。在得到交轴电流频谱之后,对其进行进一步分析,计算实际的谐振频率以及幅值。综上分析,基于fpga的谐振特征辨识方案的模块图如图14所示。

谐振特征辨识模块分为四部分,分别为双口ram、fft计算模块、谐振特征提取模块以及fft控制模块。fpga中实现硬件电流环,得到交轴电流,将其输入到双口ram中,缓存一定数量的数据,假设进行n点的fft,则需要采集n个交轴电流,双口ram的大小需要能够保存n个数据。fft计算模块主要作用即完成fft的计算,数据串行输入,经过变换之后,输出频谱的实部和虚部。假设采集交轴电流的频率为fs,则经过傅里叶变换之后的频率范围为fs/2,而精度为fs/n。频率特征提取模块对fft计算之后的数据进行处理,计算得到谐振的频率和幅值。fft控制模块控制整个时序,fft控制模块根据设定的采样频率,将数据写入,当数据量达到要求时,使能fft计算,当fft计算结束并完全输出数据之后,使能谐振特征提取模块。

谐振特征提取模块的内部模块框图如图15所示。

fft计算之后,可以得到输入信号的频谱,输出格式为实部real_out和虚部的imag_out,n点的变换将会输出n组数据,对实部虚部进行求平方根计算,得到对应点的幅值mag_out,即当fft计算模块开始输出的时候,计数模块同时开始工作,记录当前数据在输出序列中所在的位置。得到幅值之后,依次进行比较,记录最大的幅值以及此时所在的位置k,由于fft计算的对称性,只需要比较前n/2个数据。最终输出的谐振频率以及幅值为:

基于fpga的快速傅里叶变换:

在谐振特征辨识中,实现对谐振幅值和频率在线辨识的重点是快速傅里叶变换的实时性,结合fpga高速的运算能力以及并行的优势,将快速傅里叶变换在fpga中实现可以满足在线辨识实时性的要求。

离散系统中的傅里叶变换称为离散傅里叶变换,而针对其计算量较大的问题,对其进行优化,即快速傅里叶变换。fft可以直接得到信号的频率和幅值,将fft部署在fpga中可以利用fpga计算迅速的特点,完成在线的谐振辨识。

快速傅里叶变换及时间复杂度分析

对交轴电流进行快速傅里叶变换可以得到其频谱,对频谱进一步分析,得到谐振的特征。伺服驱动器为离散系统,适用于离散傅里叶变换,其公式如下式23所示:

其中n为离散傅里叶变换的点数;k为离散傅里叶变换的第k个频谱,k的取值范围为(0~n-1)。

将欧拉公式带入可以得到:

由式24可知,离散傅里叶变换之后得到离散的频谱,由实部和虚部组成,变换之后的分辨率可以得到为fs为采样频率。而第k点的频率为因此离散傅里叶变换的点数越高,则得到的频率精度越高,但是转换点数越高,计算量也越大。由采样定律可知,当采样频率为fs的时候,转换之后得到的频谱的频率范围为所以采样频率越高,则离散傅里叶变换之后得到的频谱频率范围越广,即谐振频率辨识的范围也越广。

由以上的分析可知,谐振频率辨识的性能与采样频率和转换点数相关。当转换点数过大的时候,计算量过大,导致辨识时间变长。采样频率决定了谐振频率辨识的范围,采样频率与转换点数共同决定了谐振频率辨识的精度。所以需要根据实际情况,选择适当的采样频率与转换点数。当离散傅里叶变换的点数为n的时候,需要进行n*n次运算,时间复杂度为o(n2),针对离散傅里叶变换计算量大的缺点,通过频率抽取的方法对其进行优化,得到fft。

将式23改写成以下形式:

其中为旋转因子,n是2的整数次幂,假设n=2m,旋转因子的周期性和对称性如下所示:

周期性:

对称性:

将式25得到的频谱部分分为奇偶来分析,当k为偶数时

同理,当k为奇数时:

则式26与式27可以表示为:

由式28可以得出,基于频率抽取的fft可以将n点的dft,分解为两个n/2点的dft,根据此规律,当n为2的整数次幂的时候(n=2m),经过m次分解,全部分解为2点的dft。此时为基-2算法的fft,该方法将时间复杂度减小到了o(n·logn)。

以1024点的快速傅里叶变换为例,需要约3072次运算,每次运算需要进行加法何乘法运算,在fpga中乘法运算需要使用到乘法器资源,乘法运算可以在一个时钟周期内完成,假设fpga中时钟频率为72mhz,则理论上需要的时间约为50us。满足实时性的要求。

快速傅里叶变换在fpga中的实现

快速傅里叶变换采用蝶形算法来表示计算的流程,如图16所示为基本蝶形运算符号。蝶形运算基本为加法与乘法,为了减少资源的消耗,将旋转因子存储,使用时进行查表,进一步加快计算速度。

其表示的运算公式为:

以8点的fft为例,采用蝶形算法,其计算示意图如图17所示,

在fpga中实现fft的模块框图如图18所示,主要可以分为数据输入单元、fft计算单元、块浮点数单元、旋转因子存储单元、时序控制单元、地址输出单元以及数据输出单元。

采用流水线方式,将数据首先送入到ram当中,fpga中运算的数据主要是定点数,为了防止定点数过大或者过小导致运算出现误差,加入块浮点数单元,用于将数据缩放到合适的尺度,并输出缩放因子。蝶形运算是fft计算单元的核心部分,主要由乘法和加法组成,fpga的乘法会使得位数进行扩展,因此需要对位数进行一定截取。旋转因子存储在rom之中,每次取相应的旋转因子用于与输入数据之差进行相乘。时序控制单元主要用于控制fft的时序,控制计算的开始以及输出的开始等。

输入数据单元将数据串行输入,存入ram中,进行一定延时,延时可以将数据对应顺序进行蝶形运算。采用双口ram,其读写受到时序控制模块的控制,当有数据需要进行变换且fft变换模块已经准备好,将数据写入到ram当中。再依次将数据从ram中读出,传输到fft计算单元。

fft计算单元是核心运算,数据是串行输入,当指定数目的数据全部到达之后,使能有效,开始计算,输入的数据为复数,因此需要进行复数乘法和加法计算,在运算之后,需要进行截尾处理以及溢出的处理。

蝶形运算所需的旋转因子存储在rom中,通过查表方式获得,具体实现中利用romip核实现,通过配置mif文件可以初始化rom。

块浮点单元主要负责对数据进行缩放,块浮点数介于定点数和浮点数之间,可以适当的扩大数据的动态范围,与浮点数相比,可以减少资源的消耗,且实现较为简单。块浮点数共用一个指数,该指数为当前数据中最大数的指数,因此块浮点数的指数相同,只需要对尾数进行运算,不需要再进行指数运算。块浮点数的方法比定点的方式扩大了数据输入的范围,并且提高了精度,比浮点运算在速度上有了提高。

时序控制单元控制整个模块的时序,接收到外部的复位信号之后,时序控制单元进行复位,各个单元进行复位,之后开始输入数据,再将输入数据存入ram之中,数据输入处理完成之后,进入到计算模块,计算完成之后,如果输出有效,则开始输出,直至将输出全部输出完成。由于输出序列的顺序不同,需要输出的时候进行顺序的调整。

快速傅里叶变换输出频谱的序列,分别输出实部和虚部,在输出开始之后,同时对频谱进行分析,减少谐振特征辨识的时间。找到交轴电流模值最大值并与之前设定的阈值做比较,如果交轴电流的振荡超过阈值,则判断产生谐振,计算出谐振频率和幅值。

机械谐振特征在线辨识方案验证

为了验证基于fpga的谐振特征辨识方案的有效性,进行以下验证。首先利用quartus仿真,验证fpga中fft模块的正确性以及实时性;其次在simulink中搭建伺服矢量控制系统模型,并在其中加入二质量系统模型,用于验证谐振特征辨识方法的正确性。

基于fpga的快速傅里叶变换验证

验证选用课题组自研伺服驱动器,采用arm+fpga的架构,两者通过fsmc总线进行数据交互。为了便于验证fpga中fft计算模块的正确性,利用arm传输测试波形给fpga,fpga对其进行fft处理,利用signaltap进行观测。验证的方案示意图如图19所示。

arm中利用中断产生测试使用的波形,arm中断周期为100us。产生的测试波形为x(t)=0.4sin(2π×100)+0.2sin(2π×200),包括100hz幅值为0.4的正弦信号和200hz幅值0.2的正弦信号,用iq格式传输给fpga。fpga中fft模块的转换点数为512点,输入数据的位宽为16位。

将arm产生的测试数据导入到matlab中,进行fft分析,作为fpga分析的参照。fft变换的点数为512点,得到其频谱图,如图20所示。由图可知,100hz的幅值最大,matlab计算得到的幅值为12900。

测试信号通过fsmc传输给fpga,fpga进行采样的频率fs=1khz,fft模块中点数为512点,因此fft的分辨率为仿真的结果如图21所示:

根据仿真的结果可以得到,在fft计算模块输出数据的同时,频率提取模块也在同时进行,每计算出一个结果,进行频率和幅值的更新,最终可以看到fft的结果为频率为99hz,幅值为12749,与matlab中fft结果相比误差在可以接受的范围。

测试fft模块的计算时间,计算从数据输入fft模块结束到fft计算得到数据输出结束的时间,可以按照下图,将这一段时间分为几部分,如图22所示。

此时fft模块的点数为512,经过仿真,可以得出fft计算的时间为tf=1809us,512点数据采样的时间为采样得到的数据在双口ram中进行缓存,当达到fft模块要求的数量之后,从ram中读取数据并串行输入fft模块,每个时钟周期读取一个数据,所以数据输入fft模块的时间为数据输出的时间与输入相同,即tout=7.1ns。所以总共的时间需要t=ts+tf+tin+tout=1.890+512+0.0142≈513.9ms。根据仿真的结果可知fft的计算非常迅速,在整个fft变换的流程中,数据采样的时间占比最多,fft模块可以满足实时性的要求。

fpga中资源有限,减少计算次数可以有效减少dsp的使用数量,对fft模块资源占用进行分析,fft模块所占资源如表1所示。

表1fft模块占用资源分析表

机械谐振特征辨识仿真验证

在simulink中搭建模型,验证谐振特征辨识的方案是否正确。模型如图23所示。电机和逆变器使用simulink库模型。速度控制器和电流控制器采用pi控制器,采用矢量控制,id=0的控制策略,电流控制器分别输出ud、uq。经过ipark变换之后得到uα、uβ,进入svpwm模块,经过空间矢量脉冲宽度调制之后,输出特定的开关顺序与脉冲宽度给逆变器功率器件,进而驱动pmsm。采集电机反馈的交轴电流信号,并利用matlabfunction实现谐振频率的辨识。simulink中的pmsm模型中输入可以选择负载进行输入。电机的负载连接柔性负载,直接连接二质量系统中的传统系统;而电机的转速可以直接在二质量系统中使用。

仿真中使用电机的参数如表2所示:

表2simulink仿真中使用电机参数

二质量系统负载侧的仿真参数如下所示:

表3二质量系统中参数表

根据之前的分析以及仿真设置的参数,可以计算得到仿真模型的谐振频率为仿真得到的电机转速和q轴电流的波形如图24所示:

由上图可知,电机转速可以分为两个阶段,在速度未达到指令值之前与达到指令值之后的阶段。在前一阶段,速度环饱和,处于速度开环阶段,电机转速及转矩产生频率为自然谐振频率的振荡;而在达到指令值之后,处于速度闭环,电机转速和交轴电流逐渐趋于平稳。

谐振频率辨识模块仿真得到的结果如图25所示:

由上图可得知两个阶段的振荡频率分别为f1=114.9hz,f2=34.6hz。与计算得到的谐振频率相同。可以证明在交流伺服系统中,发生谐振之后,q轴电流会产生明显的振荡,振荡的频率与谐振频率相同。

对于fpga中fft模块的在线调试,验证了fft模块的准确性以及实时性,满足了在线辨识的快速的要求;通过仿真,验证了在交流伺服系统中,对q轴电流进行分析,可以得到谐振的频率以及幅值。在交流伺服系统中利用fft模块对q电流进行分析还需要进一步实验验证。

本发明首先针对谐振特征在线辨识实时性的问题,提出一种基于fpga的谐振特征在线辨识方案,利用fpga硬件实现fft,满足了实时性的要求。对交轴电流进行fft变换,并根据其频谱,进一步计算谐振幅值和频率。利用旋转因子的特性来实现快速傅里叶变换,优化了时间复杂度,使其在fpga中计算时间可以满足在线辨识的要求。

最后在fpga中在线调试fft模块,验证了其准确性以及实时性;在simulink中搭建交流伺服电机的矢量控制模型,仿真谐振辨识的方案,验证其可行性。

以上显示和描述了本发明的基本原理和主要特征及本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

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