FOC 转子初始位置检测(图文详解)
本文介绍了PMSM的转子初始位置的各种情况;
文章目录
1 什么是转子的初始位置?
其实转子的初始位置是不确定的,但是在电机启动的时候,我们需要得到电角度,这样才可以进行矢量控制;所以,这里将转子与A轴重合作为初始位置,此时电角度也恰好为零,具体如下图所示;
)
至于原理下面会详细分析,这样在转子到初始位置后,也可以得到准确的电角度,就可以实现磁场和转子的同步转动。
2 如何让转子运行到初始位置?
其实这是一个很简单的问题,在这里我将它放大了,简单地分析了一下推导了一下,首先我们期望的结果是转子和A轴重合,准确地说是转子磁链和A轴重合。
之前在分析单电阻采样,对不同时刻的转子位置,处于不同的扇区时,电流的状态做了简单的分类讨论,首先看下图;
显然,当转子磁链与A轴重合的时候,逆变器的开关状态为:
SA:SB:SC—1:0:0
S_{A}:S_{B}:S_{C}—1:0:0
SA:SB:SC—1:0:0
这里规定上管打开,下管关闭的时候,SA=1S_{A} = 1SA=1;上管关闭,下管打开的时候,SA=0S_{A} = 0SA=0
因此可以得到
IA=IDCIC=IB=−IDC2I_{A} = I_{DC} \\
\\
\\
I_{C} = I_{B} = -\cfrac{ I_{DC}}{2} \\
IA=IDCIC=IB=−2IDC
静止坐标系αβ\alpha\betaαβ,α\alphaα轴的电流分量为iαi_{\alpha}iα,iβi_{\beta}iβ,则Clark
变换满足以下公式:
iα=iAiβ=13∗iA+23∗iBi_{\alpha} = i_{A} \\
\\
i_{\beta} = \cfrac{1}{\sqrt{3}}*i_{A}+\cfrac{2}{\sqrt{3}}*i_{B}iα=iAiβ=31∗iA+32∗iB
所以根据Clark
变换公式可以得到:
iα=IA=IDCiβ=13∗IA+23∗IB=13IDC−13IDC=0i_{\alpha} = I_{A} = I_{DC}\\
\\
i_{\beta} = \cfrac{1}{\sqrt{3}}*I_{A}+\cfrac{2}{\sqrt{3}}*I_{B} = \cfrac{1}{\sqrt{3}} I_{DC} - \cfrac{1}{\sqrt{3}} I_{DC} = 0iα=IA=IDCiβ=31∗IA+32∗IB=31IDC−31IDC=0
根据park
变换:
id=iα∗cosθ+iβ∗sinθiq=−iα∗sinθ+iβ∗cosθi_{d}=i_{\alpha}*cos\theta+i_{\beta}*sin\theta \\
i_{q}=-i_{\alpha}*sin\theta+i_{\beta}*cos\thetaid=iα∗cosθ+iβ∗sinθiq=−iα∗sinθ+iβ∗cosθ
因为当前电角度为零,所以将 IA=IDC,IB=0,θ=0I_{A} = I_{DC},I_{B} = 0 ,\theta = 0IA=IDC,IB=0,θ=0 代入park
变换的公式中,最终得到;
id=IDCiq=0i_{d}=I_{DC} \\
i_{q}=0id=IDCiq=0
所以可以设置id=IDC,iq=0i_{d}=I_{DC} ,i_{q}=0id=IDC,iq=0;然后通过park
反变换得到Uα,UβU_{\alpha},U_{\beta}Uα,Uβ输入到SVPWM
,就可以将转子驱动的和A轴重合的位置。
ipark_parameter.Ds = 0;
ipark_parameter.Qs = 20000;
ipark_parameter.Angle = 0;
ipark_calc(&ipark_parameter);
sv.Ualpha = ipark_parameter.Alpha;
sv.Ubeta = ipark_parameter.Beta;
svpwm_calc(&sv);
svpwm_update(ipark_parameter.Qs, &sv);
以上代码是实际测试中使用的,20000
是电流的Q格式,最终可以实现预期的效果。
那么,如果iq=IDC;id=0;θ=0i_{q}=I_{DC} ;i_{d}=0;\theta = 0iq=IDC;id=0;θ=0;转子会出现什么样的情况呢?
3 iq=IDC;id=0;θ=0i_{q}=I_{DC} ;i_{d}=0;\theta = 0iq=IDC;id=0;θ=0
因为存在机械角度和电角度存在:电角度=机械角度*极对数;
所以如果电机极对数为1时:转子磁链与A轴夹角的机械角度为90°
所以如果电机极对数为2时:转子磁链与A轴夹角的机械角度为45°
FOC 转子初始位置检测(图文详解)的更多相关文章
- DELL R720服务器安装Windows Server 2008 R2 操作系统图文详解
DELL R720服务器安装Windows Server 2008 R2 操作系统图文详解 说明:此文章中部分图片为网络搜集,所以不一定为DELL R720服务器安装界面,但可保证界面内容接近DELL ...
- Windows XP硬盘安装Ubuntu 12.04双系统图文详解
Windows XP硬盘安装Ubuntu 12.04双系统图文详解 Ubuntu 12.04 LTS版本于2012年4月26日发布,趁着五一放假,赶紧在自己的Windows XP的电脑上安装下Ubun ...
- 全网最详细的Eclipse和MyEclipse里对于Java web项目发布到Tomcat上运行成功的对比事宜【博主强烈推荐】【适合普通的还是Maven方式创建的】(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 全网最详细的MyEclipse里如何正确新建普通的Java web项目并发 ...
- 全网最详细的MyEclipse里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在eclipse里,则是File -> new -> ...
- SPSS学习系列之SPSS Modeler的功能特性(图文详解)
不多说,直接上干货! Win7/8/10里如何下载并安装最新稳定版本官网IBM SPSS Modeler 18.0 X64(简体中文 / 英文版)(破解永久使用)(图文详解) 我这里,是以SPSS ...
- 图文详解 Android Binder跨进程通信机制 原理
图文详解 Android Binder跨进程通信机制 原理 目录 目录 1. Binder到底是什么? 中文即 粘合剂,意思为粘合了两个不同的进程 网上有很多对Binder的定义,但都说不清楚:Bin ...
- cloudemanager安装时出现failed to receive heartbeat from agent问题解决方法(图文详解)
不多说,直接上干货! 安装cdh5到最后报如下错误: 安装失败,无法接受agent发出的检测信号. 确保主机名称正确 确保端口7182可在cloudera manager server上访问(检查防火 ...
- (转)CentOS 6下配置软RAID图文详解
CentOS 6下配置软RAID图文详解 原文:http://blog.51cto.com/hujiangtao/1929620 一.RAID 简介 RAID 是英文Redundant Array o ...
- (转)CentOS系统启动流程图文详解
CentOS系统启动流程图文详解. 原文:http://www.linuxidc.com/Linux/2017-03/141966.htm 熟悉系统启动流程对于我们学习Linux系统是非常有帮助的,虽 ...
随机推荐
- 全网最全C#实习面试题目
整个内容是我在春招面试时候整理的一些题目,里面涵盖有网上搬运的(由于当时没有记录来源,如果有转载没标注来源,请与我联系),还有我面试到的.整个排版很乱,后期我会一步一步整理.整个内容大概快有两万字.整 ...
- JS Math&Date的方法 (上)
数学对象&时间对象 本篇文章主要介绍Math 和 Date 的常用方法! 一 :Math & Date Math 数学对象 - 处理数学计算和数学类 ...
- Go gRPC进阶-go-grpc-middleware使用(八)
前言 上篇介绍了gRPC中TLS认证和自定义方法认证,最后还简单介绍了gRPC拦截器的使用.gRPC自身只能设置一个拦截器,所有逻辑都写一起会比较乱.本篇简单介绍go-grpc-middleware的 ...
- 论JDK5/7/8版本都做出了哪些革新
在Java发展的里程碑上,有三个版本做出的改动,是革命性的 为什么说是革命性的呢? 因为这三个版本所推出的有些新机制,在之后的Java框架开发.新类的产生等等中, 都被广泛使用了. 那么,这三个版本的 ...
- Oracle数据库提权
一.执行java代码 简介 oracle提权漏洞集中存在于PL/SQL编写的函数.存储过程.包.触发器中.oracle存在提权漏洞的一个重要原因是PL/SQL定义的两种调用权限导致(定义者权限和调用者 ...
- 2020-MRCTF
ez_bypass I put something in F12 for you include 'flag.php'; $flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx} ...
- Linux-监控与安全运维之zabbix
zabbix: Zabbix是一个开源分布式监控平台,包含诸多监控功能,用于构建一个符合企业级的监控解决方案.软件由开源社区提供开发和维护,遵循GPL协议,可以自由传播和使用,但开发团队提供收费的技术 ...
- Java 多线程实现方式三:实现 Callable 接口
完整套路 java 通过实现Callable 接口来实现多线程相比较于继承Thread 接口和 实现Runnable 接口比较麻烦,但好处是可以有返回值. 基本套路: 1. 创建目标对象 2. 创建执 ...
- 报错:require_once cannot allocate memory----php,以前自己弄的稍微有点特殊的开发环境
最近出现过一个问题,值得记录 类似于这样的报错的问题: Warning: require_once(/www/app/somecomponent.php): failed to open stream ...
- 百度paddlepaddle学习体会
一个偶然从微信公众号中刷到了<python小白逆袭A1大神>的文章,让我不经意的邂逅了飞桨(paddlepaddle),通过加入飞桨训练营一周的学习.实践,对飞桨有了很多的了解(飞桨官网: ...