常用传感器讲解十九--超声波感器(HC-SR04)

简介: 常用传感器讲解十九

2000元阿里云代金券免费领取,2核4G云服务器仅664元/3年,新老用户都有优惠,立即抢购>>>


阿里云采购季(云主机223元/3年)活动入口:请点击进入>>>,


阿里云学生服务器(9.5元/月)购买入口:请点击进入>>>,

具体讲解

截屏2023-12-27 下午7.52.33.png

HC-SR04超声波距离传感器的核心是两个超声波传感器。一个用作发射器,将电信号转换为40 KHz超声波脉冲。接收器监听发送的脉冲。如果接收到它们,它将产生一个输出脉冲,其宽度可用于确定脉冲传播的距离。像馅饼一样简单!

该传感器体积小巧,易于在任何机器人项目中使用,并提供2厘米至400厘米(约1英寸至13英尺)之间的出色非接触距离检测,精度为3mm。由于它的工作电压为5伏,因此可以直接连接到Arduino或任何其他5V逻辑微控制器。

电路连接

截屏2023-12-27 下午7.52.48.png
截屏2023-12-27 下午7.53.07.png

代码实现

这里直接做一个简单的超声波测距

// This uses Serial Monitor to display Range Finder distance readings

// Include NewPing Library
#include "NewPing.h"

// Hook up HC-SR04 with Trig to Arduino Pin 9, Echo to Arduino pin 10
#define TRIGGER_PIN 9
#define ECHO_PIN 10

// Maximum distance we want to ping for (in centimeters).
#define MAX_DISTANCE 400    

// NewPing setup of pins and maximum distance.
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
float duration, distance;

void setup() 
{
   
   
    Serial.begin(9600);
}

void loop() 
{
   
   
    // Send ping, get distance in cm
    distance = sonar.ping_cm();

    // Send results to Serial Monitor
    Serial.print("Distance = ");

    if (distance >= 400 || distance <= 2) 
    {
   
   
        Serial.println("Out of range");
    }
    else 
    {
   
   
        Serial.print(distance);
        Serial.println(" cm");
    }
    delay(500);
}

截屏2023-12-27 下午7.53.26.png

相关文章
|
7月前
|
传感器 芯片
STM32外设系列—HC-SR04(超声波)
本文主要介绍了超声波测距的原理,常用的超声波传感器。并且针对HC-SR04给出了使用思路和程序设计。最后,简单进行了思路拓展。
207 1
STM32外设系列—HC-SR04(超声波)
|
7月前
|
传感器 机器人 Linux
Linux驱动基础(HC-SR04超声波模块)
Linux驱动基础(HC-SR04超声波模块)
60 0
|
4天前
|
传感器
|
4天前
|
传感器 机器人
|
7月前
SR04 超声波测距模块
SR04 超声波测距模块
53 0
|
9月前
|
传感器 数据采集 SDN
STM32(HAL库)驱动AD8232心率传感器
STM32(HAL库)驱动AD8232心率传感器
|
11月前
|
传感器
野火RA6M5开发板 DHT11温湿度传感器 OLED显示测试学习
野火RA6M5开发板 DHT11温湿度传感器 OLED显示测试学习
84 0
野火RA6M5开发板 DHT11温湿度传感器 OLED显示测试学习
http://www.vxiaotou.com