“超声波模块”的版本间的差异

来自YFRobotwiki
跳转至: 导航搜索
 
(未显示2个用户的17个中间版本)
第19行: 第19行:
  
 
=== 工作原理 ===
 
=== 工作原理 ===
<br>
 
<br>
 
[[Image:超声波模块时序图.png|600px|center]]
 
 
<br>
 
<br>
 
*采用IO 口TRIG 触发测距,给最少10us 的高电平信呈。
 
*采用IO 口TRIG 触发测距,给最少10us 的高电平信呈。
第30行: 第27行:
 
*uS/148=英寸
 
*uS/148=英寸
 
*测试距离=(高电平时间*声速(340M/S))/2;
 
*测试距离=(高电平时间*声速(340M/S))/2;
 
+
<br>
 +
'''超声波模块时序图'''
 +
<br>
 +
[[Image:超声波模块时序图.png|600px]]
 +
<br>
  
  
第82行: 第83行:
 
'''示意图'''
 
'''示意图'''
 
<br>
 
<br>
<!--[[Image: 超声波 模块接线图.jpg|400px|center| 超声波 模块接线图]]-->
+
<img src="http://yfrobot.gitee.io/wiki/img/ 超声波 测距.png"  alt=" 超声波" />
  
  
第88行: 第89行:
 
'''示例代码'''
 
'''示例代码'''
 
<br>
 
<br>
<pre >
+
<source lang="c">
// TCRT5000 Test
+
//HC_SR04 Test
  
#define ledPin 13
+
const int TrigPin = A2;
#define t_Pin 12
+
const int EchoPin = A3;
 +
float cm;
  
void setup() {
+
void setup()
   pinMode(ledPin, OUTPUT); //设定LED接口为输出状态
+
{
 +
  Serial.begin(9600);
 +
   pinMode(TrigPin, OUTPUT);
 +
  pinMode(EchoPin, INPUT);
 
}
 
}
 
 
void loop()
 
void loop()
 
{
 
{
   if (digitalRead(t_Pin) == HIGH)
+
   digitalWrite(TrigPin, LOW);
    digitalWrite(ledPin, HIGH); //点亮LED
+
  delayMicroseconds(2);
   else
+
  digitalWrite(TrigPin, HIGH);
    digitalWrite(ledPin, LOW); // 熄灭LED
+
   delayMicroseconds(10);
 +
  digitalWrite(TrigPin, LOW);
 +
 
 +
  cm = pulseIn(EchoPin, HIGH) / 58.0;  //echo time conversion into a distance
 +
  cm = (int(cm * 100.0)) / 100.0;      //keep two decimal places
 +
  Serial.print(cm);
 +
  Serial.print("cm");
 +
  Serial.println();
 +
  delay(1000);
 
}
 
}
</pre>
+
</source>
 程序下载地址:[http://pan.baidu.com/s/1eQEsjJW TCRT5000Test]
+
 程序下载地址:[https://eyun.baidu.com/s/3jHDcxYu HC_SR04_Test]
 
+
程序运行结果:用手靠近传感器模块,达到一定距离,板载LED点亮,模块输出低电平,uno 13引脚输出低电平;无物体靠近,LED保持熄灭,模块输出高电平,uno 13引脚输出高电平。
+
 
+
  
 +
程序运行结果:超声波对着墙,测出实时距离,结果如图:
 +
<br>
 +
<br>
 +
[[Image: 超声波测试结果图.png|400px|center|超声波测试结果图]]
 +
<br>
  
  
 
===参考资料===
 
===参考资料===
 
<br>
 
<br>
* [http:// TCRT5000光电传感器模块电路图]
+
* [https://eyun.baidu.com/s/3mhYCSWS 超声波模块参考手册]
* [http://pan.baidu.com/s/1kEiwY TCRT5000 datasheet]
+
* [https://eyun.baidu.com/s/3hrRtCeK 超声波模块原理图]
* [http://pan.baidu.com/s/1kT1WCYj LM393 datasheet]
+
* [http://pan.baidu.com/s/1i3hHXQH LM393 中文数据手册]
+
 
+
  
  

2023年4月6日 (四) 11:07的最后版本

超声波模块


产品简介


超声波模块可提供 2cm-400cm的非接触式距离感测功能,测距精度可达高到 3mm;模块包括超声波发射器、接收器与控制电路。

注意:

1、此模块不宜带电连接,若要带电连接,则先让模块的 GND端先连接,否则会影响模块的正常工作。

2、测距时,被测物体的面积不少于 0.5平方米且平面尽量要求平整,否则影响测量的结果



工作原理


  • 采用IO 口TRIG 触发测距,给最少10us 的高电平信呈。
  • 模块自动发送8 个40khz 的方波,自动检测是否有信号返回;
  • 有信号返回,通过IO 口ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。

公式

  • uS/58=厘米
  • uS/148=英寸
  • 测试距离=(高电平时间*声速(340M/S))/2;


超声波模块时序图
超声波模块时序图.png


规格参数


  • 供电电压:DC5V
  • 静态电流:小于2mA
  • 工作频率:40kHz
  • 感应角度:<15度
  • 探测距离:2cm-400cm
  • 精度:3mm
  • 安装孔径:2MM
  • 模块尺寸:45*27*18MM(长*宽*高,包含排针)
  • 安装孔间距:40mm、15mm
  • 模块重量:7.3g


引脚说明


  • 1. VCC -- 电源
  • 2. Trig -- 触发信号输入
  • 3. Echo -- 回响信号输出
  • 4. GND -- 地


应用示例


电路连接

超声波模块 Arduino UNO
VCC +5V
Trig A2
Echo A3
GND GND


示意图
超声波


示例代码

//HC_SR04 Test
 
const int TrigPin = A2;
const int EchoPin = A3;
float cm;
 
void setup()
{
  Serial.begin(9600);
  pinMode(TrigPin, OUTPUT);
  pinMode(EchoPin, INPUT);
}
void loop()
{
  digitalWrite(TrigPin, LOW); 
  delayMicroseconds(2);
  digitalWrite(TrigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(TrigPin, LOW);
 
  cm = pulseIn(EchoPin, HIGH) / 58.0;   //echo time conversion into a distance
  cm = (int(cm * 100.0)) / 100.0;       //keep two decimal places
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();
  delay(1000);
}

程序下载地址:HC_SR04_Test

程序运行结果:超声波对着墙,测出实时距离,结果如图:

超声波测试结果图



参考资料





返回首页

更多建议和问题欢迎反馈至 YFRobot论坛

购买方式:YFRobot 电子工作室