【电机控制】PMSM无感FOC控制(九)无感启动

2024-01-24 04:20

本文主要是介绍【电机控制】PMSM无感FOC控制(九)无感启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0. 前言

        终于到了FOC无感入门的最后被一个章节了,无感foc的启动其实很好理解,分为三个阶段:转子定位、I/F强拖、电流转速双闭环。


1. 无感foc启动

(1)转子定位阶段:

        首先将q轴电流设定一个能将转子拖动的值Iq_force,Id给0,角度给0,进行反park变换和SVPWM,产生一个固定的磁场将转子拖动到初始位置,然后切换到I/F强拖阶段

(2)I/F强拖阶段:

        由于电机处于低速时,产生的反电动势比较小,通过滑模观测器观测到的角度和转速并不准确,所以要通过强拖将电机转速拉升到一定值后,再切换到滑模观测器观测的角度去进行控制。

        在强拖阶段我们其实并不关心转子的实际位置到底处于哪里,我们只需要人为给定一个不断增加的转子角度θ_force,由于q轴电流一直都是Iq_force大小,而角度开始变化了,因此产生的磁场开始旋转了,带动着电机转动。

        当磁场旋转的速度达到一定的值了之后,这时电机的转速也跟着上来了,此时滑模观测器观测到的角度和转速就比较准确了,可以进行速度开环切速度闭环了。

        这里有两个需要注意的点:1.转子定位阶段和I/F强拖阶段电流都是闭环的,I/F强拖阶段的转速是开环的;2.强拖时要注意控制磁场旋转的速度慢慢增加,否则可能会出现强拖失败的情况。

(3)转速开环切闭环阶段

        这个阶段是整个启动过程中最重要的阶段,由于I/F强拖时使用的角度是人为给定的θ_force,而滑模观测器观察到的转子的角度是θ_smo,这两个坐标系存在一个角度差Δθ,如下图所示:

        图中d*q*坐标系是强拖时人为给定的旋转坐标系,而dq是转子实际的旋转坐标系。我们在从原来的强拖角度切换到滑模观测器观测到的实际角度的时候,需要将原来d*q*坐标系下的Iq_force等效变换过来,只有这样转矩才不会突变,如下图所示:

        最后再将d轴电流慢慢降为0,这就是无感foc启动的整个过程,整个流程图如下图所示:


2. 总结

        无感foc入门到这里就结束了,后面安排是先搭建好模型,然后开始码代码,封一些foc的算法库,这些做完之后再开始给大家分享新的文章,计划会讲讲电流前馈补偿、积分抗饱和、弱磁控制、MTPA,可能还会开两个系列分别讲讲BLDC的有感/无感六步方波控制、步进电机的细分控制吧。

这篇关于【电机控制】PMSM无感FOC控制(九)无感启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

检查 Nginx 是否启动的几种方法

《检查Nginx是否启动的几种方法》本文主要介绍了检查Nginx是否启动的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1. 使用 systemctl 命令(推荐)2. 使用 service 命令3. 检查进程是否存在4

解决idea启动项目报错java: OutOfMemoryError: insufficient memory

《解决idea启动项目报错java:OutOfMemoryError:insufficientmemory》:本文主要介绍解决idea启动项目报错java:OutOfMemoryError... 目录原因:解决:总结 原因:在Java中遇到OutOfMemoryError: insufficient me

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻

SpringBoot整合Kafka启动失败的常见错误问题总结(推荐)

《SpringBoot整合Kafka启动失败的常见错误问题总结(推荐)》本文总结了SpringBoot项目整合Kafka启动失败的常见错误,包括Kafka服务器连接问题、序列化配置错误、依赖配置问题、... 目录一、Kafka服务器连接问题1. Kafka服务器无法连接2. 开发环境与生产环境网络不通二、序

Java JAR 启动内存参数配置指南(从基础设置到性能优化)

《JavaJAR启动内存参数配置指南(从基础设置到性能优化)》在启动Java可执行JAR文件时,合理配置JVM内存参数是保障应用稳定性和性能的关键,本文将系统讲解如何通过命令行参数、环境变量等方式... 目录一、核心内存参数详解1.1 堆内存配置1.2 元空间配置(MetASPace)1.3 线程栈配置1.

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

Spring Boot项目如何使用外部application.yml配置文件启动JAR包

《SpringBoot项目如何使用外部application.yml配置文件启动JAR包》文章介绍了SpringBoot项目通过指定外部application.yml配置文件启动JAR包的方法,包括... 目录Spring Boot项目中使用外部application.yml配置文件启动JAR包一、基本原理