在这里,我将简要介绍超声波测距模块
SR04超声传感器:
是利用超声波特性检测距离的传感器,其带有两个超声波探头,分别用作于发射和接收超声波。范围在3-450cm。
工作原理:
超声波发射器向某一方向发射超声波,同时开始计时;
超声波在空气中传播,遇到障碍物时立即返回,超声波接收器立即停止计时。
空气中的声波传播速度为340m/s,按计时器记录时间t,计算出发射点与障碍物的距离S,
即S=340m/s*t/2,这就是所谓的时差测距法。
及时使用超声模块序列图:
使用Arduino给数字引脚SR04模块的Trig引脚至少10us触发高电平信号SR04模块的测距功能。
模块触发测距功能后,会自动发送8个40khz超声脉冲,并自动检测是否有信号返回。
若有信号返回,则Echo引脚会输出高电平,高电平的持续时间是超声波从发射到返回的时间。
此时可使用pluseIn()函数获取测距结果,计算被测物体的实际距离。
代码:
const int ting=2; //设定SR04连接到Arduino引脚
const int echo=3; //设定SR04连接到Arduino引脚
float distance; ///定义浮点变量
void setup()
{
Serial.begin(9600); //设置波特率
pinMode(ting,OUTPUT); //连接SR04的引脚
pinMode(echo,INPUT); //设置输入状态
Serial.println("ultrasonic sensor"); //
}
void loop()
{
digitalWrite(ting,LOW); //产生10US触发高脉冲Trigpin
delayMicroseconds(2);
delayMicroseconds(10);
digitalWrite(ting,LOW);
distance=pluseIn(echo,HIGH)/58.00; //检测脉冲宽度,计算距离
Serial.print(distance); //打印
Serial.print("cm"); //打印
serial.println(); //打印
delay(1000);
}