Membuat Sensor Jarak Menggunakan Arduino dan Ultrasonic Transceiver HC-SR04
Alat dan Bahan yang digunakan dalam project ini adalah:
- Arduino Uno R3 : 1 buah
- Ultrasonic transceiver HCSR04 : 1 buah
- LED : 3 buah (berbeda warna)
- Buzzer : 1 buah
- Resistor 330Ω : 4 buah
Setelah alat dan bahan siap, dapat dilakukan Langkah Kerja sebagai berikut:
- Menyiapkan alat dan bahan, serta program untuk arduino
- Memasangkan kabel jumper di pin 5v dan pin GND pada arduino, lalu sambungkan ke protoboard
- Menyusun resistor dengan LED, dan resistor dengan buzzer secara seri pada protoboard
- Menyambungkan kaki negatif (-) LED dan buzzer pada GND arduino
- Menyambungkan LED hijau pada pin 13 arduino
- Menyambungkan n LED kuning pada pin 10 arduino
- Menyambungkan LED merah pada pin 8 arduino
- Menyambungkan buzzer pada pin 3 arduino
- Memasang ultrasonik sensor transduser ke protoboard
- Menyambungkan pin Vcc transduser ke 5v arduino
- Menyambungkan pin GND ke GND arduino
- Menyambungkan pin Trig pada transduser ke pin 7 arduino
- Menyambungkan Echo pada transduser ke pin 6 arduino
- Mengoneksi arduino ke komputer
- Mengupload script/program pada aplikasi arduino keperangkat arduino.
Script/Program yang diupload di arduino:
#define trigPin 7 #define echoPin 6 #define led 13 #define led2 10 #define led3 8 #define buzzer 3 int sound = 250; void setup() { Serial.begin (9600); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(led, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(buzzer, OUTPUT); } void loop() { long duration, distance; digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); distance = (duration/2) / 29.1; if (distance <= 150) { digitalWrite(led, HIGH); sound = 250; } else { digitalWrite(led,LOW); } if (distance <=50) { digitalWrite(led2, HIGH); sound = 300; } else { digitalWrite(led2, LOW); } if (distance < 20) { digitalWrite(led3, HIGH); sound = 350; } else { digitalWrite(led3, LOW); } if (distance > 150 || distance <= 0){ Serial.println("Jarak diluar jangkauan!"); noTone(buzzer); } else { Serial.print(distance); Serial.println(" cm"); tone(buzzer, sound); } delay(500); }
0 Comments:
Posting Komentar