• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

超声波传感器测得数据不稳定,

往事如风111 2017-12-27 浏览量:2127
超声波传感器测得数据不稳定,时不时会出现很大的数据?怎么滤波?​
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
所有亮答 数量:14
电子老工程师 回复了 :符合手册输出电压范围0.5 ~ 1.8V 回复

  • 软件算法来滤波,比如超过某个限值数据丢弃,或者多次采样取出最高和最低数据进行平均。
电子老工程师 回复了 :可以替代,产地不同。 回复

  • 如果要算法,其实是比较复杂的,除非有明确的时间段分隔,否则不好判断。特别是波动比较频繁的情况下。

    我假设一个算法:

    连续采集10次

    10次(这个可以配置)有1个平均值a

    然后在让10个数分别和a比较,分成大于 小于这个平均值计数HN和LN,并分别计算HA和LA,

    HA和A比较,LA分别和A比较,如果偏差绝对值都在10%(这个可以设置)以内,则认为所有数据没有太大波动

    否则拿和A偏差小的HA或者LA作为基准,把数据再过滤一次,让所有偏差在其20%内的数据为正常数据计算平均值为输出,否则排除人为是波动。


电子老工程师 回复了 :PCN没有查到,但资料有丝印的文字描述,参考立创丝印也是三位的 回复

电子老工程师 回复了 :尾缀L的含义资料没有具体说明,原厂型号都是带尾缀L的 回复

  • 简单的就是多次采样求平均值,复杂的就要用滤波算法了。
电子老工程师 回复了 :尾缀包装区别,45管装,77:卷装, 回复
电子老工程师 回复了 :77卷装,45管装,包装的区别,同一颗料 回复

  • 多测几次,去掉特别大和特别小的异常值之后取平均值就行了。

电子老工程师 回复了 :丝印H和C表示装配地点,具体信息原厂未公开; 回复

  • 先分段减小斜率

    if(fabs(a-a_old)>1)

    a=a*0.1+a_old*0.9;

    else if(fabs(a-a_old)>3)

    a=a*0.01+a_old*0.99;

    再低通滤波

    a=a*0.5+a_old*0.5;

    ...

    a_old=a

电子老工程师 回复了 :代表泰国 回复

  • 加个简单的滤波,例如多测几次,去掉最大和最小,剩下的取平均。
电子老工程师 回复了 :电压不满足要求,25V的没有,需要客户确认 CC0201KRX7R5BB104 (电压6.3V) 回复
电子老工程师 回复了 :封装: 0201 品牌: SAMSUNG(三星) 型号: CL03A104KA3NNNC 回复

  • 一般开启后,给个延时让模块稳定;另外就是多采集几次求平均。
电子老工程师 回复了 :https://www.mouser.com/catalog/additional/TDK_reach_rohs_declaration.pdf 回复

电子老工程师 回复了 :长度不一样。 B953151 GE321 50.0m B953151 GE034 499.9m 回复

  • 那种粗大误差,最好就是加个阈值,只要发现有在阈值范围之外的数据就直接去掉
电子老工程师 回复了 :FA1-NCRP-PCB-8 厂牌:Amphenol RF 回复

  • 如果这个值与之前的数据误差太大,可能是硬件上的干扰,要查一下硬件上的问题。

    单纯的滤波无法解决本质问题。

电子老工程师 回复了 :前缀NSV代表是汽车级,符合PPAP功能 回复
电子老工程师 回复了 :前缀NSV代表是汽车级,具有PPAP功能 回复

  • 数据波动很大的话,说明传感器精度不够,或者干扰严重,或者模块有问题,你可以多取几次去平均,但误差还是会很大。

    检查下硬件看看电源是否稳定,有没有其他干扰源
    软件上时序时候匹配,每次读写时候正确。
    不然单靠滤波应该是不够的

电子老工程师 回复了 :确认型号和厂牌是否匹配,TE厂牌没查到这两颗料 回复

  • 硬件才是精度的根本保证  在硬件不能优化下  你的软件智能采用连续取多个值  然后求平均数(要忽略最大值和最小值)

相关问题

问题达人换一批

超声波传感器测得数据不稳定,