反射问题
如果被探测物体始终在合适的角度,那超声波传感器将会获得正确的角度。但在实际使用中,很少被探测物体是能被正确的检测的。其中可能会出现几种误差有:
多次反射
这种现象在探测墙角或者类似结构的物体时比较常见。声波经过多次反弹才被传感器接收到,因此实际的探测值并不是真实的距离值。
镜面反射
这个问题和高中物理中所学的光的反射是一样的。在特定的角度下,发出的声波被光滑的物体镜面反射出去,因此无法产生回波,也就无法产生距离读数。这时超声波传感器会忽视这个物体的存在。
三角误差
当被测物体与传感器成一定角度的时候,所探测的距离和实际距离有个三角误差。
交叉问题
交叉问题是当多个超声波传感器按照一定角度被安装在机器人上的时候所引起的。超声波X发出的声波,经过镜面反射,被传感器Z和Y获得,这时Z和Y会根据这个信号来计算距离值,从而无法获得正确的测量。
解决的方法可以通过对每个传感器发出的信号进行编码。让每个超声波传感器只听自己的声音。
噪音
虽然多数超声波传感器的工作频率为40-45Khz,远远高于人类能够听到的频率。但是周围环境也会产生类似频率的噪音。
可以通过对发射的超声波进行编码来解决,比如发射一组长短不同的音波,只有当探测头检测到相同组合的音波的时候,才进行距离计算。这样可以有效的避免由于环境噪音所引起的误读。