【电机仿真】全速域观测器零速旋转方波高频注入+低速+高速滑模观测器三段式启动

news2024/11/13 9:14:45

【电机仿真】全速域观测器零速脉振方波高频注入+低速+高速滑模观测器三段式启动

文章目录

  • 前言
  • 一、零速——HFI方波注入
    • 1.HFI观测器
    • 2.静止坐标系——旋转高频电压信号
    • 3.PLL1锁相环
    • 4.PLL2锁相环
  • 二、零速到中高速——HFI切SMO
    • 1.函数定义
    • 2.函数内部
  • 三、中高速——SMO观测器
    • 1.SMO观测器
    • 2.静止坐标系
    • 3.PLL锁相环
  • 四、实验现象
    • 1.目标转速与实际转速、观测转速
    • 2.目标位置与观测位置
  • 五、下载链接
  • 总结


请添加图片描述

前言

提示:以下是本篇文章正文内容,下面案例可供参考

三段式
零速采用旋转方波HFI注入
低速和中高速采用SMO观测器
控制策略都用FOC
总框图如下
在这里插入图片描述

一、零速——HFI方波注入

1.HFI观测器

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

2.静止坐标系——旋转高频电压信号

输入: ia、ib、高频电压方波
输出:转子位置,cos,sin
在这里插入图片描述

3.PLL1锁相环

输入:转子位置
输出:HFI观测转速
在这里插入图片描述

4.PLL2锁相环

输入:cos,sin
输出:HFI观测位置
在这里插入图片描述

二、零速到中高速——HFI切SMO

输入:SMO观测转速、HFI观测转速、SMO观测转子位置、HFI观测转子位置、启动时间
输出:更新后的观测转速、更新后的观测位置、HFI切SMO观测器标志位

1.函数定义

在这里插入图片描述

2.函数内部

function [n, thetae,flag]= fcn(model_n, hf_n, model_thetae, hfi_thetae, t)
n=0;
thetae=0;
flag = 0;
if(t<1)
        n=hf_n;
        thetae=hfi_thetae;
else
    if(hf_n<=300)  
                n=hf_n;
        thetae=hfi_thetae;
    elseif(hf_n>300)&&(model_n>300)&&(hf_n<1000)&&(model_n<1000)%%300400之间切换
        M = (1000-model_n)/700;
        n=(hf_n*M+model_n*(1-M));
        thetae=(hfi_thetae)*M+model_thetae*(1-M);
    else
        n=model_n;
        thetae=model_thetae;
        flag = 1;
    end
       
end


三、中高速——SMO观测器

1.SMO观测器

输入:Ua Ub Ia Ib
输出:Ea Eb
在这里插入图片描述

2.静止坐标系

在这里插入图片描述

3.PLL锁相环

输入:Ea Eb
输出:SMO观测转速、SMO观测转子位置
在这里插入图片描述

四、实验现象

1.目标转速与实际转速、观测转速

在这里插入图片描述

2.目标位置与观测位置

在这里插入图片描述

五、下载链接

【电机仿真】全速域观测器零速旋转方波高频注入+低速+高速滑模观测器三段式启动

总结

本文仅仅简单介绍了【电机仿真】全速域观测器零速旋转方波高频注入+低速+高速滑模观测器三段式启动,评论区欢迎讨论。

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

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

相关文章

卸载完mathtype后,删除word加载项中的mathtype

请参考博客“卸载完mathtype后&#xff0c;word加载项中还是有mathtype的解决方法_怎么删除word加载项里的mathtype-CSDN博客”以及 “安装卸载MathType经验解决MathType DLL找不到的问题——超实用_mathtype dll cannot-CSDN博客” 如果在删除.dotm文件时&#xff0c;删不掉…

CenterPoint-KITTI:环境配置、模型训练、效果展示;KITTI 3D 目标检测数据集下载

目录 前言 Python虚拟环境创建以及使用 KITTI3D目标检测数据集 CenterPoint-KITTI编译遇到问题合集 ImportError: cannot import name VoxelGenerator from spconv.utils 失败案例 最终解决方案 对于可选参数&#xff0c;road plane的处理 E: Unable to locate packag…

supermap iclient3d for cesium中entity使用

目标将西南石油大学部分区域围起来&#xff0c;然后引个标签显示名称&#xff0c;最后弄个飞机绕学校飞&#xff08;这个时间有点晚了&#xff0c;明天弄) 围墙: wall:{positions:Cesium.Cartesian3.fromDegreesArrayHeights([104.173,30.822,500,104.178,30.837,500,104.19,3…

数据库之索引<保姆级文章>

目录&#xff1a; 一. 什么是索引 二. 索引应该选择哪种数据结构 三. MySQL中的页 四. 索引分类及使用 一. 什么是索引&#xff1a; 1. MySQL的索引是⼀种数据结构&#xff0c;它可以帮助数据库高效地查询、更新数据表中的数据。 索引通过 ⼀定的规则排列数据表中的记录&#x…

动态内存

动态内存分配函数&#xff1a;在程序运行时为变量或数据结构开辟的内存空间的函数。 有三个重要的动态分配函数&#xff1a;malloc、calloc、realloc。 动态内存分配函数 malloc 这个函数是向内存中申请一块连续的空间&#xff0c;返回一个指向这个块空间的指针。 如果开辟成…

【Elasticsearch系列七】索引 crud

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

测试ASP.NET Core的WebApi项目调用WebService

虚拟机中部署的匿名访问的WebService&#xff0c;支持简单的加减乘除操作。本文记录在WebApi中调用该WebService的方式。   VS2022创建WebApi项目&#xff0c;然后在解决方案资源管理器的Connected Services节点点右键&#xff0c;选择管理连接的服务菜单。 点击下图圈红处…

【STM32 HAL库】IIC通信与CubeMX配置

【STM32 HAL库】IIC通信与CubeMX配置 前言理论IIC总线时序图IIC写数据IIC读数据 轮询模式CubeMX配置应用示例AHT20初始化初始化函数读取说明读取函数 中断模式CubeMX配置状态机图fsm.caht20.c DMA模式CubeMX配置代码 前言 本文为笔者学习 IIC 通信的总结&#xff0c;基于keysk…

评价类——熵权法(Entropy Weight Method, EWM),完全客观评价

目录 一、 熵权法赋权代码说明1.1 介绍 二、 手把手教你运行代码2.1 数据示例2.2 可直接运行代码2.3 shangquanfa_eg_Sheet1.csv数据可视化2.4 代码运行过程截屏2.5 代码运行结果截屏2.6 对熵权法的结果分析 三、 提供的代码如何修改&#xff1f;四、 为什么确定极小化指标&…

算法:计算二叉树的最大深度(Java实现)

思路 定义问题&#xff1a; 最大深度&#xff08;或称为最大层数&#xff09;是从根节点到最远叶子节点的路径上的节点数。我们需要找到这个最长路径的节点数。 递归的基本思路&#xff1a; 对于每个节点&#xff0c;我们需要计算其左子树的最大深度和右子树的最大深度。节点的…

54.【C语言】 字符函数和字符串函数(strncpy,strncat,strncmp函数)

和strcpy,strcat,strcmp函数对应的是strncpy,strncat,strncmp函数 8.strncpy函数 *简单使用 cplusplus的介绍 点我跳转 翻译: 函数 strncpy char * strncpy ( char * destination, const char * source, size_t num ); 从字符串中复制一些字符 复制源(source)字符串的前num个…

Redis详细解析

Redis 什么是Redis?关系型与非关系型数据库Redis可以做什么Redis入门安装在Windows系统上安装在Linux系统上安装 Redis在Linux系统上启动运行如何设置redis-server后台运行与关闭如何设置redis客户端登录时需要验证密码**设置允许远程连接redis服务**Redis数据类型Redis常用命…

魔方财务迁移指南

本文将详细介绍如何将魔方财务系统迁移到新的服务器&#xff0c;确保您能够顺利地迁移数据和系统文件。 迁移前的准备 在开始迁移之前&#xff0c;请确保新服务器满足以下配置要求&#xff1a; 操作系统&#xff1a;CentOS/Debian/Ubuntu硬件配置&#xff1a;至少2H2G&#…

RP2040 C SDK ADC功能使用

RP2040 C SDK ADC功能使用 &#x1f33f;RP2040 ADC功能说明文档&#xff1a;https://www.raspberrypi.com/documentation/pico-sdk/hardware.html#hardware_adc &#x1f4d7;RP2040 ADC介绍 SAR ADC500 kS/s (Using an independent 48MHz clock)12 bit (RP2040 8.7 ENOB, R…

建筑资质与劳务资质的区别

在建筑行业&#xff0c;资质就像是企业的“身份证”&#xff0c;它证明了企业具备承接相应工程的能力和条件。对于刚入行的小白来说&#xff0c;可能会对建筑资质和劳务资质的区别感到困惑。别担心&#xff0c;今天我们就来聊聊这两者之间的不同。 什么是建筑资质&#xff1f; …

git push : RPC failed; HTTP 400 curl 22 The requested URL returned error: 400

git push 出现RPC failed; HTTP 400 curl 22 The requested URL returned error: 400 问题 git push Enumerating objects: 11, done. Counting objects: 100% (11/11), done. Delta compression using up to 8 threads Compressing objects: 100% (10/10), done. error: RPC …

分布式训练:(Pytorch)

分布式训练是将机器学习模型的训练过程分散到多个计算节点或设备上&#xff0c;以提高训练速度和效率&#xff0c;尤其是在处理大规模数据和模型时。分布式训练主要分为数据并行和模型并行两种主要策略&#xff1a; 1. 数据并行 (Data Parallelism) 数据并行是最常见的分布式…

数据结构之树的常用术语

二叉树的常用术语 前言 由于数组在插入、删除上的缺点和链表在查询上的缺点&#xff0c;出现了树的数据结构&#xff0c;可以在增删改查中弥补数组和链表的缺陷。 常用数据 节点&#xff1a;每个节点根节点&#xff1a;最上层的节点&#xff0c;Root节点父节点&#xff1a;相…

基于SSM的宿舍管理系统的设计与实现 (含源码+sql+视频导入教程)

&#x1f449;文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 基于SSM的宿舍管理系统拥有两种角色&#xff0c;分别为管理员和宿管&#xff0c;具体功能如下&#xff1a; 管理员&#xff1a;学生管理、班级管理、宿舍管理、卫生管理、访客管理、用户…

SOT23封装1A电流LDO具有使能功能的 1A、低 IQ、高精度、低压降稳压器系列TLV757P

前言 SOT23-5封装的外形和丝印 该LDO适合PCB空间较小的场合使用&#xff0c;多数SOT23封装的 LDO输出电流不超过0.5A。建议使用时输入串联二极管1N4001,PCB布局需要考虑散热&#xff0c;参考文末PCB布局。 1 特性 • 采用 SOT-23 (DYD) 封装&#xff0c;具有 60.3C/W RθJA •…