arduino与hcsr04_超声波传感器HC-SR04和Arduino进行距离计算

本教程详细介绍了如何利用Arduino UNO和HC-SR04超声波传感器构建物联网项目,计算并显示物体与传感器之间的距离。通过Arduino IDE编程,结合Processing应用程序实现实时显示距离信息。文章涵盖了硬件连接、软件设置以及代码实现的全过程。
摘要由CSDN通过智能技术生成

在本教程中,将使用Ultra Sonic HC-SR04和Arduino(Arduino UNO)构建物联网项目,以计算Ultra Sonic HC-SR04设备与物体之间的距离。在这个项目中,我们将使用Processing应用程序在Laptop(监视器)屏幕上显示Ultra Sonic设备和对象之间的距离。

硬件要求

Arduino的UNO主板

Arduino UNO的USB电缆连接器

Ultra Sonic HC-SR04

跳线电线(公母)

软件要求

Arduino软件

Processing软件

Arduino-Bluetooth模块的工作原理

Ultra Sonic HC-SR04以40,000Hz的频率发射超声波,在空中传播。如果路径中有物体或障碍物,则它会碰撞并反弹回Ultra Sonic模块。

公式距离 =速度 * 时间用于计算距离。

假设物体放置在离传感器10厘米的距离处,空气中的声速为340米/秒或0.034厘米/秒。这意味着声波需要在294μs内传播。但是Echo引脚加倍了距离(向前和反弹距离)。因此,要获得以cm为单位的距离,将接收到的行程时间值与echo引脚相乘0.034并将除以2。

Ultra Sonic HC-SR04与物体之间的距离是:

对于Arduino设备的编程,它需要Arduino软件IDE。下载和安装Arduino软件IDE的完整过程在使用WiFi节点MCU和中继模块的链路控制家庭灯光下给出。

打开Arduino IDE并粘贴以下代码。

#include const int trigpin= 8; const int echopin= 7; long duration; int distance; void setup(){ pinMode(trigpin,OUTPUT); pinMode(echopin,INPUT); Serial.begin(9600); } void loop(){ digitalWrite(trigpin,HIGH); delayMicroseconds(10); digitalWrite(trigpin,LOW); duration=pulseIn(echopin,HIGH); distance = duration*0.034/2; Serial.println(distance); }

保存程序并进行编译。

通过Arduino UNO USB线将Arduino设备连接到笔记本电脑(或显示器)。在Arduino UNO上传程序时,删除Arduino UNO设备(如:超声波模块)的所有其他连接。

上传Arduino UNO设备中的代码。在Arduino UNO设备上传代码之前,请确保选择了Arduino串口,否则会生成错误消息未选择串口。

要选择串行端口,请打开“设备管理器”->“端口”->“Arduino Uno”,然后上传代码。

在Arduino设备上传程序 –

数字电路图

Ultrasonic Sensor HC-SR04 Arduino UNO VCC --------------------------------> 5v Trig --------------------------------> Pin 8 Echo --------------------------------> Pin 7 GND --------------------------------> GND

现在从 下载处理应用程序。

按照说明安装Processing应用程序。

将以下代码粘贴到Processing IDE中并运行它。Processing IDE显示Ultra Sonic模块和对象之间的距离。

import processing.serial.*; Serial myPort; String data="" ; PFont myFont; void setup(){ size(1366,900); // size of processing window background(0);// setting background color to black myPort = new Serial(this, "COM3", 9600); myPort.bufferUntil("n"); } void draw(){ background(0); textAlign(CENTER); fill(255); text(data,820,400); textSize(100); fill(#4B5DCE); text(" Distance : cm",450,400); noFill(); stroke(#4B5DCE); } void serialEvent(Serial myPort){ data=myPort.readStringUntil("n"); }

最开始,显示将0表示无活动。

现在,连接您的Ultrasonic HC-SR04模块和Arduino设备。使用Arduino USB电缆或220v AC适配器为Arduino设备输入电源。

将物体放在Ultrasonic HC-SR04模块前面,并在Processing IDE显示屏中显示该物体的距离。

¥ 我要打赏   纠错/补充 收藏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值