ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

基于STM32,SPL库开发FOC的踩坑过程

基于STM32,SPL库开发FOC的踩坑过程 平台STM32F407 2804 无刷电机 AS5600 编码器 记录了几个自学过程中卡了比较久的问题分享给同样在做 FOC 的朋友。坑一零点校准的处理现象 闭环锁定后电机不转 / 抖动 / 发热严重原因 校准偏移时先 wrap 到 0~4096 再乘极对数在 0/4096 边界处跳变被 ×7 放大导致 cos/sin 翻转换相炸裂坑二电角度的问题现象 给 Id/Iq 目标值后电机剧烈抖动或不转给Iq之后像是被吸住了一样Iq 读数为负原因 Park 变换符号反了 → 反馈变成正反馈 → PI 越调越偏验证方法 把 Target 取负如果电机转了就是符号问题解决 交换电机任意两相线或者Iq和Id取反即可坑三定时器和刹车模式的配置现象配好了定时器PWM但是电机却没反应测波形也测不出来。关键配置1.高级定时器必须调 TIM_CtrlPWMOutputs(TIM1, ENABLE) 使能 MOE否则 PWM 不输出2.Break 功能不用必须 TIM_Break_DisableBKIN 浮空会误触发封锁所有输出坑四串级 PID 输出量级不匹配现象 电流环 PI 输出异常电机要么不转要么过流原因 串级 PID 中速度环的输出直接喂给电流环做目标值但速度环输出的是电压量级电流环期望的受控目标是电流量级单位不匹配 → 目标值偏大或偏小控制完全失效解决 速度环输出必须限幅到电流环目标的合理范围内要明确受控目标是电压还是电流结语本人刚接触 FOC 不久以上都是调试过程中真实踩过的坑记录下来的同时也希望能帮到同样在摸索的朋友。如果文中有理解不到位或写错的地方欢迎评论区指正互相学习。工程文件Chen4096/STM32F407VET6
返回列表