Alat Pengukur Tinggi DIY Arduino – Akurat & Mudah Dibuat
Komponen dan Perlengkapan
Arduino Nano R3 – 1 unit
Sensor Ultrasonik - HC-SR04 (Umum) – 1 unit
LCD Alphanumeric, 16 x 2 – 1 unit
Trimmer Potensiometer, 10 kohm – 1 unit
Alat dan Mesin yang Diperlukan
Pakuat solder (umum) – 1 unit
Aplikasi dan Layanan Online
Arduino IDE – 1 unit
Tentang Proyek Ini
Saat saya melihat anak-anak saya mengukur tinggi badan mereka setiap hari, saya mendapat ide untuk membuat perangkat seperti ini. Untuk mengetahui tinggi badan Anda, Anda hanya perlu berdiri di bawah perangkat dan mengaktifkan suara yang menunjukkan bahwa tinggi badan Anda telah diukur.
Sangat mudah untuk dibuat dan hanya terdiri dari beberapa komponen:
-Arduino Nano
-Sensor ultrasonik HC SR04
-Layar LCD
-Buzzer
-Baterai
Sekarang mari kita jelaskan cara kerjanya:
Pertama kita perlu memasang perangkat dengan bantuan perekat dua sisi pada ketinggian tertentu, yang sebelumnya didefinisikan dalam kode, dan ditandai dengan huruf H pada gambar
Ketika seseorang berdiri di bawah perangkat, sensor mengukur jarak D. Selanjutnya kode menghitung jarak H-D yang sebenarnya mewakili tinggi badan orang di bawah perangkat H1 dan menampilkan nilai ini pada LCD. Pustaka "LcdBarGraph" membantu menggambar bargraph horizontal, di mana panjang bar berbanding lurus dengan nilai yang diberikan. Ketika tidak ada orang di bawah perangkat, nilai yang dihitung adalah nol karena dalam hal ini H = D dan H-D adalah nol. Perangkat dipasang dalam kotak yang sesuai dengan LCD di depan dan sensor ultrasonik di bawah.
Pustaka yang diperlukan, kode dan skematik diberikan di bawah ini
Kode
KODE
Pustaka
KODEArduino
// includes the LiquidCrystal Library #include <LiquidCrystal.h> // includes the LcdBarGraph Library #include <LcdBarGraph.h> // Maximum distance we want to ping for (in centimeters). #define max_distance 200 // Creates an LCD object. Parameters: (rs, enable, d4, d5, d6, d7) LiquidCrystal lcd(12, 11, 5, 4, 3, 2); LcdBarGraph lbg(&lcd, 16, 0, 1); // Creates an 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); // Initializes the interface to the LCD screen pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); } void loop() { // Write a pulse to the HC-SR04 Trigger Pin digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); // Measure the response from the HC-SR04 Echo Pin duration = pulseIn(echoPin, HIGH); // Determine distance from duration // Use 343 metres per second as speed of sound distance= duration*0.034/2; distance1= 180 - distance ; // Prints "Distance: <value>" on the first line of the LCD if (distance1 > 100) { tone (speakerPin, 1000); } else { noTone (speakerPin); } lcd.setCursor(0,0); lcd.print("HEIGHT: "); lcd.print(distance1); lcd.print(" cm "); // Draws bargraph on the second line of the LCD lcd.setCursor(0,1); lbg.drawValue(distance1, max_distance); delay(500); }