欢迎光临
我们一直在努力

超声波模块 测距 示例教程 适用于Arduino平台

1. 产品图片

2. 产品购买地址点我购买

3. 产品概述
本模块性能稳定,测度距离精确。能和国外的SRF05,SRF02等超声波测距模块相媲美。模块高精度,盲区(2cm)超近,采用IO触发测距,给至少10us的高电平信号。模块自动发送8个40KHz的方波,自动检测是否有信号返回;
有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间。距离=(高电平时间X声速(340m/s))/2。
4. 产品参数
1. 使用电压:DC5V
2. 静态电流:小于2mA
3. 电平输出:高5V
4. 电平输出:底0V
5. 感应角度:不大于15度
6. 探测距离:2cm-450cm
7. 高精度:可达0.3cm

5. 接口定义
trig(控制端)
echo(接收端)
注意:TRIP引脚是内部上拉10K的电阻,用单片机的IO口拉低TRIP引脚,然后给一个10us以上的脉冲信号。

6. 接线方式
uno——–SR04
2———–TRIG
3———–ECHO
5V———VCC
GND——GND

7. 示例程序一(不用库文件方式)

//中贝斯特UltiRobot超声波模块示例教程
//程序效果:打开串口监视器可以观察到输出的距离值为当前超声波距前方障碍物的实际距离。
//淘宝店地址:zhongbest.taobao.com
//专业Arduino资料网站:www.arduino365.com
const int TrigPin = 2;
const int EchoPin = 3;
float distance;
void setup()
{
Serial.begin(9600);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
Serial.println("Ultrasonic sensor:");
}
void loop()
{
//发一个10μs的高脉冲去触发TrigPin
digitalWrite(TrigPin, LOW);
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);

distance = pulseIn(EchoPin, HIGH) / 58.0; 
//算成厘米,声音的速度340m/s或29us/cm,脉冲传播出来再折返回来,所以所求对象的距离行程的一般/29/2=/58
Serial.print(distance);
Serial.print(“cm”);
Serial.println();
delay(1000);
}

8. 示例程序二(库文件方式)

//中贝斯特UltiRobot超声波模块示例教程
//程序效果:打开串口监视器可以观察到输出的距离值为当前超声波距前方障碍物的实际距离。
//淘宝店地址:zhongbest.taobao.com
//专业Arduino资料网站:www.arduino365.com
#include “SR04.h”
#define TRIG_PIN 2
#define ECHO_PIN 3
SR04 sr04 = SR04(ECHO_PIN,TRIG_PIN);
long a;
void setup() {
Serial.begin(9600);
Serial.println(“Example written by Arduino365.com”);
delay(1000);}
void loop() {
a=sr04.Distance();
Serial.print(a);
Serial.println(“cm”);
delay(1000);}

9. 相关下载
百度网盘:点我下载

未经允许不得转载:Arduino-Maker » 超声波模块 测距 示例教程 适用于Arduino平台

支付宝扫码打赏 微信打赏

原创文章,若帮到您,欢迎打赏

分享到:更多 ()

评论 2

评论前必须登录!

 

  1. #1

    开发版在COM1不可用是什么意思

    00111年前 (2018-03-22)
    • 检查开发板的驱动是否正常,官方编译器内需要选择一样的COM口号

      ZBST技术&售后1年前 (2018-03-26)

线上商城

中贝斯特创客空间蘑菇云创客教育