永磁同步电机谐波抑制算法(7)——基于自适应陷波(adaptive notch filter,ANF)的精确谐波电流抑制策略

news2024/9/23 1:34:06

1.前言

1.1经典谐波抑制策略存在的问题

在之前的谐波抑制专题中,主要介绍了两种谐波抑制策略——基于多同步旋转坐标系的谐波抑制策略以及基于比例积分谐振PIR调节器的谐波抑制策略,同时还介绍了这两种策略的改进办法,进而使得这两种策略在比较高的转速下也可以实现较好的谐波抑制效果。

https://zhuanlan.zhihu.com/p/691055387icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/691055387

https://zhuanlan.zhihu.com/p/699288152icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/699288152

这两种谐波抑制策略我都做过仿真以及实验了,结合一些论文,可以发现这两种谐波抑制策略是有以下这些问题的:

  1. 基于多同步旋转坐标系的谐波抑制策略需要用到低通滤波器来提取谐波,这导致谐波坐标系下的PI调节器非常难设计。低通滤波器的截止频率,会影响PI调节器谐波抑制效果及其稳定性。所以这两者的调参,是比较费时的事情。
  2. 基于比例积分谐振PIR调节器的谐波抑制策略,调参很方便。理论上R调节器在谐波频率处,可以实现无限大的增益,进而有效抑制谐波。但是实际系统是离散的,在离散系统中,R调节器的增益就不是无限大的了,因此谐波抑制效果是有限的,并不能零静差抑制谐波。

1.2基于自适应陷波的精确谐波电流抑制策略的介绍

参考文献:

基于自适应陷波的精确谐波电流抑制策略用在电机领域应该是非常少的。这篇TIE应该是第一篇吧?这篇是用来做谐波抑制。下面还有一篇TPE是用来做谐波注入的,非常新的文章,刚出炉(24.06.03接收的)。

基于自适应陷波的精确谐波电流抑制策略的谐波电流抑制效果非常好,而且这种方法刚开始用,知道的人还很少。这篇甚至应该归纳到我的《先进电机拓扑及控制算法》专栏里面的

以下内容截取上面这篇TIE:

“自适应噪声抵消技术的原理最早是在[17]中提出的,由于其良好的动态响应能力和抗扰能力,自适应陷波滤波(adaptive notch filter,ANF)在信号处理中得到了广泛的应用。文献[18]将ANF用于提高并联型有源电力滤波器系统中谐波检测的动态响应能力。此外,还对ANF进行了修改,以检测变化频率的谐波的频率、相位和幅度[19]。提出了一种新型的带ANF的速度控制器来抑制旋转伺服系统的机械振动[20]。在没有任何反馈信号的情况下,只利用速度误差来观测和抑制谐波,从而简化了系统结构。然而,在电机系统中,特别是在磁阻电机系统中,应用ANF抑制谐波电流的研究还很少。”

2.基于自适应陷波的精确谐波电流抑制策略的公式

基于LMS(最小均方)的ANF结构如图7所示,LMS算法的递推公式可表示为:

这个ANF的公式,就是一个谐波提取的算法。不同于基于多同步旋转坐标系的谐波抑制策略,自适应陷波ANF的谐波提取没有用到低通滤波器。这个ANF的公式给我感觉,更像是一种反馈矫正预测的方法。这里值得注意的是u(ANF的步长),论文中没有具体解释。实际上这个u是需要自己去调节器的,我仿真中选的u=0.005

这里我以q轴电流为例子(我的q轴电流中存在大量六次谐波,所以我用ANF来估计q轴电流的六次谐波幅值),看看u=0.005/0.001/0.015情况下,自适应陷波ANF提取谐波的效果。蓝色代表ANF输出的q轴电流,红色代表实际的q轴电流。

u=0.015情况下,ANF预测的电流与实际电流的对比
u=0.005情况下,ANF预测的电流与实际电流的对
u=0.001情况下,ANF预测的电流与实际电流的对比

从这里可以发现,其实这个自适应陷波ANF的谐波提取不适用于电流变化过快的情况。所以我后面的仿真其实是在电机进入稳态之后,才开始执行自适应陷波ANF。

在u=0.005情况下,ANF预测的电流与实际电流的对比(放大图)如下。可以看到,ANF预测的电流与实际电流基本一致(这一点用于表明,ANF提取到的六次谐波电流幅值是准确的)

接下来我们就看看ANF提取到的六次谐波电流正交分量的幅值。这里解释以下,为什么需要提取六次谐波电流正交分量的幅值。我们已经知道谐波电流是六次谐波了,想要确定一个交流量,那我们还需要它的幅值和相位而如果我们知道一对正交分量的幅值的话,就可以把它们合成一个幅值和相位都已知的交流量

这个问题就类似于,我们知道了电机d-q电流的幅值,实际上就知道了电机A相电流的幅值和相位。

q轴六次谐波的正交分量的幅值

得到谐波电流正交分量的幅值之后,就按照Fig.10的结果去抑制谐波电流。如果大家不知道这是什么意思,可以多翻看上面两篇论文,多看两遍就明白了。

 这里再注意一个问题。两篇文章都用ANF去控制dq电流中的直流分量以及交流分量。但是,论文中的电机惯量都非常大,电流变化很慢很慢(如下图所示,电机升高700RPM,需要的时间超过了3s)

 

而我的仿真电机的电流变化太快,速度变化也很快(转速升高3000RPM,仅需要0.1s)。从上面的仿真中也可以看到,ANF并不适合电流变化太快的电机。所以我只是把这种策略用在dq电流中的交流分量中,dq电流中的直流分量还是用传统的PI来控制。

因为q轴电流的直流分量决定了电机的转矩,我还是用传统PI来保证q轴电流的快速响应能力,以保证我电机有足够快的转速响应速度。

3.基于自适应陷波的精确谐波电流抑制策略的仿真对比

为了充分验证基于自适应陷波的精确谐波电流抑制策略优越性,我这里采用改进多同步旋转坐标系和相位补偿PIR进行对比。

仿真参数:

Tpwm = 1e-4;%开关周期

Tsample = Tpwm/1;%电流采样周期

Tspeed = Tsample;%转速采样周期

Ts = 5e-7;%仿真步长

Pn = 4;%电机极对数

Ls = 8.5e-3;%定子电感,采用隐极的,Ld=Lq=Ls

Ld = Ls;

Lq = Ls;

Rs = 2;%定子电阻

flux = 0.0844;%永磁体磁链

B = 0.0005;

J = 0.0013;

%控制器中的电感、电阻参数(影响PI)

Ld1 = Ld*1;

Lq1 = Lq*1;

Rs1 = Rs;

%电流环PI带宽

fc = 500;

%谐波反电势参数

theta5 = 0;

theta7 = 0;

Flux5 = flux*0.01;

Flux7 = flux*0.01;

%0.01表示谐波磁链占比为基波磁链的1%

%1%的谐波磁链,会造成x%的谐波反电势(x代表谐波次数)

%比如五次谐波磁链1%,那么五次谐波反电势就是5%

Vdc = 400;%直流母线电压

iqmax = 20;%额定电流

因为,基于自适应陷波的精确谐波电流抑制策略和采用改进多同步旋转坐标系都需要一定时间提取谐波电流,所以这两种方法都在0.2s开始进行谐波电流抑制

所有的方法都用于抑制dq电流的六次谐波,即相电流的五七次谐波电流

基于自适应陷波的精确谐波电流抑制策略的定子三相电流、转矩、转速波形
基于改进多同步旋转坐标系谐波电流抑制策略的定子三相电流、转矩、转速波形
基于相位补偿PIR谐波电流抑制策略的定子三相电流、转矩、转速波形
基于自适应陷波的精确谐波电流抑制策略的相电流FFT分析
基于改进多同步旋转坐标系谐波电流抑制策略的相电流FFT分析
基于相位补偿PIR谐波电流抑制策略的相电流FFT分析
基于自适应陷波的精确谐波电流抑制策略的谐波抑制速度展示(0.2s开始抑制)
基于改进多同步旋转坐标系谐波电流抑制策略的谐波抑制速度展示(0.2s开始抑制)

从上面的仿真来看:

  1. 在THD方面,基于自适应陷波的精确谐波电流抑制策略的具有最低的THD,THD为1.36%。
  2. 在五七次谐波电流方面,基于自适应陷波的精确谐波电流抑制策略和基于改进多同步旋转坐标系谐波电流抑制策略由于都采用了PI调节器,因此都实现了五七次谐波电流的无静差抑制。这两种方法的五次谐波电流都在0.1%以下。而基于相位补偿PIR谐波电流抑制策略还具有明显更高的七次谐波电流。
  3. 在谐波抑制速度方面,虽然基于自适应陷波的精确谐波电流抑制策略和基于改进多同步旋转坐标系谐波电流抑制策略的谐波抑制效果差距不大,但是基于自适应陷波的精确谐波电流抑制策略的谐波抑制速度明显更快,在0.4s之前就已经抑制了大部分谐波电流(对应的转矩脉动也就大幅减小了)。尽管基于改进多同步旋转坐标系谐波电流抑制策略可以增大低通滤波器的截止频率和增大PI调节器参数来加快谐波抑制速度,但是这也容易让系统失去稳定。

综上所述,个人认为,基于自适应陷波的精确谐波电流抑制策略具有相对更优异的性能。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1921386.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

视频号矩阵系统源码,实现AI自动生成文案和自动回复私信评论,支持多个短视频平台

在当今短视频蓬勃发展的时代,视频号矩阵系统源码成为了自媒体人争相探索的宝藏。这一强大的技术工具不仅能帮助我们高效管理多个短视频平台,更能通过AI智能生成文案和自动回复私信评论,为自媒体运营带来前所未有的便利与效率。 一、视频号矩…

【算法】接雨水

难度:困难 题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例: 示例1 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是…

开放式耳机哪款好一点?开放式耳机科普五款推荐!

“选择开放式耳机真的太难了” “哥,怎么才能选到心仪的开放式耳机啊” 这种评论总是会出现后台或者现实的朋友也会问起来,所以作为耳机测评的博主,在这里给大家科普一下到底一款好用的开放式耳机到底怎么选,这篇文章我花了三天…

【RHCE】基于密钥身份认证

1.在本主机点击【⼯具】按钮打开【⽤⼾密钥管理者】选项 在该⻚⾯单击【⽣成】按钮来创建密钥对 在向导⻚⾯,选择【密钥类型】和【密钥⻓度】,这⾥保持默认。单击【下⼀步】按钮。 跳转到以下⻚⾯,表⽰密钥对已经创建完成。单击【下⼀步】给…

Nessus相关

tenable 1 安装nessus scanner 1 )安装nessus scanner: 方法一 curl -H X-Key: xxxxx https://cloud.tenable.com/install/scanner?namescanner-name&groupsscanner-group | bash方法二: **# for ubuntu, its https://www.tenable.com/downloads/api/v1/pu…

面试篇-Java-3+类加载+JVM 内存划分

文章目录 前言一、你知道类的加载过程吗1.1 你都知道哪些类型的类加载器1.2 你知道双亲委派机制吗1.3 你来说类加载都有哪些步骤1.3.1 加载:1.3.2 连接:1.3.1.2 验证1.3.1.3 准备1.3.1.4 解析 1.3.3 初始化 二、你知道JVM 中内存的分配吗2.1 你知道类加载…

通用图形处理器设计GPGPU基础与架构(二)

一、前言 本系列旨在介绍通用图形处理器设计GPGPU的基础与架构,因此在介绍GPGPU具体架构之前,需要了解GPGPU的编程模型,了解软件层面是怎么做到并行的,硬件层面又要怎么配合软件,乃至定出合适的架构来实现软硬件协同。…

如何修复d3dx9_43.dll文件丢失问题,实测有效的几种方法分享

在日常工作生活中,计算机可能会出现提示“d3dx9_43.dll文件丢失”的情况,面对这种情况,您该如何应对呢?这种情况在计算机使用过程中是比较常见的,对于经常使用计算机的人来说,难免会遇到这种情况。今天&…

Milvus 核心设计(1) ---- 数据一致性的等级及使用场景

目录 背景 Milvus的数据一致性 设置数据一致性等级 等级类型 PACELC定理 level 详细解释 Strong Bounded staleness Session Eventually 总结 背景 分布式上的可扩展性是个比较重要的concept。Chroma 核心之前写过了,他的最大优势在于轻量级且好用。Milvus相对Ch…

PHP企业工商年报大师微信小程序系统源码

🌟轻松搞定年报难题!💼 🚀【一键直达,年报不再繁琐】 还在为每年的企业工商年报而头疼吗?繁琐的表格、复杂的流程,让人望而却步?现在有了“企业工商年报大师”微信小程序&#xff…

彻底解决找不到msvcr120.dll,无法继续执行代码的问题(最新方法)

在使用电脑过程中经常会遇到各种问题,其中msvcr120.dll丢失或找不到msvcr120.dll问题就是常见之一,那么遇到msvcr120.dll丢失要怎么解决?msvcr120.dll又是什么为什么会丢失?今天给大家介绍一下msvcr120.dll文件跟msvcr120.dll丢失…

189. 轮转数组 --- 多种方式解题

直接开新数组&#xff0c;暴力遍历&#xff0c;新位置(原位置k)%nums.length class Solution {public void rotate(int[] nums, int k) {int[] ans new int[nums.length];for (int i 0; i < nums.length; i) {int pos (i k) % nums.length;ans[pos] nums[i];}for (int…

Ubuntu系统上安装Apache和WordPress

** 第一步跟新系统包 ** 首先跟新系统包 sudo apt update sudo apt upgrade第二步下载安装apache sudo apt install apache2 ##查看apache的状态是否启动成功 sudo systemctl status apache2 ##查看服务器的ip地址 sudo ip a通过ip地址进行访问apache页面 第三步下载安装…

常见条件控制算法流程图

内容讲解&#xff1a;流程控制[if…else…(if…elif…else…),while,for] 常见条件控制算法流程图高清图

k8s集群利用svc,ep代理另一个集群的svc服务,让集群正常调用

前提&#xff1a;两套集群的网络互通 背景&#xff1a;客户给两套集群&#xff0c;不通网络环境&#xff0c;但是两套集群中服务需要有调用故用此方法 A集群&#xff08;未部署服务a&#xff0c;但是部署了服务b,c,d&#xff09; B集群 &#xff08;只部署了服务a&#xff09; …

216.Mit6.S081-实验四-Traps

本实验探索如何使用陷阱实现系统调用。您将首先使用栈做一个热身练习&#xff0c;然后实现一个用户级陷阱处理的示例。 开始编码之前&#xff0c;请阅读xv6手册的第4章和相关源文件&#xff1a; kernel/trampoline.S&#xff1a;涉及从用户空间到内核空间再到内核空间的转换的…

检索 Postgres 不同版本功能差异的神器

官方 官方提供了 Feature Matrix https://www.postgresql.org/about/featurematrix pgPedia https://pgpedia.info/ 提供了更加丰富的内容 带搜索功能 不同版本下的 SQL 命令支持 系统表的支持 总结 横向对比其他数据库&#xff0c;官方的版本功能比对已经做的很不错了。pgP…

配置Redis时yml的格式导致报错

报错如下 java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98) at org.springframework.test.context.su…

这几个伦敦金交易常识性的知识 一定要知道

常识是指在伦敦金交易中&#xff0c;获得大部分投资者一致公认的有用的的一些投资知识&#xff0c;掌握这些知识&#xff0c;对我们做伦敦金交易是很重要的。下面我们就来讨论三个伦敦金交易的常识。 支撑阻力位。在伦敦金交易中支撑阻力位的重要性不言而喻。这里需要说明的是&…

YOLOv10: Real-Time End-to-End Object Detection

双重标签分配 与一对一多分配不同&#xff0c;一对一匹配只为每个地面真相分配一个预测&#xff0c;避免了NMS后处理。然而&#xff0c;这导致了较弱的监督&#xff0c;导致次优的准确性和收敛速度。幸运的是&#xff0c;这种缺陷可以通过一对一多分配来弥补。为此&#xff0c…