TMC5160使用问题2

问题现象:

控制电机运动到某个目标位置,然后不断查询DRV_STATUS(0x6F)的31bit位stst是否为停止状态,发现stst=1停止后,过了几十ms,有时候几百ms,stst又变成了0,持续了几十ms后,stst最终又变成了1。

通过测试发现,就是离目标位置还有1微步的时候,出现以上现象,举例说明:目标位置10000,当实际位置变为9999时,stst第一次变成了1,然后过了一段时间,向10000移动,因此stst=0,最终到达10000,stst=1。

解决方案:

临时解决方案,如果是通过stst来做一些逻辑判断,在第一次stst=1时,可以下发一个stop指令,这样stst就不会再改变。

长久解决方案,查询VSTOP寄存器(0x2B),发现默认设置是1,即速度减到 1 以后,斜坡发生器用极低速去吃掉最后 1 步,驱动器的 stst 会先误判为静止。根据手册,在位置模式下,至少要设置为10。

相关推荐
深圳老胡2 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
女神下凡2 天前
嵌入式设计的各种存储芯片的硬件/软件设计规范,非常全面。
arm开发·单片机·嵌入式硬件
开发笔记-阿牛2 天前
蓝牙音乐灯拆解,又一次拆到蓝牙音乐灯芯片CK6865L
人工智能·单片机·嵌入式硬件·音视频·音频
从零开始的嵌入式之旅2 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
恒锐丰科技林技术员2 天前
EG1164 高压大电流升压同步整流芯片解析
经验分享·嵌入式硬件·硬件工程
CHENKONG_CK2 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
祖力552 天前
ARM时钟
嵌入式硬件·arm·时钟·imx6ull
三佛科技-187366133972 天前
128KB~512KB Flash车规级MCU选型指南(FT32A072 / FT32A103 系列)
单片机·嵌入式硬件
Brilliantwxx2 天前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件
老当益壮梁奶奶2 天前
ARM汇编学习笔记(六):【i.MX6ULL】时钟系统与定时器(EPIT & GPT)
c语言·arm开发·嵌入式硬件·学习·51单片机