STM32/STM8技术论坛
直播中

吕珠峰

11年用户 868经验值
擅长:可编程逻辑
私信 关注
[问答]

MCSDK 6.2.1位置模式过冲的原因?

最近在测试MCSDK 6.2.1自带的位置控制模式使用了一块自制的驱动板,参考的是NUCLEO-F303RE+ X-NUCLEO-IHM08M1 Motor Profiler可以正常驱动电机并测定参数,测定参数电机标称值相似,驱动板应该是正常的
速度传感器配置为正交增量编码器,1000线,启用Z信号启动后电机可以正常对齐并旋转一圈到达Z信号位置
电机为空载运行,调整PID参数后原地不会抖动,运行平稳但是在位置控制时,反复测试发现在Ramp运行时间为3.3s-3.7s时,电机可以在任意目标位置下正常停止不会过冲,只要计算出的最大速度不超过电机最大速度就都是正常的
只要Ramp运行时间小于3.3s或则大于3.7秒,则电机会在停止时超过目标位置,再快速回调到目标位置,产生一个明显的抖动。
具有明显的分界线,3.7秒Ramp运行时间就是正常的,把Ramp运行时间调整为3.8秒,其他参数都不变的情况下就会出现过冲,同理3.3秒是正常的,改到3.2秒就会出现过冲。
尝试调整不同的Ramp时间,目标位置,PID参数,都无法消除。

回帖(1)

杨丽

2024-3-7 16:34:57
MCSDK 6.2.1位置模式过冲的原因可能有多个可能性,以下是一些可能导致过冲的原因:

1. PID参数设置不合适:位置控制模式需要适当的PID参数来实现准确的位置控制。如果PID参数设置不正确,可能会导致电机超调,从而产生过冲。

2. 速度测量精度不足:位置控制模式需要准确的速度测量来实现精确的位置控制。如果速度测量精度不足,可能会导致计算出的速度与实际速度不一致,从而导致过冲。

3. 目标位置过远或时间过短:如果目标位置距离太远,或者设置的Ramp运行时间太短,电机可能无法在规定的时间内准确停止,从而导致过冲。

4. 电机机械负载不稳定:如果电机的机械负载不稳定,例如存在不均匀的摩擦或重量分布问题,可能会导致位置控制时的过冲。

建议您仔细检查以上可能的原因,并逐一排除,以确定导致过冲的具体原因。您也可以尝试调整PID参数、增加位置控制的精度、延长Ramp运行时间等方法,进一步优化位置控制。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分