Bagaimana untuk menggunakan sensor ultrasonik dengan Arduino?
Pandangan: 164 Pengarang: Grace Masa Terbit: 2021-07-26 Asal: tapak
Pengenalan HC-SR04
HC-SR04 ialah sensor yang sangat popular untuk mengukur jarak. Ia memancarkan gelombang ultrasonik pada frekuensi 40KHz. Gelombang ultrasonik bergerak melalui udara. Jika terdapat objek atau halangan dalam laluan, ia akan melantun semula ke modul. Dengan mengambil kira masa perambatan dan kelajuan bunyi, anda boleh mengira jarak.
1. Parameter teknikal utama:
●Voltan kerja biasa: 5V
●Arus kerja statik ultra-kecil: kurang daripada 5mA
●Sudut penderiaan (R3 rintangan lebih tinggi, lebih tinggi keuntungan, lebih besar sudut pengesanan):
Rintangan R3 ialah 392, tidak lebih daripada 15 darjah
Rintangan R3 ialah 472, tidak lebih daripada 30 darjah
●Jarak pengesanan (rintangan R3 boleh melaraskan keuntungan, iaitu, melaraskan jarak pengesanan):
Rintangan R3 ialah 392 2cm-450cm
Rintangan R3 ialah 472 2cm-700cm
●Ketepatan tinggi: sehingga 0.3cm
●Zon buta (2cm) sangat dekat
2. Penerangan Pin:
VCC - bekalan +5 V
TRIG - Input pencetus penderia. Pengawal mikro menggunakan nadi pencetus 10 us ke ultrasonik HC-SR04 . Modul
ECHO–Keluaran gema penderia. Pengawal mikro membaca/memantau pin ini untuk mengesan halangan atau mencari jarak.
GND – Tanah
3. Prinsip kerja
Gunakan IO untuk mencetus julat, memberikan isyarat tahap tinggi sekurang-kurangnya 10us;
●Modul secara automatik menghantar 8 gelombang persegi 40khz untuk mengesan secara automatik sama ada terdapat pemulangan isyarat.
●Terdapat pulangan isyarat, melalui output IO tahap tinggi, tempoh tahap tinggi ialah (4) masa dari penghantaran ke kembali gelombang ultrasonik. Jarak ujian = (masa tinggi * kelajuan bunyi (340M / S)) / 2
Rajah Masa Modul Ultrasonik HC-SR04
Arduino
1. Pengetahuan asas pengaturcaraan Arduino:
pulseIn(): Digunakan untuk mengesan lebar nadi keluaran aras tinggi dan rendah oleh pin.
pulseIn(pin, nilai);
pulseIn(pin, nilai, tamat masa); // masa
Pin --- Pin yang perlu membaca nadi
Nilai---Jenis nadi yang hendak dibaca, TINGGI atau RENDAH
Tamat masa---masa tamat masa, dalam mikrosaat, jenis data ialah integer panjang yang tidak ditandatangani
Sambungannya agak mudah, anda boleh merujuk kepada imej di bawah dengan skema litar papan roti.
2. Program julat sensor ultrasonik (biasa):
Jika anda lihat di sini, saya percaya anda telah memahami kaedah operasi penggunaan sensor ultrasonik dengan Arduino. Jom bertindak dan cuba sendiri!