小猫爪:PMSM之FOC控制07-有传感器的速度环

本文详细介绍了在PMSM电机控制中加入速度环的方法,并通过仿真验证了双闭环系统的有效性。文中还探讨了利用编码器和霍尔传感器获取电机转子位置的具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 前言

  前面已经实现了电流闭环,这篇文章趁热打铁,直接给它加上速度环让这个系统称为经典的双闭环,让电机呼呼呼的转起来,加入速度环也是非常的简单。

2 加入速度环

  加入速度环后,仿真就变成了这样:
在这里插入图片描述
  因为拿到了真实的角度和速度,所以Park变换中的 θ \theta θ就是真实的电机转子位置了。

  还可以看到速度环放在foc_control的外面,为啥不跟之前的foc_control放一起呢?这里就存在一个算法执行频率的问题,前面提到SVPWM的调制周期一般在10K~20K之间,所以ADC的采样频率也应该在10K ~20K,等于SVPWM的调制周期,这样可以让调制更加平滑,因为电流是会跟着SVPWM的占空比变化而急剧变化的,但是电机的转速就不一样了,电机的转速响应速度相比较电流那可慢太多了,还有一点就是在实际应用过程中,转速的采样频率也很慢,所以不需要速度环的PID执行频率那么频繁,一般100Hz ~1K就够用的很了,这主要取决于电机的额定转速。所以在这里我给它剔除出来,作为两个部分,方便后面移植。

  速度环的框图如下:
在这里插入图片描述
  在这里就有人要问了,那速度环的PI参数怎么整定啊,有没有啥公式啊?速度环公式如下:
K p = β J 1.5 P ψ f , K i = β K p K_p=\frac{\beta J}{1.5P\psi_f} ,K_i=\beta K_p Kp=1.5PψfβJ,Ki=βKp其中 β \beta β为转动带宽, J J J为转动惯量, P P P为极对数。

  至于它的推导在这里我就不多嘴了,因为我都是靠猜的,我个人是不太相信这个公式的,但是肯定是有参考意义的,大家感兴趣的请参考这篇文章:https://www.renrendoc.com/paper/111324721.html

  关于PID参数整定,我只能送大家一首我从网上抄来的PD顺口溜,我只能帮到这里了。

参数整定找最佳,从小到大顺序查
先是比例后积分,最后再把微分加
曲线震荡很频繁,比例度盘要放大
曲线漂浮绕大弯,比例盘度往小扳
曲线偏离恢复慢,积分时间往下降
曲线波动周期长,积分时间再加长
曲线振荡频率快,先把积分降下来
动差大来波动慢,微分时间应加长
理想曲线两个波,前后高低四比一
一看二调多分析,调节质量不会低

  
  下面来看看速度环的效果,速度环响应:
在这里插入图片描述
  Id和Iq:
在这里插入图片描述
  波形看着是那么的完美,双闭环系统成功。

3 传感器获取转子位置的思路

  算法已经实现完毕,接下来就是将算法移植到硬件中试试水了,这里就牵扯到一个非常重要的问题,电机的转速以及转子位置怎么通过传感器得到呢?这是一个非常重要的问题。关于常用的速度传感器无外乎有两种,编码器和霍尔传感器。

3.1 编码器

  编码器的原理非常简单,分为A,B,Z相信号,这个实现就非常简单了,通过A,B相的相位差判断正反转,通过A,B其中一相信号的累加得到位置,位置对时间微分就可以得到速度,可以通过Z相信号作为绝对位置的校准信号。简直不要太简单。

  编码器的原理细节可以参考这篇文章:《编码器》

3.2 霍尔位置传感器

  众所周知,霍尔位置传感器的6个状态将电机位置分成了6个位置扇区,每两个状态的切换的时刻那就代表了0°,60°,120°,180°,240°,300°,这六个位置点我们可以精确得到,那其他的点怎么确定呢?跟简单,那就是猜啊。怎么猜?可以根据两个状态间的切换时间估算出当前电机的速度,然后用当前扇区初始位置值加上估算的速度乘上运行时间。两个状态间的切换时间以及运行时间可以由速度采样的周期得到。等到下一个状态切换的时候再次校准位置和估算速度值。简直不要简单。

  霍尔位置传感器的原理细节可以参考这篇文章:《霍尔传感器在无刷直流电机中的应用》

4 移植

  因为有感双闭环太简单了啊,这里就不移植了,等后面说无感的时候再移植吧。

  :还有一点非常重要,不管是编码器还是霍尔位置传感器得到的位置都是其传感器的值,此时并不是电机转子的实际值,所以从传感器那里得到位置值需要再加上一个偏置,让这个值无限接近转子位置值?聪明的人就要问了,那这个偏置到底多大呀? 那我也不知道呀,还是那句话,不知道的就得猜。开玩笑的,这个真的不能猜,嘿嘿嘿。但是可以试出来,就是首先让电机无速度环转起来,给定一个Iq, 但是位置信号还是来源于传感器,一次次的改变偏置,看电机的转速,当在同等Iq条件下,电机速度达到最大值的时候,这个时候的偏置就是最佳值。

  附上文中所用仿真:FOC_Control_doubleLoop.7z

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猫爪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值