Contoh Arduino dan HC-SR04 Sederhana

Setelah membeli HC-SR04 dari Amazon, saya tidak bisa menggunakannya di luar kotak. Tidak ingin mengakui bahwa saya memiliki sensor DOA di tangan saya, saya mencari contoh pengaturan sederhana. Setelah menghabiskan waktu terlalu lama untuk hal ini daripada yang saya rasa perlu saya lakukan, saya memutuskan untuk membuat instruksi ini untuk membantu penjinak yang baru muncul menyelesaikan proyek mereka.

Saya akui contoh ini lebih dari sekadar telanjang karena memiliki LED, tetapi ini memungkinkan saya mengujinya tanpa perlu PC untuk menunjukkan jarak dan memeriksa keakuratan sensor.

Langkah 1: Daftar Bagian

Arduino UNO R3 (Saya menggunakan mount Adafruit)
Satu (1) Sensor Ultrasonik HC-SR04
Satu (1) LED Merah
Satu (1) LED Hijau
Dua (2) 560 ohm (Hijau, Biru, Coklat, Emas) Resistor
Papan setengah roti
Delapan (8) kabel hookup Pria / Pria
Penggaris yang mengukur sentimeter (atau menggunakan monitor serial)

Langkah 2: Hubungkan Komponen

Hubungkan komponen dan kabel seperti yang ditunjukkan dalam dua gambar.

Langkah 3: Unggah Sketsa

Salin sketsa ke Arduino Anda dan saksikan lampu-lampu yang berkedip-kedip.


/ *
Sensor jarak Ping HC-SR04]
VCC ke arduino 5v GND ke arduino GND
Gema ke pin Arduino 13 Trig ke pin Arduino 12
Red POS to Arduino pin 11
Green POS to Arduino pin 10
560 ohm resistor untuk rel daya NEG dan GRD LED
Info lebih lanjut di: //goo.gl/kJ8Gl
Perbaikan kode asli ke sketsa Ping yang berasal dari Trollmaker.com
Beberapa kode dan kabel terinspirasi oleh //en.wikiversity.org/wiki/User:Dstaub/robotcar
* /

#define trigPin 13
#define echoPin 12
#define led 11
#define led2 10

pengaturan batal () {
Serial.begin (9600);
pinMode (trigPin, OUTPUT);
pinMode (echoPin, INPUT);
pinMode (led, OUTPUT);
pinMode (led2, OUTPUT);
}

void loop () {
durasi panjang, jarak;
digitalWrite (trigPin, LOW); // Menambahkan baris ini
delayMicroseconds (2); // Menambahkan baris ini
digitalWrite (trigPin, HIGH);
// delayMicroseconds (1000); - Dihapus baris ini
delayMicroseconds (10); // Menambahkan baris ini
digitalWrite (trigPin, LOW);
durasi = pulseIn (echoPin, HIGH);
distance = (durasi / 2) / 29.1;
if (distance <4) {// Di sinilah LED On / Off terjadi
digitalWrite (led, HIGH); // Ketika kondisi Merah terpenuhi, LED Hijau akan mati
digitalWrite (led2, LOW);
}
lain {
digitalWrite (led, LOW);
digitalWrite (led2, HIGH);
}
if (distance> = 200 || distance <= 0) {
Serial.println ("Di luar jangkauan");
}
lain {
Serial.print (jarak);
Serial.println ("cm");
}
keterlambatan (500);
}

Lampiran

  • Unduh Code.txt

Artikel Terkait