Posted on Leave a comment

Pengukuran Jarak Menggunakan Sensor Ultrasonik HC-SR04 dengan Mikrokontroler Arduino UNO R3 dan Modul Serial LCD 20×4

Tutorial dari project berikut menghasilkan :

  1. Pengukuran jarak aktual yang ditampilkan melalui LCD 20×4 (life time measurement) menggunakan sensor ultrasonik
  2. Terdapat Buzzer yang akan memberikan warning apabila jarak kurang dari/ sama dengan jarak yang ditentukan (dari script program), cara kerjanya seperti pada hal nya sensor parkir yang terdapat pada belakang mobil.
Arduino UNO R3 Sensor Ultrasonik HC-SR04 Serial Module LCD 20x4

Peralatan yang diperlukan :

  1. Mikrokontroler Arduino UNO R3 (Item No. KR03027) & Kabel USB
  2. LCD 20×4 (Item No. KR07062) dan Serial Modul (Item No. KR07099)
  3. Sensor Ultrasonik HC-SR04 (Item No. KR08122)
  4. Buzzer sebagai alarm (Item No. KR07064)
  5. Kabel Jumper Male-Female & Female-Female
  6. Power Supply 5Volt/ Power Bank Handphone
  7. Software Arduino IDE 1.0.6 windows

Library Arduino yang diperlukan :

  1. Ultrasonic
  2. Liquid Crystal I2C
  3. patches (untuk melody/ alarm buzzer)

Rangkaian Koneksi antara LCD 20×4 dan Serial Modul:

  1. Solder antara pin LCD 20×4 dan pin Serial Modul (hanya ada 1 posisi yang memungkinkan) dimana potensiometer/ trimpot menghadap keluar
  2. Jumper Serial Modul dalam posisi terpasang
Serial Module with Character LCD 20x4

Rangkaian Koneksi antara Serial Modul dan Arduino UNO R3 (4 buah kabel):

  1. pin SDA (Serial Module) ke pin A4 (Arduino)
  2. pin SCL (Serial Module) ke pin A5 (Arduino)
  3. 5V/ 5Volt DC (Serial Module) ke 5V (Arduino)
  4. G/ Ground (Serial Module) ke Gnd (Arduino)

Rangkaian Koneksi antara Sensor Ultrasonik HC-SR04 dan Arduino UNO R3 (4 buah kabel):

  1. pin TRIGGER (sensor) ke pin 12 (Arduino)
  2. pin ECHO (sensor) ke pin 13 (Arduino)
  3. 5V/ 5Volt DC (Serial Module) ke 5V (Arduino)
  4. G/ Ground (Serial Module) ke Gnd (Arduino)

Rangkaian Koneksi antara Buzzer dan Arduino UNO R3 (2 buah kabel):

  1. kutub (+ buzzer) ke pin 8 (Arduino)
  2. kutub (- buzzer) ke pin Gnd (Arduino)

Langkah pemrograman ke Arduino :

  1. Pastikan Library diatas sudah dicopy kedalam library Arduino
  2. Compile terlebih dahulu sebelum upload ke board Arduino
  3. Berikut ini script yang digunakan :

#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include <Ultrasonic.h>
#define TRIGGER_PIN  12
#define ECHO_PIN     13
#include “pitches.h”
#include <SPI.h>

int melody[] = {NOTE_G4, NOTE_A4, NOTE_B4, 0, NOTE_G4, NOTE_A4, NOTE_B4, 0};
int noteDurations[] = {5, 5, 1, 1, 5, 5, 1, 1};

LiquidCrystal_I2C lcd(0x27,20,4);
Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN);

void setup()
{
  lcd.init(); // inicializa o LCD
  lcd.backlight();
  lcd.clear();
  pinMode(ECHO_PIN, INPUT);
  }
 
void loop()
{
  float cmMsec;
  long microsec = ultrasonic.timing();
  cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM);
  lcd.backlight();
  lcd.setCursor(1,1);
  lcd.print(“Ultrasonic Ranger”);
  lcd.setCursor(1,2);
  lcd.print(cmMsec);
  lcd.setCursor(7,2);
  lcd.print(” Cm”);
  delay(1000);

// tone for 5cm or less
  if (cmMsec <= 5) {
    for (int thisNote = 0; thisNote < 8; thisNote++) 
  {
    int noteDuration = 1000 / noteDurations[thisNote];
    tone(8, melody[thisNote], noteDuration);
    int pauseBetweenNotes = noteDuration * 1.30;
    delay(pauseBetweenNotes);
    noTone(8);}
  }
}

Leave a Reply

Your email address will not be published. Required fields are marked *