一种基于相电流预测的死区补偿算法的制作方法

文档序号:35978854发布日期:2023-11-09 21:49阅读:63来源:国知局
一种基于相电流预测的死区补偿算法的制作方法

本技术涉及电机控制,具体为一种基于相电流预测的死区补偿算法。


背景技术:

1、目前电机控制一般均需要采用pwm调制技术,为了避免上下桥臂直通引起短路,需要插入死区时间。而插入死区时间又会导致电压损失,这一方面使基波电压变小,另一方面使谐波电压增加,这会造成电机低速时电流和转矩的抖动。为了避免死区带来的问题,需要对电压损失进行补偿。现有的死区补偿的技术方案主要有如下:

2、一、额外设计硬件电路对逆变器输出的实际电压脉冲进行采样,与指令脉冲进行比较,计算出实际的死区时间,然后根据该死区时间对逆变器的输出电压进行在线补偿。该方案使用简单的算法就可以实现对死区损失电压的精确补偿,但需要额外的硬件电路,增加了硬件成本。

3、二、先离线测量出不同电流下的死区损失电压,并形成表格存储在软件中,在电机控制器实际运行时,根据采样的电流进行查表,实时计算出需要补偿的电压。这种做法存在如下两种方案:

4、一种是直接基于采集的相电流进行查表计算补偿值,这种方法存在的问题是三相电流采样值必不可免地存在采样噪声,在小电流特别是电流跨零点附近非常容易造成误补偿。为了滤除噪声的影响,就需要对采样电流进行滤波,而滤波就必然会引起电流的幅值衰减和相位滞后,导致补偿的结果与预期有较大差异。

5、另一种是使用dq轴电流进行预测三相电流。先对dq轴电流进行滤波,因为稳态情况下,dq轴电流为稳定值,所以滤波带宽可以选择的小一些,仍然可以获得不错的效果。但是这也只适用于稳态工况,当处于瞬态工况时,dq轴电流有变化,低通滤波就会引起dq轴电流的误差,进而引起三相电流的误差。另外,即使处于稳态工况时,dq轴电流的噪声可以滤除的比较干净,但进行反clark变换时又用到了位置信号,又引进了位置信号的误差,这也会影响补偿的效果,特别是跨零点附近。

6、申请内容

7、本技术的目的在于提供一种基于相电流预测的死区补偿算法,可以在不改变硬件电路的前提下,对电机的相电流进行实时预测,可以很好的滤除相电流采样和位置采样中的误差,并且考虑到电机的瞬态工况和pwm控制延时,避免电流预测的误差引起的误补偿。

8、为实现上述目的,本技术提供如下技术方案:一种基于相电流预测的死区补偿算法,包括以下步骤:

9、a1:采集电机的相电流ia,ib和ic,获取转子位置信号,将转子位置信号进行park延时补偿,保证电流信号和位置信号处于同一时刻,结合延时补偿后的转子位置信号进行坐标变换,得到id和iq;

10、a2:采用预设算法分别计算id和iq的斜率kd和kq,所述预设算法根据id和iq的特点可以选择相应算法,根据kd和kq获取新的id1和iq1;

11、a3:将id1和iq1进行反clark变换,得到三相电流,反clark变换时对用到的角度进行发波延时补偿;

12、a4:将步骤a3得到的三相电流进行低通滤波,再根据带宽和频率进行幅值和相位补偿;

13、a5:根据步骤a4得到的三相电流查表并计算死区补偿时间。

14、本基于相电流预测的死区补偿算法将实时采集的相电流结合延时补偿后的转子位置信号进行坐标变换,再进行反变换,反变换时对用到的角度进行发波延时补偿,避免了位置信号产生的误差导致补偿误差,通过计算id和iq斜率得到id1和iq1避免了直接对电流进行低通滤波造成的滞后,同时又滤除了dq轴电流中的噪声,改善了瞬态工况下的死区补偿效果,实现在不改变硬件电路的前提下,对电机的相电流进行实时预测,可以很好的滤除相电流采样和位置采样中的误差,并且考虑到电机的瞬态工况和pwm控制延时,避免电流预测的误差引起的误补偿。

15、优选的,为了避免跨零点附近符号判断错误引起的误补偿,判断步骤a4得到的三相电流是否小于预设阈值,若是,则死区补偿时间为0,若否,则根据步骤a4得到的三相电流查表并计算死区补偿时间。

16、优选的,对位置信号进行park延时补偿可以保证电流信号和位置信号处于同一时刻,park延时补偿计算公式为:theta+spdfbk_filt*parkdelaytime,其中,parkdelaytime与具体硬件相关,可以作为一个标定量。

17、优选的,采用线性回归算法分别计算id和iq的斜率kd和kq,根据kd和kq获取新的id1和iq1,id1和iq1既保留了id和iq的瞬态信息,又滤除了采样噪声引起的id和iq的波动,这样避免了直接对电流进行低通滤波造成的滞后,同时又滤除了dq轴电流中的噪声,改善了瞬态工况下的死区补偿效果。

18、优选的,采用线性回归算法计算id的斜率kd,采用差值法计算iq的斜率kq,根据kd和kq获取新的id1和iq1。

19、优选的,所述线性回归算法具体包括:分别存储id和iq的n个点以及n个点对应的时间戳,然后利用线性回归算法计算id和iq的斜率kd和kq,根据kd和kq获取新的id1和iq1,

20、所述线性回归算法为,其中,y代表d轴电流或q轴电流,t代表时间戳,yi代表第i个计数周期时的d轴或q轴电流,ti代表第i个计数周期时的时间戳,在软件中可以用计数器来描述,每次进中断计数器加1,1到n的范围进行递增,不断地更新d轴或q轴电流的斜率。

21、优选的,所述发波延时补偿时,当软件使用单采单更的时序,则发波延时补偿时间为1.5倍pwm周期。

22、优选的,当软件不是使用单采单更时序,则需要测试确定发波延时补偿周期,发波延时补偿计算公式为:theta+spdfbk_filt*pwmdelaytime,pwmdelaytime测定方法为:在电流环下,id和iq的指令均为0,使得电机达到一定转速,查看ud为0附近的pwmdelaytime,此时得到的pwmdelaytime较为准确。

23、优选的,幅值和相位补偿时,

24、

25、与现有技术相比,本技术的有益效果是:

26、1、本基于相电流预测的死区补偿算法将实时采集的相电流结合延时补偿后的转子位置信号进行坐标变换,再进行反变换,反变换时对用到的角度进行发波延时补偿,避免了位置信号产生的误差导致补偿误差,通过计算id和iq斜率得到id1和iq1避免了直接对电流进行低通滤波造成的滞后,同时又滤除了dq轴电流中的噪声,改善了瞬态工况下的死区补偿效果,实现在不改变硬件电路的前提下,对电机的相电流进行实时预测,可以很好的滤除相电流采样和位置采样中的误差,并且考虑到电机的瞬态工况和pwm控制延时,避免电流预测的误差引起的误补偿;

27、2、本基于相电流预测的死区补偿算法使用线性回归算法对电流变化率进行计算,然后再对变化率进行积分,得到最终的dq轴电流,这样避免了直接对电流进行低通滤波造成的滞后,同时又滤除了dq轴电流中的噪声,改善了瞬态工况下的死区补偿效果;

28、3、本基于相电流预测的死区补偿算法对三相电流进行实时预测再进行低通滤波,并进行幅值和相位的补偿,滤除了位置信号引入的噪声,同时保证了相电流瞬时值的准确性,保证了补偿效果;

29、4、本基于相电流预测的死区补偿算法通过查表,对三相电压分别进行实时补偿,考虑到三相电流的正弦波变化情况,能够获得更精确的补偿效果。


技术实现思路

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