[其他ST产品] 用STM32输入捕获测量电机出现速度太大

[复制链接]
582|12
 楼主| stormwind123 发表于 2025-2-27 12:14 | 显示全部楼层 |阅读模式

我用霍尔传感器测量PWM可调的小马达速度,并将速度串口发送液晶屏,霍尔传感器的电平用的是定时器的输入捕获,发现速度有时过大本来最大135,有时候有个573280,请问是什么问题
香水城 发表于 2025-2-27 14:58 | 显示全部楼层
可能的原因包括噪声和抖动,这时我们可以考虑加滤波,软件硬件都可以;

定时器发声溢出没有考虑进去;

计算速率的相关代码逻辑有问题;

确认传感器本身有无问题;
公羊子丹 发表于 2025-3-6 07:40 | 显示全部楼层
这个速度明显不正常,可能是 计时器溢出 了,检查一下你的定时器计数范围和预分频器设置。
周半梅 发表于 2025-3-6 07:41 | 显示全部楼层
你是用 上升沿捕获 还是 双边沿捕获?如果用了双边沿,计算时可能要注意周期的一致性。
帛灿灿 发表于 2025-3-6 07:43 | 显示全部楼层
速度突变可能是 霍尔传感器信号抖动,建议打开输入滤波器(ICF),看看能不能稳定测量值。
童雨竹 发表于 2025-3-6 07:44 | 显示全部楼层
试试在 输入捕获中断 里增加一个异常值过滤,比如如果测出的时间间隔比上一次小很多,就丢弃。
万图 发表于 2025-3-6 07:45 | 显示全部楼层
这个霍尔传感器的信号是稳定的吗?可以用示波器看看输出波形,看看有没有毛刺或者错误脉冲。
Wordsworth 发表于 2025-3-6 07:46 | 显示全部楼层
定时器的 时钟源 设置对了吗?如果用了 APB1 或 APB2 时钟,要确保它们的频率是你期望的值。
Bblythe 发表于 2025-3-6 07:47 | 显示全部楼层
你是如何计算速度的?如果是 速度 = 1 / 周期,那必须确保周期不会被除零或者计算溢出。
Pulitzer 发表于 2025-3-6 07:49 | 显示全部楼层
试试 开个低通滤波,比如取最近几次的平均值,这样可以减少偶发的错误测量带来的影响。
Uriah 发表于 2025-3-6 07:50 | 显示全部楼层
如果测量结果偶尔跳变,可能是 霍尔传感器接线松动 或者 接触不良,导致信号丢失或者误触发。
Clyde011 发表于 2025-3-6 07:51 | 显示全部楼层
速度计算是否考虑了 定时器翻转?如果定时器计数器溢出但没有正确处理,就可能导致测量值异常大。
zhengshuai888 发表于 2025-3-6 07:59 来自手机 | 显示全部楼层
这个大概率是抖动产生的噪声,可以软件平滑滤波处理一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

605

主题

3747

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部