找回密码
 立即注册
楼主: 梁工

BLDC三相无刷直流电机驱动-8H系列/32G系列-无HALL, 12万转, 视频讲解,改进启动算法

 火... [复制链接]
  • 打卡等级:常住居民II
  • 打卡总天数:93
  • 最近打卡:2025-06-14 13:12:15

74

主题

6088

回帖

1万

积分

超级版主

积分
12715
发表于 前天 18:56 | 显示全部楼层
深度*** 发表于 2025-6-14 14:25
一阶低通滤波的算法公式为:

   Y(n)=αX(n) + (1-α)Y(n-1)

一阶低通滤波的算法公式为:Y(n)=(1-a)*Y(n-1) + a*X(n)。为了快速计算,我使用定点(整数)运算。
我的例子是a=1/16=0.0625:Y(n)=X(n)/16 + (1-1/16)*Y(n-1) = Y(n-1)*15/16 + X(n)/16。
为了消除截断误差,去掉“X(n)/16”中的/16:
Y(n)=Y(n-1)*15/16 + X(n)
但是这样一来,结果会变成16倍,原来12位的ADC值,滤波后等效于16位ADC值,所以实际取值要/16。
上面就是从数学角度来推导的结果。
当a=1/16=0.0625时,截止频率 fc = 0.01*fs,即截止频率是采样率的0.01倍。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-16 04:08 , Processed in 1.105860 second(s), 44 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表