DIY Arduino 高度测量机
组件和用品
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
必要的工具和机器
|
应用和在线服务
|
关于这个项目
当我注意到我的孩子每天都在测量他们的身高时,我就有了制作这样一个设备的想法。要找出您的身高,您只需站在设备下方并发出声音,表明您的身高已被测量。
它很容易构建并且只包含几个组件:
-Arduino纳米
-HC SR04超声波传感器
-液晶显示
-蜂鸣器
-电池
现在让我们解释它是如何工作的:
首先我们需要借助双面胶将设备安装到一定高度,这个高度之前在代码中定义过,在图片上标有字母H
当有人站在设备下方时,传感器会测量距离 D。接下来,代码计算距离 H-D,它实际上代表了设备 H1 下方人的高度,并将该值显示在 LCD 上。库“LcdBarGraph”有助于绘制水平条形图,其中条形的长度与提供的值成正比。当设备下没有人时,计算值为零,因为在这种情况下 H =D 并且 H-D 为零。该设备安装在一个合适的盒子里,前面是液晶显示器,底部是超声波传感器。
下面给出了所需的库、代码和原理图
代码
- 代码
- 图书馆
CODEArduino
// 包括 LiquidCrystal 库#include// 包括 LcdBarGraph 库#include // 我们想要 ping 的最大距离(以厘米为单位)。#define max_distance 200 // 创建LCD 对象。参数:(rs, enable, d4, d5, d6, d7)LiquidCrystal lcd(12, 11, 5, 4, 3, 2); LcdBarGraph lbg(&lcd, 16, 0, 1); // 创建一个 LCD Bargraph object.const int trigPin =9;const int echoPin =10;long duration;int distance;int distance1;int SpeakerPin =8;void setup() { lcd.begin(16,2); // 初始化液晶屏接口 pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);}void loop() { // 向 HC-SR04 触发引脚写入一个脉冲 digitalWrite(trigPin, LOW);延迟微秒(2);数字写入(触发引脚,高);延迟微秒(10);数字写入(trigPin,低); // 测量 HC-SR04 Echo Pin 的响应持续时间 =pulseIn(echoPin, HIGH); // 从持续时间确定距离 // 使用每秒 343 米作为声速距离=持续时间*0.034/2;距离1=180 - 距离; // 在 LCD 的第一行打印 "Distance: " if (distance1> 100) {tone (speakerPin, 1000); } else { noTone (speakerPin); } lcd.setCursor(0,0); lcd.print("高度:");液晶打印(距离1); lcd.print("厘米"); // 在 LCD 的第二行绘制条形图 lcd.setCursor(0,1); lbg.drawValue(distance1, max_distance);延迟(500);}
库Arduino
无预览(仅限下载)。
示意图
制造工艺