搜索
bottom↓
回复: 12

求教FOC控制出现角度变化不均匀问题的原因

[复制链接]

出0入0汤圆

发表于 2022-3-22 13:05:37 | 显示全部楼层 |阅读模式
请教各 位FOC电机高手一个问题:本人用一个普通的BLDC电机作FOC控制,用TLE5012B 作FOC 的位置传感器,在20K pwm 中断程序中 检测本次与上次角度之差值 ,截图如下,角度变化不均匀

确认不是传感器的问题,个人认为是电机特性造成的。可请各位高手指点一下,原因和应对方法?
转速计算 (70/32768)*60*20k=2563rpm ,尖峰处计算(140/32768)*60*20k=2*2563rpm 。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出20入62汤圆

发表于 2022-3-22 13:08:07 | 显示全部楼层
搬个板凳,看楼下大神怎么说。

出0入0汤圆

 楼主| 发表于 2022-3-22 13:15:25 | 显示全部楼层
天下乌鸦一般黑 发表于 2022-3-22 13:08
搬个板凳,看楼下大神怎么说。
(引用自2楼)

高手指点一下嘛。

出615入1076汤圆

发表于 2022-3-22 14:27:31 来自手机 | 显示全部楼层
本帖最后由 dukelec 于 2022-3-22 14:29 编辑

有沒有異响?
有的話,可能是 MOS 的 gate 腳驅動太強,導致干擾太大,從而導致數據被干擾錯亂。

也可能只是角度差值計算方法有問題,譬如你的原始數據沒有用滿 16 bits,譬如數據是不斷增大的,當前值超過最大後又回到 0 附近,而上一次值還在最大處,此時計算就容易出事

這種事情,你自己把傳感器原始數據的波形看一下,自然就能自己定位到問題

出20入62汤圆

发表于 2022-3-22 14:39:02 | 显示全部楼层
887799 发表于 2022-3-22 13:15
高手指点一下嘛。
(引用自3楼)

你附图那个测速的速度,是怎么测出来的。2倍的偏差,有点夸张啊。

出0入0汤圆

 楼主| 发表于 2022-3-22 14:57:19 | 显示全部楼层
天下乌鸦一般黑 发表于 2022-3-22 14:39
你附图那个测速的速度,是怎么测出来的。2倍的偏差,有点夸张啊。
(引用自5楼)

20K HZ PWM中断:
               
                temp = Tle5012ReadAngle();//磁编码5012b读数最小为0,最大32767
                temp  = THETA_OFFSET - temp ;//方向是数值不断减小的方向
                if(temp<0) temp = temp+32768;//处理0突变到360度边界
                //if (temp>32768) temp -= 32768;
                angle = temp;
                {
                static float delta;                 
                delta        = angle-lastAngle;//本次角度-上次角度
                lastAngle = angle;//保存本次角度
                if (delta<0)
                delta += 32768;//边界处理
              ...输出delta
                }

20K HZ PWM中断程序里,delta  本次角度-上次角度

出0入0汤圆

 楼主| 发表于 2022-3-22 14:58:29 | 显示全部楼层
dukelec 发表于 2022-3-22 14:27
有沒有異响?
有的話,可能是 MOS 的 gate 腳驅動太強,導致干擾太大,從而導致數據被干擾錯亂。

(引用自4楼)

有边界处理,是读编码器的原始数据。程序处理见上面。

出615入1076汤圆

发表于 2022-3-22 15:29:46 | 显示全部楼层
887799 发表于 2022-3-22 14:58
有边界处理,是读编码器的原始数据。程序处理见上面。
(引用自7楼)

沒仔細看,可能有 bug

建議原始數據不足 16 位,左移到 16 位 unsigned 型,這樣邊界處理方便很多,基本不用處理就行。

出0入42汤圆

发表于 2022-3-22 16:53:03 | 显示全部楼层
Tle5012ReadAngle() 这个执行时间多长?

出0入0汤圆

 楼主| 发表于 2022-3-22 17:02:08 | 显示全部楼层
ahfong2006 发表于 2022-3-22 16:53
Tle5012ReadAngle() 这个执行时间多长?
(引用自9楼)

之前测好像是2~4 个uS。

出30入16汤圆

发表于 2022-3-22 17:18:24 来自手机 | 显示全部楼层
本帖最后由 洞洞幺 于 2022-3-22 21:56 编辑
887799 发表于 2022-3-22 17:02
之前测好像是2~4 个uS。
(引用自10楼)


有那么短?
你先把spi时钟搞到1us周期看看位置数据对不对再说。

出105入79汤圆

发表于 2022-3-22 17:20:22 | 显示全部楼层
看下磁编码器SPI原始数据,用开环svpwm进行低速拖动来验证

出0入8汤圆

发表于 2022-3-23 08:46:05 | 显示全部楼层
70多对应的上次角度和本次角度
140多对应的上次角度和本次角度
看原始数据是否正常
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 08:22

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表