当前位置: 首页 > news >正文

使用arduino控制超声传感器HC-SR04测量距离

目录

硬件

软件

接线

测量结果


硬件

arduino leonardo一个

面包板一块

若干杜邦线

直尺

超声波测距传感器HC-SR04,购自某宝,不到6元

软件

unsigned int EchoPin = 10;//arduino针脚10接收回波
unsigned int TrigPin = 8;//arduino针脚8触发测量
unsigned long Time_Echo_us = 0;
float Len_mm = 0;
unsigned long Len_Integer = 0;
unsigned int Len_Fraction = 0;void setup() {// put your setup code here, to run once:Serial.begin(9600);pinMode(EchoPin, INPUT);pinMode(TrigPin, OUTPUT);
}void loop() {// put your main code here, to run repeatedly:digitalWrite(TrigPin, HIGH);delayMicroseconds(50);digitalWrite(TrigPin, LOW);Time_Echo_us = pulseIn(EchoPin, HIGH, 5000);//等待超过5000us则超时if(Time_Echo_us < 60000 && Time_Echo_us > 1){Len_mm = (Time_Echo_us * 0.35)/2;//认为当前声速350m/sLen_Integer = floor(Len_mm);Len_Fraction = (Len_mm - Len_Integer) * 100;Serial.print("len = ");Serial.print(Len_Integer, DEC);Serial.print(".");if(Len_Fraction < 10)Serial.print("0");Serial.print(Len_Fraction, DEC);Serial.println("mm");}delay(100);//每隔100ms测一次
}

接线

接线

测量结果

这里设置声速350m/s。当物体距离传感器<15cm时,测量值明显偏小,但是>=15cm时测量基本准确。

超声测距演示

相关文章:

  • 清洗数据集
  • C#编程精要:局部变量、类型推断与常量深度解析
  • HTTP和HTTPS
  • 内部类(3):匿名内部类
  • 拆解一个550-800Mhz的LC滤波器内部大图配测试曲线
  • 前端应用开发技术历程的简要概览
  • wfp CommandParameter 详细解说
  • [Windows] Simple Live v1.8.3 开源聚合直播 :支持哔哩哔哩 / 虎牙 / 斗鱼 / 抖音
  • LWIP带freeRTOS系统移植笔记
  • [算法学习]——通过RMQ与dfs序实现O(1)求LCA(含封装板子)
  • C#将Mat或Byte快速转换为Bitmap格式
  • 高露洁牙膏是哪个国家的品牌?高露洁牙膏哪一款最好?
  • 内置类型成员变量的初始化详解
  • 【基础算法】二分查找的多种写法
  • rabbitMQ如何确保消息不会丢失
  • Qt通过QXlsx库文件写入到excl文件,读取excl文件
  • 解决The‘InnoDB’feature is disabled; you need MySQL built with ‘InnoDB’ to have it
  • 计算几何(简单旋转卡壳)2024昆明邀请赛
  • Expected SARSA算法详解:python 从零实现
  • 仿腾讯会议——注册登录实现
  • 客流持续高位运行,长三角铁路计划增开153列旅客列车
  • 亚马逊一季度利润增超六成:云业务增速放缓,警告关税政策或影响业绩指引
  • 思政课也精彩,“少年修齐讲堂”开讲《我的中国“芯”》
  • 上海浪琴环球马术冠军赛明日启幕!五一假期在这里感受精彩
  • 今年4月上海一二手房成交面积同比增21%,二手房成交2.07万套
  • 对谈|《对工作说不》,究竟是要对什么说不?