Anda di halaman 1dari 3

1/6/2016

Pengukurjarakdengansensorultrasonic(PING)))tanpatimer|inkubatorteknologi.com

inkubatorteknologi.com
Belajarmikrokontroler?kesiniaja

Pengukurjarakdengansensorultrasonic(PING)))tanpatimer
PostedonApril23,2012byadmin

Padaduniarobotika,apalagibagitemantemanyangsudahseringikutlombarobot,sensorjarakultrasonik
tentubukanbarangbarulagi.Akantetapibagiyangbelumpernahmencoba,bahkanmendengarnyapunjuga
barukaliini,jangankhawatir,karenaakansayasampaikansecararinci.Jenissensoryangdigunakanadalah
PING))),terlihatpadagambar:

Terdapat3pinpadasensrPING))):
GND:ground,terhubungkegroundpowersupply.
5V:+5volt,terhubungketegangan5voltDC.
SIG:Signal,pinuntukmembangkitkandanmenerimagelombangultrasonik,terhubungkesalahsatupin
Arduino.
Metodepengukuranjarakdengansensorultrasonikadalahdenganmemanfaatkankonstantakecepatan
gelombangultrasonik1130feet/secondatau344m/s.Sehinggauntukmenempuhjarak1cmdibutuhkanwaktu:
29s.Denganmenghitungwaktutempuhultrasonikkemudiandibagidengan29smakakitadapatkanjarak
tempuh.
UntuksensorPING)))makatahapanpengukuransebagaiberikut:
1. Buatsinyalultrasonikdenganfrekuensi40KHzdengancarapinSIGdibuatHIGHselama2ss/d5s.
2. Tunggusampaiwaktusekitar750s.Gelombangultrasonikakanterpancarsampaimengenaisasaran
kemudianakanterpantulmenujukembalikesensorPING))).Selamaultrasonikbelumditerimakembalioleh
sensor,kondisilogikapinSIGadalahHIGH.
3. Hidupkantimer(untukmenghitungwaktutempuh)dantunggusampaigelombangultrasonikditerima
kembali(setelahterpantul)dengantandapinSIGberubahmenjadiLOW.
4. Jikasinyalultrasoniksudahditerimakembalimatikantimer.Waktutempuhyangterhitungadalah2kali
jaraktempuhyaitukirimterima(ataubahasaumumyapergipulang).Waktutempuhsensordengantarget
berartiwaktutempuhtotaldibagi2.
5. Jarakantarasensordengantarget=waktutempuhsensorketarget/29s(cm).

Keterangan:
tout:lebarpulsaHIGHsebagaipembangkitultrasonik,minimal2s,standarnya5s.
tHOLDOFF:lebarpulsaLOW,750s,untukkondisimenunggusampaikondisipinSIGmenjadiHIGH.
tINMIN:lebarpulsaminimal,yaituwaktutempuhminimalyangdapatterdeteksi.Besarnya115s(jarak
http://inkubatorteknologi.com/pengukurjarakdengansensorultrasonicpingtanpatimer/

1/3

1/6/2016

Pengukurjarakdengansensorultrasonic(PING)))tanpatimer|inkubatorteknologi.com

minimalsekitar2cm).
tINMAX:lebarpulsamaksimal,yaituwaktutempuhmaksimalyangdapatterdeteksisebesar18.500s
(jarakmaksimalsekitar319cm).
Ok,langsungaplikasiajaya,buatrangkaiannyadulu:

TrusbikinprogrampakaiCodeVision:
#include<mega32.h>
#include<delay.h>
#include<stdio.h>
#definepingPINC.0
unsignedintjarak
charbuf[33]
//AlphanumericLCDModulefunctions
#asm
.equ__lcd_port=0x1BPORTA
#endasm
#include<lcd.h>
//Declareyourglobalvariableshere
voidukur_jarak()
{
unsignedinti
jarak=0
DDRC.0=1
PORTC.0=0
delay_us(100)
PORTC.0=1//tout,H=5us
delay_us(5)
PORTC.0=0
delay_us(750)//tHOLDOFFL=750us
PORTC.0=1
http://inkubatorteknologi.com/pengukurjarakdengansensorultrasonicpingtanpatimer/

2/3

1/6/2016

Pengukurjarakdengansensorultrasonic(PING)))tanpatimer|inkubatorteknologi.com

DDRC.0=0
for(i=0i<=1000i++)
{
if(ping){jarak++}
delay_us(58)
}
}
voidmain(void)
{
lcd_init(16)
lcd_clear()
lcd_putsf(PINGtanpatimer)
lcd_gotoxy(0,1)
lcd_putsf(Jarak=)
while(1)
{
ukur_jarak()
sprintf(buf,%3icm,jarak)lcd_gotoxy(6,1)
lcd_puts(buf)
}
}
Compiletrusdownloaddimikro,ATmega32dapatdigantiATmega16atauATmega8535.
Selamatmencoba.

http://inkubatorteknologi.com/pengukurjarakdengansensorultrasonicpingtanpatimer/

3/3