“Ultrasonic Range Meter” dengan SRF05

Master Mikrokontroler

Sensor ultrasonic tipe SRF05 ini secara prinsip sama saja dengan sensor ultrasonic PING))). Memancarkan gelombang ultrasonic dengan frekuensi 40 KHz kemudian menunggu sampai pantulan gelombangnya diterima kembali. Tanda kalau gelombang sudah diterima atau belum berupa sinyal HIGH – LOW.

Terdapat 10 pin, tapi kita cukup memakai 4 pin saja (sebenarnya 3 pin juga bisa). Perhatikan gambar berikut :

  1. Pin 5v untuk koneksi ke tegangan 5V dc.
  2. Echo Output untuk memantau kondisi logika, apakah gelombang ultrasonic sudah diterima kembali atau belum.
  3. Trigger Input dipakai untuk memicu pembangkitan gelombang ultrasonic. Berupa sinyal ‘HIGH’ selama minimal 100 us.
  4. 0 V (GND) dihubungkan ke ground.

Kita coba aplikasi sensor ultrasonic SRF05 untuk mengukur jarak dengan mikrokontroler. AVR ATmega16 dan LCD sudah cukup sebagai komponen utama. Buat rangkaiannya seperti berikut ini :

Programnya kebetulan saya buat dengan bahasa C, memakai compiler CodeVision AVR.

#include
#include
#include
#define trigger PORTC.1
#define echo PINC.0
unsigned int jarak;
char buf[33];
#asm
.equ __lcd_port=0x1B ;PORTA
#endasm
#include
99 proyek arduino
void ukur_jarak()
{
unsigned int i;
jarak=0;
delay_us(100);
trigger=1;  //tout, H=5 us
delay_us(15);
trigger=0;
delay_us(100);
while(!echo);
for (i=0;i<=500;i++)
{
if (echo) {jarak++;}
delay_us(58);
}
}
void main(void)
{
lcd_init(16);
DDRC.O=0;
DDRC.1=1;
lcd_clear ();
lcd_putsf (“SRF05 non timer”);
lcd_gotoxy(0,1);
lcd_putsf (“Range=”);
while (1)
{
ukur_jarak();
sprintf (buf,”%d cm”,jarak);
lcd_gotoxy (6,1);
lcd_puts (buf);
delay_ms(500);
}
}

Metode pengukurannya mengikuti timing diagram yang ada di datasheet SRF05. Pada prmograman kali ini saya tidak memakai timer.

Nah setelah di-compile trus di-download, hasilnya seperti ini :

Alat diatas saya kembangkan menggunakan Desymega wRTC, bisa juga pakai Desymega dengan harga yang lebih murah.

Aplikasi Mikrokontroler

This entry was posted in Mikrokontroler AVR. Bookmark the permalink.

40 Responses to “Ultrasonic Range Meter” dengan SRF05

  1. Pingback: Mengukur 4 Jarak dengan sensor ultrasonic | inkubator-teknologi.com

  2. afit says:

    mas mau tanya, klo pake sensor ultrasonic HC SR04 sama gk programnya seperti diatas?
    terimakasih

  3. afdhal says:

    mas minta penjelasan lebih rinci lagi dong tentang program di atas 🙂 penasaran 🙂
    Trims

    • admin says:

      Ultrasonic punya kec rambat sekitar 344 m/s. Kalau dihitung2 maka ketemu waktu tempuhnya 29 us/1 cm. nah karena bolak – balik (transmit – receive) maka waktu tempuhnya jd 2×29=48 us/1 cm. Tinggal hitung aja kan …

  4. feri says:

    mas,,sya mau tanya klau sensor udah di set untuk jarak 30 cm baru ndteksi obyek,,kmudian mnggerakan mtor dc urutan programnya gmn y..???jdi sistem kerjanya speerti pintu otomatis gtu,,
    Mhon bntuanya mas,,,bingung tgas akhir.!bntuanya ya…..

  5. mamang says:

    mas sya ada tgas untk pmbuatan sensor ini,. tpi sya bngung untuk memasukkan program di atas k CodeVision, settingannya bgaimana?? sperti port, lcd, dll,.
    tlong d jelasin smua settingannya,. trima ksih sbelumnya

  6. danny says:

    gan ane mau tanya. . kalo semisal program diatas digunain ke srf04 bisa ngga ya???

  7. munawir says:

    mas kalau mau mengukur tinggi badan gmn ya?
    kita mw mengukur tinggi 2m.
    🙂

  8. alfian says:

    mas, SRF05 bisa di simulasikan menggunakan Proteus gak?

  9. wily says:

    mas, saya mau bikin aplikasi sensor ini untuk mengukur tinggi badan, nah program nya gmana ya mas? mhon bantuan nya

  10. pongkyS says:

    mas tanya..
    itu udah saya coba pakek HY-SRF 05 tapi kok ndak sensitif ya, dia cuman bisa baca maksimal 6cm aja. apakah ada perlu pengkondisian sensor lainnya atau bagaimana?? mohon pencerahan.nya, soal.nya ini buat alat tugas akhir saya .trims :))

  11. wily says:

    maf mas, saya bikin pengukur tinggi badan nya pakai SRF-05 , jadi program nya gimana ya? mohon bantuan nya

  12. thoha says:

    gan, maksud nya void ukur_jarak itu gmn??
    masuk void (main) apa deklarasi void sendiri

  13. rangga adolf says:

    mas mau tanya klw programnya untuk mengukur ketinggian dan outputnya alarm dengan lampu, programnya gmana mas??? tlg mas

  14. HS says:

    mas bisa tolong lebih dijelaskan cara kerja fungsi for di coding tersebut? terutama dibagian ini
    for (i=0;i<=500;i++)
    {
    if (echo) {jarak++;}
    delay_us(58);
    }
    }

    cara kerjanya gimana ya mas? fungsi angka 500 itu apa?

    • admin says:

      itu perulangan 500 kali untuk membatasi saja jarak maksimal.
      delay 58 us untuk waktu pancar-terima ultrasonik dalam 1 cm.
      Jadi intinya membuat counter tiap 1 cm jarak.

  15. brian says:

    gan makasih ini programnya ane izin sedot , tapi ane mau tanya gan ;

    char buf[33] buat apa ya ?
    sama perhitungan 15us dapetnya dari mana ?

    trimakasih

  16. Minarto says:

    Kalau S
    HY SRF 05 ada pin ” OUT ” dipakai untuk apa ya mas ? Trims

  17. yuliana says:

    mas mw nanya nh, cara kontrol servo menggunakan sensor ultrasonik SRF04 tu gmana pemrogramannya? saya pkek mikrokontroler ATmega 16 dan code AVR.
    trimakasih

  18. aan says:

    mas mau tanya kalo pingin jarak sampai 4meter an, bagus pake sensor srf05/ hc04 ya? makasih

    • admin says:

      Setahu kami maksimal 3 m, kalau mau lebih coba cari yang bisa lebih jauh lagi jangkauannya seperti sonar range finder yang bisa mencapai 10 m.

  19. cn4nio says:

    mas gambar simulasi di atas menggunakan softwere apa yahh,, cz di proteus untuk sensor srf05 td tersedia…?

    terimakasih

Leave a Reply