永磁同步电机无感FOC模型参考自适应(MRAS)转速估计算法

本文主要是介绍永磁同步电机无感FOC模型参考自适应(MRAS)转速估计算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1、前言
  • 2、模型参考自适应控制(MRAS)的基本原理分析
    • 2.1 模型参考自适应系统的分类
    • 2.2 模型参考自适应系统的设计思路
    • 2.3 波波夫(PopoV)超稳定性理论
  • 3、永磁同步电机无位置模型参考自适应系统模型分析
    • 3.1 参考模型与可调模型的确定
    • 3.2 参考自适应律的确定
    • 3.3 仿真
      • 3.3.1 核心模块(在滑膜观测器、龙伯格、非线性磁链观测器基础上修改)
      • 3.3.2 仿真效果
  • 参考

写在前面:本人能力、时间、技术有限,没有对一些细节进行深入研究和分析,也难免有不足和错误之处,欢迎交流和指正。本人写博客主要是学习过程的记录。

1、前言

模型参考自适应控制方案最初由美国麻省理工学院的教授Whitaker 在1958年研究飞机自动驾驶仪时所提出来的,其方案采用了局部参数优化理论来设计自适应律。1989 年,C.Schauder 首次在电机转速辨识中实现了模型参考自适应控制方法。随着自动控制技术的进步,自适应控制逐渐发展成了一个新的分支,且在电机控制领域取得了较为广泛的应用。

2、模型参考自适应控制(MRAS)的基本原理分析

在这里插入图片描述

2.1 模型参考自适应系统的分类

在这里插入图片描述

2.2 模型参考自适应系统的设计思路

在这里插入图片描述在这里插入图片描述

2.3 波波夫(PopoV)超稳定性理论

在这里插入图片描述
则整个系统即为(渐进)超稳定的,反之亦然。

3、永磁同步电机无位置模型参考自适应系统模型分析

3.1 参考模型与可调模型的确定

在这里插入图片描述

3.2 参考自适应律的确定

在这里插入图片描述
在这里插入图片描述

3.3 仿真

3.3.1 核心模块(在滑膜观测器、龙伯格、非线性磁链观测器基础上修改)

模型下载地址:永磁同步电机无感FOC模型参考自适应(MRAS)转速估计算法simulink仿真模型
在这里插入图片描述
其中MRAS模块:
在这里插入图片描述可调模块:
在这里插入图片描述
在这里插入图片描述

function vo = filter_LPF1(vi, wcTs)
% filter_function: 一阶低通滤波器函数
% 输入参数:
%   vi: 输入信号
%   wcTs: 截止频率乘以采样周期
% 输出参数:
%   vo: 滤波后的输出信号,单精度浮点数persistent vo_k_1% 验证是否是第一次调用函数,如果是,则初始化 vo_k_1
if isempty(vo_k_1)vo_k_1 =  single(0);
end% 计算滤波系数
A = wcTs / (1 + wcTs);% 计算输出信号
vo = A * vi + (1 - A) * vo_k_1;% 更新 vo_k_1 以供下一次调用使用
vo_k_1 = vo;% 将输出信号转换为单精度浮点数
vo = single(vo);end

MRAS模块封装,及模块参数设置:
在这里插入图片描述
系统及电机参数:

Ts=0.0001;
Pn=4;
Rs=0.055;
Ls=0.21e-3;
flux=0.007797;
J=0.053e-4;
B=0;
fx=0;
Udc=24;
CurrKp=0.34558;
CurrKi=90.5078;
spd_kp=0.018643;
spd_ki=03.0679;

3.3.2 仿真效果

速度波形(参考速度,观测速度,电机反馈速度)
在这里插入图片描述
角度波形
在这里插入图片描述

参考

【1】刘建锋. 非线性伺服系统的参数辨识与自适应滑膜控制[D].青岛理工大学,2022.DOI:10.27263/d.cnki.gqudc.2020.000169.
【2】马英华. 永磁同步电机无速度传感器控制方法的研究[D].山东大学,2012.
【3】朱瑞杰. 基于模型参考自适应的永磁同步电机无位置传感器控制[D].北京交通大学,2018.
【4】李向伟. 基于模型参考自适应的PMSM控制方法研究[D].天津大学,2014.
【5】钟臻峰. 永磁同步电动机全转速范围基于模型参考自适应的无传感器控制[D].浙江大学,2017.
【6】现代永磁同步电机控制原理及MATLAB仿真 袁雷

这篇关于永磁同步电机无感FOC模型参考自适应(MRAS)转速估计算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/895213

相关文章

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Java时间轮调度算法的代码实现

《Java时间轮调度算法的代码实现》时间轮是一种高效的定时调度算法,主要用于管理延时任务或周期性任务,它通过一个环形数组(时间轮)和指针来实现,将大量定时任务分摊到固定的时间槽中,极大地降低了时间复杂... 目录1、简述2、时间轮的原理3. 时间轮的实现步骤3.1 定义时间槽3.2 定义时间轮3.3 使用时

如何通过Golang的container/list实现LRU缓存算法

《如何通过Golang的container/list实现LRU缓存算法》文章介绍了Go语言中container/list包实现的双向链表,并探讨了如何使用链表实现LRU缓存,LRU缓存通过维护一个双向... 目录力扣:146. LRU 缓存主要结构 List 和 Element常用方法1. 初始化链表2.

Python中__new__()方法适应及注意事项详解

《Python中__new__()方法适应及注意事项详解》:本文主要介绍Python中__new__()方法适应及注意事项的相关资料,new()方法是Python中的一个特殊构造方法,用于在创建对... 目录前言基本用法返回值单例模式自定义对象创建注意事项总结前言new() 方法在 python 中是一个

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

golang字符串匹配算法解读

《golang字符串匹配算法解读》文章介绍了字符串匹配算法的原理,特别是Knuth-Morris-Pratt(KMP)算法,该算法通过构建模式串的前缀表来减少匹配时的不必要的字符比较,从而提高效率,在... 目录简介KMP实现代码总结简介字符串匹配算法主要用于在一个较长的文本串中查找一个较短的字符串(称为

通俗易懂的Java常见限流算法具体实现

《通俗易懂的Java常见限流算法具体实现》:本文主要介绍Java常见限流算法具体实现的相关资料,包括漏桶算法、令牌桶算法、Nginx限流和Redis+Lua限流的实现原理和具体步骤,并比较了它们的... 目录一、漏桶算法1.漏桶算法的思想和原理2.具体实现二、令牌桶算法1.令牌桶算法流程:2.具体实现2.1

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll