Cara Menghubungkan Pengintai Ultrasonik HC-SR04 Ke Arduino

Isi kandungan:

Cara Menghubungkan Pengintai Ultrasonik HC-SR04 Ke Arduino
Cara Menghubungkan Pengintai Ultrasonik HC-SR04 Ke Arduino

Video: Cara Menghubungkan Pengintai Ultrasonik HC-SR04 Ke Arduino

Video: Cara Menghubungkan Pengintai Ultrasonik HC-SR04 Ke Arduino
Video: Ультразвуковой датчик HC-SR04 ПОДКЛЮЧЕНИЕ К АРДУИНО 2024, Mungkin
Anonim

Dalam artikel ini, kami akan menyambungkan HC-SR04 ultrasonik rangefinder-sonar ke Arduino.

Sensor ultrasonik HC-SR04
Sensor ultrasonik HC-SR04

Perlu

  • - Arduino;
  • - sensor ultrasonik HC-SR04;
  • - wayar penyambung.

Arahan

Langkah 1

Tindakan pengintai jarak jauh ultrasonik HC-SR04 adalah berdasarkan prinsip echolocation. Ia memancarkan impuls suara ke angkasa dan menerima isyarat yang dipantulkan dari halangan. Jarak ke objek ditentukan oleh masa penyebaran gelombang suara ke halangan dan belakang.

Gelombang suara dipicu dengan menggunakan denyutan positif sekurang-kurangnya 10 mikrodetik pada kaki TRIG pencari jarak. Sebaik sahaja nadi berakhir, pencari jarak memancarkan ledakan denyutan suara dengan frekuensi 40 kHz ke ruang di hadapannya. Pada masa yang sama, algoritma untuk menentukan masa kelewatan isyarat yang dipantulkan dilancarkan, dan satu unit logik muncul di kaki ECHO penemu jarak. Sebaik sahaja sensor mengesan isyarat yang dipantulkan, sifar logik muncul pada pin ECHO. Tempoh isyarat ini ("Echo delay" dalam gambar) menentukan jarak ke objek.

Julat pengukuran jarak pengecas jarak HC-SR04 - hingga 4 meter dengan resolusi 0.3 cm. Sudut pemerhatian - 30 darjah, sudut berkesan - 15 darjah. Penggunaan semasa dalam mod siap sedia adalah 2 mA, semasa operasi - 15 mA.

Prinsip operasi pengintai ultrasonik HC-SR04
Prinsip operasi pengintai ultrasonik HC-SR04

Langkah 2

Bekalan kuasa pengintai ultrasonik dilakukan dengan voltan +5 V. Dua pin lain disambungkan ke mana-mana port digital Arduino, kami akan menyambung ke 11 dan 12.

Menyambungkan HC-SR04 Ultrasonic Rangefinder ke Arduino
Menyambungkan HC-SR04 Ultrasonic Rangefinder ke Arduino

Langkah 3

Sekarang mari tulis lakaran yang menentukan jarak ke halangan dan mengeluarkannya ke port bersiri. Pertama, kami menetapkan bilangan pin TRIG dan ECHO - ini adalah pin 12 dan 11. Kemudian kami menyatakan pemicu sebagai output dan gema sebagai input. Kami memulakan port bersiri pada 9600 baud. Pada setiap pengulangan gelung (), kami membaca jarak dan mengeluarkannya ke port.

Fungsi getEchoTiming () menghasilkan nadi pencetus. Ia hanya menghasilkan arus denyut 10 mikrodetik, yang menjadi pencetus permulaan sinaran oleh pencari jarak paket suara ke angkasa. Kemudian dia mengingati waktu dari awal transmisi gelombang suara hingga kedatangan gema.

Fungsi getDistance () mengira jarak ke objek. Dari kursus fizik sekolah, kita ingat bahawa jarak sama dengan kelajuan dikalikan dengan masa: S = V * t. Kelajuan suara di udara adalah 340 m / s, masa dalam mikrodetik yang kita tahu adalah "duratuion". Untuk mendapatkan masa dalam beberapa saat, bahagikan dengan 1,000,000. Oleh kerana suara bergerak dua kali jarak - ke objek dan belakang - anda perlu membahagikan jarak menjadi dua. Jadi ternyata jarak ke objek S = 34000 cm / saat * durasi / 1.000.000 saat / 2 = 1.7 cm / saat / 100, yang kami tulis dalam lakaran. Mikrokontroler melakukan pendaraban lebih cepat daripada pembahagian, jadi saya mengganti "/ 100" dengan setara "* 0, 01".

Lakarkan untuk bekerja dengan sonar ultrasonik HC-SR04
Lakarkan untuk bekerja dengan sonar ultrasonik HC-SR04

Langkah 4

Juga, banyak perpustakaan telah ditulis untuk berfungsi dengan pengintai jarak jauh ultrasonik. Sebagai contoh, yang ini: https://robocraft.ru/files/sensors/Ultrasonic/HC-SR04/ultrasonic-HC-SR04.zip. Perpustakaan dipasang dengan cara standard: muat turun, unzip ke direktori perpustakaan, yang terletak di folder dengan Arduino IDE. Selepas itu, perpustakaan dapat digunakan.

Setelah memasang perpustakaan, mari tulis sketsa baru. Hasil kerjanya sama - monitor port bersiri memaparkan jarak ke objek dalam sentimeter. Sekiranya anda menulis float dist_cm = ultrasonic. Ranging (INC); dalam lakaran, maka jarak akan ditunjukkan dalam inci.

Lakaran sonar ultrasonik menggunakan perpustakaan
Lakaran sonar ultrasonik menggunakan perpustakaan

Langkah 5

Oleh itu, kami menghubungkan pengintai ultrasonik HC-SR04 ke Arduino dan menerima data darinya dengan dua cara yang berbeza: menggunakan perpustakaan khas dan tanpa.

Kelebihan menggunakan perpustakaan adalah bahawa jumlah kod dikurangkan dengan ketara dan kebolehbacaan program ditingkatkan, anda tidak perlu menyelami selok-belok peranti dan anda dapat menggunakannya dengan segera. Tetapi ini juga kelemahannya: anda kurang memahami bagaimana peranti berfungsi dan proses apa yang berlaku di dalamnya. Walau apa pun, kaedah mana yang digunakan bergantung pada anda.

Disyorkan: