[STM32H7] Hal库是否有可用于电流测量的低通滤波器函数

[复制链接]
664|11
梧桐uuu 发表于 2025-9-22 16:59 | 显示全部楼层 |阅读模式
在STM32H745上进行电流测量,是否有可用于此问题的低通滤波器函数?如果存在,如何在STM32 IDE中使用这些库函数?我用于罗氏线圈电流测量。
我们使用罗氏线圈进行电流测量。需要检测瞬态电流。由于罗氏线圈的特性,瞬态故障电流信号中高频段的信号幅度(罗氏线圈输出为微分信号)会更高。瞬态信号可能包含不同频率的突发脉冲。罗氏线圈会引入90度相移,且信号幅度随频率增加而增大。
我们需要对罗氏线圈的电流信号进行积分,以获得与注入信号完全一致的瞬态电流信号。
现在有以下问题:
是否有集成函数库可执行积分运算?
是否有可用于此问题的低通滤波器函数?
如果存在,如何在STM32 IDE中使用这些库函数?
请问是否有其他解决方案可用?

公羊子丹 发表于 2025-9-23 07:25 | 显示全部楼层
Hal 库里本身没有现成的滤波器函数,更多是硬件外设驱动层,你得用 CMSIS-DSP 里的函数。
周半梅 发表于 2025-9-23 07:25 | 显示全部楼层
CMSIS-DSP 里有 IIR/FIR 滤波器模块,可以直接做低通滤波,STM32H7 这类带 FPU 的芯片跑起来挺快。
帛灿灿 发表于 2025-9-23 07:26 | 显示全部楼层
对罗氏线圈这种微分特性,你确实得先积分再滤波,不然信号高频分量会放大得很厉害。
童雨竹 发表于 2025-9-23 07:27 | 显示全部楼层
其实可以用一个数字积分器(累加器)再接一阶低通,软件实现比较直观。
万图 发表于 2025-9-23 07:28 | 显示全部楼层
STM32CubeIDE 里集成了 CMSIS-DSP,你可以在工程配置里把 DSP 库勾上,然后调用 arm_biquad_cascade_df2T_f32 之类的函数。
Wordsworth 发表于 2025-9-23 07:29 | 显示全部楼层
如果只是简单滤波,均值滤波或滑动窗口滤波也能做,但对瞬态信号保真度会差点。
Bblythe 发表于 2025-9-23 07:30 | 显示全部楼层
我以前在 H7 上试过,用 DFSDM 外设硬件滤波也挺方便,可以直接配置低通。
Pulitzer 发表于 2025-9-23 07:30 | 显示全部楼层
你提到积分,硬件上也可以在模拟前端用积分电路,减轻 MCU 的负担。
Uriah 发表于 2025-9-23 07:31 | 显示全部楼层
软件里做积分要注意漂移问题,必须加个高通或者 DC 偏置校正。
Clyde011 发表于 2025-9-23 07:32 | 显示全部楼层
建议你先在 MATLAB/Octave 里设计好滤波器系数,再移植到 STM32 上,调试效率高很多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

65

帖子

0

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