打印
[LKS32 软件]

LKS03x_FOC_OpenSource_Sensorless调试

[复制链接]
644|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xiaoerge|  楼主 | 2024-5-14 23:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问哪位大侠调试过凌鸥官网的这个FOC程序吗?是否可以直接运行?我调试了一下,没跑起来,电机转了两三秒就停了,进入了sys_state.c的if (this->stru_SMO.variable.speed < 0)这个分支,状态变成了STOP
sys_init.c初始化的这个条件while (ADC_IF & 3)看起来也不对,等待ADC转换完成不应该是为0等待吗?
这样的话最开始初始化都跑不通,对该程序包的可靠性深表怀疑
第一次接触凌鸥的控制器,做了个LKS32MC039的小板,粗略跑了一下,疑问多多

使用特权

评论回复
沙发
两只袜子| | 2024-5-15 10:39 | 只看该作者
电机转了两三秒就停了可能是由于速度或电流控制参数设置不当导致的。

使用特权

评论回复
板凳
jcky001| | 2024-5-15 12:00 | 只看该作者
建议检查电机参数(如电阻、电感、反电动势常数等)是否正确输入,并调整PID参数以获得更好的稳定性。

使用特权

评论回复
地板
jcky001| | 2024-5-15 13:00 | 只看该作者
建议检查电机参数(如电阻、电感、反电动势常数等)是否正确输入,并调整PID参数以获得更好的稳定性。

使用特权

评论回复
5
cr315| | 2024-5-15 16:00 | 只看该作者
进入了sys_state.c的if (this->stru_SMO.variable.speed < 0)分支表明程序检测到了负的速度值。在电机控制中,负的速度值通常表示电机正在反转或速度计算有误。检查速度计算逻辑是否正确,确保没有溢出或计算错误。也有可能是由于电机转动过程中的噪声或干扰导致的误检测,可以增加滤波或优化算法以提高鲁棒性。

使用特权

评论回复
6
xiaoerge|  楼主 | 2024-5-15 19:24 | 只看该作者
想走捷径看来是不太可行了,config.h里面有一些配置值,电机相关的参数改了,ADC通道改了,PWM频率死区时间啥的应该对能否运行影响不太大就没有改,还有就是PID参数没有调,过流过压啥的配置根本就没有
板子是4层板,接电机之前编了了点小程序,ADC的跳动比较小。这个芯片内置MOSFET,外部信号只有电机输出、电流检测、母线电压和过流比较输入,信号连接比较简单,对了,VPTC没有连,看说明是连温度传感器,选ADC通道的时候选的内部温度传感器,不知道会不会有影响

使用特权

评论回复
7
duo点| | 2024-5-15 20:00 | 只看该作者
作为初学者,对新的控制器和算法进行调试可能会遇到一些挑战。建议您从官方文档和示例代码入手,逐步了解控制器的特性和使用方法。

使用特权

评论回复
8
xiaoerge|  楼主 | 2024-5-15 20:38 | 只看该作者
要有官方文档就好了,一抹黑,啃啃代码看看

使用特权

评论回复
9
MYWX| | 2024-5-28 11:45 | 只看该作者
官网上的开源的代码供用户学习底层算法使用,自己做的板子需要调试,可以参考我们论坛上的官方的focdemo程序,结合B站的视频去调试电机

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

106

帖子

1

粉丝