可以看到滤波效果非常好, 首先,我们去除了高频低幅噪声,同时也去掉了高频高幅噪声,只剩下了我们的目标值(低频低幅数据),因为正常情况下,障碍物距离我们传感器的位置是均匀低俗变化的。 红色为滤波之后的效果,蓝色为原始数据。 4.中位值滤波 连续采样N次(N取奇数),把N次采样值按大小排列,取中间值为本次有效值。
百度爱采购为您找到425家最新的hc-sr04 滤波器产品的详细参数、实时报价、行情走势、优质商品批发/供应信息,您还可以免费查询、发布询价信息等。
百度爱采购为您找到13家最新的hcsr04滤波产品的详细参数、实时报价、行情走势、优质商品批发/供应信息,您还可以免费查询、发布询价信息等。
float HCSR04_Get_Distant(void) { HCSR04StartTrigStart(); while(!HCSR_ECHO()); HCSR04_TimerFunc(1);//start timer while(HCSR_ECHO()); HCSR04_TimerFunc(0);//stop timer return (__HAL_TIM_GetCounter(&htim2))/58.0; } //均值滤波减小测量误差 float Distance(uint8_t cnt) { float s...
接下来就是我们的核心时间采集及距离换算部分了,代码如下,设计两个函数,一个是单次获取距离,另一个是对采集结果做了均值滤波处理,减少误差: 代码语言:javascript 复制 //单次获取测量距离floatHCSR04_Get_Distant(void){HCSR04StartTrigStart();while(!HCSR_ECHO());HCSR04_TimerFunc(1);//start timerwhile(...
MAX232芯片起电平转换的作用,因为STC11单片机在P51/P52口输出的波形是TTL。为了使HC-SR04模块的测距变宽,MAX232对40KHZ的信号进行电平转换,功率放大。TL074为四路低噪声输入运算放大器。其作用为对接收到的超声波电压信号进行信号放大、滤波、电压比较等。接收电路可参考下图。
}//一次获取超声波测距数据 两次测距之间需要相隔一段时间,隔断回响信号//为了消除余震的影响,取五次数据的平均值进行加权滤波。floatHcsr04GetLength(void) { u32 t=0;inti =0;floatlengthTemp =0;floatsum =0;while(i!=5) { TRIG_Send=1;//发送口高电平输出Delay_Us(20); ...
1.HC-SR04模块实物图和工作原理1.1实物如下图,可以看到这个模块是双面贴片的,整体感觉大气,印出来了四个引脚,分别是GND,Echo,Trig,VCC具体功能见下方 1.2首先这个模块是要单独供电的,需要给VCC接5V,GND就不多说了关键是Echo和Trig这两个脚,可以看下方的时序图。a.需要给触发信号即Trig一个大于10us的...
因此,只要知道了超声波在空气中传播的速度,就可以通过测量反射波的传播时间来得到距离的估计值。 不过,在实际应用中,由于环境噪声、信号干扰等因素的影响,HCSR04 的测距精度会受到一定程度的限制。因此,在应用过程中,需要通过应用特定的滤波算法和校准方法来提升精度,确保测量结果的可靠性。
1.HC-SR04模块实物图和工作原理 1.1实物如下图,可以看到这个模块是双面贴片的,整体感觉大气,印出来了四个引脚,分别是GND,Echo,Trig,VCC具体功能见下方 1.2首先这个模块是要单独供电的,需要给VCC接5V,GND就不多说了关键是Echo和Trig这两个脚,可以看下方的时序图。