完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
各位大神好:
最近在用STM32的编码器模式遇到点问题。请大家帮忙看看是什么原因?如何解决? 背景:编码器模式下,配置成双边沿即四倍频触发。主时钟72MHz,电机旋转一圈编码器输出20,000个脉冲,20,000*4 = 80,000个边沿。 1.如果电机旋转速度小于30rpm,即30*80000/60 = 400KHz,计数正常。如果电机旋转速度大于30rpm,计数会丢步。为什么会这样?计数器响应不过来吗? 2.在能正常计数情况下,改为上长沿触发。按理说,比双边沿触发少了一倍,计数值应该也小一半。如双边沿触发,一圈计数20,000个,那么单边沿触发就应该是10000个。而实际上两种配置方式计数结果都是20,000个。这是什么大原因? 3.在能正常计数情况下,把计数器的分频系数改(2-1)。旋转一圈,计数结果为10000个,比未分频时小了一半。但是把旋转速度提高大于30rpm时。不能正常正常计数。为什么分频后不能启到作用? 4.在不减小脉冲个数的情况下,如何解决电机旋转速度至少1200rpm时,即1200*80000/60 =16MHz, 也能正常计数? 谢谢各位! |
|
相关推荐
1个回答
|
|
|
1.编码器精度问题 需要Z点校准
2.可能是程序问题 3.pwm输出的话提高转速应改TIM_Prescaler的分频,最好程序贴图出来,最有可能的情况就是程序设置出了问题。 4.还是那个问题,计数准确需要编码器精度校准,z点校准。 |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2810 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2420 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2288 浏览 0 评论
2404 浏览 1 评论
1643 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 19:53 , Processed in 0.585781 second(s), Total 72, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
406